forked from rarias/jungle
Compare commits
9 Commits
66df874b4a
...
ec1da8f88f
| Author | SHA1 | Date | |
|---|---|---|---|
| ec1da8f88f | |||
| 9ffc04786f | |||
| 824dee5c86 | |||
| 67726c1d44 | |||
| a971ed6a54 | |||
| 06581e455c | |||
| dd7f24f455 | |||
| 64e2c39582 | |||
| 98d17b19d3 |
@ -11,6 +11,7 @@
|
|||||||
./base/hw.nix
|
./base/hw.nix
|
||||||
./base/net.nix
|
./base/net.nix
|
||||||
./base/nix.nix
|
./base/nix.nix
|
||||||
|
./base/sys-devices.nix
|
||||||
./base/ntp.nix
|
./base/ntp.nix
|
||||||
./base/rev.nix
|
./base/rev.nix
|
||||||
./base/ssh.nix
|
./base/ssh.nix
|
||||||
|
|||||||
9
m/common/base/sys-devices.nix
Normal file
9
m/common/base/sys-devices.nix
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
nix.settings.system-features = [ "sys-devices" ];
|
||||||
|
|
||||||
|
programs.nix-required-mounts.enable = true;
|
||||||
|
programs.nix-required-mounts.allowedPatterns.sys-devices.paths = [
|
||||||
|
"/sys/devices/system/cpu"
|
||||||
|
"/sys/devices/system/node"
|
||||||
|
];
|
||||||
|
}
|
||||||
29
overlay.nix
29
overlay.nix
@ -7,33 +7,6 @@ let
|
|||||||
callPackage = final.callPackage;
|
callPackage = final.callPackage;
|
||||||
|
|
||||||
bscPkgs = {
|
bscPkgs = {
|
||||||
|
|
||||||
# override stdenv to add a sentinel to know if a derivation comes
|
|
||||||
# from unfree sources.
|
|
||||||
stdenv = prev.stdenv // {
|
|
||||||
mkDerivation =
|
|
||||||
args:
|
|
||||||
let
|
|
||||||
originalDrv = prev.stdenv.mkDerivation args;
|
|
||||||
checkLicense = l: if builtins.isAttrs l then !(l.free or true) else false;
|
|
||||||
|
|
||||||
licenses = if builtins.isList args.meta.license then args.meta.license else [ args.meta.license ];
|
|
||||||
|
|
||||||
hasUnfreeLicense =
|
|
||||||
if args ? meta && args.meta ? license then builtins.any checkLicense licenses else false;
|
|
||||||
in
|
|
||||||
if hasUnfreeLicense then
|
|
||||||
builtins.traceVerbose "adding nix-support/private to ${originalDrv.name or originalDrv.pname}" (
|
|
||||||
originalDrv.overrideAttrs (old: {
|
|
||||||
postInstall = (old.postInstall or "") + ''
|
|
||||||
mkdir -p $out/nix-support
|
|
||||||
touch $out/nix-support/private
|
|
||||||
'';
|
|
||||||
}))
|
|
||||||
else
|
|
||||||
originalDrv;
|
|
||||||
};
|
|
||||||
|
|
||||||
amd-uprof = prev.callPackage ./pkgs/amd-uprof/default.nix { };
|
amd-uprof = prev.callPackage ./pkgs/amd-uprof/default.nix { };
|
||||||
bench6 = callPackage ./pkgs/bench6/default.nix { };
|
bench6 = callPackage ./pkgs/bench6/default.nix { };
|
||||||
bigotes = callPackage ./pkgs/bigotes/default.nix { };
|
bigotes = callPackage ./pkgs/bigotes/default.nix { };
|
||||||
@ -89,7 +62,7 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
tests = rec {
|
tests = rec {
|
||||||
#hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys
|
hwloc = callPackage ./test/bugs/hwloc.nix { };
|
||||||
#sigsegv = callPackage ./test/reproducers/sigsegv.nix { };
|
#sigsegv = callPackage ./test/reproducers/sigsegv.nix { };
|
||||||
hello-c = callPackage ./test/compilers/hello-c.nix { };
|
hello-c = callPackage ./test/compilers/hello-c.nix { };
|
||||||
hello-cpp = callPackage ./test/compilers/hello-cpp.nix { };
|
hello-cpp = callPackage ./test/compilers/hello-cpp.nix { };
|
||||||
|
|||||||
@ -60,11 +60,11 @@ stdenv.mkDerivation rec {
|
|||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://gitlab.pm.bsc.es/rarias/bench6";
|
homepage = "https://gitlab.pm.bsc.es/rarias/bench6";
|
||||||
description = "Set of micro-benchmarks for OmpSs-2 and several mini-apps";
|
description = "Set of micro-benchmarks for OmpSs-2 and several mini-apps";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3;
|
license = lib.licenses.gpl3;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,11 +16,11 @@ stdenv.mkDerivation {
|
|||||||
};
|
};
|
||||||
nativeBuildInputs = [ cmake ];
|
nativeBuildInputs = [ cmake ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/rodarima/bigotes";
|
homepage = "https://github.com/rodarima/bigotes";
|
||||||
description = "Versatile benchmark tool";
|
description = "Versatile benchmark tool";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3;
|
license = lib.licenses.gpl3;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,6 +20,7 @@
|
|||||||
#, python3Packages
|
#, python3Packages
|
||||||
, installShellFiles
|
, installShellFiles
|
||||||
, symlinkJoin
|
, symlinkJoin
|
||||||
|
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
@ -87,7 +88,7 @@ stdenv.mkDerivation rec {
|
|||||||
--enable-sampling
|
--enable-sampling
|
||||||
--with-unwind=${libunwind.dev}
|
--with-unwind=${libunwind.dev}
|
||||||
--with-xml-prefix=${libxml2.dev}
|
--with-xml-prefix=${libxml2.dev}
|
||||||
--with-papi=${papi}
|
${lib.optionalString enablePapi "--with-papi=${papi}"}
|
||||||
${if (mpi != null) then ''--with-mpi=${mpi}''
|
${if (mpi != null) then ''--with-mpi=${mpi}''
|
||||||
else ''--without-mpi''}
|
else ''--without-mpi''}
|
||||||
--without-dyninst)
|
--without-dyninst)
|
||||||
@ -111,11 +112,11 @@ stdenv.mkDerivation rec {
|
|||||||
# else []
|
# else []
|
||||||
# );
|
# );
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-performance-tools/extrae";
|
homepage = "https://github.com/bsc-performance-tools/extrae";
|
||||||
description = "Instrumentation framework to generate execution traces of the most used parallel runtimes";
|
description = "Instrumentation framework to generate execution traces of the most used parallel runtimes";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.lgpl21Plus;
|
license = lib.licenses.lgpl21Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -54,11 +54,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://pm.bsc.es/gitlab/interoperability/extern/GPI-2";
|
homepage = "https://pm.bsc.es/gitlab/interoperability/extern/GPI-2";
|
||||||
description = "GPI-2 extended for supporting Task-Aware GASPI (TAGASPI) library";
|
description = "GPI-2 extended for supporting Task-Aware GASPI (TAGASPI) library";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3;
|
license = lib.licenses.gpl3;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -61,11 +61,11 @@ stdenv.mkDerivation rec {
|
|||||||
popd
|
popd
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
||||||
description = "Intel compiler";
|
description = "Intel compiler";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.unfree;
|
license = lib.licenses.unfree;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -145,12 +145,12 @@ in
|
|||||||
popd
|
popd
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
||||||
description = "Intel compiler";
|
description = "Intel compiler";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.unfree;
|
license = lib.licenses.unfree;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -103,11 +103,11 @@ stdenv.mkDerivation rec {
|
|||||||
echo "Patched RPATH in libfabric.so to: $(patchelf --print-rpath $out/lib/libfabric.so)"
|
echo "Patched RPATH in libfabric.so to: $(patchelf --print-rpath $out/lib/libfabric.so)"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
homepage = "https://www.intel.com/content/www/us/en/developer/tools/overview.html";
|
||||||
description = "Intel compiler";
|
description = "Intel compiler";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.unfree;
|
license = lib.licenses.unfree;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -26,6 +26,13 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Intel oneapi hpckit package component";
|
||||||
|
homepage = "https://www.intel.com/content/www/us/en/developer/tools/oneapi/hpc-toolkit-download.html";
|
||||||
|
license = lib.licenses.unfree;
|
||||||
|
maintainers = with lib.maintainers.bsc; [ abonerib ];
|
||||||
|
};
|
||||||
|
|
||||||
gcc = gcc13;
|
gcc = gcc13;
|
||||||
|
|
||||||
v = {
|
v = {
|
||||||
@ -43,15 +50,11 @@ let
|
|||||||
];
|
];
|
||||||
phases = [ "installPhase" ];
|
phases = [ "installPhase" ];
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
awk -F': ' '\
|
awk -F': ' '\
|
||||||
BEGIN { print "[ {" } \
|
BEGIN { print "[ {" } \
|
||||||
NR>1 && /^Package: / { print "} {"; } \
|
NR>1 && /^Package: / { print "} {"; } \
|
||||||
/: / { printf "%s = \"%s\";\n", $1, $2 } \
|
/: / { printf "%s = \"%s\";\n", $1, $2 } \
|
||||||
END { print "} ]" }' $srcs > $out
|
END { print "} ]" }' $srcs > $out
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -85,23 +88,14 @@ let
|
|||||||
nativeBuildInputs = [ dpkg ];
|
nativeBuildInputs = [ dpkg ];
|
||||||
phases = [ "installPhase" ];
|
phases = [ "installPhase" ];
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out
|
mkdir -p $out
|
||||||
for src in $srcs; do
|
for src in $srcs; do
|
||||||
echo "unpacking $src"
|
echo "unpacking $src"
|
||||||
dpkg -x $src $out
|
dpkg -x $src $out
|
||||||
done
|
done
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
inherit meta;
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
joinDebs = name: names:
|
joinDebs = name: names:
|
||||||
@ -137,8 +131,6 @@ let
|
|||||||
phases = [ "installPhase" "fixupPhase" ];
|
phases = [ "installPhase" "fixupPhase" ];
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,etc,lib,include}
|
mkdir -p $out/{bin,etc,lib,include}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@ -155,8 +147,6 @@ let
|
|||||||
# Broken due missing libze_loader.so.1
|
# Broken due missing libze_loader.so.1
|
||||||
rsync -a --exclude IMB-MPI1-GPU bin/ $out/bin/
|
rsync -a --exclude IMB-MPI1-GPU bin/ $out/bin/
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
preFixup = ''
|
preFixup = ''
|
||||||
for i in $out/bin/mpi* ; do
|
for i in $out/bin/mpi* ; do
|
||||||
@ -165,12 +155,7 @@ let
|
|||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
inherit meta;
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
intel-tbb = stdenv.mkDerivation rec {
|
intel-tbb = stdenv.mkDerivation rec {
|
||||||
@ -200,8 +185,6 @@ let
|
|||||||
autoPatchelfIgnoreMissingDeps = [ "libhwloc.so.5" ];
|
autoPatchelfIgnoreMissingDeps = [ "libhwloc.so.5" ];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/lib
|
mkdir -p $out/lib
|
||||||
|
|
||||||
cd $src
|
cd $src
|
||||||
@ -210,16 +193,9 @@ let
|
|||||||
# Libraries
|
# Libraries
|
||||||
rsync -a lib/intel64/gcc4.8/ $out/lib/
|
rsync -a lib/intel64/gcc4.8/ $out/lib/
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
inherit meta;
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
intel-compiler-shared = stdenv.mkDerivation rec {
|
intel-compiler-shared = stdenv.mkDerivation rec {
|
||||||
@ -252,8 +228,6 @@ let
|
|||||||
autoPatchelfIgnoreMissingDeps = [ "libsycl.so.6" ];
|
autoPatchelfIgnoreMissingDeps = [ "libsycl.so.6" ];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,lib,include}
|
mkdir -p $out/{bin,lib,include}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@ -278,16 +252,9 @@ let
|
|||||||
rsync -a compiler/include/ $out/include/
|
rsync -a compiler/include/ $out/include/
|
||||||
popd
|
popd
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
inherit meta;
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -326,8 +293,6 @@ let
|
|||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,lib,include}
|
mkdir -p $out/{bin,lib,include}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@ -353,18 +318,10 @@ let
|
|||||||
|
|
||||||
# Fix lib_lin
|
# Fix lib_lin
|
||||||
ln -s $out/lib $out/lib_lin
|
ln -s $out/lib $out/lib_lin
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
inherit meta;
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
intel-compiler = stdenv.mkDerivation rec {
|
intel-compiler = stdenv.mkDerivation rec {
|
||||||
@ -424,8 +381,6 @@ let
|
|||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/{bin,lib}
|
mkdir -p $out/{bin,lib}
|
||||||
mkdir -p $out/share/man
|
mkdir -p $out/share/man
|
||||||
|
|
||||||
@ -453,16 +408,9 @@ let
|
|||||||
# Manuals
|
# Manuals
|
||||||
rsync -a documentation/en/man/common/ $out/share/man/
|
rsync -a documentation/en/man/common/ $out/share/man/
|
||||||
popd
|
popd
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
inherit meta;
|
||||||
description = "";
|
|
||||||
homepage = "";
|
|
||||||
license = lib.licenses.unfree;
|
|
||||||
maintainers = with lib.maintainers; [ ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
wrapIntel = { cc, mygcc, extraBuild ? "", extraInstall ? "" }:
|
wrapIntel = { cc, mygcc, extraBuild ? "", extraInstall ? "" }:
|
||||||
|
|||||||
@ -35,6 +35,8 @@ stdenv.mkDerivation rec {
|
|||||||
CFLAGS=-Wno-implicit-int
|
CFLAGS=-Wno-implicit-int
|
||||||
CPPFLAGS=-I${libtirpc.dev}/include/tirpc
|
CPPFLAGS=-I${libtirpc.dev}/include/tirpc
|
||||||
LDFLAGS=-ltirpc
|
LDFLAGS=-ltirpc
|
||||||
|
CC=$CC
|
||||||
|
AR=$AR
|
||||||
)
|
)
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|||||||
@ -64,11 +64,11 @@ stdenv.mkDerivation rec {
|
|||||||
# "--enable-bison-regeneration"
|
# "--enable-bison-regeneration"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-pm/mcxx";
|
homepage = "https://github.com/bsc-pm/mcxx";
|
||||||
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
||||||
maintainers = with maintainers.bsc; [ rpenacob ];
|
maintainers = with lib.maintainers.bsc; [ rpenacob ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -59,11 +59,11 @@ stdenv.mkDerivation rec {
|
|||||||
# "--enable-bison-regeneration"
|
# "--enable-bison-regeneration"
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-pm/mcxx";
|
homepage = "https://github.com/bsc-pm/mcxx";
|
||||||
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
||||||
maintainers = with maintainers.bsc; [ rpenacob ];
|
maintainers = with lib.maintainers.bsc; [ rpenacob ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -58,11 +58,11 @@ stdenv.mkDerivation rec {
|
|||||||
# make generate_builtins_ia32 GXX_X86_BUILTINS=${gcc}/bin/g++
|
# make generate_builtins_ia32 GXX_X86_BUILTINS=${gcc}/bin/g++
|
||||||
#'';
|
#'';
|
||||||
#
|
#
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-pm/mcxx";
|
homepage = "https://github.com/bsc-pm/mcxx";
|
||||||
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
description = "C/C++/Fortran source-to-source compilation infrastructure aimed at fast prototyping";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,6 +16,7 @@
|
|||||||
, jemallocNanos6 ? null
|
, jemallocNanos6 ? null
|
||||||
, cachelineBytes ? 64
|
, cachelineBytes ? 64
|
||||||
, enableGlibcxxDebug ? false
|
, enableGlibcxxDebug ? false
|
||||||
|
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
|
||||||
, useGit ? false
|
, useGit ? false
|
||||||
, gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6"
|
, gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6"
|
||||||
, gitBranch ? "master"
|
, gitBranch ? "master"
|
||||||
@ -47,6 +48,8 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
source = if (useGit) then git else release;
|
source = if (useGit) then git else release;
|
||||||
|
|
||||||
|
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation (source // {
|
stdenv.mkDerivation (source // {
|
||||||
pname = "nanos6";
|
pname = "nanos6";
|
||||||
@ -71,9 +74,13 @@ in
|
|||||||
"--disable-all-instrumentations"
|
"--disable-all-instrumentations"
|
||||||
"--enable-ovni-instrumentation"
|
"--enable-ovni-instrumentation"
|
||||||
"--with-ovni=${ovni}"
|
"--with-ovni=${ovni}"
|
||||||
|
"--with-boost=${boost.dev}"
|
||||||
] ++
|
] ++
|
||||||
(optional enableJemalloc "--with-jemalloc=${jemallocNanos6}") ++
|
(optional enableJemalloc "--with-jemalloc=${jemallocNanos6}") ++
|
||||||
(optional enableGlibcxxDebug "CXXFLAGS=-D_GLIBCXX_DEBUG");
|
(optional enableGlibcxxDebug "CXXFLAGS=-D_GLIBCXX_DEBUG") ++
|
||||||
|
# Most nanos6 api symbols are resolved at runtime, so prefer
|
||||||
|
# ifunc by default
|
||||||
|
(optional isCross "--with-symbol-resolution=ifunc");
|
||||||
|
|
||||||
postConfigure = lib.optionalString (!enableDebug) ''
|
postConfigure = lib.optionalString (!enableDebug) ''
|
||||||
# Disable debug
|
# Disable debug
|
||||||
@ -97,16 +104,14 @@ in
|
|||||||
# TODO: papi_version is needed for configure:
|
# TODO: papi_version is needed for configure:
|
||||||
# ./configure: line 27378: papi_version: command not found
|
# ./configure: line 27378: papi_version: command not found
|
||||||
# This probably breaks cross-compilation
|
# This probably breaks cross-compilation
|
||||||
papi
|
] ++ lib.optionals enablePapi [ papi ];
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
boost
|
boost
|
||||||
numactl
|
numactl
|
||||||
hwloc
|
hwloc
|
||||||
papi
|
|
||||||
ovni
|
ovni
|
||||||
];
|
] ++ lib.optionals enablePapi [ papi ];
|
||||||
|
|
||||||
# Create a script that sets NANOS6_HOME
|
# Create a script that sets NANOS6_HOME
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
@ -114,12 +119,12 @@ in
|
|||||||
echo "export NANOS6_HOME=$out" >> $out/nix-support/setup-hook
|
echo "export NANOS6_HOME=$out" >> $out/nix-support/setup-hook
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-pm/nanos6";
|
homepage = "https://github.com/bsc-pm/nanos6";
|
||||||
description = "Nanos6 runtime for OmpSs-2" +
|
description = "Nanos6 runtime for OmpSs-2" +
|
||||||
optionalString (enableDebug) " (with debug symbols)";
|
optionalString (enableDebug) " (with debug symbols)";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.latforms.linux;
|
||||||
license = licenses.gpl3;
|
license = lib.licenses.gpl3;
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|||||||
@ -88,12 +88,12 @@ stdenv.mkDerivation rec {
|
|||||||
cp ${nix_conf} $out/share/nix.conf
|
cp ${nix_conf} $out/share/nix.conf
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = null;
|
homepage = null;
|
||||||
description = "nix bubblewrap wrapper";
|
description = "nix bubblewrap wrapper";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus; # TODO: license?
|
license = lib.licenses.gpl3Plus; # TODO: license?
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -17,11 +17,11 @@ stdenv.mkDerivation rec {
|
|||||||
preBuild = "env";
|
preBuild = "env";
|
||||||
dontPatchShebangs = true;
|
dontPatchShebangs = true;
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://gitlab.pm.bsc.es/rarias/nixtools";
|
homepage = "https://gitlab.pm.bsc.es/rarias/nixtools";
|
||||||
description = "nix bubblewrap wrapper";
|
description = "nix bubblewrap wrapper";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus; # TODO: license?
|
license = lib.licenses.gpl3Plus; # TODO: license?
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -82,11 +82,11 @@ in
|
|||||||
inherit nosv;
|
inherit nosv;
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://gitlab.bsc.es/nos-v/nodes";
|
homepage = "https://gitlab.bsc.es/nos-v/nodes";
|
||||||
description = "Runtime library designed to work on top of the nOS-V runtime";
|
description = "Runtime library designed to work on top of the nOS-V runtime";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
, numactl
|
, numactl
|
||||||
, hwloc
|
, hwloc
|
||||||
, papi
|
, papi
|
||||||
, enablePapi ? true
|
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
|
||||||
, cacheline ? 64 # bits
|
, cacheline ? 64 # bits
|
||||||
, ovni ? null
|
, ovni ? null
|
||||||
, useGit ? false
|
, useGit ? false
|
||||||
@ -60,11 +60,11 @@ in
|
|||||||
ovni
|
ovni
|
||||||
] ++ lib.optionals enablePapi [ papi ];
|
] ++ lib.optionals enablePapi [ papi ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://gitlab.bsc.es/nos-v/nos-v";
|
homepage = "https://gitlab.bsc.es/nos-v/nos-v";
|
||||||
description = "Tasking library enables the co-execution of multiple applications with system-wide scheduling and a centralized management of resources";
|
description = "Tasking library enables the co-execution of multiple applications with system-wide scheduling and a centralized management of resources";
|
||||||
maintainers = with maintainers.bsc; [ abonerib ];
|
maintainers = with lib.maintainers.bsc; [ abonerib ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -56,11 +56,11 @@ in
|
|||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://ovni.readthedocs.io";
|
homepage = "https://ovni.readthedocs.io";
|
||||||
description = "Obtuse but Versatile Nanoscale Instrumentation";
|
description = "Obtuse but Versatile Nanoscale Instrumentation";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -90,11 +90,11 @@ stdenv.mkDerivation rec {
|
|||||||
mv $out/share/doc/wxparaver_help_contents/man $out/share/man/man1
|
mv $out/share/doc/wxparaver_help_contents/man $out/share/man/man1
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-performance-tools/wxparaver";
|
homepage = "https://github.com/bsc-performance-tools/wxparaver";
|
||||||
description = "Trace-based visualization and analysis tool designed to study quantitative detailed metrics and obtain qualitative knowledge of the performance of applications, libraries, processors and whole architectures";
|
description = "Trace-based visualization and analysis tool designed to study quantitative detailed metrics and obtain qualitative knowledge of the performance of applications, libraries, processors and whole architectures";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.lgpl21Plus;
|
license = lib.licenses.lgpl21Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,11 +29,11 @@ stdenv.mkDerivation rec {
|
|||||||
mpi
|
mpi
|
||||||
];
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-pm/sonar";
|
homepage = "https://github.com/bsc-pm/sonar";
|
||||||
description = "Set of runtime libraries which instrument parallel programming models through the ovni instrumentation library";
|
description = "Set of runtime libraries which instrument parallel programming models through the ovni instrumentation library";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.mit;
|
license = lib.licenses.mit;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -57,11 +57,11 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-pm/tagaspi";
|
homepage = "https://github.com/bsc-pm/tagaspi";
|
||||||
description = "Task-Aware GASPI";
|
description = "Task-Aware GASPI";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -62,11 +62,11 @@ in stdenv.mkDerivation {
|
|||||||
dontDisableStatic = true;
|
dontDisableStatic = true;
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = {
|
||||||
homepage = "https://github.com/bsc-pm/tampi";
|
homepage = "https://github.com/bsc-pm/tampi";
|
||||||
description = "Task-Aware MPI";
|
description = "Task-Aware MPI";
|
||||||
maintainers = with maintainers.bsc; [ rarias ];
|
maintainers = with lib.maintainers.bsc; [ rarias ];
|
||||||
platforms = platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
license = licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "hwloc-test";
|
name = "hwloc-test";
|
||||||
|
requiredSystemFeatures = [ "sys-devices" ];
|
||||||
|
|
||||||
src = ./.;
|
src = ./.;
|
||||||
|
|
||||||
@ -14,7 +15,7 @@ stdenv.mkDerivation {
|
|||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
ls -l /sys
|
ls -l /sys
|
||||||
gcc -lhwloc hwloc.c -o hwloc
|
gcc -lhwloc hwloc.c -o hwloc
|
||||||
strace ./hwloc
|
strace ./hwloc > $out
|
||||||
'';
|
'';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,9 +23,8 @@ in stdenv.mkDerivation {
|
|||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
|
|
||||||
# nOS-V requires access to /sys/devices to request NUMA information. It will
|
# nOS-V requires access to /sys/devices to request NUMA information
|
||||||
# fail to run otherwise, so we disable the sandbox for this test.
|
requiredSystemFeatures = [ "sys-devices" ];
|
||||||
__noChroot = true;
|
|
||||||
|
|
||||||
buildInputs = [ openmp ];
|
buildInputs = [ openmp ];
|
||||||
|
|
||||||
|
|||||||
@ -36,9 +36,8 @@ in stdenv.mkDerivation {
|
|||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
|
|
||||||
# nOS-V requires access to /sys/devices to request NUMA information. It will
|
# nOS-V requires access to /sys/devices to request NUMA information
|
||||||
# fail to run otherwise, so we disable the sandbox for this test.
|
requiredSystemFeatures = [ "sys-devices" ];
|
||||||
__noChroot = true;
|
|
||||||
|
|
||||||
buildInputs = [ nosv ];
|
buildInputs = [ nosv ];
|
||||||
|
|
||||||
|
|||||||
@ -24,9 +24,8 @@ in stdenv.mkDerivation {
|
|||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
dontConfigure = true;
|
dontConfigure = true;
|
||||||
|
|
||||||
# nOS-V requires access to /sys/devices to request NUMA information. It will
|
# nOS-V requires access to /sys/devices to request NUMA information
|
||||||
# fail to run otherwise, so we disable the sandbox for this test.
|
requiredSystemFeatures = [ "sys-devices" ];
|
||||||
__noChroot = true;
|
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
set -x
|
set -x
|
||||||
|
|||||||
@ -25,9 +25,10 @@ stdenv.mkDerivation rec {
|
|||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
#NIX_DEBUG = 1;
|
#NIX_DEBUG = 1;
|
||||||
buildInputs = [ ]; #strace gdb;
|
buildInputs = [ ]; #strace gdb;
|
||||||
# NODES requires access to /sys/devices to request NUMA information. It will
|
|
||||||
# fail to run otherwise, so we disable the sandbox for this test.
|
# NODES requires access to /sys/devices to request NUMA information
|
||||||
__noChroot = true;
|
requiredSystemFeatures = [ "sys-devices" ];
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
set -x
|
set -x
|
||||||
#$CC -v
|
#$CC -v
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user