Bitslice DES for AVX/XOP
AMD-XOP Enhanced Bitslice DES
これは何か?
AMDが32nmプロセス世代で投入するK11(Bulldozer)マイクロアーキテクチャにてサポートされる拡張命令セットのXOPには、vpcmovという命令が追加されます。これはAltiVecにおけるvsel、Cell B.E.のSPEにおけるselbと同じく、3入力のビット選択オペレーションを実現するものです。 AltiVecやSPEでの実装例同様、これを用いることにより、Bitslice DESを構成する論理演算ゲート数の削減が期待できます。
AVXの3オペランド版SIMDビット論理演算命令を用いることで、余分なMOVDQA命令を削減しつつ、更にVPCMOVで論理演算の回数を削減することで、演算の密度をより高めることができます。
ダウンロード
公開にあたって2条項のBSDスタイルライセンスを適用します。現状あまり需要がなさそうなのでマルチライセンスにはしておりません。 ライセンスに従って自由にご利用いただけます。
- Bitslice DES for AMD AVX/XOP (2010.01.04更新)
注意
こちらはあくまでビット論理演算の回数の削減のみに着目した最適化のみ行っております。実際の演算のスループットを反映したものではありません。従来のBitslice DESより性能低下を起こす可能性もあります。 あくまで参考程度と思って下さい。
Keyword(s):
References:[FrontPage] [Bitslice DES] [SSE5とBitslice DES]