diff --git a/pkgs/development/python-modules/torchgpipe/default.nix b/pkgs/development/python-modules/torchgpipe/default.nix new file mode 100644 index 000000000000..e7aa53360ed5 --- /dev/null +++ b/pkgs/development/python-modules/torchgpipe/default.nix @@ -0,0 +1,39 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, isPy27 +, pytest +, pytestrunner +, pytestCheckHook +, pytorch +}: + +buildPythonPackage rec { + pname = "torchgpipe"; + version = "0.0.5"; + + disabled = isPy27; + + src = fetchFromGitHub { + owner = "kakaobrain"; + repo = pname; + rev = "v${version}"; + sha256 = "0mqdavnqb8a320li2r7xw11w2lg03l59xxyg2fxpg4z57v0rbasi"; + }; + + propagatedBuildInputs = [ pytorch ]; + + checkInputs = [ pytest pytestrunner pytestCheckHook ]; + disabledTests = [ "test_inplace_on_requires_grad" ]; + # seems like a harmless failure: + ## AssertionError: + ## Pattern 'a leaf Variable that requires grad has been used in an in-place operation.' + ## does not match 'a leaf Variable that requires grad is being used in an in-place operation.' + + meta = with lib; { + description = "GPipe implemented in Pytorch and optimized for CUDA rather than TPU"; + homepage = "https://torchgpipe.readthedocs.io"; + license = licenses.asl20; + maintainers = [ maintainers.bcdarwin ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cf3c2f23aabc..62e79e83d6c9 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6988,6 +6988,8 @@ in { torchvision = callPackage ../development/python-modules/torchvision { }; + torchgpipe = callPackage ../development/python-modules/torchgpipe { }; + jenkinsapi = callPackage ../development/python-modules/jenkinsapi { }; jenkins-job-builder = callPackage ../development/python-modules/jenkins-job-builder { };