anchor.diff:      ninja
     ] ++ lib.optionals cudaSupport [ cudatoolkit_joined ];
   
  -  buildInputs = [ blas blas.provider oneDNN ]
  +  buildInputs = [ blas blas.provider ]
       ++ lib.optionals cudaSupport [ cudnn magma nccl ]
       ++ lib.optionals stdenv.isLinux [ numactl ];
   
  
positive.code: 
    USE_MKL = blas.implementation == "mkl";
  
    # Unlike MKL, MKLDNN is FOSS, so we enable support for it by default. Note
    # that this was renamed to dnnl and then renamed again to oneDNN upstream, but
    # pytorch still calls it by the old name mkldnn.
    USE_MKLDNN = mklDnnSupport;
    USE_MKLDNN_CBLAS = mklDnnSupport;
  
  
negative.code:   openMPISupport ? false, openmpi ? null,
    buildDocs ? false,
    cudaArchList ? null,
    numpy, pyyaml, cffi, click, typing, cmake, hypothesis, numactl, psutil,
    linkFarm, symlinkJoin,
  
    # virtual pkg that consistently instantiates blas across nixpkgs
  