| View previous topic :: View next topic |
| Author |
Message |
sad
Joined: 05 Feb 2005 Posts: 13
|
Posted: Mon Mar 09, 2009 6:46 pm Post subject: Is the pgi cdk mpich debuggable? |
|
|
I install pgi cd under /hptc_cluster/pgi, so the mpich (mpich1) is under /hptc_cluster/pgi/linux86-64/7.2/mpi/mpich/
but when I tried to debug a mpi application with :
mpirun -machinefile machinefile -np 4 -dbg=pgdbg ./turb
it allways stoped at mpi_init, and the command pannel said:
----
pgdbg>
Reloading:
/skovira/home/ccsad_1/zxiao_jhu_s_pgi_mpich1_debug/turb -p4pg /skovira/home/ccsad_1/zxiao_jhu_s_pgi_mpich1_debug/PI13701 -p4wd /skovira/home/ccsad_1/zxiao_jhu_s_pgi_mpich1_debug -mpichtv
ERROR: cannot read value at address 0xF2E0F018.
ERROR: cannot read value at address 0xF2E0F000.
Signalled SIGSEGV at 0x407364, function main
0x407364: 48 89 5C 24 8 movq %rbx,8(%rsp)
ERROR: cannot read value at address 0xF2E0F018.
ERROR: cannot read value at address 0xF2E0F000.
-------------------
I tried to see the message queue window, it said:
ERROR: unable to load /hptc_cluster/pgi/linux86-64/7.2/mpi/mpich/lib/libtvmpich.so: libpgc.so: cannot open shared object file: No such file or directory
Aborting message queue dump.
-------
In fact, this application is able to run with 4 processes:
/hptc_cluster/pgi/linux86-64/7.2/mpi/mpich/bin/mpirun -machinefile machinefile -np 4 ./turb
Where is the question? Thanks very much.
-sad |
|
| Back to top |
|
 |
mkcolg
Joined: 30 Jun 2004 Posts: 5001 Location: The Portland Group Inc.
|
Posted: Tue Mar 10, 2009 1:56 pm Post subject: |
|
|
Hi sad,
The MPICH and MPICH-2 libraries that accompany the PGI CDK can be used by PGDBG. The problem here is that the PGI runtime library "libpgc.so" is either not installed on one or more of your nodes, or you need to set "LD_LIBRARY_PATH" to include the location of this library.
- Mat |
|
| Back to top |
|
 |
sad
Joined: 05 Feb 2005 Posts: 13
|
Posted: Tue Mar 10, 2009 6:12 pm Post subject: |
|
|
I think I have already exported this libpgc.so, it is in:
/hptc_cluster/pgi/linux86-64/7.2-2/libso
I export LD_LIBRARY_PATH in .bashrc:
#for pgi
PGI=/hptc_cluster/pgi
LM_LICENSE_FILE=$LM_LICENSE_FILE:/hptc_cluster/pgi/license.dat
#for pgi
PATH=/hptc_cluster/pgi/linux86-64/7.2-2/bin:$PATH
LD_LIBRARY_PATH=/hptc_cluster/pgi/linux86-64/7.2-2/libso/libpgc.so:/hptc_cluster/pgi/linux86-64/7.2-2/lib:/usr/lib64:$LD_LIBRARY_PATH
#for pgdbg
PGDBG_MQS_LIB_OVERRIDE=/hptc_cluster/pgi/linux86-64/7.2/mpi/mpich/lib/libtvmpich.so
export PGI LM_LICENSE_FILE PGDBG_MQS_LIB_OVERRIDE
export PATH
export LD_LIBRARY_PATH
==========
I will try again, anyhow.Thanks, Mat.
-sad |
|
| Back to top |
|
 |
mkcolg
Joined: 30 Jun 2004 Posts: 5001 Location: The Portland Group Inc.
|
Posted: Wed Mar 11, 2009 9:47 am Post subject: |
|
|
Hi Sad,
Your LD_LIBRARY_PATH should only include directories. Try changing: | Quote: | | LD_LIBRARY_PATH=/hptc_cluster/pgi/linux86-64/7.2-2/libso/libpgc.so:/hptc_cluster/pgi/linux86-64/7.2-2/lib:/usr/lib64:$LD_LIBRARY_PATH | to | Quote: | | LD_LIBRARY_PATH=/hptc_cluster/pgi/linux86-64/7.2-2/libso:/hptc_cluster/pgi/linux86-64/7.2-2/lib:/usr/lib64:$LD_LIBRARY_PATH |
and see it that helps.
- Mat |
|
| Back to top |
|
 |
|