在parallel_for中使用SSE2是个好主意吗?
由于SSE2寄存器的数量是有限的,这会不会在性能方面造成损失?
每个芯片都有自己的SSE2寄存器吗?
发布于 2011-02-10 04:44:03
在parallel_for中使用SSE2是一个好主意吗?这取决于。这绝对不是一个坏主意。您应该分析您的代码,并在性能最重要的地方使用内部函数。
由于SSE2寄存器的数量是有限的,这会导致性能方面的损失吗?如果你关心寄存器压力,那么你就不必担心了。使用内部函数(与编写程序集不同)时,编译器会为您执行寄存器分配。用内部函数手写的代码通常比从高级语言编译的代码更紧凑。您应该在每次更改后分析代码,以查看性能是否有所提高。
每个逻辑都有自己的8个(32位模式)或16个(64位模式) SSE2寄存器。在现代CPU中,每个核心都是一个逻辑CPU,如果启用了超线程,甚至是两个逻辑CPU。
发布于 2011-02-06 16:53:55
每个SSE核心都有自己的寄存器。线程和SSE几乎没有关系。这两个都可以随意使用。
https://stackoverflow.com/questions/4912389
复制相似问题