出版時(shí)間:2012-8 出版社:東軟電子出版社 作者:騰英巖 編 頁數(shù):166
內(nèi)容概要
本教材按照多核程序開發(fā)流程的六個(gè)步驟:項(xiàng)目描述、可并行性分析、確定分解模式、設(shè)計(jì)并行算法、選取編程模型和程序優(yōu)化展開,包括四章內(nèi)容:
第1章簡(jiǎn)單回顧從流水線、超標(biāo)量到并行計(jì)算對(duì)計(jì)算能力的提升,詳細(xì)介紹了多線程技術(shù)以及目前多核處理器的架構(gòu)和多核程序的設(shè)計(jì)方法。多核程序開發(fā)流程為初學(xué)者進(jìn)行多核程序的設(shè)計(jì)與實(shí)現(xiàn)提供了一種有效的方法和思路。
第2章系統(tǒng)地介紹了Windows線程庫。詳細(xì)闡述了利用Windows多線程API創(chuàng)建線程、管理線程以及實(shí)現(xiàn)線程同步的方法。
第3章介紹了OpenMP編程模型的編程方法。包括OpenMP編譯環(huán)境的搭建,OpenMP編譯指導(dǎo)的使用,以及運(yùn)行時(shí)庫函數(shù)的功能等內(nèi)容。
第4章首先介紹了衡量并行程序性能的指標(biāo),然后介紹如何利用Intel Parallel
Studio的工具測(cè)量程序得到其性能指標(biāo),以及找到程序瓶頸并改進(jìn)程序的方法。
為了便于教師授課,我們提供了每章的電子課件,這些電子課件也融合了我們多核多線程技術(shù)課程講授的教學(xué)方法和手段。
書籍目錄
第1章多核程序設(shè)計(jì)基礎(chǔ)
1.1計(jì)算能力的演進(jìn)
1.2并行計(jì)算
1.2.1并行計(jì)算思想
1.2.2并行計(jì)算機(jī)的分類
1.3多線程技術(shù)
1.3.1線程概念回顧
1.3.2傳統(tǒng)多線程
1.3.3同時(shí)多線程(SMT)
1.4多核處理器的架構(gòu)與多核程序設(shè)計(jì)
1.5多核程序開發(fā)流程
1.5.1多核程序設(shè)計(jì)
1.5.2編程模型與實(shí)現(xiàn)
1.5.3性能調(diào)優(yōu)
本章小結(jié)
習(xí)題
第2章Windows API多線程編程模型
導(dǎo)引項(xiàng)目: 生產(chǎn)者—消費(fèi)者問題
2.1Windows線程庫介紹
2.2Windows API的基本使用
2.2.1內(nèi)核對(duì)象
2.2.2線程管理
2.2.3簡(jiǎn)單的例子
2.3Windows API的線程同步
2.3.1臨界區(qū)
2.3.2事件
2.3.3信號(hào)量
2.4線程池
2.5生產(chǎn)者—消費(fèi)者問題的實(shí)現(xiàn)
本章小結(jié)
習(xí)題
項(xiàng)目訓(xùn)練:Windows API多線程編程
模塊一:基礎(chǔ)模塊
模塊二:臨界區(qū)模塊
模塊三:事件模塊
模塊四:信號(hào)量模塊
第3章OpenMP多線程編程模型
目錄導(dǎo)引項(xiàng)目:基于OpenMP的圓周率計(jì)算
3.1OpenMP編程簡(jiǎn)介
3.1.1OpenMP編程基礎(chǔ)
3.1.2編譯環(huán)境的搭建
3.2OpenMP的基本用法
3.2.1線程的創(chuàng)建
3.2.2針對(duì)for循環(huán)的并行化
3.3數(shù)據(jù)競(jìng)爭(zhēng)
3.3.1數(shù)據(jù)的共享與私有化
3.3.2有效的數(shù)據(jù)規(guī)約
3.3.3線程同步
3.4線程的調(diào)度優(yōu)化
3.4.1static調(diào)度策略
3.4.2dynamic調(diào)度策略
3.4.3guided調(diào)度策略
3.4.4runtime調(diào)度策略
3.4.5對(duì)比分析
3.5其他常用編譯指導(dǎo)子句
3.5.1sections與section子句
3.5.2single子句
3.5.3master子句
3.6OpenMP的常用庫函數(shù)
3.7OpenMP多線程程序的性能分析
3.7.1OpenMP并行化的開銷
3.7.2負(fù)載均衡
3.7.3線程同步開銷
3.8基于OpenMP的PI計(jì)算項(xiàng)目的實(shí)現(xiàn)
3.9求有限區(qū)間內(nèi)素?cái)?shù)個(gè)數(shù)的項(xiàng)目實(shí)現(xiàn)
本章小結(jié)
習(xí)題
項(xiàng)目訓(xùn)練:OpenMP多線程編程
模塊一:基礎(chǔ)模塊
模塊二:數(shù)值積分計(jì)算Pi值
模塊三:Monte Carlo計(jì)算Pi值
第4章多核程序性能調(diào)優(yōu)
導(dǎo)引項(xiàng)目:基于Intel Parallel Studio工具的質(zhì)數(shù)個(gè)數(shù)查找調(diào)優(yōu)
4.1并行化程序性能指標(biāo)
4.1.1加速比和效率
4.1.2Amdahl定律
4.1.3粒度
4.1.4負(fù)載平衡
4.2Intel Parallel Studio工具
4.2.1Intel Parallel Studio概述
4.2.2Intel Parallel Composer
4.2.3Intel Parallel Inspector
4.2.4Intel Parallel Amplifier
4.3性能優(yōu)化方法
4.3.1性能優(yōu)化定義
4.3.2不同級(jí)別的性能優(yōu)化
4.3.3性能優(yōu)化循環(huán)
4.3.4并行應(yīng)用性能優(yōu)化方法
4.3.5常用優(yōu)化方法
4.4多線程程序開發(fā)方法學(xué)
4.4.1程序開發(fā)及優(yōu)化周期
4.4.2程序開發(fā)優(yōu)化周期軟件工具使用
4.4.3案例分析
4.5基于Intel Parallel Studio工具的質(zhì)數(shù)
個(gè)數(shù)查找調(diào)優(yōu)項(xiàng)目的實(shí)現(xiàn)
本章小結(jié)
習(xí)題
項(xiàng)目訓(xùn)練:多線程編程綜合實(shí)踐項(xiàng)目
附錄1教學(xué)設(shè)計(jì)與實(shí)施方法
附錄2英特爾認(rèn)證介紹
圖書封面
評(píng)論、評(píng)分、閱讀與下載