笔记:并发与并行

读《深入理解计算机系统》

第一章

并发concurrent:有多个活动在时间上重叠,称为并发,并不一定要求活动同时执行,可以是交替执行的。

并行parallelism:多个活动同时执行。

并行的3个层次:

1、线程级并行

单处理器系统线程只能通过交替执行模拟并行,并发。

此外还有超线程,是允许一个cpu执行多个控制流的技术。cpu的某些硬件有多份,比如程序计数器和寄存器,而其他硬件只有1份,比如浮点运算单元。这种处理器切换线程速度很快,在一个线程等待数据加载到高速缓存的时候,可以执行另外一个线程。比如i7处理器可以让一个核执行2个线程,尽量提高核的效率。

多处理器则可以利用硬件进行线程级并行。

2、指令级并行

cpu的流水线设计可以并行处理不同指令的不同部分。而超标量操作还允许同时执行多个计算指令。

3、单指令多数据量simd

即向量化计算。

posted @ 2013-06-16 19:55  _pop  阅读(295)  评论(0编辑  收藏  举报