CUDA 8 + VS2015 corecrt.h error

Hi,

I’m trying to run some Python neural networks that worked fine with CUDA 7.5 and VS2013, but on Windows 10 anniversary update + VS2015 + CUDA 8 it gives the following error:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\crtdefs.h(10): fatal error C1083: Cannot open include file: 'corecrt.h': No such file or directory
mod.cu

Running vcvars64.bat from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\ solves the problem, but as far as I know it’s not feasible when executing Python scripts automatically.

Does anyone have a solution?

Thanks

This suggests that your build is picking up MSVS files from a different version. You would want to double-check your environment settings related to MSVS, a likely issue is that outdated settings are permanently recorded under: Control panel | System and Security | System | Advanced System Settings | Environment Variables (or whatever the Windows 10 equivalent is)

@TalhaA Were you able to find a permanent fix for this problem? I’m seeing the exact same issue trying to run Theano’s cpu_gpu_test.py on Windows 10 with CUDA 8 and VS2015:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\crtdefs.h(10): fatal error C1083: Cannot open include file: 'corecrt.h': No such file or directory
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: ('nvcc return status', 2, 'for cmd', 'nvcc -shared -O3 -Xlinker /DEBUG -D HAVE_ROUND -m64 -Xcompiler -DCUDA_NDARRAY_CUH=18715462c72ed6afcd7ca5d52813ce90,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,/Zi,/MD -IC:\\toolkits\\anaconda2-4.2.0\\lib\\site-packages\\theano-0.8.2-py2.7.egg\\theano\\sandbox\\cuda -IC:\\toolkits\\anaconda2-4.2.0\\lib\\site-packages\\numpy\\core\\include -IC:\\toolkits\\anaconda2-4.2.0\\include -IC:\\toolkits\\anaconda2-4.2.0\\lib\\site-packages\\theano-0.8.2-py2.7.egg\\theano\\gof -o C:\\Users\\Phil\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.14393-Intel64_Family_6_Model_79_Stepping_1_GenuineIntel-2.7.12-64\\cuda_ndarray\\cuda_ndarray.pyd mod.cu -LC:\\toolkits\\anaconda2-4.2.0\\libs -LC:\\toolkits\\anaconda2-4.2.0 -lcublas -lpython27 -lcudart')
WARNING (theano.sandbox.cuda): CUDA is installed, but device gpu is not available  (error: cuda unavailable)
nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
mod.cu

['nvcc', '-shared', '-O3', '-Xlinker', '/DEBUG', '-D HAVE_ROUND', '-m64', '-Xcompiler', '-DCUDA_NDARRAY_CUH=18715462c72ed6afcd7ca5d52813ce90,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,/Zi,/MD', '-IC:\\toolkits\\anaconda2-4.2.0\\lib\\site-packages\\theano-0.8.2-py2.7.egg\\theano\\sandbox\\cuda', '-IC:\\toolkits\\anaconda2-4.2.0\\lib\\site-packages\\numpy\\core\\include', '-IC:\\toolkits\\anaconda2-4.2.0\\include', '-IC:\\toolkits\\anaconda2-4.2.0\\lib\\site-packages\\theano-0.8.2-py2.7.egg\\theano\\gof', '-o', 'C:\\Users\\Phil\\AppData\\Local\\Theano\\compiledir_Windows-10-10.0.14393-Intel64_Family_6_Model_79_Stepping_1_GenuineIntel-2.7.12-64\\cuda_ndarray\\cuda_ndarray.pyd', 'mod.cu', '-LC:\\toolkits\\anaconda2-4.2.0\\libs', '-LC:\\toolkits\\anaconda2-4.2.0', '-lcublas', '-lpython27', '-lcudart']
[Elemwise{exp,no_inplace}(<TensorType(float32, vector)>)]
Looping 1000 times took 17.250000 seconds
Result is [ 1.23178029  1.61879337  1.52278066 ...,  2.20771813  2.29967761
  1.62323284]
Used the cpu

@PF No, I haven’t found a permanent solution. The root cause is MS deciding to shuffle some headers around. Now the paths are determined only when running vcvars64.bat from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\ . That’s the only workaround I’ve found for now.

Okay. I found a “permanent” solution - feel free to pinch your nose now - by hardcoding two sysenv vars:

INCLUDE="C:\Program Files (x86)\Windows Kits0\Include0.0.10240.0\ucrt"
LIB="C:\Program Files (x86)\Windows Kits0\Lib0.0.10240.0\um\x64;C:\Program Files (x86)\Windows Kits0\Lib0.0.10240.0\ucrt\x64"

Yes, I know…

Gory details for my Keras1.1.0 + Theano0.8.2 + VS2015 + CUDA8.0 + cuDNN5.1 setup for Windows 10, here:

Tested on the following hardware:

  • Dell Precision T7900, 64GB RAM [Intel Xeon E5-2630 v4 @ 2.20 GHz (1 processor, 10 cores total, 20 logical processors)]
  • NVIDIA GeForce Titan X, 12GB RAM [Driver version: 372.90 / Win 10 64]

Uses the following tools/libraries:

  • Visual Studio 2015 Community Edition Update 3 w. Windows Kit 10.0.10240.0 [Used for its C/C++ compiler (not its IDE) and SDK]
  • CUDA 8.0.44 (64-bit) [Used for its GPU math libraries, card driver, and CUDA compiler]
  • MinGW-w64 (5.4.0) [Used for its Unix-like compiler and build tools (g++/gcc, make…) for Windows]
  • Anaconda (64-bit) w. Python 2.7 (Anaconda2-4.2.0) [A Python distro that gives us NumPy, SciPy, and other scientific libraries]
  • Theano 0.8.2 [Used to evaluate mathematical expressions on multi-dimensional arrays]
  • Keras 1.1.0 [Used for deep learning on top of Theano]
  • OpenBLAS 0.2.14 (Optional) [Used for its CPU-optimized implementation of many linear algebra operations]
  • cuDNN v5.1 (August 10, 2016) for CUDA 8.0 (Recommended) [Used to run vastly faster convolution neural networks]

Hope this helps!

Thanks PF, that helped!
Just to confirm, adding those INCLUDE and LIB environment variables allowed current PyCuda to play with current PyFR 1.5 / CUDA 8 inside Visual Studio 2015 on ancient Win7.

Good to know! Thanks for sharing.

Copy relevant header files
from
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt
to
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include

Copied all headers into C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include.
Now I have new errors like below :

Can anyone help me?

===========================================================================================
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(849): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(1787): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(2637): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(3492): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(4431): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(5345): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(6252): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7142): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7956): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(774): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(1618): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_double_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h(943): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(17): warning C4005: ‘PyString_Check’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(71): note: see previous definition of ‘PyString_Check’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(18): warning C4005: ‘PyString_FromString’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(73): note: see previous definition of ‘PyString_FromString’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(19): warning C4005: ‘PyString_AsString’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(80): note: see previous definition of ‘PyString_AsString’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(20): warning C4005: ‘PyString_FromStringAndSize’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(74): note: see previous definition of ‘PyString_FromStringAndSize’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(21): warning C4005: ‘PyString_Size’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(82): note: see previous definition of ‘PyString_Size’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(888): warning: variable “prev” was set but never used

C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(912): warning: variable “result” was set but never used

mod.cu(803): warning: conversion from pointer to smaller integer

mod.cu(941): warning: pointless comparison of unsigned integer with zero

mod.cu(3075): warning: statement is unreachable

c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(849): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(1787): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(2637): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(3492): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(4431): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(5345): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(6252): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7142): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7956): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(774): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(1618): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_double_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h(943): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(17): warning C4005: ‘PyString_Check’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(71): note: see previous definition of ‘PyString_Check’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(18): warning C4005: ‘PyString_FromString’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(73): note: see previous definition of ‘PyString_FromString’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(19): warning C4005: ‘PyString_AsString’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(80): note: see previous definition of ‘PyString_AsString’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(20): warning C4005: ‘PyString_FromStringAndSize’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(74): note: see previous definition of ‘PyString_FromStringAndSize’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cuda_ndarray.cuh(21): warning C4005: ‘PyString_Size’: macro redefinition
C:\Program Files\Anaconda3\lib\site-packages\numpy\core\include\numpy/npy_3kcompat.h(82): note: see previous definition of ‘PyString_Size’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(888): warning: variable “prev” was set but never used

C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(912): warning: variable “result” was set but never used

mod.cu(803): warning: conversion from pointer to smaller integer

mod.cu(941): warning: pointless comparison of unsigned integer with zero

mod.cu(3075): warning: statement is unreachable

c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(849): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(1787): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(2637): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(3492): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(4431): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(5345): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(6252): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7142): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7956): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(849): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(1787): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(2637): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(3492): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(4431): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(5345): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(6252): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7142): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7956): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(910): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(1903): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(2843): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(3779): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(4721): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(5723): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(6682): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(7610): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(8543): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(9413): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(10391): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(11435): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(774): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(1618): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_double_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h(943): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(910): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(1903): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(2843): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(3779): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(4721): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(5723): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(6682): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(7610): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(8543): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(9413): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(10391): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions_decls.h(11435): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(774): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(1618): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h: warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(849): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(1787): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(2637): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(3492): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(4431): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(5345): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(6252): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7142): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7956): warning C4819: The file contains a character that cannot be represented in the current code page (949). Save the file in Unicode format to prevent data loss
nvcc warning : The ‘compute_20’, ‘sm_20’, and ‘sm_21’ architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
mod.cu
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(668): warning C4477: ‘fprintf’ : format string ‘%lu’ requires an argument of type ‘unsigned long’, but variadic argument 2 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(668): note: consider using ‘%zu’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): warning C4477: ‘fprintf’ : format string ‘%016lx’ requires an argument of type ‘unsigned long’, but variadic argument 1 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): note: consider using ‘%zx’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): warning C4477: ‘fprintf’ : format string ‘%016lx’ requires an argument of type ‘unsigned long’, but variadic argument 2 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): note: consider using ‘%zx’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): warning C4477: ‘fprintf’ : format string ‘%lu’ requires an argument of type ‘unsigned long’, but variadic argument 3 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): note: consider using ‘%zu’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): warning C4477: ‘fprintf’ : format string ‘%016lx’ requires an argument of type ‘unsigned long’, but variadic argument 4 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): note: consider using ‘%zx’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): warning C4477: ‘fprintf’ : format string ‘%2lu’ requires an argument of type ‘unsigned long’, but variadic argument 5 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(670): note: consider using ‘%zu’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(690): warning C4477: ‘fprintf’ : format string ‘%016lx’ requires an argument of type ‘unsigned long’, but variadic argument 3 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(690): note: consider using ‘%zx’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(690): warning C4477: ‘fprintf’ : format string ‘%lu’ requires an argument of type ‘unsigned long’, but variadic argument 4 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(690): note: consider using ‘%zu’ in the format string
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(690): warning C4477: ‘fprintf’ : format string ‘%lu’ requires an argument of type ‘unsigned long’, but variadic argument 5 has type ‘std::size_t’
C:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda\cnmem.cpp(690): note: consider using ‘%zu’ in the format string
mod.cu(803): warning C4311: ‘type cast’: pointer truncation from ‘CudaNdarray *’ to ‘long’
mod.cu(3374): warning C4312: ‘type cast’: conversion from ‘long’ to ‘float *’ of greater size
LINK : fatal error LNK1104: cannot open file ‘uuid.lib’

[‘nvcc’, ‘-shared’, ‘-O3’, ‘–compiler-bindir’, ‘C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin’, ‘-Xlinker’, ‘/DEBUG’, ‘-D HAVE_ROUND’, ‘-m64’, ‘-Xcompiler’, ‘-DCUDA_NDARRAY_CUH=mc72d035fdf91890f3b36710688069b2e,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,/Zi,/MD’, ‘-IC:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda’, ‘-IC:\Program Files\Anaconda3\lib\site-packages\numpy\core\include’, ‘-IC:\Program Files\Anaconda3\include’, ‘-IC:\Program Files\Anaconda3\lib\site-packages\theano\gof’, ‘-o’, ‘C:\Users\Kwon\AppData\Local\Theano\compiledir_Windows-10-10.0.14393-SP0-Intel64_Family_6_Model_94_Stepping_3_GenuineIntel-3.5.2-64\cuda_ndarray\cuda_ndarray.pyd’, ‘mod.cu’, ‘-LC:\Program Files\Anaconda3\libs’, ‘-LC:\Program Files\Anaconda3’, ‘-lcublas’, ‘-lpython35’, ‘-lcudart’]
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: (‘nvcc return status’, 2, ‘for cmd’, ‘nvcc -shared -O3 --compiler-bindir C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin -Xlinker /DEBUG -D HAVE_ROUND -m64 -Xcompiler -DCUDA_NDARRAY_CUH=mc72d035fdf91890f3b36710688069b2e,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,/Zi,/MD -IC:\Program Files\Anaconda3\lib\site-packages\theano\sandbox\cuda -IC:\Program Files\Anaconda3\lib\site-packages\numpy\core\include -IC:\Program Files\Anaconda3\include -IC:\Program Files\Anaconda3\lib\site-packages\theano\gof -o C:\Users\Kwon\AppData\Local\Theano\compiledir_Windows-10-10.0.14393-SP0-Intel64_Family_6_Model_94_Stepping_3_GenuineIntel-3.5.2-64\cuda_ndarray\cuda_ndarray.pyd mod.cu -LC:\Program Files\Anaconda3\libs -LC:\Program Files\Anaconda3 -lcublas -lpython35 -lcudart’)
WARNING (theano.sandbox.cuda): CUDA is installed, but device gpu is not available (error: cuda unavailable)

It woud have been helpful if you had filtered the warnings (are you using Korena localization?) before posting so it is easier to spot the errors. It seems like you environment (the LIB variable specifically) does not correctly point to the Windows SDK, because I see this:

For example, on my Windows 7 system that library can be found here:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib\x64

Thanks for reply.
I thought it has critical information for solving the problem.
I added C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\x64 to LIB env variable.
And I got new errors like this:
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: ‘utf-8’ codec can’t decode…

And found a suggestion to add ‘gbk’ in decode() of theano.compat.init.py.
And got new error :
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: ‘cp949’ codec can’t encode character ‘\u80f6’ in position 265: illegal multibyte sequence.

https://github.com/Theano/Theano/issues/5607

Thanks for any help.

I know nothing about internationalization (i18n) and what that means for the use of the regional character encodings used on your machine. I looked up code page 949, which seems to be used for Korean; it may be incompatible with the characte encodings used in source files distributed with CUDA and / or Theano (where the issue seems to be more severe for the latter in that it creates errors, not just warnings).

This encoding issue doesn’t seem to have anything with CUDA itself. I would suggest finding a site where discussions of CJK encodings are on topic, used by people with relevant expertise. I think it unlikely that you are the first person to run into this.

Thanks for help.
I tried ‘euc-kr’ instead of ‘gbk’ and it worked.