《OpenACC并行程序设计:性能优化实践指南》一 2.5 在多核系统中并行运行

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

2.5 在多核系统中并行运行

尽管本章使用了NVIDIA GPU,但OpenACC不是一个GPU编程模型,而是一种普遍适用的并行编程模型。尽管在2.4节中使用的循环优化技术仅适用于GPU,关于并行度和数据移动的技术手段适用于任意并行架构设备。本章使用的PGI编译器支持多种目标加速器,包括NVIDIA和AMD公司的GPU,以及多核x86 CPU。如果在多核CPU上开发和运行代码,将会发生什么呢?为多核目标平台重新编译代码,而不是将目标设定为tesla(见图2-29和图2-30)。

screenshot

如果运行可执行程序,它将在测试机的多核CPU上并行化各循环,而不是在GPU上运行了。通过设定ACC_NUM_CORES环境变量可以用来调整参与并行计算的CPU的核心数目。图2-31展示了调整核心数目后的加速比情况,该机器具有的最大核心数目是12。性能在使用超过4个CPU核之后保持稳定,这是因为测试程序的性能主要受制于CPU带宽。

screenshot

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
3月前
|
监控 网络安全 C语言
【2026最新】GX Works2安装使用保姆级教程(附安装包+图文步骤)
GX Works2是三菱电机官方PLC编程软件,专为FX/L/Q系列设计,替代GX Developer。支持梯形图、ST、SFC等多种语言,集成仿真调试、在线监控与结构化编程,功能更强、界面更优。(239字)
|
人工智能 NoSQL Redis
Collaborative Gym:斯坦福人机协作框架开源!异步交互+三方感知,让你的AI学会主动补位
介绍Collaborative Gym,一个专注于人机协作的框架,支持异步交互和多种任务环境。
716 14
Collaborative Gym:斯坦福人机协作框架开源!异步交互+三方感知,让你的AI学会主动补位
|
SQL 分布式计算 DataWorks
MaxCompute操作报错合集之使用sql查询一个表的分区数据时遇到报错,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
399 2
|
前端开发 关系型数据库 MySQL
开源测试平台横向测评系列『流马』篇:流马部署
【简介篇】 • 项目概述:技术栈、工作原理 • 项目功能简介:功能特点 【部署篇】 • 部署规划 • 依赖环境部署(JDK、MySQ、NGINX、Git、NodeJS、Python3) • 代码打包:克隆项目、前端代码打包、后端代码打包 • 项目部署:前端部署、后端部署、执行引擎部署
开源测试平台横向测评系列『流马』篇:流马部署
|
存储 Java 关系型数据库
28个案例问题分析---24---xxljob控制台不打印日志排查--xxljob问题
28个案例问题分析---24---xxljob控制台不打印日志排查--xxljob问题
1487 0
|
XML 算法 数据安全/隐私保护
Shiro -认证凭据(密码)加密的那些事
Shiro -认证凭据(密码)加密的那些事
404 0
|
存储 安全 Ubuntu
基于阿里云Linux系统安装宝塔面板详细教程
基于阿里云Linux系统安装宝塔面板详细教程
828 0
|
NoSQL 前端开发 Java
考研为了背单词,我手写了一个背单词小 app
考研为了背单词,我手写了一个背单词小 app
644 0
|
前端开发 JavaScript Java
前端开发神器Sublime3的安装及配置(mac版本)
前端开发神器Sublime3的安装及配置(mac版本)
455 0
前端开发神器Sublime3的安装及配置(mac版本)
|
小程序 Ubuntu JavaScript
7.4【微信小程序全栈开发课程】小程序上线--基于Ubuntu搭建小程序运行环境
上一节我们安装了nginx和SSL证书,这一节继续来搭建小程序运行环境
788 0

热门文章

最新文章