我想对我使用OpenMPI库编写的并行处理代码进行性能分析。我正在尝试将vampirtrace用于此目的。我使用命令
编译了我的代码vtcxx -vt:cxx mpic++ ../src/parallel_encode_nonBlocking.cpp -o parallel_encode_nonBlocking_trace.exe
我正在尝试使用以下命令运行我的代码来生成跟踪文件,
mpirun -np 4 parallel_encode_nonBlocking_trace.exe ducks.m2v ducks11.h264
此处最后2个名称是代码所需的输入和输出文件的名称。但是在运行代码后我遇到了错误,
/usr/bin/nm: '/home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad': No such file
/usr/bin/nm: 'MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe': No such file
VampirTrace: FATAL: Failed to execute /usr/bin/nm -B --demangle --line-numbers /home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe
Please set the environment variable VT_GNU_NM to the 'nm' command including command line switches which lists symbol/addresses of an object file in BSD-style or set VT_GNU_NMFILE to a pre-created symbol list file.
/usr/bin/nm: '/home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad': No such file
/usr/bin/nm: 'MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe': No such file
/usr/bin/nm: '/home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad': No such file
/usr/bin/nm: 'MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe': No such file
VampirTrace: FATAL: Failed to execute /usr/bin/nm -B --demangle --line-numbers /home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe
Please set the environment variable VT_GNU_NM to the 'nm' command including command line switches which lists symbol/addresses of an object file in BSD-style or set VT_GNU_NMFILE to a pre-created symbol list file.
/usr/bin/nm: VampirTrace: FATAL: Failed to execute /usr/bin/nm -B --demangle --line-numbers /home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe
Please set the environment variable VT_GNU_NM to the 'nm' command including command line switches which lists symbol/addresses of an object file in BSD-style or set VT_GNU_NMFILE to a pre-created symbol list file.
'/home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad': No such file
/usr/bin/nm: 'MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe': No such file
VampirTrace: FATAL: Failed to execute /usr/bin/nm -B --demangle --line-numbers /home/rishikesh/Videos/Documents/Rishikesh_MTP_data/Harshad MTP/MTP/encoder_experiments/ffmpeg_transcode/bin/parallel_encode_nonBlocking_trace.exe
Please set the environment variable VT_GNU_NM to the 'nm' command including command line switches which lists symbol/addresses of an object file in BSD-style or set VT_GNU_NMFILE to a pre-created symbol list file.
--------------------------------------------------------------------------
mpirun noticed that the job aborted, but has no info as to the process
that caused that situation.
--------------------------------------------------------------------------
答案 0 :(得分:1)
VampirTrace
中似乎存在一个错误,在应用程序二进制文件的绝对路径名中有空格。要解决这个问题,你可以从" Harshad MTP"中删除空间。目录,或手动执行
nm parallel_encode_nonBlocking_trace.exe > nm.file
export VT_GNU_NMFILE="$PWD/nm.file"
如果您真的仔细阅读过,那么错误信息就非常清楚了。