gpt4 book ai didi

multithreading - 临时多线程和超线程有什么区别?

转载 作者:行者123 更新时间:2023-12-04 06:42:47 24 4
gpt4 key购买 nike

有两个术语:

  • Temporal multithreading :在细粒度的时间多线程中,主处理器管道可能包含多个线程,在管道阶段之间有效地发生上下文切换(例如,在 barrel processor 中)。桶形处理器是一个 CPU,它在每个周期的执行线程之间切换。
  • Super-threading : 是一种多线程,它使不同的线程可以由单个处理器执行,而无需真正同时执行它们。 1这使其成为时间切片或时间多线程而不是同步多线程 (SMT)。其动机是观察到处理器的功能单元在执行来自一个线程的指令时偶尔会由于长延迟事件而处于空闲状态。超线程试图通过执行来自另一个线程的指令直到前一个线程准备好恢复执行来利用其他未使用的处理器周期。

  • 是 TM 和 ST 之间的主要区别,即临时多线程(细粒度)使用 C-slowing并且在每个周期在执行线程之间切换,但是超线程不是每个周期都在线程之间切换,并且仅当处理器的功能单元由于长延迟事件而从一个线程执行指令时处于空闲状态?

    Temporal 多线程(细粒度)和超线程有什么区别?

    最佳答案

    时间多线程可以采用细粒度或粗粒度多线程的形式。细粒度多线程以固定的细粒度间隔(例如每个周期)切换上下文。粗粒度多线程在长延迟事件(例如 LLC 缓存未命中)上切换上下文。

    另一方面,同时多线程没有任何线程切换的概念。多个线程可以同时运行。

    一张图片胜过千言万语。查看幻灯片 5 到 7 here .它有所有 3 种方法的图片,并很好地比较了它们。

    正如其他人所说,超线程不是一个常用术语,对我来说它似乎类似于粗粒度 TM。

    关于multithreading - 临时多线程和超线程有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32933542/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com