|
@@ -1,14 +1,16 @@
|
|
|
# IPC-Debug
|
|
|
|
|
|
Allows to compare values between two running process to track divergence.
|
|
|
+One process serves as reference (root), the other (client) sends its values over a named pipe.
|
|
|
|
|
|
See [ipc_debug.h](./include/ipc_debug.h) for available sub routines.
|
|
|
|
|
|
Test program that compares ASCII characters distributed over MPI cluster:
|
|
|
|
|
|
```
|
|
|
-terminalA $ mpirun -np 3 --use-hwthread-cpus build/mpi_test 123123
|
|
|
-terminalB $ mpirun -np 2 --use-hwthread-cpus build/mpi_test 123125
|
|
|
+terminalA $ mkfifo /tmp/pipe
|
|
|
+terminalA $ IPC_DEBUG_ROOT=1 IPC_DEBUG_FILE=/tmp/pipe mpirun -np 3 --use-hwthread-cpus build/mpi_test 123123
|
|
|
+terminalB $ IPC_DEBUG_FILE=/tmp/pipe mpirun -np 2 --use-hwthread-cpus build/mpi_test 123125
|
|
|
[IPCDBG] Assertion failed in vector at index 5. Root has 51 but client has 52
|
|
|
#5 Source "/home/christoph/Studium/HiWi2/ipc-debug/src/mpi_test.cpp", line 63, in main
|
|
|
60: debug_ipc_mpi_set_data_distribution(start_index, characters_per_rank);
|