cuda

    0熱度

    1回答

    我想用CUDA中的6個變量來解決使用推力的ODE。我的程序在這裏。 #include <iostream> #include <cmath> #include <utility> #include <cstdlib> #include <thrust/device_vector.h> #include <thrust/reduce.h> #include <thrust/funct

    1熱度

    1回答

    每當我包含<cub/cub.cuh>頭文件時,Visual Studio的智能感知都會報告數千個錯誤。 正如您在附件截圖中看到的,應用程序由空行main()函數和include行組成。 我在項目屬性中定義了額外的包含目錄和額外的庫目錄。我沒有做任何其他改變。 我的設置包含visual studio community 2015,cuda 8.0.61和cub 1.7.0庫。 有什麼我可以做的,以解

    0熱度

    1回答

    首先發布在這裏。我目前正在開發一個項目,該項目需要編寫一個大型的2d數組(大約1,000,000x7)到我的GPU中,進行一些計算並將其返回給主機。由於我想快速這麼做,並且有這麼大的陣列,所以我試圖壓扁陣列以幫助將其直接傳遞到GPU。數組成功寫入(或者至少cudaMalloc和cudaMemcpy在我寫入設備時返回cudaSuccess),但是當我嘗試讀取它時,cudaMemcpy返回無效的參數錯

    0熱度

    2回答

    cudaCreateChannelDesc(int x,int y,int z,int w,enum cudaChannelFormatKind f); 現在我有一個示例代碼: cudaCreateChannelDesc(32,0,0,0,cudaChannelFormatKindFloat); 我不知道爲什麼x = 32,y = z = w = 0。有人能幫幫我嗎?

    1熱度

    1回答

    我有一個長度爲128的向量;所有元素在整個計算過程中都是恆定 我喜歡在我的CUDA內核中使用這個常量向量。我正在考慮將此矢量存儲在共享內存中,並在內核中使用它。我想知道如何去?幾行代碼會很好。 或者這是最好的方法嗎?非常感謝。 我們可以與全球內存通過頭部的頂部: __global__ void fun(float* a, float* coeff) { size_t i =

    1熱度

    1回答

    這會導致共享內存不一致嗎? 我的內核的代碼看起來是這樣的(僞代碼): __shared__ uint histogram[32][64]; uint threadLane = threadIdx.x % 32; for (data){ histogram[threadLane][data]++; } 這會不會導致碰撞,因爲,在具有64個線程的塊,ID爲 「x」 和「線程(X

    2熱度

    1回答

    更大此代碼工作正常: #include <stdio.h> #define N 1000 // <-- Works for values < 2^16 __global__ void add(int *a, int *b) { int i = blockIdx.x; if (i<N) { b[i] = 2*a[i]; } } int main(

    1熱度

    1回答

    使用nvprof分析應用程序時,我發現了PtoP和DtoD memcpy。我不確定這兩者之間的區別。

    -3熱度

    1回答

    我的GPU是GF940mx,系統是WIN 10 X64。我想使用CUDA來加速我的工作。但是當我爲win10安裝CUDA 8.0.61時,他們告訴我「這個圖形驅動程序找不到兼容的圖形硬件......」。 GForce不在啓用列表中。可以cuda支持Gforce 940mx? 我能做什麼,請在datail中解釋我。 非常感謝。

    0熱度

    1回答

    以下代碼無效。我的期望是在內核函數add()被調用後y [i]有3個。但是如果N> =(1 < < 24) - 255,所有的y [i]都是2(就像內核函數add()沒有運行一樣)。 #include <iostream> __global__ void add(int n, int *x, int *y) { int index = blockIdx.x * blockDim.x +