gpt4 book ai didi

c++ - 同时使用多个 SIMD 指令集的好处

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:32:44 25 4
gpt4 key购买 nike

我正在编写一个高度并行的多线程应用程序。我已经编写了一个 SSE 加速线程类。如果我要编写一个 MMX 加速线程类,然后同时运行两者(每个核心一个 SSE 线程和一个 MMX 线程),性能会显着提高吗?

我认为此设置有助于隐藏内存延迟,但我想在开始投入时间之前先确定一下。

最佳答案

SSE和MMX指令集在CPU中共享同一组 vector 处理执行单元。因此,运行一个 SSE 线程和一个 MMX 线程时,每个线程将拥有相同的可用资源,就像运行两个 SSE 线程(或两个 MMX 线程)一样。唯一的区别是存在于 SSE 而不是 MMX 中的指令(因为 SSE 是 MMX 的扩展)。但在那种情况下,MMX 可能会变慢,因为它没有可用的更高级指令。

所以答案是:不,与运行两个 SSE 线程相比,您不会看到性能提升。

关于c++ - 同时使用多个 SIMD 指令集的好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2840342/

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