MPI的资料真是太少了,调试的方法也少得可怜,作为MPI新人,记录一下日常报错和解决过程,避免反复踩坑.
————————————————————————————————————————
job aborted:
[ranks] message
[0] fatal error
Fatal error in MPI_Scatter: Message truncated, error stack:
MPI_Scatter(sbuf=0x000002C764C6F210, scount=300, MPI_DOUBLE, rbuf=0x000002C764C59B70, rcount=30, MPI_DOUBLE, root=0, MPI_COMM_WORLD) failed
Message truncated; 240 bytes received but buffer size is 240
[1-9] terminated
---- error analysis -----
[0] on DESKTOP-OC33V33
mpi has detected a fatal error and aborted parallelProject.exe
---- error analysis -----
原因:不是很记得了,印象中是就算读数据的只有一个进程(然后广播分发到另一个变量里),其他进程的该变量也需要声明空间。
————————————————————————————————————————
job aborted:
[ranks] message
[0-4] terminated
[5] process exited without calling finalize
[6-9] terminated
---- error analysis -----
[5] on DESKTOP-OC33V33
parallelProject.exe ended prematurely and may have crashed. exit code 0xc0000005
---- error analysis -----
原因:0xc0000005表示访问冲突,在我这里问题是信息发送和接收的数据类型不一致
————————————————————————————————————————
[0] on DESKTOP-OC33V33
parallelProject.exe ended prematurely and may have crashed. exit code 0xc0000374
检查下变量吧我这突然就好了,是个玄学
————————————————————————————————————————
===================================================================================
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= PID 16906 RUNNING AT para
= EXIT CODE: 139
= CLEANING UP REMAINING PROCESSES
= YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
===================================================================================
YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Segmentation fault (signal 11)
原因:段错误,检查所读入文件是否存在或格式正确,问题出在i/o上
————————————————————————————————————————
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
原因:内存爆炸了,new了动态数组之后没有delete
这篇博客记录了MPI新手在使用过程中遇到的一些常见错误,包括数据类型不匹配、访问冲突、段错误以及内存管理问题,旨在帮助读者避免重复踩坑。
8001

被折叠的 条评论
为什么被折叠?



