avx

    2熱度

    1回答

    假設我有8個SSE寄存器,枚舉爲r0,r1,r2,...,r7,並且每個都包含8個16位整數。我想創建一個新的寄存器,其中包含8個寄存器中的第i個元素,從r0開始,到r7。換句話說,我想獲得一個寄存器具有以下內容: r0[i],r1[i],r2[i],r3[i],r4[i],r5[i],r6[i],r7[i] 會如何,使用SSE(或AVX)做些什麼呢? 謝謝! 請注意,索引i不是常數,而是在運行時

    4熱度

    2回答

    我已經寫和調試一些AVX代碼G ++,現在我試圖讓它與MSVC的工作,但我不斷收到 錯誤LNK2019:解析外部符號__mm256_setr_epi64x中引用功能 「私人:工會__m256i __thiscall avx_matrix :: avx_bit_mask(無符號整數)常量」(avx_bit_mask @ avx_matrix @@ ABE AT__m256i @@我@ Z?) 的代碼

    1熱度

    1回答

    我正在研究一些旨在在32位模式下在x86上運行的代碼。在這種模式下,我明白我只有8個SIMD/AVX2寄存器(YMM0-7)可以自由使用。然而,單獨的一些矢量子程序有時候會使用的寄存器數量超過了這個數量(這意味着它們仍然需要在路上的某個地方 - 大多數情況下並不是那麼晚)。 我的理解是,當編譯器找不到未使用的寄存器時,會將較舊的寄存器導出到堆棧存儲器。但這對性能有多大影響? (例如稍後在每個導出/

    1熱度

    1回答

    我得到一個SEG故障僅當環是完全的AVX機(英特爾(R)核心(TM)i5-3570K CPU上向量化環路對齊GCC __attribute__ @ 3.40GHz)。 使用GCC編譯-c -march =天然MyClass.cpp -O3 -ftree-矢量器-冗長= 6 我用對準陣列,使得從這些消息-ftree-矢量器-冗長試驗= 6避免: MyClass.cpp:352: note: depe

    3熱度

    1回答

    我目前正在研究AVX Intrinsics來並行化我的代碼。 至於現在我想寫一個基準,看看我能得到多少加速。 void randomtable (uint32_t crypto[4][64]) { int k = 1; for (int i=0;i<4;i++) { k++; for (int j=0;j<64;j++) { cr

    0熱度

    1回答

    我需要在kvm上運行我的應用程序。 在kvm上運行的映像(centos 6.3)不包含avx。 但電腦上我編譯dpdk,有kvm。 我想我應該編譯沒有avx的dpdk, 這是可能的,我該怎麼辦? 我知道是否有或沒有通過運行以下命令AVX: cat /proc/cpuinfo | grep avx --color

    0熱度

    1回答

    我試圖在堆棧中輸入四個跛點數,然後將它轉換成ymm(avx)寄存器。我的一位朋友正在研究同一個項目,我們的代碼看起來相同,但是當我打電話給vmovupd ymm0時,我得到了一個核心轉儲[rsp]。我用調試程序縮小了這個調用範圍。 ;===== Begin code area =============================================================

    3熱度

    3回答

    如何從__m256向量中的索引中提取單個浮點數並將其廣播到結果向量? 僞代碼: __m256 input = { 2, 3, 4, 5, 6, 7, 8, 9 }; __m256 output = __mm256_selectidx(input, 2); // output [0 .. 7] now consists of input[2], that is, {4, 4, 4, 4, 4,

    1熱度

    1回答

    我有一個Windows x64 C++程序,由MSVC 12編譯而沒有AVX支持(no/arch:AVX in compile options)。 我在Win7上有一個Core i7 4700MQ客戶的崩潰報告。異常代碼是c000001d(非法指令),異常偏移指向sin()函數內的「vmovd r9,xmm0」指令。我已經與這個用戶嘗試了兩種不同的構建,並且在這兩種情況下都指向了這個相同的指令。

    -1熱度

    2回答

    這是我的第一個問題;-) 我嘗試在CUDA應用程序(ccminer)使用AVX但NVCC顯示了一個錯誤: /usr/local/cuda/bin/nvcc -Xcompiler "-Wall -mavx" -O3 -I . -Xptxas "-abi=no -v" -gencode=arch=compute_50,code=\"sm_50,compute_50\" --maxrregcount=8