avx2

    17

    1答えて

    私は連続した配列のストリーミングのパフォーマンスを見るためにAVX -AVX2命令セットを試していました。だから私は基本的なメモリの読み取りと保存を行う以下の例があります。 #include <iostream> #include <string.h> #include <immintrin.h> #include <chrono> const uint64_t BENCHMARK_SIZ

    1

    1答えて

    私は、AVX2値の特定の条件に基づいてAVX2定数を選択するための分岐のない方法を探しています。 私が今やっている何のために擬似コード: condition = _mm256_cmp_gt(value, limit); result = _mm256_or(_mm256_and(condition, constant_a), _mm256_andnot(condition, c

    11

    3答えて

    ロード命令などVPGATHERDDなどが集まっているAVX2の組み込み関数のドキュメントを見て:ドキュメントから私には明らかではないが、何 __m128i _mm_i32gather_epi32 (int const * base, __m128i index, const int scale); が算出したロードアドレスがあるされているかどうかを load_addr = base + ind

    6

    3答えて

    Iスパースアレイa(ほとんどゼロ)を有する: unsigned char a[1000000]; およびIは、SIMD命令を使用してaの非ゼロ要素のインデックスの配列bを作成したいですAVX2を搭載したIntel x64アーキテクチャー私はそれを効率的に行うためのヒントを探しています。具体的には、連続して配置されたSIMDレジスタ内の連続した非ゼロ要素の位置を取得するSIMD命令がありますか?

    5

    1答えて

    __m256iレジスタから64ビットを抽出しようとしています。私の現在の抽出機能の 例: byte 31 16 15 0 byte_result_vec 000D 000C 000B 000A 000H 000G 000F 000E _mm256_packs_epi32 -> 0D0C 0B0A 0D0C 0B0A 0H0G 0F0E 0H0G 0F0E _mm

    0

    1答えて

    プログラムの一部をベクトル化していますが、Segmentation faultというエラーが返されます。これには何が問題なのですか?ここでは問題を引き起こす単純化されたセクションです。 j++とi++は私が欲しいものです、私はj += 16になりたくありません。 unsigned short int input[256][256] __attribute__((aligned(32)));//gl