并发 并行:并发,指一个同时具有多个活动的系统。并行,指用并发来使一个系统运行得更快,可以在系统的多个抽象层次上使用。
线程级并发
单处理器系统,对于并发的支持,都是通过在正在执行的进程间快速切换来实现的,这种并发是模拟出来的。
多处理器系统,由单操作系统内核控制的多处理器组成的系统。
a. 多核处理器,将多个CPU集成在一个集成电路芯片上
b. 超线程,允许一个CPU执行多个控制流的技术
CPU的部分硬件存在多个备份(如程序计数器、寄存器文件),而其他硬件只有一份(如浮点算数运算单元)。
超线程处理器能够在单个周期(常规处理器大约需要20000个时钟周期)的基础上决定要执行哪一个线程。假设一个线程必须等到某些数据被装载到高速缓存,此时CPU就可以继续执行另一个线程,以此达到单个核并行执行2个线程的目的。
指令级并行
指令级并行,处理器可以同时执行多条指令的属性。
如使用流水线(pipelining),将执行一条指令所需要的活动划分为不同的步骤,将处理器硬件组织成一系列的阶段,每个阶段执行一个步骤。这些阶段可以并行的操作,用来处理不同指令的不同部分。以达到接近一个周期一条指令的执行速率。
处理器的执行速率可以达到比一个周期一条指令更快的时候,称之为超标量处理器。
单指令,多数据并行
单指令、多数据(SIMD并行),现代处理器拥有特殊的硬件,允许一条指令产生多个可以并行执行的操作。
就爱阅读www.92to.com网友整理上传,为您提供最全的知识大全,期待您的分享,转载请注明出处。
来源: