SSE 4.2
読み:エスエスイー-よんてんに
外語:SSE4.2: Streaming SIMD Extensions 4.2
SSE4
のうち、
Nehalem
から搭載された7個の命令のこと。
目次
概要
特徴
機能の有無判別
追加機能
CRC32C
概要
SSE 4.2は、
SSE 4.1
に7個の新命令を追加した。
次のような命令がある。
XMLの解析を高速化する文字列検索命令、String&Text New Instructions(STTNI)
CRC32演算命令
パックド・クアッドワードの比較命令
ビットカウント命令
サーバー等で効果的な新命令となっているが、ソフトウェアの対応が必要である。
特徴
機能の有無判別
機能の有無は、EAXレジスターに1を代入して
CPUID命令
を実行し、ECXレジスターに得られたフラグのビット20が1かどうかで確認できる。
追加機能
crc32 ‐ CRC32C演算命令 (多項式は0x11edc6f41)
pcmpestri ‐ パックド比較、インデックスの生成
pcmpestrm ‐ パックド比較、マスクの生成
pcmpistri ‐ パックド比較、インデックスの生成
pcmpistrm ‐ パックド比較、マスクの生成
pcmpgtq ‐ パックド・クアッドワードの比較命令(greater than)
popcnt ‐ ビットカウント命令(ビットに1がセットされている数を数える)
CRC32C
CRCの多項式は、
iSCSI
などで使われている「0x11edc6f41」(x
32
+x
28
+x
27
+x
26
+x
25
+x
23
+x
22
+x
20
+x
19
+x
18
+x
14
+x
13
+x
11
+x
10
+x
9
+x
8
+x
6
+x
0
)である。
この多項式はCRC-32C、Castagnoli93、などとも呼ばれており、RFCで規定されるような各種プロトコルのCRC計算用としても広く使われている。
再検索