首页| JavaScript| HTML/CSS| Matlab| PHP| Python| Java| C/C++/VC++| C#| ASP| 其他|
购买积分 购买会员 激活码充值

您现在的位置是:虫虫源码 > PHP > OpenMP编译原理及实现技术

OpenMP编译原理及实现技术

  • 资源大小:4.28M
  • 上传时间:2021-09-16
  • 下载次数:0次
  • 浏览次数:0次
  • 资源积分:1积分
  • 标      签: 一般编程问题

资 源 简 介

OpenMP编译原理及实现技术,详细讲解了opemMP的语法和编译原理,是一本入门教材,是文字版的PDF如果对σρenMP编译有一定了解,并希望掌握OMPi的具体编码实现技术,可以从第12章开始阅读,将整伓極榘看完,再根据需要返回第二篇阅读编译细节限于作者的学识水平,书中难免有不少错误和不足,恳请读者批评指正。作者在编写本书时深感“抛砖引玉”一词不仅仅是场面上的客套话,更是作者的内心体会和期望。致谢木书得以顺利完稿,是许多人的共同努力!在此首先要感谢陈国良院士的支持和帮助。陈院士于2009年到深圳大学主持计算机与软件学院的教学科研的全面工作,作者作为其高性能团队成员有幸参与了众多高性能计算的科研工作,包括参与全国产万亿次个人髙性能计算机KD-60研制、作为核心人员研制了SD-1PHPC以及正在进行基于龙心处理器的SD-30十万亿次全国产化高性能计算机的研制等等。在这些L作中,作者萌发∫编与◎ρenMP编详方面的书籍,陈院士表小认可和支持并给出」非常有价值的意见和建议,这就是本书得以编写并顺利完稿的最初原因。其次需要感谢明仲教授,在本书的最初构思、规划和资料整理的初期,明仲教授不仅阅读了初步的稿件材料)给出了大量的指导和修改意见,对后期稿件也提出了许多建设性意见刘刚老师编写了第·章的部分内谷和第二章的大部分内容,毛睿老师参与了多个章节的编与和订正工作,陆克中老帅阅读∫初期的稿件并给出了有益的意见。正因为有了这几位老帅的贡献,使本书的编写质量和水平得以提高。另有两位硏宄生参与了本书的编写,孔畅同学完成了第11章的所有实验并编写了该章内容,刘成健同学是该书的第一位真正意义上的读者,并参与了稿件查错订正工作。对于深圳大学高性能计算团队中给本书编写工作提供了各种帮助的老师和同学,不能一尽数,在此一并表小衷心的感谢!目录第一篇基础第1章并行计算基础…1.1基本概念.12并行计算平台12.1典型结构…1.2.2SMP1.23 NUMA2, 4 GPU1.2.5 Cluster101.3并行程序设计技术…13131并行程序设计.141.3.2 OpenMP61.3.3MP|.1613. 4 CUDA171.3.5HPF,1814小结.18第2章 opeNMp编程基砷.….192.!1 OpenMP基本概念1921.1执行模式.19212 OpenMP编程要素022 OpenMP编程22221并行域管理.23222任务分担…24223同步22.4数据环境控制823小结44第篇 OpenMP编译46第3章 OpenMP编译473.1 penMP编详系统…4731.1编译系统4731.2日标语言483.2 OpenMP编译器结构32.1功能模块……50322工作流程……3.3编译优化.5434小结…54第4章词法与语法分析∴着面看着看564.1Lex工具56411Lex的正则表达式412Lex使用方法5942 Open MP/C的词法分析421C语言单词…6142.2 OpenMP单词4230 penMP与C语言公用单词624.3 scanner. I62431全局声明段看着432模式匹配规则段…644.33补充函数段…:::::·:1694.3, 4 scanner. c724.3.5 scanner. h4.4Yacc工具……4.4.1 Yacc442Yacc文件实例450 penMP/C语法分析784.6小结81第5章AST的创建……5.1中间表小…825.11两种中间表示形式……8251.2中间表示的选择52AST节点数据结构84521语句节点45.2.2类型说明节点.87523声明节点88524表达式节点89525 OpenMP制导节点53AST节点维护函数…9554AST的创建…964.1语法制导翻译542例1 OpenMP的for节点543例2C语言 while语句544 Helloworld.c的AST…1015.5符号表…103551字符串表104552符号表105553符号表操作…着面看106554作用域管理10756小结107第6章并行域管理1086.1并行域及其嵌套,62并行域管理11062.1线程无关接口11062.2线程的供给111623线程层次关系11162.4并行域代码封装与标识113625任务分担问题11363日标代码形式.a::::::a:::::aaa:::..a.aa.:::::a11464OMpi的行域管理.115641ORT统一界面115642并行域代码变换11764.3线程管理与控制…118644总览1226.5小结123第7章任务分担与线程同步…1257.1for制导指令1257.11for任务分担…1257.1.2循环变量分解原则.1267.13日标代码功能…127714目标代码形式1287.15OMPi的for制导指令7.2 sections制导指令1357.21 sections任务分担描述1357.22 section划分原则1367.23目标代码功能.…1367.24目标代码形式…1367.25oMPi的 sections制导指令1387.3 single制导指令……13974 nowait问题.1407.5归约操作14176线程同步1437.6.1 atomic1437. 6.2 critical∴1437.6.3 master.1447.6.4 ordered1447.6.5 nowait1457.6.6 flush1457.6.7 barrier1467.7小结146第8章数据环境控制.::::::.:::::::::1471共享与私有.………147811非全局变量的共享148812变量的私有化…813 threadprivate了句….814基于进程的问题……15182并行域边界处理着·着·D看·,·,,1着821 private变量15182,2 threadprivate变量1518.3◎MPⅰ数据环境控制…152831共亨变量152832私有变量153833线程专有变量156834归约变量∴15984小结160第9章产生目标代码1629.1源代码变换…1629.1.1变换流程162912支撑函数16492AST变换921拼接及创建函数164922变换函数集1659230 opeNMp节点变换.16892.4 parallel变换172925for变换1759.2.6 sections变换…1y77927数据环境的处理17893代码优化.18094AST输出18941OMPi的AsT输出181942 OpenMP节点输出95小结..185第10章运行环境18610.1重要数据结构.8610.1.1ORT…….………………………186101.2线程池与EECB187101.3任务分担结构1881014共享变量结构10.2初始化与退出.1911021ORT初始化1921022EELB初始化19410.3并行支撑函数10.31线程状态管理19610.32并行域管理1981033任务分担…2031034同步21210.35变量的数据环境10.4 penMP的AP|2141041AP|函数21410.42CV变量2161043引用与链接21710.5环境变量….2170.6小218第三篇实践篇219第11章编译器及测试工具.220111常见 OpenMP编译器2201111GCC编译器220111.,2OMPi编译器2221113ommi编详器看。·22411.2性能测试工具22611.2.1 EPCC Microbenchmark22611.2.2 NSA Parallel Benchmark23311.2.3 SPEC OMP2001.23411.2.4 LLNL234113小结235第12章OMPi框架分析.23612.1工作流程236122oMPi的处理步骤23712.3代码转换241124进程问题.2421241全局变量243242非全局共享变量24412.5运行环境.…12441251初始化2441252并行域的处理2451253任务分担2451254同步2461255线程专有变量247125.6与EELB的接口24812.6源代码文档结构.24912.7后续阅读建议…着·,249128小结…250第13章 ompICC. C源码分析13.1 ompICC工作流程..25113,2变量声明及参数处理133编译部分2621331文件名处理2631332预处理…2641333代码变换2651334C编译266134链接部分……26713.5主函数部分2691351参数及配置函数…2691352man函数27113.6配置文件.27413.7运行参数与选项277137.1环境变量278372命令行参数2791373配置文件138小结282第14章 ompl. C源码分析283141ompi工作流程14.2 ompl. C…2841421变量声明及辅助函数2841422main函数2871423错误处理29314.3 ort, defs293
VIP VIP
0.167800s