Comments (21)
I can confirm this works if add VS140COMNTOOLS
https://github.com/JuliaGPU/CUDArt.jl/blob/master/deps/build.jl#L3
yayy
Sans the slew of deprecation warnings
from cudart.jl.
@liusihaoshiwo Did you get this to work? I think the problem is that CUDA 7.5 doesn't even properly work with VS 2015, thus I don't see why you would expect this to build too
julia> Pkg.build("CUDArt")
INFO: Building CUDArt
Microsoft (R) Program Maintenance Utility Version 14.00.23918.0
Copyright (C) Microsoft Corporation. All rights reserved.
nvcc --shared --compiler-options="/wd4819" --linker-options= wrapcuda.c -o libwrapcuda.dll
nvcc fatal : nvcc cannot find a supported version of Microsoft Visual Studio. Only the versions 2010, 2012, and 2013 are supported
NMAKE : fatal error U1077: '"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\bin\nvcc.EXE"' : return code '0x1'
Stop.
========================================================[ ERROR: CUDArt ]========================================================
LoadError: failed process: Process(`cmd /C 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\..\..\VC\vcvarsall.bat' amd64 & nmake -f Windows.mk`, ProcessExited(2)) [2]
while loading C:\Users\Mustafa\.julia\v0.5\CUDArt\deps\build.jl, in expression starting on line 23
=================================================================================================================================
========================================================[ BUILD ERRORS ]=========================================================
WARNING: CUDArt had build errors.
- packages with build errors remain installed in C:\Users\Mustafa\.julia\v0.5
- build the package(s) and all dependencies with `Pkg.build("CUDArt")`
- build a single package by running its `deps/build.jl` script
==================================================================================================
We will have to wait till CUDA 8 for VS2015 support...
from cudart.jl.
can be now closed
from cudart.jl.
I don't know much about Windows, so others may have to help you if you can't figure this out. But check out the build.jl
script as listed in the backtrace; presumably it's just a matter of adding a check for a newer version of VS.
Assuming you do this in a way that doesn't break things for other users, please submit your fix as a pull request!
from cudart.jl.
@timholy yeah.. I guess so. But I don't know what check should I add in my VS. I will continue trying.
from cudart.jl.
I don't think you need to change your VS in any way, this seems to be an environment variable and/or path issue.
Before trying to load CUDArt you can do this:
julia> ENV["foo"] = "bar"
"bar"
julia> haskey(ENV, "foo")
true
So you could spoof having VS 2012 (VS120COMNTOOLS) until you figure out the magic incantation.
from cudart.jl.
Yes, VS2015 has issues with CUDA 7.5 that would be hard to get around. CUDA 8 solves those issues, so CUDArt.jl should work pretty much out of the box with VS2015 once CUDA 8 is out.
from cudart.jl.
CUDA 8 is out. Does VS2015 work with this package now? Can we add that line to build.jl
? What about VS14?
from cudart.jl.
@kshyatt finally VS2015 support for cuda: https://devblogs.nvidia.com/parallelforall/cuda-8-features-revealed/ older versions of VS will not work.
from cudart.jl.
Yes, but has anyone actually built this package with it?
from cudart.jl.
I've been using it for awhile (since the beta release, using it with a GTX 1080). It works. Never tried it with VS though. Can't say I really have a plan to either...
from cudart.jl.
I can certainly believe CUDA 8 works and this package works with gcc
and CUDA 8. But the issue is about VS :). Can someone try it out?
from cudart.jl.
Thanks for checking! Do you mind opening a PR (and maybe fixing some depwarns?)
from cudart.jl.
Also tests don't pass but that's another thing.
from cudart.jl.
Troublesome test:
ERROR: MethodError: no method matching copy!(::CUDArt.CudaArray{Float64,2}, ::Array{Float32,2})
Closest candidates are:
copy!{T}(::Array{T,N}, ::Array{T,N}) at array.jl:68
copy!(::BitArray{N}, ::Array{T,N}) at bitarray.jl:457
copy!(::Base.PermutedDimsArrays.PermutedDimsArray{T,N,perm,iperm,AA<:AbstractArray}, ::AbstractArray{T,N}) at permuteddimsarray.jl:62
from cudart.jl.
hopefully Tim can update the package with a pr for this fix
from cudart.jl.
Not sure which PR you mean?
With all the work on Images and the zoo of associated changes to arrays/colors/numbers/io, GPUs are just beyond me to think about right now. I'm happy to allow others to make decisions here. It's not like I'm a huge expert on the subject, anyway (there are many who know much more). Perhaps the pool of contributors should be enlarged if we're missing people who know stuff who can merge things.
from cudart.jl.
ah sorry I meant other TIm @maleadt : )
from cudart.jl.
@musm I'm not a Windows user, and CUDArt's tests aren't failing on my setup (Linux x64, Julia nightly, CUDA 8) -- except occasionally for the gc()
ones which are just fragile. Maybe make a separate bug report with some more information and a full backtrace (the one you posted doesn't show which test failed)?
from cudart.jl.
#59 , the test failure above was on the tagged version..
from cudart.jl.
Thanks for all your work on this @musm!
from cudart.jl.
Related Issues (20)
- Tests fail on Windows with 0.6 HOT 1
- Info about upcoming removal of packages in the General registry
- Support for ptx modules with external functions HOT 2
- Does CUDArt support cuda 8.0? HOT 1
- triggering gc based on gpu memory
- CUDArt assumptions not robust
- Precompile Error HOT 1
- Intermittent GC-related test failure (`isempty(cuda_ptrs)`) HOT 2
- New tag HOT 2
- Updated build script for visual studio 17 but get compile errors HOT 2
- error could not load library "libnvidia-ml" HOT 4
- Makefile needs to select correct gcc compiler HOT 1
- Rename types to CuArray, CuMatrix and so forth for consistency with CUDAdrv?
- CUDArt should not rely on `nvidia-smi` or `nvml` on Mac OSX HOT 31
- CUDArt fails to build when no CUDA device is present
- gcc5.4.0 support HOT 1
- OOB during package build HOT 7
- No method matching reset(::Cudadrv.CuPrimaryContext) HOT 3
- GCC Version On CUDA 8.0 HOT 3
- Unified Memory support HOT 11
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cudart.jl.