2016-04-20 71 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