《OpenACC并行程序设计:性能优化实践指南》一 3.10 使用Score-P和Vampir记录OpenACC运行时事件

简介: 本节书摘来自华章出版社《OpenACC并行程序设计:性能优化实践指南》一 书中的第3章,第3.10节,作者:[美] 罗布·法伯(Rob Farber),更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.10 使用Score-P和Vampir记录OpenACC运行时事件

编译器和运行时在实现OpenACC指令时有一定的自由度。因此,检查编译器和运行时对OpenACC指令转换和最终程序执行非常重要。例如,kernels指令触发设备初始化、设备内存分配和没有明确指定相应操作的数据传输。OpenACC 2.5引入的分析接口定义了一组事件,这些事件揭示了OpenACC指令的实现和执行细节。这使得Score-P之类的工具能够测量OpenACC区域的持续时间、在主机上的等待时间和任务提交开销,以及跟踪加速器上的内存分配。例如GPU内核开始和结束时间、CPU和GPU数据传输等更多的GPU事件可以使用CUDA的CUPTI接口或OpenCL库包装(Dietrich & Tschüter, 2015)。OpenACC事件将低级别加速器事件与应用程序的源代码相关联。OpenACC事件被标记为隐式或显式的,并且根据它们的类型,还可以提供有关数据传输的变量名或内核启动操作的内核名称的信息。
图3-12展示了Vampir可视化使用MPI、OpenMP和OpenACC的应用程序的执行间隔。在所选间隔中,两个MPI进程执行相同的程序区域,每个运行两个OpenMP线程和带有两个CUDA流的一个GPU。加速器活动是异步的,但是主机大部分时间在等待加速器活动的完成。例如,右边的调用树显示更新构件触发加速器向CPU的数据拷贝和等待操作。OpenACC和OpenMP区域使用文件名和行号注释以便于源代码相对应。

screenshot

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
9月前
|
Ubuntu 安全 Linux
从旧到新:全面升级 Ubuntu 系统指南
为保障新装系统的安全,建议尽早创建快照。**利用VMware快照功能保障系统安全并方便恢复。**在相应位置悬停鼠标,即可查看详细信息。选择左侧的选项,为该虚拟机拍摄快照,并在拍摄快照的过程中,关闭所有正在运行的软件以确保备份过程迅速完成。
|
5月前
|
监控 网络协议 安全
《DNS解析+HTTPS配置:网站加密访问从0到1深度解析》
本文聚焦HTTPS配置与DNS解析的协同逻辑,拆解二者从基础部署到进阶优化的全流程实践。文章指出,DNS解析需根据服务器部署模式选择A记录或CNAME记录,通过动态调整TTL值、开启DNSSEC与多线路解析,提升解析精准度与稳定性;HTTPS配置核心在于构建加密信任体系,需按场景选型证书,保障证书链完整,优化加密套件并做好生命周期管理。二者协同可通过配置HSTS记录、结合CDN实现全链路加密与加速。此外,还分享了OCSP Stapling、SAN证书应用等进阶技巧,强调配置后需通过多维度验证与“监控-优化”闭环维护,帮助开发者构建安全、高效、稳定的网站访问链路。
347 8
|
6月前
|
人工智能 运维 自然语言处理
国家网信办发布的第十四批深度合成算法备案综合分析报告
截至2025年11月,全国深度合成算法备案达5100款,广东以1329款居首,服务提供者占比77.1%。第14批新增680款创新高,医疗、教育、企业服务成主流方向,多模态与垂直领域加速发展,AI合规进入“政策+市场”双驱动新阶段。
|
10月前
|
人工智能 自然语言处理 大数据
互联网医院智能导诊系统的技术实现原理
互联网医院智能导诊系统利用人工智能与大数据技术,通过自然语言处理、医学知识图谱、多模态交互等技术,实现患者症状的智能识别与科室匹配,提升挂号效率与准确率,优化就医流程。
589 10
|
存储 安全 Linux
【实战指南】7个设置/获取接口了解Linux时间管理
本文系统介绍了Linux时间管理中的7个关键设置/获取接口,涵盖时间获取(如`time`、`gettimeofday`、`clock_gettime`)、时间设置(如`stime`、`settimeofday`、`clock_settime`)以及时间转换和格式化等内容。文章详细解析了绝对时间和相对时间的概念,包括GMT、UTC及本地时间的区别,并通过实例测试展示了各接口的使用方法与特性。此外,还探讨了时区设置对时间计算的影响,强调在实际开发中推荐使用UTC作为基准时间以避免时区变化带来的问题。总结部分结合项目经验,提醒开发者注意时间服务的重要性及潜在风险,例如时间跳跃可能引发的应用故障。
939 121
【实战指南】7个设置/获取接口了解Linux时间管理
|
缓存 测试技术 API
解锁开源模型高性能服务:SGLang Runtime 应用场景与实践
SGLang 是一个用于大型语言模型和视觉语言模型的推理框架。
|
城市大脑 人工智能 监控
城市大脑 | 智慧应急综合解决方案
本文介绍了城市大脑 | 智慧应急综合解决方案的方案概述,方案价值及优势以及最佳实践。
城市大脑 | 智慧应急综合解决方案
|
Shell Linux Perl
linux服务器自动生成本地快照
【8月更文挑战第28天】本文介绍了在Linux服务器上通过两种常见方式创建本地快照的方法:Btrfs文件系统与LVM。Btrfs原生支持快照功能,操作简单快捷;LVM则提供了灵活的逻辑卷管理,可在不影响原始数据的情况下创建快照。文章详细列出了创建、查看、挂载及清理快照的具体步骤,并提供了一个自动化的Shell脚本示例,便于用户根据需求定期创建快照并清理过期快照。
794 3
解决ERROR: Cannot uninstall ‘PyYAML‘. It is a distutils installed project and thus we cannot accuratel
解决ERROR: Cannot uninstall ‘PyYAML‘. It is a distutils installed project and thus we cannot accuratel
2540 0
解决ERROR: Cannot uninstall ‘PyYAML‘. It is a distutils installed project and thus we cannot accuratel

热门文章

最新文章