出版時間:2012-5 出版社:清華大學出版社 作者:羅秋明 等著 頁數(shù):308 字數(shù):480000
Tag標簽:無
內(nèi)容概要
《openmp編譯原理及實現(xiàn)技術》是一本學習openmp編譯原理和實現(xiàn)技術的入門級教材。全書分成三篇,第一篇是并行計算及openmp編程的基礎內(nèi)容,第二篇是openmp編譯及其運行環(huán)境,第三篇是實踐內(nèi)容。在第二篇中,以一般編譯器常見結構為主線,通過結合詳細的ompi源代碼分析向讀者介紹openmp編譯器的工作原理及其實現(xiàn)技術,具體包括詞法分析、語法分析、ast的結構、ast的生成及相關操作、openmp編譯制導指令的代碼變換,openmp線程與os線程庫的接口、運行環(huán)境等細節(jié)。openmp編譯制導指令的變換是openmp編譯的核心內(nèi)容,需要將openmp編譯制導指令的語義功能利用操作系統(tǒng)的線程庫來實現(xiàn),分成并行域管理問題、任務分擔和同步問題、變量數(shù)據(jù)環(huán)境問題三個核心內(nèi)容。第二篇的四章內(nèi)容分別給出了常見編譯器、性能測試丁具以及ompi源代碼的框架分析。
《openmp編譯原理及實現(xiàn)技術》是國內(nèi)第一本對openmp編譯器工作原理和實現(xiàn)細節(jié)進行闡述的圖書。本書是研究openmp編譯技術的研究人員和高校師生的入門教材,也是研究生和高年級本科生學習并行語言編譯技術相關課程的參考書。
書籍目錄
第一篇 基礎
第1章 并行計算基礎
1.1基本概念
1.2并行計算平臺
1.3并行程序設計技術
1.4本章小結
習題
第2章 openmp編程基礎
2.1openmp基本概念
2.2openmp編程
2.3本章小結
習題
第二篇 openmp編譯
第3章 openmp編譯
3.1openmp編譯系統(tǒng)
3.2openmp編譯器結構
3.3編譯優(yōu)化
3.4本章小結
習題
第4章 詞法與語法分析
4.1lex工具
4.2openmp/c的詞法分析
4.3scanner.l
4.4yacc工具
4.5openmp/c語法分析
4.6本章小結
習題
第5章 ast的創(chuàng)建
5.1中間表示
5.2ast節(jié)點數(shù)據(jù)結構
5.3ast節(jié)點維護函數(shù)
5.4ast的創(chuàng)建
5.5符號表
5.6本章小結
習題
第6章 并行域管理
6.1并行域及其嵌套
6.2并行域管理
6.3目標代碼形式
6.4ompi的并行域管理
6.5本章小結
習題
第7章 任務分擔與線程同步
7.1for制導指令
7.2sections制導指令
7.3single制導指令
7.4'nowar問題
7.5歸約操作
7.6線程同步
7.7本章小結
習題
第8章 數(shù)據(jù)環(huán)境控制
8.1共享與私有
8.2并行域邊界處理
8.3ompi數(shù)據(jù)環(huán)境控制
8.4本章小結
習題
第9章 產(chǎn)生目標代碼
9.1源代碼變換
9.2ast變換
9.3代碼優(yōu)化
9.4ast輸出
9.5本章小結
第10章 運行環(huán)境
10.1重要數(shù)據(jù)結構
10.2初始化與退出
10.3并行支撐函數(shù)
10.4openmp的api
10.5環(huán)境變量
10.6本章小結
第三篇 實踐篇
第11章 編譯器及測試工具
11.1常見openmp編譯器
11.2性能測試工具
11.3本章小結
第12章 ompi框架分析
12.1工作流程
12.2ompi的處理步驟
12.3代碼轉換
12.4進程問題
12.5運行環(huán)境
12.6源代碼文檔結構
12.7后續(xù)閱讀建議
12.8本章小結
第13章 ompicc.c源碼分析
13.1ompicc工作流程
13.2變量聲明及參數(shù)處理
13.3編譯部分
13.4鏈接部分
13.5主函數(shù)部分
13.6配置文件
13.7運行參數(shù)與選項.
13.8本章小結
第14章 ompi.c源碼分析
14.1ompi工作流程
14.2ompi.c
14.3ort.defs
14.4ompi.h
14.5小結
章節(jié)摘錄
版權頁: 插圖: 在學習OpenMP編譯技術之前,本章將介紹一些并行計算的基本概念和術語。首先是并行計算機結構模型,然后介紹幾種常見的并行計算機,接著將講述并行程序設計技術相關的計算模型、編程模型和并行程序設計方法,最后是OpenMP編程、MPI編程以及HPF及CUDA幾種主流的編程技術。其目的是讓讀者對并行計算及其軟硬件平臺形成比較完整的初步認識,以及了解它們與OpenMP的聯(lián)系。對于并行計算基本知識有所了解的讀者可以直接跳過本章內(nèi)容。 1.1 基本概念 首先來看看三個基本概念,即串行計算、并行計算和費林分類法。 1.串行計算 現(xiàn)有的大多數(shù)軟件都是按串行的形式編寫和執(zhí)行的,可以簡單但不太嚴格地描述成:在一臺計算機上的一個處理器(或處理器核)上運行;計算任務被分解成逐條執(zhí)行的指令序列;在任何一個時間點只有一條指令在執(zhí)行。 2.并行計算 并行計算(Parallel Computing)是指利用多個計算資源來完成計算任務,可以簡單但不太嚴格地描述成:使用多個處理器(或處理器核)來執(zhí)行程序;計算任務被分解為多個可并行執(zhí)行的部分;每個部分再繼續(xù)分解成一個指令序列;各部分的指令序列之間可以在不同處理器上同時執(zhí)行。 3.費林分類法 費林分類法(Flynn's Classical Faxonomy)將計算機按照指令流和數(shù)據(jù)流的多倍性將計算機分成了四種,大體上體現(xiàn)了計算機的并行性的基本特征。
編輯推薦
《計算機系列教材:OpenMP編譯原理及實現(xiàn)技術》是國內(nèi)第一本對OpenMP編譯器工作原理和實現(xiàn)細節(jié)進行闡述的圖書,深圳大學“計算機科學與技術國家特色專業(yè)建設點”的建設內(nèi)容之一。其設計目的有三點:銜接本科《編譯原理》課程、擴展0penMP并行語言編譯的知識、增強學生的動手實踐和編程能力,羅秋明和明仲等編著的《OpenMP編譯原理及實現(xiàn)技術》中以0penMP的一個開源編譯器——0MPi作為分析對象,作到理論與實踐緊密結合,為進一步學習和研究打下必要的基礎。《計算機系列教材:OpenMP編譯原理及實現(xiàn)技術》是研究OpenMP編譯技術的研究人員和高校師生的入門教材,也是研究生和高年級本科生學習并行語言編譯技術相關課程的參考書。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載