相変わらずストーリーミッションでは「ソロ、UNAC無し、OW無し」でやってます。で、プレイヤーランクが S になりました。

Read the rest of this entry

性能向上
  • ULRG,ULRA: 「圧縮率優先」でエンコードされた映像の RGB32/ARGB へのデコードを高速化した。

Read the rest of this entry

AVX2、具体的には VPGATHERDD と VPSLLVQ が実装されたので、それを使ってハフマンデコードを4つ並列に行うコードを書いていました。

Read the rest of this entry

AVX-512 のマニュアルを見てると、よく分からないことがいくつかあります。

  • 64bit モードの場合 zmm だけでなく ymm や xmm も 32 本使えると書いてある (1.2.2 32 SIMD Register Support) 。32 本使うためには VEX プレフィックスではなく EVEX プレフィックスを使う必要がある (4.1 OVERVIEW SECTION) が、命令一覧を見ても EVEX プレフィックスによる ymm や xmm の使用は見つからないし、Chapter 4 AVX-512 Instruction Encoding を見ても具体的な記述が無い。
    4.6.4 Vector Length Orthogonality に書いてあった。ただし、命令一覧に記載されていないのは間違いないので、ymm/xmm の場合に命令がどう動作するのかは仕様上決まっていないことになる(特に AVX1/2 に存在しない命令の場合)。
  • zmm を使う場合の、VPADDB や VPADDW を筆頭とする バイト/ワード 単位の演算が記載されていない。(VPMOVZXBQ や VPMOVQB みたいな変換命令はある)

AVX-512 は LNI(Larrabee New Instructions: Xeon Phi の命令セット)を元にしているわけですが、LNI には ymm/xmm レジスタは元々存在せず、バイト/ワード 単位の演算も存在しません。Xeon Phi のマニュアルからコピーしてくるときに追加し忘れたのか、やっぱりホントにサポートしていないのか、どっちなんでしょう…

データ引継ぎして、全ミッション「ソロ、UNAC無し、OW無し」でクリアしました。ラスボスあれかよw

Read the rest of this entry

26日発売なのに24日にAmazonで予約してしまったのですが、とりあえず過剰予約による在庫切れにはならなかったようで一安心です。

Read the rest of this entry

バグ修正
  • SSSE3 をサポートしないプロセッサでクラッシュすることがあった。

Read the rest of this entry

実際に VGATHER 系命令とVGATHERと等価なことを要素ごとにバラして行うコードのベンチマークを取ってみました。

Read the rest of this entry

Haswell の新機能はいろいろありますが、全世界から(?)切望されていたのがこの VGATHER 系命令です。

Read the rest of this entry

性能向上
  • 共通: x64 バージョンで、デコードを高速化した。

Read the rest of this entry