#include<stdio.h>
#include<string.h>
#include<cuda.h>
#include<cuda_runtime.h>
global void setValues(char *arr){
if((blockIdx.y * gridDim.x + blockIdx.x)< 6){
arr[blockIdx.y * gridDim.x + blockIdx.x] = "4\0";
}
}
int main(){
char x[6];
int j =0;
dim3 grid(3,2);
for( j =0 ; j<6;j++)
cudaMalloc((void*)&x[j], 20*sizeof(char));
setValues<<<grid,1>>>(x);
char *p;
p =(char*) malloc(20*sizeof(char));
int i =0;
for(i; i < 6; i++){
cudaMemcpy(p,x[i],1,cudaMemcpyDeviceToHost);
printf("%s\n", p);
}
getchar();
return 0;
}
It builds but prints junk valuse. Below is the build log:
‘bandwidthTest.exe’: Loaded ‘C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.0\C\bin\win32\Debug\bandwidthTest.exe’, Symbols loaded.
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\ntdll.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\kernel32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\KernelBase.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.0\bin\cudart32_40_17.dll’, Binary was not built with debug information.
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\nvcuda.dll’, Binary was not built with debug information.
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\user32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\gdi32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\lpk.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\usp10.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\msvcrt.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\advapi32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\sechost.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\rpcrt4.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\sspicli.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\cryptbase.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\setupapi.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\cfgmgr32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\oleaut32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\ole32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\devobj.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\imm32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\msctf.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\nvinit.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\detoured.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\Nvd3d9wrap.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Program Files (x86)\NVIDIA Corporation\coprocmanager\nvdxgiwrap.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\dwmapi.dll’
‘bandwidthTest.exe’: Unloaded ‘C:\Windows\SysWOW64\dwmapi.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\nvapi.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\shlwapi.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\shell32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\version.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\wintrust.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\crypt32.dll’
‘bandwidthTest.exe’: Loaded ‘C:\Windows\SysWOW64\msasn1.dll’
First-chance exception at 0x7553b727 in bandwidthTest.exe: Microsoft C++ exception: cudaError_enum at memory location 0x0018fdd8…
First-chance exception at 0x7553b727 in bandwidthTest.exe: Microsoft C++ exception: cudaError_enum at memory location 0x0018fdd8…
First-chance exception at 0x7553b727 in bandwidthTest.exe: Microsoft C++ exception: cudaError_enum at memory location 0x0018fdd8…
First-chance exception at 0x7553b727 in bandwidthTest.exe: Microsoft C++ exception: cudaError_enum at memory location 0x0018fdd8…
First-chance exception at 0x7553b727 in bandwidthTest.exe: Microsoft C++ exception: cudaError_enum at memory location 0x0018fdd8…
The thread ‘Win32 Thread’ (0x1948) has exited with code -1073741510 (0xc000013a).
The program ‘[4468] bandwidthTest.exe: Native’ has exited with code -1073741510 (0xc000013a).