本文翻译摘录自“ComputerArchitecture : A Quantitative Approach (6th Edition)”。
多种级别的并行度现在已经成为各类计算机设计的强有力的推动力量,能耗和成本则是最主要的约束。在应用程序中有以下两种并行度:
1. 数据级并行(Data Level Parallelism,DLP),该类并行度的出现是因为需要数据的操作会同时进行。
2. 任务级并行(Task Level Parallelism,TLP),该类并行度的出现是因为许多创建的任务能够独立操作且大量采用并行方式执行。
进一步探索,计算机硬件可以分为如下四种并行度:
1. 指令级并行(Instruction Level Parallelism,ILP)在编译器的帮助下利用流水线的思想探索数据级并行,并利用推测执行的方式来探索中等级别的并行度。
2. 向量体系结构、图像处理单元和多媒体指令集(Vector Architecture,Graphic Processor Units,and Multimedia Instruction Sets)通过将一条单独的指令应用于一个数据集合来开发数据级并行。
3. 线程级并行(Thread Level Parallelism,TLP)在一种紧耦合的硬件模型中探索数据级并行或任务级并行,其允许并行线程之间进行交互。
4. 请求级并行(Req