Compare commits

..

9 Commits

Author SHA1 Message Date
ec1da8f88f
Add meta to intel 2023 2025-10-09 17:32:46 +02:00
9ffc04786f
Add meta to packages 2025-10-09 17:22:50 +02:00
824dee5c86
Add maintainers 2025-10-09 17:05:23 +02:00
67726c1d44 Fix nanos6 cross-compilation for riscv
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Tested-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2025-10-09 15:49:01 +02:00
a971ed6a54 Fix cross compilation for lmbench
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2025-10-09 15:49:01 +02:00
06581e455c Disable papi when cross compiling
Even if we do an override to papi get the proper configure flags for
cross-compiling, the memory fences are not defined for risc-v:

mb.h:67:2: error: #error Need to define rmb for this architecture!

See: rarias/jungle#184
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2025-10-09 15:48:45 +02:00
dd7f24f455 Replace __noChroot with requiredSystemFeatures
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Tested-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2025-10-09 11:41:18 +02:00
64e2c39582 Add hwloc test with sys-devices feature
Reviewed-by: Aleix Boné <abonerib@bsc.es>
2025-10-09 11:41:06 +02:00
98d17b19d3 Enable custom sys-devices system feature
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2025-10-09 11:40:44 +02:00
30 changed files with 131 additions and 193 deletions

View File

@ -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

View 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"
];
}

View File

@ -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 { };

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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 ? "" }:

View File

@ -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
) )
''; '';

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
}) })

View File

@ -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?
}; };
} }

View File

@ -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?
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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;
}; };
} }

View File

@ -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
''; '';
} }

View File

@ -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 ];

View File

@ -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 ];

View File

@ -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

View File

@ -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