有人可以解释一下交错的多线程意味着什么吗? 也允许实时示例。
答案 0 :(得分:1)
英特尔将其描述为超线程。 CPU有一个带有2个寄存器组的单核。
这些可用于提高核心的利用率。
这对代码是不透明的,因为它的行为类似于2个核心。但是,一次只能运行一个。
如果是多线程的,您的代码仍然需要原子,互斥等
答案 1 :(得分:0)
wiki说:
交错多线程的目的是删除所有数据 依赖性从执行管道中停止。因为一个线程是 相对独立于其他线程,一个人的机会较少 一个管道阶段的指令需要较旧的输出 管道中的指令。从概念上讲,它类似于先发制人 操作系统中使用的多任务处理;一个类比就是 给每个活动线程的时间片是一个CPU周期。
答案 2 :(得分:0)
This Wikipedia page解释得非常好。
基本上它是关于交错来自CPU上不同操作系统级线程的指令,以降低指令之间代价高昂的依赖性的风险。