Compare commits

...

9 Commits

Author SHA1 Message Date
c4583f787d Fix Nanos6 build from git
The src.rev attribute is not available as it comes from source before
the recursive operator. Instead, simply get it from the function inputs.

Cc: Aleix Boné <aleix.boneribo@bsc.es>
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
2025-02-28 13:36:00 +01:00
22e40db034 Add explicit zlib dependency
The stdenv no longer provides it by default.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
Tested-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2025-01-22 16:05:52 +01:00
501f11a8e5 Merge outputs of MPI in a single directory
Some MPI implementations now have their headers in the dev output as
well as the mpicc wrappers.

Reviewed-by: Aleix Boné <abonerib@bsc.es>
2025-01-22 16:03:08 +01:00
505f101e00 Update wxGTK30 to wxGTK32 in paraver kernel
Reviewed-by: Aleix Boné <abonerib@bsc.es>
2025-01-22 16:03:06 +01:00
f44eebc133 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'path:/nix/store/z7y28qzhk7driiwcw78k0mb24laknm0f-source?lastModified=1700390070&narHash=sha256-de9KYi8rSJpqvBfNwscWdalIJXPo8NjdIZcEJum1mH0%3D&rev=e4ad989506ec7d71f7302cc3067abd82730a4beb' (2023-11-19)
  → 'path:/nix/store/2csx2kkb2hxyxhhmg2xs9jfyypikwwk6-source?lastModified=1736867362&narHash=sha256-i/UJ5I7HoqmFMwZEH6vAvBxOrjjOJNU739lnZnhUln8%3D&rev=9c6b49aeac36e2ed73a8c472f1546f6d9cf1addc' (2025-01-14)

Reviewed-by: Aleix Boné <abonerib@bsc.es>
2025-01-22 16:02:49 +01:00
6782fc6c5b Add cacheline parameter to nOS-V
By default it is set to 64 bits. The cacheline parameter is required
when cross-compiling nOS-V, as it cannot be read from the build machine.

Tested-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2024-11-29 09:16:03 +01:00
73550ad5a9 Remove unneeded NODES dependencies
The autoreconfHook helper already provides autotools binaries. Also NODES
no longer uses papi.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2024-11-29 09:16:03 +01:00
48d67ef6c2 Fix NODES native dependencies
Move NODES build tools to nativeBuildInputs. This is needed for
cross-compilation, given that build tools must much the build system.

Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2024-11-29 09:16:03 +01:00
Raúl Peñacoba
73e30d20e9 Python is needed in openmp now
Reviewed-by: Aleix Roca Nonell <aleix.rocanonell@bsc.es>
Tested-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2024-11-29 09:09:27 +01:00
10 changed files with 48 additions and 24 deletions

8
flake.lock generated
View File

@@ -2,10 +2,10 @@
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1700390070,
"narHash": "sha256-de9KYi8rSJpqvBfNwscWdalIJXPo8NjdIZcEJum1mH0=",
"path": "/nix/store/z7y28qzhk7driiwcw78k0mb24laknm0f-source",
"rev": "e4ad989506ec7d71f7302cc3067abd82730a4beb",
"lastModified": 1736867362,
"narHash": "sha256-i/UJ5I7HoqmFMwZEH6vAvBxOrjjOJNU739lnZnhUln8=",
"path": "/nix/store/2csx2kkb2hxyxhhmg2xs9jfyypikwwk6-source",
"rev": "9c6b49aeac36e2ed73a8c472f1546f6d9cf1addc",
"type": "path"
},
"original": {

View File

@@ -17,6 +17,10 @@ let
name ="rdma-core-all";
paths = [ rdma-core.dev rdma-core.out ];
};
mpiAll = symlinkJoin {
name = "mpi-all";
paths = [ mpi.all ];
};
in
stdenv.mkDerivation rec {
@@ -37,13 +41,13 @@ stdenv.mkDerivation rec {
configureFlags = [
"--with-infiniband=${rdma-core-all}"
"--with-mpi=${mpi}"
"--with-mpi=${mpiAll}"
"--with-slurm"
"CFLAGS=-fPIC"
"CXXFLAGS=-fPIC"
];
buildInputs = [ slurm mpi rdma-core-all autoconf automake libtool rsync gfortran ];
buildInputs = [ slurm mpiAll rdma-core-all autoconf automake libtool rsync gfortran ];
hardeningDisable = [ "all" ];
}

View File

@@ -198,6 +198,7 @@ let
libffi_3_3
libelf
libxml2
zlib
hwloc
stdenv.cc.cc.lib
];

View File

@@ -10,6 +10,7 @@
, version
, nosv
, ovni
, python3
, enableNosv ? false
, enableDebug ? false
, enableOvni ? false
@@ -37,6 +38,7 @@ stdenv.mkDerivation rec {
ninja
perl
pkg-config
python3
] ++ lib.optionals enableNosv [
nosv
] ++ lib.optionals enableOvni [

View File

@@ -48,7 +48,7 @@ let
source = if (useGit) then git else release;
in
stdenv.mkDerivation (source // rec {
stdenv.mkDerivation (source // {
pname = "nanos6";
prePatch = ''
@@ -62,7 +62,7 @@ in
export CACHELINE_WIDTH=${toString cachelineBytes}
./autogen.sh
'' + lib.optionalString (useGit) ''
export NANOS6_GIT_VERSION=${src.rev}
export NANOS6_GIT_VERSION=${gitCommit}
export NANOS6_GIT_BRANCH=${gitBranch}
'';

View File

@@ -1,15 +1,11 @@
{
stdenv
, lib
, automake
, autoconf
, libtool
, fetchFromGitHub
, pkg-config
, perl
, numactl
, hwloc
, papi
, boost
, autoreconfHook
, ovni
@@ -69,16 +65,15 @@ in
# disable all by default, which includes bindnow.
hardeningDisable = [ "all" ];
buildInputs = [
nativeBuildInputs = [
autoreconfHook
autoconf
automake
libtool
pkg-config
];
buildInputs = [
boost
numactl
hwloc
papi
nosv
ovni
];

View File

@@ -6,6 +6,7 @@
, pkg-config
, numactl
, hwloc
, cacheline ? 64 # bits
, ovni ? null
, useGit ? false
, gitUrl ? "git@gitlab-internal.bsc.es:nos-v/nos-v.git"
@@ -43,7 +44,10 @@ in
hardeningDisable = [ "all" ];
dontStrip = true;
separateDebugInfo = true;
configureFlags = [ "--with-ovni=${ovni}" ];
configureFlags = [
"--with-ovni=${ovni}"
"CACHELINE_WIDTH=${toString cacheline}"
];
nativeBuildInputs = [
autoreconfHook
pkg-config

View File

@@ -3,8 +3,16 @@
, fetchurl
, mpi
, lib
, symlinkJoin
}:
let
mpiAll = symlinkJoin {
name = "mpi-all";
paths = [ mpi.all ];
};
in
stdenv.mkDerivation rec {
version = "7.1-1";
name = "osu-micro-benchmarks-${version}";
@@ -16,11 +24,11 @@ stdenv.mkDerivation rec {
doCheck = true;
enableParallelBuilding = true;
buildInputs = [ mpi ];
buildInputs = [ mpiAll ];
hardeningDisable = [ "all" ];
configureFlags = [
"CC=${mpi}/bin/mpicc"
"CXX=${mpi}/bin/mpicxx"
"CC=mpicc"
"CXX=mpicxx"
];
postInstall = ''

View File

@@ -4,14 +4,15 @@
, boost
, libxml2
, xml2
, wxGTK30
, wxGTK32
, autoconf
, automake
, pkg-config
, zlib
}:
let
wx = wxGTK30;
wx = wxGTK32;
in
stdenv.mkDerivation rec {
pname = "paraver-kernel";
@@ -51,5 +52,6 @@ stdenv.mkDerivation rec {
autoconf
automake
pkg-config
zlib
];
}

View File

@@ -11,8 +11,16 @@
, numactl
, rdma-core
, gfortran
, symlinkJoin
}:
let
mpiAll = symlinkJoin {
name = "mpi-all";
paths = [ mpi.all ];
};
in
stdenv.mkDerivation rec {
pname = "tagaspi";
enableParallelBuilding = true;
@@ -32,10 +40,10 @@ stdenv.mkDerivation rec {
autoconf
libtool
boost
mpi
numactl
rdma-core
gfortran
mpiAll
];
dontDisableStatic = true;