Skip to content

Instantly share code, notes, and snippets.

@tbenst
Created March 5, 2020 16:50
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tbenst/3d13acddc7170f5d198748876deac2a2 to your computer and use it in GitHub Desktop.
Save tbenst/3d13acddc7170f5d198748876deac2a2 to your computer and use it in GitHub Desktop.
To whom it may concern,
I wanted to follow up on my previous emails.
My understanding after consulting with others is that what we do in the nixpkgs derivation for CUDA does not preclude binary caching & redistribution, as we only modify the library metadata such as the dynamic section (i.e. DT_RUNPATH, setting interpreter, setting RPATH). As I understand, object code refers to machine code that is executed by the processor, and thus my understanding is that we leave the object code untouched. I previously shared these post-distribution patches on 2/3/2020 for your review.
Furthermore, my understanding under Section 2.3 is that we are ok to redistribute the SDK in full as long as this redistribution only happens under Linux.
Thus, we plan on proceeding with setting up a binary cache for distributing CUDA and packages requiring CUDA using nixpkgs.
Please get in touch if you view any of the above as a violation of the Software License agreement.
Best,
Tyler Benster
Neurosciences PhD Candidate
Stanford University School of Medicine
From: Tyler Stephen Benster
Sent: Monday, February 3, 2020 6:23 PM
To: nvidia-compute-license-questions@nvidia.com <nvidia-compute-license-questions@nvidia.com>
Subject: [open science] Redistributing Cuda & cuDNN
Hello,
I'm a scientist at Stanford using CUDA for accelerating neuroscience.
There are a small number of linux-specific patches necessary to use the CUDA libraries using nix, a package manager for reproducible software:
we have to change the dynamic-linker
we have to patch the RPATH
we have to add the opengl run path
These modifications are shown here for CUDA https://github.com/NixOS/nixpkgs/blob/c55809e256024880420bdc101c7ce9562d213dfa/pkgs/development/compilers/cudatoolkit/common.nix and here for cuDNN: https://github.com/NixOS/nixpkgs/blob/1e72fa51580dcac77549ffd9e499db6aa74d3286/pkgs/development/libraries/science/math/cudnn/generic.nix.
I'd like to explicitly ask for permission to distribute software using the CUDA libraries as modified above. This is critical for disseminating my and my colleague's scientific software to the broader community.
Please let me know if this is permissible? Or let me know if I need to contact someone else?
Sincerely,
Tyler
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment