simd

    0

    1答えて

    私はアルファのような__m128を使用したいが、私はこれだけ __m128 alfa = _mm_load_ps((float const *)&alpha); アルファをすれば私の問題は、この機能に void function(complex float* A, complex float* B, complex float alpha) { をしているCで組み込み関数を使用して、あまり

    1

    1答えて

    私はx86_64の組み込み関数に慣れていないので、私は256ビットのベクトルレジスタを使って次の操作をしたいと思います。 _mm256_maddubs_epi16(a、b)を使用していました。 char * charは16ビットの最大値を超える可能性があるので、この命令はオーバーフローの問題があるようです。 _mm256_unpackhi_epi32とそれに関連する指示を理解している問題があります

    1

    1答えて

    サポートされている命令セットを示すクラスの例です。 https://msdn.microsoft.com/en-us/library/hskdteyh.aspx それぞれ異なる命令セットを使用して、1つの関数の3つの異なる実装を記述したいと思います。しかし、フラグ/ ARCH:AVX2のために、このアプリケーションはIntelプロセッサの第4 +世代で実行されることはありません。そのため、チェック

    2

    1答えて

    ゼロにされた128ビットのレジスタがあります。左にシフトしてバイトを追加します。私はそれをシフトすることができます: pslldq xmm0, 1 ...しかし、私は空のスペースにalをコピーしたいと思います。次のようなものがあります: or xmm0, al もちろん動作しません。私は影響を受けた最も低い8ビットのみを必要とします。これはループの中で、レジスタの充填にalの連続する値が使

    1

    1答えて

    クエリ応答プログラムを高速化するためにIntel SIMD組み込み関数を使用しようとしています。 query_cntが入力に依存するが、常にSIMDレジスタの数よりも少ない(すなわち、それらを保持するのに十分なSIMDレジスタがある)と仮定する。クエリはアプリケーションのホットなデータなので、必要なときに毎回ロードするのではなく、最初にロードして常にレジスタに保持してもよいでしょうか? クエリがf

    1

    1答えて

    浮動小数点除算フラグをクリアしてその例外を無視しようとしています。私はフラグが設定されている(私は信じて、デフォルトの動作からの変更はありません)、下にコメントアウトを期待している、私のエラーハンドラが発生します。しかし、_mm_div_ssはSIGFPEを上げていないようです。何か案は?上記のコードから #include <stdio.h> #include <signal.h> #incl

    1

    1答えて

    私はちょうどXeonのPhiプロセッサでAVX512のCPUイントリニックセットを読んでいますが、sseの従来のデータ型変換方法はavx512では動作しないようですので、avx512で変換可能な同様のCPUセットがありますか? unsigned char配列をshortデータ型配列に変換しますか?前もって感謝します!

    0

    2答えて

    これは実装に依存するので、それを見つけるための唯一の方法は逆アセンブリによるものですか?

    2

    1答えて

    私はSIMDの組み込み関数の初心者ですから、あらかじめ忍耐強くお礼を申し上げます。私は符号なしバイトの絶対差分比較を含むアプリケーションを持っています(私はグレースケール画像で作業しています)。 私はAVX、より近代的なSSEバージョンなどを試しましたが、最終的にはSSE2で十分と思われ、個々のバイトを最大限サポートしています。間違っていると私を修正してください。 私は2つの質問があります:まず、

    0

    1答えて

    画像をブロック単位で処理するときに最も効率的な方法は何か不思議です。 その瞬間、8x8ブロックから1行のピクセル(1行8ピクセル、各8ビット深度)を読み取るなど、ベクトル化技術を適用しました。しかし、現代のプロセッサが128/256ビットのベクトル演算をサポートしているので、イメージブロックから2行のピクセルをロードするとコードの速度が向上すると思います。 しかし、問題は、メモリ内の画像(たとえば