diff --git a/bsc/apps/hpcg/default.nix b/bsc/apps/hpcg/default.nix new file mode 100644 index 0000000..f311804 --- /dev/null +++ b/bsc/apps/hpcg/default.nix @@ -0,0 +1,46 @@ +{ + stdenv +, nanos6 +, mpi +, mcxx +, tampi +, icc +}: + +stdenv.mkDerivation rec { + name = "hpcg"; + + src = builtins.fetchGit { + url = "ssh://git@bscpm02.bsc.es/rpenacob/hpcg.git"; + ref = "symgs_coloring_more_than_one_block_per_task_halos_blocking_discreete"; + }; + + prePatch = '' + #export NIX_DEBUG=6 + ''; + + patches = [ ./tampi.patch ]; + + buildInputs = [ + nanos6 + mpi + icc + tampi + mcxx + ]; + + enableParallelBuilding = true; + + configurePhase = '' + export TAMPI_HOME=${tampi} + mkdir build + cd build + ../configure MPI_ICPC_OSS + ''; + + installPhase = '' + mkdir -p $out/bin + cp bin/* $out/bin/ + ''; + +} diff --git a/default.nix b/default.nix index 712e043..5e66368 100644 --- a/default.nix +++ b/default.nix @@ -150,6 +150,14 @@ let nanos6 = nanos6-git; }; + hpcg = callPackage ./bsc/apps/hpcg/default.nix { + mpi = intel-mpi; + nanos6 = nanos6-git; + tampi = tampi.override { + mpi = intel-mpi; + }; + }; + # Patched nix for deep cluster inherit (callPackage ./bsc/nix/default.nix { storeDir = "/nix/store";