Compare commits

...

9 Commits

Author SHA1 Message Date
766b908923 wip 2025-02-10 17:01:43 +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
11 changed files with 102 additions and 22 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

@ -46,6 +46,7 @@ let
stdenvClangOmpss2NodesOmpv = final.stdenv.override { cc = final.clangOmpss2NodesOmpv; allowedRequisites = null; };
tagaspi = callPackage ./pkgs/tagaspi/default.nix { };
tampi = callPackage ./pkgs/tampi/default.nix { };
vivado = callPackage ./pkgs/vivado/default.nix { };
wxparaver = callPackage ./pkgs/paraver/default.nix { };
};

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

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

55
pkgs/vivado/default.nix Normal file
View File

@ -0,0 +1,55 @@
# Thanks to MLabs to made the switch.
{
stdenv
, lib
, ncurses5
, libxcrypt-legacy
, zlib
, libuuid
, xorg
, freetype
, fontconfig
, buildFHSEnv
}:
with lib;
let
vivadoDeps = pkgs:
let
# Apply patch from https://github.com/nix-community/nix-environments/pull/54
# to fix ncurses libtinfo.so's soname issue
ncurses' = ncurses5.overrideAttrs (old: {
configureFlags = old.configureFlags ++ ["--with-termlib"];
postFixup = "";
});
in [
libxcrypt-legacy
(ncurses'.override {unicodeSupport = false;})
zlib
libuuid
xorg.libSM
xorg.libICE
xorg.libXrender
xorg.libX11
xorg.libXext
xorg.libXtst
xorg.libXi
freetype
fontconfig
];
vivadoEnv = buildFHSEnv {
name = "vivado-env";
targetPkgs = vivadoDeps;
};
vivado = buildFHSEnv {
name = "vivado";
targetPkgs = vivadoDeps;
profile = "set -e; source /opt/Xilinx/Vivado/2024.2/settings64.sh";
runScript = "vivado";
};
in
vivadoEnv