TL;DR

sudo apt install valgrind-mpi

内存泄漏和越界问题,是C/C++程序常见问题。有一些工具提供了检测内存泄漏的功能,如 valgrind 的 memchecker。

其工作原理大致是这样的:通过替换掉可能分配内存的函数,来追踪内存使用情况,典型如重载 malloc/free。当然,这也就意味着,栈上分配的静态数组越界是无法检测到的。

valgrind最早用于单进程内存检测,但是后续也提供了多进程支持,如MPI。手工编译安装valgrind比较麻烦,这里我们使用包管理器提供的预编译好的版本。

安装valgrind:

sudo apt install valgrind

然后查看系统中此时是否提供了mpiwrapper:

ompi_info | grep mpi

输出为空,默认没有提供mpiwrapper,通过以下命令安装:

sudo apt install valgrind-mpi

再次执行命令查看,可以看到:

libmpiwrap-amd64-linux.so

mpi支持库已经安装。

ps:

常见问题测试样例和检测命令,可参考@Madcola Linux下内存问题检测神器:Valgrind

系统环境:

  • Ubuntu 18.04 LTS
  • Open MPI v4.0.4

最新文章

  1. 05.LoT.UI 前后台通用框架分解系列之——漂亮的时间选择器
  2. MongoDB-基础-条件操作符
  3. 微信小程序:原生热布局终将改变世界
  4. 基于socket的TCP和UDP编程
  5. TIJ——Chapter Seven:Reusing Classes
  6. HR常用事务代码
  7. WPF学习之路(十一)布局(续)
  8. delphi 生成网卡MAC地址
  9. MyBatis知多少(22)MyBatis删除操作
  10. css选择器选择顺序是从右往左的,为什么?
  11. APP测试基本流程
  12. CSS3之3D效果中的transform运用
  13. tomcat运行时JVM参数调整
  14. Jmeter返回参数值写入文件《一》
  15. Linux新手随手笔记1.5
  16. 洛谷2860 [USACO06JAN]冗余路径Redundant Paths
  17. Linux巩固记录(2) java项目的编译和执行
  18. Oracle 之 表新增字段后修改字段顺序
  19. hdu 1532 最大流
  20. 解决Xcode "The selected destination does not support the architecture " 错误错误

热门文章

  1. SpringMVC学习之使用注解编写SpringMVC程序
  2. 一次django内存异常排查
  3. bzoj 2225 [Spoj 2371]Another Longest Increasing
  4. centos7与centos6命令差异
  5. idea修改maven项目版本号
  6. Canal简介
  7. What is 测试金字塔?
  8. ios签名app稳定不掉签技术详细教程详解
  9. 19-关键字package和import
  10. C、C++、boost、Qt在嵌入式系统开发中的使用