=== Valgrind === == Installazione == cd /prodotti\\ wget http://valgrind.org/downloads/valgrind-3.3.0.tar.bz2\\ mkdir valgrind\\ cd valgrind\\ mkdir gnu\\ mkdir intel\\ \\ RAMO GNU\\ module load openmpi/gnu\\ cd /prodotti\\ tar jvtf valgrind-3.3.0.tar.bz2\\ chown -R root:root valgrind-3.3.0\\ cd valgrind-3.3.0\\ CC=gcc CFLAGS=-O ./configure --prefix=/prodotti/valgrind/gnu\\ make\\ make check\\ make install\\ \\ \rm -r valgrind-3.3.0\\ module unload openmpi/gnu\\ \\ cd /csia/modules\\ mkdir valgrind\\ vi gnu (vedi sotto:)\\ \\ conflict openmpi/intel\\ conflict compiler/intel\\ \\ module load openmpi/gnu\\ \\ set vg "/prodotti/valgrind/gnu"\\ \\ prepend-path PATH $vg/bin\\ prepend-path MANPATH $vg/man\\ \\ \\ RAMO INTEL\\ module load openmpi/intel\\ cd /prodotti\\ tar jvtf valgrind-3.3.0.tar.bz2\\ chown -R root:root valgrind-3.3.0\\ cd valgrind-3.3.0\\ CC=icc CFLAGS=-O ./configure --enable-only64bit --prefix=/prodotti/valgrind/intel\\ make\\ vi valt_load_address_amd64_linux.lds (commentata la riga 193)\\ make\\ make install\\ \\ cd /csia/modules/valgrind\\ vi intel (vedi sotto:)\\ \\ conflict compiler/intel\\ \\ module load openmpi/intel\\ \\ set vg "/prodotti/valgrind/intel"\\ \\ prepend-path PATH $vg/bin\\ prepend-path MANPATH $vg/man\\ \\ \rm -r valgrind-3.3.0\\ \\ == Esempio d'uso == (debug applicazione parallela sul frontend)\\ module load valgrind/gnu\\ mpicc -g ping_pong.c -o ping_pong_gnu\\ mpiexec --mca btl ^openib -np 2 valgrind -v ./ping_pong_gnu 100\\ \\