片上处理器与多核系统

多线程支持多个线程以重叠方式共享单个处理的功能单元,但是开发线程级并行的一般方法是使用多处理器。

实现多线程的硬件方法主要有三种:

  1. 细粒度多线程, Fine-grained (interleaved) multithreading,每个时钟周期之间执行一个进程切换,采用轮询的方式。好处是:能够隐藏长短停顿而导致的吞吐损失;不足是:减缓了个体进程的执行速度。
  2. 粗粒度多线程, Coarse-grained multithreading,仅发生在成本较高的停顿时才切换进程,克服吞吐量损失的能力十分有限。
  3. 同步多线程SMT,Simultaneous multithreading ,是细粒度多线程的更进一步,指令集可以在相同周期在多个线程中进行切换。

处理器能力的差异:不支持多线程的超标量——支持粗粒度多线程的超标量——支持细粒度多线程的超标量——支持同步多线程的超标量。
超标量:

AAA
AAAA
AA
AA

粗粒度:

AAA
AAAA
AA
BBB
BBBB
BBBBB

细粒度:

AAA
BBBB
AA
BBBBB
AAA

同步多线程:

AAABBB
BBBBAA
ABBBBB
BBBAAA
AAA
BBBAA

CMP和SMT

CMP,片上多处理器,将多个计算内核集成在一个处理器芯片上,从而提高计算能力。
SMT 比CMP的资源利用率高,在克服延迟方面具有优势。

多核SMT和单核SMT

单核SMT:指令级别的并行,为了更快的执行任务必须增加时钟频率,能耗和热损非常大,越来越耗时的设计;
多核SMT:线程级别的并行,在同一个芯片上集成多核。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值