如何衡量OpenMP代码的内存使用情况?我相信,内存使用量会随着线程数量的减少而减少。
我正在使用Linux和英特尔Fortran编译器。
答案 0 :(得分:0)
您可以将/usr/bin/time
与-l
参数一起使用。所以,你会运行:
/usr/bin/time -l ./yourProgram
由于我没有您的程序,我将举例dd
创建1MB,2MB,4MB和8MB的块并丢弃它们:
使用1MB内存块:
/usr/bin/time -l dd if=/dev/zero of=/dev/null bs=1024k count=1
...
1855488 maximum resident set size
...
使用2MB内存块:
/usr/bin/time -l dd if=/dev/zero of=/dev/null bs=2048k count=1
...
2904064 maximum resident set size
...
使用4MB内存块:
/usr/bin/time -l dd if=/dev/zero of=/dev/null bs=4096k count=1
...
5001216 maximum resident set size
...
使用8MB内存块:
/usr/bin/time -l dd if=/dev/zero of=/dev/null bs=8192k count=1
...
9195520 maximum resident set size
...