2009-02-15 80 views
2

我正在做一些需要SIMD的工作,我需要對雙精度數組進行操作。任何主流架構都支持這個嗎?我只看過浮點運算。雙陣列SIMD?

由於事先 斯特凡

回答

3

是,X86可以與SSE2指令去做。 CELL也是如此,雖然在進行雙精度計算時性能非常糟糕。

+0

嘿,這是怎麼得到的唯一答案呢? ;) 其他人看起來一樣正確,不是嗎? – jalf 2009-02-15 22:46:56

+0

我只看過SSE1,這是我需要的答案。非常感謝! – 2009-02-16 00:10:39

1

ARM VFP也可以兼容雙打。

新的NEON SIMD擴展(這是btw。迄今爲止我見過的最好的SIMD指令集)可能不幸只能處理32位浮點數。

0

運行在計算能力1.3或更高版本的CUDA也可以這樣做。較新的GTX 2xx卡可以做到這一點。

1

Here's VS2008中C++編譯器支持的SEE2內部函數。正如jalf所提到的,CELL處理器對SIMD的雙精度支持會帶來顯着的性能提升(我相信後來在PS3中未使用的芯片迭代的性能有了很大改進)。

就主流而言,SSE2於2001年進入奔騰4,所以在x86行業中很普遍。根據steam hardware survey 95%的人口擁有SSE2,所以我認爲目標是安全的。