Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Theano-cuda: init at 0.8.2 #16334

Merged
merged 1 commit into from
Jun 21, 2016
Merged

Theano-cuda: init at 0.8.2 #16334

merged 1 commit into from
Jun 21, 2016

Conversation

artuuge
Copy link
Contributor

@artuuge artuuge commented Jun 19, 2016

Motivation for this change

This is an extension of the existing python package Theano-0.8.1 to add a functionality of running the code on an NVIDIA GPU. The minor upgrade to version 0.8.2 is required to provide compatibility with libgpuarray--9998.0. The libgpuarray package has a dependency on clblas which requires OpenCL 1.2. For this reason one needs to use cudatoolkit-7.5 in place of cudatoolkit-7.0.

The package builds fine with python-3.5, but many unit tests on GPU encounter a Cannot allocate memory problem error. The tests if one installs the package as python34Pacakges.Theano-cuda pass successfully:

nix-shell -p pkgs.python34Packages.Theano-cuda
rm -rf ~/.theano
theano-test

Note that the cuDNN part of the tests requires a GPU of compute capability >= 3.0.

Things done
  • Tested using sandboxing
    (nix.useSandbox on NixOS,
    or option build-use-sandbox in nix.conf
    on non-NixOS)
  • Built on platform(s)
    • NixOS
    • OS X
    • Linux
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

This nix expression requires that ${name} is
already part of the store. Register yourself to NVIDIA Accelerated Computing Developer Program
and download cuDNN library at https://developer.nvidia.com/cudnn, and store it to the nix store with nix-store --add-fixed sha256 <FILE>.
'';
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it is also possible to use nix-prefetch-url but I don't know whether one is preferred over the other.

@artuuge artuuge force-pushed the theano_cudnn branch 2 times, most recently from afb7305 to 7d7f10b Compare June 19, 2016 23:02
@artuuge
Copy link
Contributor Author

artuuge commented Jun 19, 2016

Let's use nix-prefetch-url to register the cuDNN library in the nix store. I have switched the versions of numpy and scipy to the default selections and squashed the commits.

@FRidh FRidh merged commit 8ef747b into NixOS:master Jun 21, 2016
@artuuge artuuge deleted the theano_cudnn branch June 29, 2016 13:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants