你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 专家论坛
OpenMP的多核并行程序设计(一)
 

    介绍一种多核并行编程标准OpenMP,对循环并行化的指令和使用方法进行详细解释,并给出实例证明使用OpenMP对多核环境下程序效率的提高。

关键词   OpenMP;多核;并行编程

 

1  引言

目前,主流CPU厂商都在致力于多核处理器的发展,大幅增加了芯片支持的并行能力,双核、四核处理器已十分普及,迟早有一天还会用上8核,甚至16核的CPU,随着多核CPU的不断普及以及软件复杂度的继续提高,如何有效地利用多核技术,对于多核平台上的应用程序员来说是个首要问题。客户端应用程序开发人员多年来一直停留在单线程世界,生产所谓的“顺序软件”,但在多核计算机系统中,多个进程和线程可以真正地并行运行,而不是像在单处理器系统中那样轮流地在CPU上运行,这样导致原有的单个程序运行速度并不能得到提高,要提高单个程序的运行性能,需要重新设计原有程序,将单个计算任务分解成多个并行的子任务,让这些子任务分别在不同的处理器核上运行。这样,需要采用不同的程序设计手段。随着多核时代的到来,并行程序设计将成为软件行业的必备知识和技能。

2  OpenMP

OpenMP是一种面向共享内存以及分布式共享内存的多处理器多线程并行编程语言,OpenMP标准形成于1997年,它是一种API,用于编写可移植的多线程应用程序。OpenMP程序设计模型提供了一组与平台无关的编译指令、指导命令、函数调用和环境变量,可以显式地指导编译器如何以及何时利用应用程序中的并行性。对于很多循环来说,都可以在其开始之前插入一条编译指导,使其以多线程执行,开发人员不需要关心实现细节,这是编译器和OpenMP线程库的工作,开发人员只需要认真考虑哪些循环应该以多线程方式执行,以及如何重构算法以便在多核处理器上获得更好的性能等问题。 
  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089