面向英特尔® MIC 架构的编译器方法
英特尔® Composer XE 2013 入门,编译器标注与指示
概述
面向英特尔® MIC 架构的编译器方法
英特尔® Composer XE 2013 入门,编译器标注与指示
概述
新用户编译器基本用法
本章面向英特尔编译器的新用户,或者不太熟悉用于控制优化、矢量化与浮点计算的普通编译器选项的用户。了解编译器、优化、矢量化和重要编译器选项及其用法是十分重要的。本章还介绍重要的环境变量和标注/指示以便控制编译过程和运行时间特征。
目标
内存布局转换
概述
本章节介绍了一种非常实用的用户代码转换:从结构数组 (AoS) 的数据组织方式转换为数组结构 (SoA) 的组织方式。该转换有助于编译器更加高效地访问处理器上的数据。
缓存模块化技术
概述
一类重要的算法变化涉及模块数据结构以便能够适应高速缓存。通过合理组织数据内存访问,用户可以使用大型数据集中的一小部分来加载高速缓存。此方法也适用于缓存中的该数据模块。通过使用/重复使用高速缓存中的数据,我们可显著降低内存访问需求(减少内存带宽压力)。
主题
概述
尽管大多数代码几乎无需更改即可在英特尔® 集成众核架构(英特尔® MIC 架构)上运行,然而如欲实现高效运行,可能需要对用户源代码进行更改。本章探讨了一些与用户源代码更改相关的通用算法问题,以支持应用实现最佳性能。
主题
应用不能实现最佳性能的原因之一可能是代码受内存宽带的限制。例如,如果没有面向高速缓存架构对代码进行模块化封装,从而导致高速缓存未命中,这种现象便会发生。另一个原因可能是,由于无规律的内存访问导致代码仅实现了部分矢量化。在这种情况下,为了提升应用性能,程序员需要更改算法。您可以在下面的论文中找到关于此类算法更改的更多信息:
面向英特尔® MIC 架构的编译器方法
面向英特尔® MIC 架构进行应用的适用性分析
英特尔® 集成众核架构(英特尔® MIC 架构)提供的产品家族已面向高度并行化应用或应用内的高度并行化内核进行了优化。英特尔® 至强融核™ 协处理器便是其中一款产品。
面向英特尔® MIC 架构的编译器方法
英特尔® 集成众核架构(英特尔® MIC 架构)提供的产品家族已针对高度并行化应用或应用内的高度并行化内核进行了优化。英特尔® 至强融核™ 协处理器便是其中一款产品。
PART 0: “Introduction”