reduction

    1熱度

    1回答

    我有一個有關CUDA減少的問題。 distance是具有gridSize*numberOfAngles元素的矩陣,fftData是具有numberOfAngles*NFFT元素的矩陣。 grid_magnitude是我想存儲計算結果的結果矩陣,它有gridSize個元素。 我想計算fftData中的索引,該索引對應於distance中的一個特定值。之後,fftData中此索引的值將被添加到grid

    0熱度

    1回答

    在使用K地圖時,我們可以考慮把0或1作爲無論哪個幫助我們形成一個更大的羣體。但是可以將一個羣組做成只有無所謂?

    8熱度

    1回答

    如何使用sse intrinsics獲得浮點向量的總和元素(減少)? 簡單的串行代碼: void(float *input, float &result, unsigned int NumElems) { result = 0; for(auto i=0; i<NumElems; ++i) result += input[i]; }

    0熱度

    2回答

    我在這裏問這是因爲我認爲我已經理解了OpenCL是如何工作的,但是......我認爲有幾件事我沒有得到。 我想要做的是讓差兩個數組的所有值之間,那麼計算hypot將最後得到的最大hypot將值,所以如果我有: double[] arrA = new double[]{1,2,3} double[] arrB = new double[]{6,7,8} Calculate dx1 = 1 -

    0熱度

    2回答

    我最近測試了使用CUDA進行縮減的算法(例如您可以在http://www.cuvilib.com/Reduction.pdf,第16頁找到該算法)。但最後,我遇到了不使用原子性的麻煩。所以基本上我會做每個塊的總和並將其存儲到共享數組中。然後我將它返回到全局數組x(tdx是threadIndex.x,而我是全局索引)。 if(i==0){ *sum = 0.; // Initialize

    2熱度

    1回答

    我正在使用信號矩陣,我的目標是計算一行所有元素的總和。該矩陣由下面的結構表示: typedef struct matrix { float *data; int rows; int cols; int leading_dim; } matrix; 我不得不提到矩陣被存儲在列主順序(http://en.wikipedia.org/wiki/Row-maj

    1熱度

    1回答

    我想使用std::numeric的算法來計算數組的絕對值之和,以便使用gnu並行擴展(數組大小> 500000)。 這裏是我當前的代碼: double ret = 0; for (auto i = 0U; i < length; ++i) { ret += std::abs(tab[i]); } return ret; 所以我想這樣做: auto sumabs = [] (d

    1熱度

    1回答

    我有一系列的M單通道圖像,每個大小NxN的,在裝置中的存儲器陣列的連續存儲。 (N不是二的冪)。所以,該陣列是長度MxNxN的。我需要爲每個這些圖像找到所有像素的總和。所以,輸出是M的值,每個圖像一個。 我生成保存每個像素的圖像索引的附加陣列和使用該索引來reduce_by_key爲每個圖像(段)。這reduce_by_key似乎是相當緩慢,需要更多的時間比其他一切我做的這些像素。 有一個更快的方

    0熱度

    1回答

    這個問題是涉及到由我發佈了幾個星期前的現有問題之間的最小:TERCOM algorithm - Changing from single thread to multiple threads in CUDA 簡要說明,每個內核線程的計算MAD價值,我想知道最小的和它的位置。 我試着使用atomicMin這樣 __global__ void kernel (int m, int n, int h,

    0熱度

    2回答

    我只是對數據縮減有個簡單的問題。我有大約1500個文件,我想刪除那些不符合特定標準的文件。 基本上我正在擬合gaussians數據集,它給了我一個平均值和一個全寬半最大值。我只想選擇曲線的平均值大約爲+/- 1500且半高寬度小於5000的文件。 我打算使用if條件,但它比我更難首先想到。 我有什麼至今: if FWHM <= 5000 and (-1600 <= mean <= -1500):