OS:Windows 10 x64
GPU: GTX 1060
- Install Visual Studio 2013 Community Edition
- Install CUDA
7.58.0 (Currenly only CUDA 8.0 RC is available. You have to register with NVIDIA in order to download it.) Installing and testing 8.0 is basically the same as installing 7.5. - Choose Custom during the NVIDA CUDA install. Don't install drivers for the GPU, just install CUDA stuff.
(I installed the wrong version of CUDA the first time. The GTX 1060 need CUDA 8.) My GPU drivers are newer than the ones packaged with this CUDA install. I can ignore this warning. Don't install the outdated GPU drivers. - Test CUDA install. Compile one of the samples and run it.

Open a CUDA sample project .sln, e.g. deviceQuery or bandwidthTest. Running the just-built device - Install gcc via the TDM-GCC compiler suite.
- Install the 64bit version.
- TDM-GCC is a compiler suite for Windows which consists of components that are all individually available elsewhere. TDM-GCC include GCC and MinGW. TDM-GCC includes command-line tools only.
- Install WinPython, one of many scientific Python distributions. (WinPython-64bit-3.4.4.3Qt5.exe)
- By design, WinPython unzips itself to a local directory but does not mess with the system environment variables.
- Create a startup shell script for Python.
- Create a link library for gcc? But there is already a .a file in the target location.
- Clone and install latest version of Theano. Optional, because Theano is included in WinPy.
- pip install git+git://github.com/Theano/Theano.git
- Create a .theanorc (or .theanorc.txt) for GPU usage. Put it in the settings folder of the WinPython directory.
.theanorc
[global]
device = gpu
floatX = float32
[nvcc]
flags = -LC:\WinPython-64bit-3.4.4.3Qt5\python-3.4.4.amd64\libs
compiler_binddir=C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64 - Create and run theano-test.py from the command line to see if it works.
theano-test.py
import numpy as np
import time
import theano
A = np.random.rand(1000,10000).astype(theano.config.floatX)
B = np.random.rand(10000,1000).astype(theano.config.floatX)
np_start = time.time()
AB = A.dot(B)
np_end = time.time()
X,Y = theano.tensor.matrices('XY')
mf = theano.function([X,Y],X.dot(Y))
t_start = time.time()
tAB = mf(A,B)
t_end = time.time()
print("NP time: %f[s], theano time: %f[s] (times should be close when run on CPU!)" %(
np_end-np_start, t_end-t_start))
print("Result difference: %f" % (np.abs(AB-tAB).max(), ))Note: The first time it runs, there will be a lot of debug output as theano compiles the code. Subsequent runs are much quieter.
Learned a lot from your post and it is really good. Share more tech updates regularly
ReplyDeleteccna Training institute in Chennai
ccna institute in Chennai
Python Training in Chennai
Python course in Chennai
R Training in Chennai
R Programming Training in Chennai
CCNA Training in Velachery
CCNA Training in Tambaram
Awesome post. After reading your blog I am happy that i got to know new ideas; thanks for sharing this content.
ReplyDeleteEnglish Speaking Classes in Mulund
English Speaking Classes in Mulund West
English Speaking Course in Mulund
English Speaking Course in Mulund East
Spoken English Classes in Anna Nagar
Spoken English Classes in Chennai
Spoken English Class in Chennai
Spoken English in Chennai
best hand blender in india
ReplyDeleteThis comment has been removed by the author.
ReplyDeletecar bike whatsapp groups
ReplyDeleteThanks for providing the best information it's very useful.
ReplyDeleteCyber Security Training Course in Chennai | Certification | Cyber Security Online Training Course | Ethical Hacking Training Course in Chennai | Certification | Ethical Hacking Online Training Course |
CCNA Training Course in Chennai | Certification | CCNA Online Training Course | RPA Robotic Process Automation Training Course in Chennai | Certification | RPA Training Course Chennai | SEO Training in Chennai | Certification | SEO Online Training Course