torch / cutorch

A CUDA backend for Torch7
Other
337 stars 208 forks source link

Unable to install/make cutorch for Torch7 on Windows #810

Open LarryK348 opened 6 years ago

LarryK348 commented 6 years ago

I am unable to get cutorch installed on Windows. Both make and install result in Error: Build error: Failed building.

output: .... [ 10%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_TH CTensorMath2.cu.obj THCTensorMath2.cu c:\users\~~~\appdata\local\temp\luarocks_cutorch-scm-1-2243\cutorch\ lib\thc\THCReduce.cuh(324): error: no instance of function template "THCCeilDiv" matches the argument list argument types are: (ptrdiff_t, long)

1 error detected in the compilation of "C:/Users/LARRY~1.A-C/AppData/Local/Temp/ tmpxft_00000a48_00000000-8_THCTensorMath2.cpp4.ii". THCTensorMath2.cu CMake Error at THC_generated_THCTensorMath2.cu.obj.Release.cmake:279 (message): Error generating file C:/Users/~~~/AppData/Local/Temp/luarocks_cutorch-scm-1-2243/cutorc h/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCTensorMath2.cu.obj

NMAKE : fatal error U1077: 'I:\~~~\Conda\Anaconda3\envs\torch-vc1 4\Library\bin\cmake.exe' : return code '0x1' Stop. NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0 \VC\BIN\amd64\nmake.exe"' : return code '0x2' Stop. NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0 \VC\BIN\amd64\nmake.exe"' : return code '0x2' Stop.

Error: Build error: Failed building.

Any helpful suggestions will be greatly appreciated.

grlscz commented 6 years ago

Same problem.

grlscz commented 6 years ago

This seems related: https://github.com/pytorch/pytorch/issues/2360

Would you please explicitly convert the first input argument into LONG in Line318, THCReduce.cuh in the following way? THC_getGridFromTiles(THCCeilDiv((long)outElements, (long)block.x), grid);

As I'm trying to compile pytorch-0.2.0 on Windows with CUDA 8.0, everything goes smooth for a long time till I'm blocked here with an error; it says no template could be fitted for this function call with 2 args. I guess nvcc for windows fail to implement an implicit conversion. Much thanks!

jitsuCM commented 5 years ago

Identical issue, nvcc on windows x64.