您的位置:首页 > 其它

MPI中可能会出现的错误

2006-08-29 19:25 253 查看
1.p1_xxxxx:p4_error:interruptSIGSEGV:11

这个错误可能是因为某个进程中出现了段错误引起的,
自己编程中曾出现过的错误:
1.只在一个进程中给指针申请空间,而在其他进程没有申请,所以在广播的时候出错
2.在一个进程中联接mysql数据库,而在所有的进程中断开数据库的联接

网上有个人说的很好:
"Thereare2thingstocheck.
*Runoneofthetestprogramslikepi3.forcpi.ctoseewhetheryourcluster'sOK.
*ifitis,thefaultisinyourcode.Seeifyou'reexceedingarrayboundsoraccessingmemorywhichyouhaven'tallocated,There'saSIGSEGVerror-that'sasegmentationviolation.Thatmightexplainstufflike
bm_list_21829:p4_error:interruptSIGINT:2
Onceyouhaveaseg.violation,allthe4processorsaresentasignaltointerrupttheprocess(SIGINT).Signalsaredefinedin/usr/include/sys/signal.h(atleastontheSGIs;mightbe
differentonothersystems)."

2.p1_10401:p4_error::14
1-MPI_BCAST:Messagetruncated
[1]Abortingprogram!
[1]Abortingprogram!

这个也是由于mpi_bcast的接收空间不够引起的,要在mpi_bcast之前分配足够大的空间,这样就不会truncated了

3.p4_error:alloc_p4_msgfailed:

p0_6773:(7.828703)xx_shmalloc:returningNULL;requested1048616bytes
p0_6773:(7.828762)p4_shmallocreturningNULL;request=1048616bytes

内存空间没分配足,可以通过设置环境变量P4_GLOBMEMSIZE(inbytes)来增大程序需要的内存空间

exportP4_GLOBMEMSIZE=32000000(forbashusers)
setenvP4_GLOBMEMSIZE32000000(forcshortcshusers)


4.libcprts.so.5:cannotopensharedobjectfile:Nosuchfileordirectory

[code]/home/jbrandt/tests/test.exe:errorwhileloadingsharedlibraries:
libcprts.so.5:cannotopensharedobjectfile:Nosuchfileordirectory
p0_792:p4_error:Childprocessexitedwhilemakingconnectiontoremote
processoncompute-0-0.local:0
/opt/mpich/intel/bin/mpirun:line1:792Brokenpipe/home/jbrandt/tests/test.exe-
p4pg/home/jbrandt/tests/PI646-p4wd/home/jbrandt/tes

没有用-static静态的连接,用-static重新编译就好了

[/code]
[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐