sse

    1熱度

    1回答

    條件語句我想爲我的遊戲做了一些計算,我試圖來計算兩個點之間的距離。實質上,我使用圓的方程來查看點是否在我定義的半徑內。 (x - x1)^2 + (y - y1)^2 <= r^2 我的問題是:我如何用SSE評估條件語句並解釋結果?到目前爲止,我有這個: float distSqr4 = (pow(x4 - k->getPosition().x, 2) + pow(y4 - k->getPos

    1熱度

    3回答

    acos(double)給出了x64和X32的Visual Studio不同的結果。 printf("%.30g\n", double(acosl(0.49990774364240564))); printf("%.30g\n", acos(0.49990774364240564)); 在x64 :1.0473040763868076 上X32:1.0473040763868078 上lin

    0熱度

    1回答

    考慮下面的代碼: // Thin/POD struct struct Data { __m256d a; __m256d b; }; // Thick base class class Base { // ... }; // Thick derived class class Derived : public Base { Data data; //

    2熱度

    2回答

    我有以下代碼(the xorshift128+ code from Wikipedia修改爲使用向量類型): #include <immintrin.h> #include <climits> __v8si rand_si() { static auto s0 = __v4du{4, 8, 15, 16}, s1 = __v4du{23, 34, 42, 69};

    0熱度

    2回答

    GCC和Clang編譯器似乎使用了一些黑暗魔法。 C代碼只是否定了雙精度值,但彙編器指令涉及位方式XOR和指令指針。有人可以解釋發生了什麼,爲什麼它是最佳解決方案。謝謝。 void function(double *a, double *b) { *a = -(*b); // This line. } 將所得的彙編程序指令: test.c的內容 (gcc) 00000000000

    1熱度

    1回答

    我正在嘗試使用SSE來進行矩陣乘法。我已經爲4x4矩陣編寫了一個簡單的程序。一切似乎都很好,但是當我打印結果時,它的一些垃圾值。請幫忙弄清楚問題。其次,程序在我釋放內存時停止工作,而不是程序的正確結束。 #include <stdlib.h> #include <stdio.h> #include <time.h> #include <float.h> #include <xmmintri

    1熱度

    1回答

    沒有討論過早優化問題,我有幾個關於g ++或其他編譯器如何處理SSE優化的問題,相關的編譯器標誌被選中: 爲了讓SSE指令在一束線上執行,是否重新排列了多行代碼?例如 a[0] = a1+a2+a3; x[0] = a1*a1; a[1] = b1+b2+b3; x[1] = b1*b1; a[2] = c1+c2+c3; x[2] = c1*c1; 其中編譯器可以將這些行重新排序爲

    0熱度

    1回答

    我有一個瓶應用中提取數據,然後將其變換的數據和這些結果然後上傳到數據回購。我想要「登錄」到Web UI的這些系列步驟,並且如果需要,還要記錄警告。 在同一瓶的應用,我實現了SSE(服務器發送事件)和它的作品,但我一直沒能「更新」的事件,以反映應用程序的狀態。有人能指出我如何能夠在不斷更新瀏覽器的SSE和正在運行的應用程序之間「共享」數據,以便讓用戶更新數據處理過程?或者,也許是另一種方法?所有想法

    3熱度

    1回答

    在我的項目中,我使用Eigen3.3庫來計算6x6矩陣。我決定調查AVX指令是否真的讓我對SSE有任何加速。我的CPU不支持兩組: model name : Intel(R) Xeon(R) CPU E5-1607 v2 @ 3.00GHz flags : ... sse sse2 ... ssse3 ... sse4_1 sse4_2 ... avx ... 所以,我編譯gcc4.8

    0熱度

    1回答

    我必須在我的圖像的每個點上應用一個變換矩陣來獲得新的點座標。 爲此,我創建了一個自定義Matrix3by3類,其中包含大小爲9的浮點數組。 到矩陣應用到每個點,首先,我創造了這個功能: constexpr auto apply_matrix(const Matrix3by3 & m, const Vec2i & p) -> Vec2f { const auto x = m.at(0,