Articles of cuda

como vincular biblioteca (por exemplo, CUBLAS, CUSPARSE) para CUDA no windows

Eu estou tentando compilar um programa cuda que usa biblioteca cusparse. Estou ficando ligando erro: kernel.cu.obj : error LNK2019: unresolved external symbol _cusparseSetMatIndexBase@8 referenced in function _main E muito erro do mesmo tipo relacionado à biblioteca cusparse. Eu incluí “cusparse_v2.h”. Como faço para vincular a biblioteca cusparse no visual studio 2010 durante a compilation?

Cuda atomics mudar bandeira

Eu tenho um pedaço de código serial que faz algo parecido com isto if( ! variable ) { do some initialization here variable = true; } Eu entendo que isso funciona perfeitamente bem em série e só será executado uma vez. Qual operação atômica seria a correta aqui no CUDA?

Cuda C – Linker error – referência indefinida

Eu estou tendo dificuldade em compilar um programa cuda simples, consitando apenas dois arquivos. O main.c se parece com isso: #include “my_cuda.h” int main(int argc, char** argv){ dummy_gpu(); } O cuda.h é assim: #ifndef MY_DUMMY #define MY_DUMMY void dummy_gpu(); #endif E o arquivo my_cuda.cu é assim: #include #include “my_cuda.h” __global__ void dummy_gpu_kernel(){ //do something } […]

Qual é o propósito de usar múltiplos sinalizadores “arco” no compilador NVCC da Nvidia?

Recentemente, fiquei sabendo como o NVCC compila o código de dispositivo CUDA para diferentes arquiteturas de computação. Pelo que entendi, ao usar a opção -gencode do NVCC, “arch” é a arquitetura de computação mínima exigida pelo aplicativo do programador, e também a arquitetura de computação mínima do dispositivo para a qual o compilador JIT do […]

Problema ao iniciar os kernels CUDA a partir do código de boot estática

Eu tenho uma class que chama um kernel em seu construtor, da seguinte maneira: “ScalarField.h” #include void ERROR_CHECK(cudaError_t err,const char * msg) { if(err!=cudaSuccess) { std::cout << msg << " : " << cudaGetErrorString(err) << std::endl; std::exit(-1); } } class ScalarField { public: float* array; int dimension; ScalarField(int dim): dimension(dim) { std::cout << "Scalar Field" […]

Por que o nvcc não compila um arquivo CUDA com boost :: spirit?

Estou tentando integrar CUDA a uma aplicação existente que usa boost :: spirit. Isolando o problema, descobri que o seguinte código não copia com o nvcc: main.cu : #include int main(){ exit(0); } Compilando com nvcc -o cudaTest main.cu Eu recebo muitos erros que podem ser vistos aqui . Mas se eu mudar o nome […]

Como usar o Thrust para classificar as linhas de uma matriz?

Eu tenho uma matriz de 5000×500 e quero classificar cada linha separadamente com cuda. Eu posso usar arrayfire, mas isso é apenas um loop for sobre o thrust :: sort, que não deve ser eficiente. https://github.com/arrayfire/arrayfire/blob/devel/src/backend/cuda/kernel/sort.hpp for(dim_type w = 0; w < val.dims[3]; w++) { dim_type valW = w * val.strides[3]; for(dim_type z = 0; […]

Como usar matrizes 2D em CUDA?

Eu sou novo no CUDA. Como alocar matriz 2D de tamanho MXN? Como percorrer esse array no CUDA ?. Me dê um código de exemplo. ………………………………………….. …………………………………… Oi .. Obrigado pela resposta. Eu usei o seu código no seguinte programa. Mas não estou obtendo resultados corretos. __global__ void test(int A[BLOCK_SIZE][BLOCK_SIZE], int B[BLOCK_SIZE][BLOCK_SIZE],int C[BLOCK_SIZE][BLOCK_SIZE]) { int […]

alocação de memory compartilhada

Eu estou tentando alocar memory compartilhada usando um parâmetro constante, mas recebendo um erro. meu kernel parece com isso: __global__ void Kernel(const int count) { __shared__ int a[count]; } e eu estou recebendo um erro dizendo erro: a expressão deve ter um valor constante contagem é const! Por que estou recebendo esse erro? E como […]

CUDA: Quantos threads simultâneos no total?

Eu tenho uma GeForce GTX 580, e eu quero fazer uma declaração sobre o número total de threads que podem (idealmente) ser executados em paralelo, para comparar com 2 ou 4 CPUs multi-core. O deviceQuery me fornece as seguintes informações possivelmente relevantes: CUDA Capability Major/Minor version number: 2.0 (16) Multiprocessors x (32) CUDA Cores/MP: 512 […]