- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
并行计算与多核程序设计_陈天洲_多核软件工具介绍
第八章 多核软件工具介绍-web课件
首页上一页下一页末页返回???
多核程序设计技术由于其推动来源是从芯片厂家开始,所有各芯片厂家都推出了一系列有效工具,包括编译器、性能分析器、数学库以及线程相关的工具。本章节主要介绍英特尔多核芯片上的软件工具。
第1节 C++编译器
1.1? 编译器对多核的支持
以下是英特尔C++编译器的主要功能与优点:
???????? 支持英特尔多核心处理器以及现有的英特尔处理器与体系结构,针对最新英特尔处理器的先进优化功能可以帮助产生出众的应用程序性能。
???????? 与针对 IA-32 的 Microsoft Visual C++、Microsoft Visual C++ 6.0 代码以及 Microsoft Visual C++ .NET 保持跨体系结构的兼容性。
???????? 针对最新英特尔处理器的先进优化功能可以帮助产生出众的应用程序性能。
Linux
Windows
作用
-O0
/Od
禁止优化
-g
/Zi
生成标记
-O1
/O1
优化二进制代码
-O2
/O2
优化速度(默认)
-O3
/O3
优化数据缓存
表1、普通优化开关
???????? 作为插件嵌入针对 IA-32 的 Microsoft Visual Studio* 开发环境,并提供一个嵌入 Microsoft Visual Studio .NET 环境的预览插件。
???????? 在 IA-32 上使用“英特尔 C++ 编译器”可以控制堆栈,以便高效率地执行浮点 (FP) 指令。
???????? 对于包含许多常用中、小函数的程序,特别是循环内包含调用的程序,使用“过程间优化”(IPO) 可以极大地提高应用程序性能。
???????? 通过更有效地使用指令调度与高速缓存,充分利用处理器微体系结构的优势。通过减少指令缓存反覆、重新组织代码布局、缩减代码长度并降低分支预测失误,“档案导引优化”(PGO) 可以更好地执行分支预测。
???????? 使用“编译器代码覆盖工具”可以提高开发效率、减少缺陷及改善应用程序性能。
???????? 支持采用处理器调度与“第三代数据流单指令多数据扩展指令集”(SIMD) 的 IA-32 体系结构,支持SSE、SSE2、SSE3指令,且能够使用自动矢量器对 IA-32 代码进行自动并行化处理,最大限度发挥处理器的潜在能力。
???????? 支持“英特尔扩展内存 64 位技术”(英特尔EM64T)。
???????? 通过执行断定的指令从程序序列中完全删除这些分支,从而形成更大的基本代码块,并消除相关的预测失误所造成的损失。
???????? 使用分支指令、推测以及软件管道技术,改善针对英特尔安腾 2 微体系结构的代码。
???????? 支持 OpenMP* API与自动并行功能,提供多线程应用程序支持。
???????? 产生符合 ANSI C/C++ 与 ISO C/C++ 标准的软件。
???????? 提供安全功能,通过执行堆栈帧运行时错误检查,减少缓冲区溢出安全攻击漏洞。
???????? 支持英特尔调试器与线程诊断工具。
?
英特尔C++ 编译器支持以下语言标准:
???????? ANSI/ISO 标准,用于 C 语言编译 (ISO/IEC 9899:1990)
???????? ANSI/ISO 标准 (ISO/IEC 14882:1998) 用于 C++ 语言
???????? OpenMP* 规范 2.5 版
英特尔C++编译器与其他常用工具保持兼容,可以集成到广泛使用的开发环境,并且同其他广泛使用的编译器保持着特性源与二进制方面的兼容性,如图8.1、图8.2所示。它还集成了 Microsoft Visual Studio 2005、Visual Studio .NET* 2002/2003 以及 Visual Studio 98,并提供扩展 32 位和 64 位多核英特尔处理器支持。
图8.1 集成了英特尔C++编译器的Visual Studio
图8.2 在Visual Studio项目属性中的英特尔C++编译器开关
1.2? C++编译器实验
实验要求(本章中所有实验均按照此标准)
硬件
???????? 英特尔多核处理器
???????? 512 MB 内存
???????? 20 GB 硬盘
???????? 支持32位像素显卡
软件
???????? Windows XP* SP2
???????? Microsoft Visual Studio* .NET 2003
???????? 英特尔 C++ 编译器 9.0 或更高版本
???????? 英特尔 VTune性能分析器 7.2 或更高版
您可能关注的文档
最近下载
- 猴哥托福词频9000打印版7.0.xls VIP
- 市场部及市场部经理职责.docx VIP
- 第一章前厅印象及岗位服务 (2).docx VIP
- 2025四川蜀道养护集团有限公司招聘15人笔试模拟试题及答案解析.docx VIP
- GB 50021-2001(2009年版) 岩土工程勘察规范.pdf
- 2025四川蜀道养护集团有限公司招聘15人考试备考题库及答案解析.docx VIP
- 中职《信息技术(基础模块)下册》教案 项目7 信息安全基础.docx VIP
- 兰州石化5万吨甲基丙烯酸甲酯项目5-安全预评价报告.pdf VIP
- 真菌说课课件PPT.pptx VIP
- 历史学本科学术讲座-历史学研究内容与方法.pptx
文档评论(0)