MPI分析程序Integrated Performance Monitoring for HPC(IPM)安装指南

本文主要是介绍MPI分析程序Integrated Performance Monitoring for HPC(IPM)安装指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、依赖环境安装
  • 二、安装Ploticus
  • 三、主程序安装
  • 四、mxml安装
  • 五、使用
    • 1.编译程序
    • 2.生成报告


前言

高性能计算集成性能监控Integrated Performance Monitoring for HPC(IPM) 是专门针对MPI程序设计的通信与性能监测器,该monitor除了可以查看每个函数的运行时间以外,还可以查看每个通信函数的时间,是用于MPI程序调优的开源利器。github上的官方传送门
下图是IPM监测CESM运行过程的结果图
示意图


一、依赖环境安装

对于centos系统,需要准备以下安装包

yum install autoconf
yum install automake
yum install libtool
yum install libpng-devel
yum install libmxml

ubuntu系统按照对应的包修改成apt-get install的版本即可

二、安装Ploticus

这个软件用来画图的,硬核玩家觉得不需要各种统计图可以略过,不然还是建议搞一下
下载

wget https://jaist.dl.sourceforge.net/project/ploticus/ploticus/2.42/ploticus242_src.tar.gz

解压并安装

tar xvf ploticus242_src.tar.gz
cd ploticus242/src
make

将以下语句加入~/.bashrc

export PATH=/path/to/ploticus242/src:$PATH

三、主程序安装

代码如下(示例):

下载并快速安装

git clone https://github.com/nerscadmin/IPM.git IPM-master
cd IPM-master
./bootstrap.sh

接着进行configure操作

./configure –prefix=/path/to/IPM --enable-coll-details --enable-parser

在utils/Makefile里的LIBS中添加 -lmxml 和 -lpthread
如果报错提示无法找到-lmxml,请先安装mxml,安装方法在后面
编译安装

make && make install

接着修改~/.bashrc

export PATH=/path/to/ploticus242/src:/path/to/mxml/bin:/path/to/IPM/bin:$PATH
export LD_LIBRARY_PATH=/path/to/mxml/lib:/path/to/IPM/lib:$LD_LIBRARY_PATH
export MANPATH=/home/cesmtest/CESM/IPM/IPM-master/utils/mxml/include:$MANPATH
export IPM_REPORT=full
export IPM_REPORT_MEM=yes
export IPM_LOG=full
export IPM_KEYFILE=/path/to/IPM/ipm_key_mpi

到此为止就算是安装好了

四、mxml安装

参考这个
https://blog.csdn.net/Travelerwz/article/details/82696673

五、使用

使用IPM需要将IPM编译进程序中

1.编译程序

该方法需要将IPM加入到编译选项中,编译MPI程序的时候在编译选项里加入

mpicc my_code.c -o my_code.x -L/path/to/IPM/lib -lipm -lipmf

其中-lipmf是fortran情况下需要加的

2.生成报告

按原先方式执行程序,当前目录下会生成xml文件,类似:root.1524511933.141544.ipm.xml,执行:

ipm_parse –html root.1524511933.141544.ipm.xml

即可生成报告
报告如下
完整IPM报告

这篇关于MPI分析程序Integrated Performance Monitoring for HPC(IPM)安装指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/249639

相关文章

SQLite3命令行工具最佳实践指南

《SQLite3命令行工具最佳实践指南》SQLite3是轻量级嵌入式数据库,无需服务器支持,具备ACID事务与跨平台特性,适用于小型项目和学习,sqlite3.exe作为命令行工具,支持SQL执行、数... 目录1. SQLite3简介和特点2. sqlite3.exe使用概述2.1 sqlite3.exe

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存