cudnn_cudatoolkit9: init at 7.0

Make it the default.
This commit is contained in:
Nikolay Amiantov 2017-09-17 07:07:40 +03:00
parent 7cf6010fd3
commit ce9059a120
7 changed files with 73 additions and 101 deletions

View File

@ -4,20 +4,20 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "5.0"; version = "6.0";
cudatoolkit_version = "7.5"; cudatoolkit_version = "7.5";
name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}"; name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}";
src = requireFile rec { src = requireFile rec {
name = "cudnn-${cudatoolkit_version}-linux-x64-v${version}-ga.tgz"; name = "cudnn-${cudatoolkit_version}-linux-x64-v${version}.tgz";
message = '' message = ''
This nix expression requires that ${name} is already part of the store. This nix expression requires that ${name} is already part of the store.
Register yourself to NVIDIA Accelerated Computing Developer Program, retrieve the cuDNN library Register yourself to NVIDIA Accelerated Computing Developer Program, retrieve the cuDNN library
at https://developer.nvidia.com/cudnn, and run the following command in the download directory: at https://developer.nvidia.com/cudnn, and run the following command in the download directory:
nix-prefetch-url file://${name} nix-prefetch-url file://${name}
''; '';
sha256 = "c4739a00608c3b66a004a74fc8e721848f9112c5cb15f730c1be4964b3a23b3a"; sha256 = "0b68hv8pqcvh7z8xlgm4cxr9rfbjs0yvg1xj2n5ap4az1h3lp3an";
}; };
phases = "unpackPhase installPhase fixupPhase"; phases = "unpackPhase installPhase fixupPhase";
@ -31,16 +31,17 @@ stdenv.mkDerivation rec {
mkdir -p $out mkdir -p $out
cp -a include $out/include cp -a include $out/include
cp -a lib64 $out/lib64 cp -a lib64 $out/lib
''; '';
propagatedBuildInputs = [ propagatedBuildInputs = [
cudatoolkit cudatoolkit
]; ];
meta = { meta = with stdenv.lib; {
description = "NVIDIA CUDA Deep Neural Network library (cuDNN)"; description = "NVIDIA CUDA Deep Neural Network library (cuDNN)";
homepage = https://developer.nvidia.com/cudnn; homepage = "https://developer.nvidia.com/cudnn";
license = stdenv.lib.licenses.unfree; license = licenses.unfree;
platforms = [ "x86_64-linux" ];
}; };
} }

View File

@ -1,40 +0,0 @@
{ stdenv
, requireFile
, cudatoolkit
, fetchurl
}:
stdenv.mkDerivation rec {
version = "5.1";
cudatoolkit_version = "8.0";
name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}";
src = fetchurl {
url = "http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz";
sha256 = "1kj50smlkm347wfbfqvy09ylvad1zapqjc9yqvfykmiddyrij1y1";
};
installPhase = ''
function fixRunPath {
p=$(patchelf --print-rpath $1)
patchelf --set-rpath "$p:${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}" $1
}
fixRunPath lib64/libcudnn.so
mkdir -p $out
cp -a include $out/include
cp -a lib64 $out/lib64
'';
propagatedBuildInputs = [
cudatoolkit
];
meta = with stdenv.lib; {
description = "NVIDIA CUDA Deep Neural Network library (cuDNN)";
homepage = https://developer.nvidia.com/cudnn;
license = stdenv.lib.licenses.unfree;
maintainers = with maintainers; [ mdaiter ];
};
}

View File

@ -1,40 +0,0 @@
{ stdenv
, requireFile
, cudatoolkit
, fetchurl
}:
stdenv.mkDerivation rec {
version = "6.0";
cudatoolkit_version = "8.0";
name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}";
src = fetchurl {
url = "http://developer.download.nvidia.com/compute/redist/cudnn/v6.0/cudnn-8.0-linux-x64-v6.0.tgz";
sha256 = "173zpgrk55ri8if7s5yngsc89ajd6hz4pss4cdxlv6lcyh5122cv";
};
installPhase = ''
function fixRunPath {
p=$(patchelf --print-rpath $1)
patchelf --set-rpath "$p:${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}" $1
}
fixRunPath lib64/libcudnn.so
mkdir -p $out
cp -a include $out/include
cp -a lib64 $out/lib64
'';
propagatedBuildInputs = [
cudatoolkit
];
meta = with stdenv.lib; {
description = "NVIDIA CUDA Deep Neural Network library (cuDNN)";
homepage = https://developer.nvidia.com/cudnn;
license = stdenv.lib.licenses.unfree;
maintainers = with maintainers; [ jyp ];
};
}

View File

@ -1,29 +1,31 @@
{ stdenv { stdenv
, lib
, requireFile , requireFile
, cudatoolkit , cudatoolkit
, fetchurl
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "5.0"; version = "7.0";
cudatoolkit_version = "8.0"; cudatoolkit_version = "8.0";
name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}"; name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}";
src = requireFile rec { src = requireFile rec {
name = "cudnn-${cudatoolkit_version}-linux-x64-v${version}-ga.tgz"; name = "cudnn-${cudatoolkit_version}-linux-x64-v7.tgz";
message = '' message = ''
This nix expression requires that ${name} is already part of the store. This nix expression requires that ${name} is already part of the store.
Register yourself to NVIDIA Accelerated Computing Developer Program, retrieve the cuDNN library Register yourself to NVIDIA Accelerated Computing Developer Program, retrieve the cuDNN library
at https://developer.nvidia.com/cudnn, and run the following command in the download directory: at https://developer.nvidia.com/cudnn, and run the following command in the download directory:
nix-prefetch-url file://${name} nix-prefetch-url file://${name}
''; '';
sha256 = "af80eb1ce0cb51e6a734b2bdc599e6d50b676eab3921e5bddfe5443485df86b6"; sha256 = "19yjdslrslwv5ic4vgpzb0fa0mqbgi6a66b7gc66vdc9n9589398";
}; };
installPhase = '' installPhase = ''
function fixRunPath { function fixRunPath {
p=$(patchelf --print-rpath $1) p=$(patchelf --print-rpath $1)
patchelf --set-rpath "$p:${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}" $1 patchelf --set-rpath "$p:${lib.makeLibraryPath [ stdenv.cc.cc ]}" $1
} }
fixRunPath lib64/libcudnn.so fixRunPath lib64/libcudnn.so
@ -38,8 +40,9 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "NVIDIA CUDA Deep Neural Network library (cuDNN)"; description = "NVIDIA CUDA Deep Neural Network library (cuDNN)";
homepage = https://developer.nvidia.com/cudnn; homepage = "https://developer.nvidia.com/cudnn";
license = stdenv.lib.licenses.unfree; license = licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ mdaiter ]; maintainers = with maintainers; [ mdaiter ];
}; };
} }

View File

@ -0,0 +1,48 @@
{ stdenv
, lib
, requireFile
, cudatoolkit
, fetchurl
}:
stdenv.mkDerivation rec {
version = "7.0";
cudatoolkit_version = "9.0";
name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}";
src = requireFile rec {
name = "cudnn-${cudatoolkit_version}-linux-x64-v7.tgz";
message = ''
This nix expression requires that ${name} is already part of the store.
Register yourself to NVIDIA Accelerated Computing Developer Program, retrieve the cuDNN library
at https://developer.nvidia.com/cudnn, and run the following command in the download directory:
nix-prefetch-url file://${name}
'';
sha256 = "1ld5x819vya6p2ppmr7i3lz9ac2y81kssgbzgd0lsign7r2qjapc";
};
installPhase = ''
function fixRunPath {
p=$(patchelf --print-rpath $1)
patchelf --set-rpath "$p:${lib.makeLibraryPath [ stdenv.cc.cc ]}" $1
}
fixRunPath lib64/libcudnn.so
mkdir -p $out
cp -a include $out/include
cp -a lib64 $out/lib64
'';
propagatedBuildInputs = [
cudatoolkit
];
meta = with stdenv.lib; {
description = "NVIDIA CUDA Deep Neural Network library (cuDNN)";
homepage = "https://developer.nvidia.com/cudnn";
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ mdaiter ];
};
}

View File

@ -1582,23 +1582,23 @@ with pkgs;
cudatoolkit = cudatoolkit9; cudatoolkit = cudatoolkit9;
cudnn = callPackage ../development/libraries/science/math/cudnn/default.nix {}; cudnn_cudatoolkit7 = callPackage ../development/libraries/science/math/cudnn/7.0-4.0 {
cudatoolkit = cudatoolkit7;
};
cudnn5_cudatoolkit75 = callPackage ../development/libraries/science/math/cudnn/7.5-5.0 { cudnn_cudatoolkit75 = callPackage ../development/libraries/science/math/cudnn/7.5-6.0 {
cudatoolkit = cudatoolkit75; cudatoolkit = cudatoolkit75;
}; };
cudnn5_cudatoolkit80 = callPackage ../development/libraries/science/math/cudnn/8.0-5.0 { cudnn_cudatoolkit8 = callPackage ../development/libraries/science/math/cudnn/8.0-7.0 {
cudatoolkit = cudatoolkit8; cudatoolkit = cudatoolkit8;
}; };
cudnn51_cudatoolkit80 = callPackage ../development/libraries/science/math/cudnn/8.0-5.1 { cudnn_cudatoolkit9 = callPackage ../development/libraries/science/math/cudnn/9.0-7.0 {
cudatoolkit = cudatoolkit8; cudatoolkit = cudatoolkit9;
}; };
cudnn60_cudatoolkit80 = callPackage ../development/libraries/science/math/cudnn/8.0-6.0 { cudnn = cudnn_cudatoolkit9;
cudatoolkit = cudatoolkit8;
};
curlFull = curl.override { curlFull = curl.override {
idnSupport = true; idnSupport = true;