nvcc

    4熱度

    1回答

    從NVIDIA CUDA C Programming Guide: 註冊用法可以使用編譯器maxrregcount 選項控制或如啓動界描述啓動邊界。 從我的理解(和糾正我,如果我錯了),而-maxrregcount限制寄存器整個.cu文件可以使用的數量,__launch_bounds__預選賽定義每個__global__內核maxThreadsPerBlock和minBlocksPerMultip

    1熱度

    1回答

    我試圖鏈接CUDA項目中的對象文件。下面是我的makefile: CUDA_PATH := /usr/local/cuda NVCC := $(CUDA_PATH)/bin/nvcc NVCCFLAGS := -arch=sm_37 --device-c -std=c++11 -cudart=shared -rdc=true LIBS := -lcutil -lcudpp -lcuda

    1熱度

    1回答

    啓動Cuda的調用中給出一個簡單的結構來包裝CUDA代碼,才能寫出像 func<float> s; s.val = 3.f; start_correct<<<1, 2>>>(s); 不過,我想放塊,格,共享內存計算入結構,並調用像 func<float> s; s.val = 3.f; s.launch(); 內核雖然第一是工作,第二個給了我一個非法內存訪問錯誤。 一個最小的例子來

    2熱度

    1回答

    我試圖讓使用NVCC選項 --ptxas-options=v我CUDA內核有關的寄存器使用情況的信息,並同時與全球功能一切正常,我有一些困難由於 ptxas info : Used N registers 線設備那些缺少在輸出中。我試圖使用noinline關鍵字,並將它們保存在另一個文件中,與調用全局函數有關,因爲我認爲NVCC報告了全局函數的全部註冊使用情況,包括內聯後的被調用設備的全局函數,但

    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(

    0熱度

    1回答

    我是CUDA 8中的新devopler並使用nvcc編譯我的代碼 如何通過我運行我的代碼的方式將conio.h安裝到我的編譯器 中服務器在一家公司 謝謝

    2熱度

    1回答

    當我嘗試使用函數指針調用CUDA內核(__global__函數)時,一切看起來都很好。但是,如果我在調用內核時忘記提供啓動配置,NVCC不會導致錯誤或警告,但是如果我嘗試運行該程序,程序將會編譯並崩潰。 __global__ void bar(float x) { printf("foo: %f\n", x); } typedef void(*FuncPtr)(float); void i

    -2熱度

    1回答

    我在ubuntu 16.04 LTS中使用了帶有g ++ 5.4和CUDA 8.0的Eigen library version 3.3。 編寫代碼時發生了令人困惑的事情。 當我嘗試在一個結構中調整Eigen :: MatrixXd時發生崩潰 結構如下。 struct cudaCopy{ struct s_path_info *nodes_parents struct s_p

    0熱度

    1回答

    我正在使用Eigen進行一些仿真。無論何時我甚至包括最小的過載特徵運算(即使我有x=y其中x,y是Eigen::VectorXd具有相同尺寸),我都會得到分段錯誤錯誤(更準確地說Segmentation fault (core dumped),沒有其他細節)。這很奇怪的是,只有在某些函數中有矩陣運算時纔會發生這種情況。 讓我告訴你: //main.cu #include <Eigen/Dense

    0熱度

    1回答

    typedef struct { long long int mem_0; } Tuple1; typedef struct { int tag; union { struct Tuple1 Union0Case0; } data; } Union0; C:/Users/Marko/Documents/Visual Studio 20