知识卡片

超线程的本质与适用负载

专业/工作 · 1106.c

内容

超线程在一个物理核内提供两个逻辑执行线程,但两个线程共享同一套流水线、执行单元和缓存,本质是复用超标量流水线里本就存在的多路执行单元,减少因指令依赖造成的执行单元闲置,而非凭空变出一倍算力。对IPC(每周期执行指令数)已经很高的计算密集型应用,两个线程会激烈争抢同一批执行单元,超线程收益有限;DPDK这类I/O密集型负载本身IPC不高,执行单元经常空闲,超线程反而能有效利用这些空闲周期,所以对DPDK有实打实的帮助。

参考来源

《深入浅出DPDK》第3章《并行计算》