2016-04-20 70 views
2

我研究了AVXAVX2 ISA支持的字符串指令,但是我找不到像SSE4.2這樣的任何256位字符串比較指令如果有任何字符串比較我找不到它們?否則爲什麼AVX/AVX2 ISA不支持256位字符串指令? 我還發現,AVX2不支持mullounsigned short作爲16位無符號整數,我不知道原因。因爲它已在SSE4.2中得到支持。AVX或AVX2是否支持256位字符串指令,mullo是否爲unsigned short?

+0

請每個問題一個問題。 –

回答

3

256位字符串比較指令 - 不,在AVX/AVX2(或AVX-512就此而言)中沒有 - 只是SSE 4.2中的128位指令。

mullo無符號短 - 這是不需要的,因爲結果將與有簽名的短mullo相同。只有nulhi指令需要在有符號和無符號變量中存在。

+0

他們沒有將字符串指令集添加到英特爾AVX的原因是什麼?因爲它沒有用,或者因爲在通用處理器中,添加特殊用途指令是不可接受的? – ADMS

+1

@ADMS:好吧,我並不是爲英特爾工作,但我會冒險猜測可能沒有多少意義 - 這種類型的操作往往會受到I/O限制(因爲它不太可能是一部分其他SIMD指令序列),因此實現現有128位字符串指令的更廣泛版本幾乎沒有什麼收穫。 –

+1

雖然他們不會仍然有用嗎?特別是16位RANGES模式,它沒有那麼多的範圍,但也有ANY,可能會有更大的設置。OTOH無疑會比現有模式更慢 – harold