Unverified Commit 23144ffa authored by Connor Baker's avatar Connor Baker Committed by GitHub
Browse files

Merge pull request #240015 from jmillerpdt/init-nccl-tests

nccl-tests: init at 2.13.6
parents d534e87a c19e4174
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -8135,6 +8135,12 @@
    githubId = 2308444;
    name = "Joshua Gilman";
  };
  jmillerpdt = {
    email = "jcmiller@pdtpartners.com";
    github = "jmillerpdt";
    githubId = 54179289;
    name = "Jason Miller";
  };
  jnsgruk = {
    email = "jon@sgrs.uk";
    github = "jnsgruk";
+57 −0
Original line number Diff line number Diff line
{ config
, cudaPackages
, fetchFromGitHub
, lib
, mpiSupport ? false
, mpi
, stdenv
, which
}:

cudaPackages.backendStdenv.mkDerivation (finalAttrs: {

  pname = "nccl-tests";
  version = "2.13.6";

  src = fetchFromGitHub {
    owner = "NVIDIA";
    repo = finalAttrs.pname;
    rev = "v${finalAttrs.version}";
    hash = "sha256-3gSBQ0g6mnQ/MFXGflE+BqqrIUoiBgp8+fWRQOvLVkw=";
  };

  strictDeps = true;

  nativeBuildInputs = [
    cudaPackages.cuda_nvcc
    which
  ];

  buildInputs = [
    cudaPackages.cuda_cudart
    cudaPackages.nccl
  ] ++ lib.optional mpiSupport mpi;

  makeFlags = [
    "CUDA_HOME=${cudaPackages.cuda_nvcc}"
    "NCCL_HOME=${cudaPackages.nccl}"
  ] ++ lib.optionals mpiSupport [
    "MPI=1"
  ];

  enableParallelBuilding = true;

  installPhase = ''
    mkdir -p $out/bin
    cp -r build/* $out/bin/
  '';

  meta = with lib; {
    description = "Tests to check both the performance and the correctness of NVIDIA NCCL operations";
    homepage = "https://github.com/NVIDIA/nccl-tests";
    platforms = [ "x86_64-linux" ];
    license = licenses.bsd3;
    broken = !config.cudaSupport || (mpiSupport && mpi == null);
    maintainers = with maintainers; [ jmillerpdt ];
  };
})
+2 −0
Original line number Diff line number Diff line
@@ -47,6 +47,8 @@ let

    nccl = final.callPackage ../development/libraries/science/math/nccl { };

    nccl-tests = final.callPackage ../development/libraries/science/math/nccl/tests.nix { };

    autoAddOpenGLRunpathHook = final.callPackage ( { makeSetupHook, addOpenGLRunpath }:
      makeSetupHook {
        name = "auto-add-opengl-runpath-hook";