Compare commits
12 Commits
24326d4fce
...
fece91e756
| Author | SHA1 | Date | |
|---|---|---|---|
| fece91e756 | |||
| cd75488bdb | |||
| be373b6355 | |||
| 05cdb01ef9 | |||
| 94773bb5c5 | |||
| 374ec330ed | |||
| c225f60dc8 | |||
| 490389e26f | |||
| 066ebad8af | |||
| d9c10446f1 | |||
| 44f36ce2f2 | |||
| 3bf9666756 |
22
default.nix
22
default.nix
@ -1,19 +1,11 @@
|
|||||||
let
|
let
|
||||||
bscOverlay = import ./overlay.nix;
|
bscOverlay = import ./overlay.nix;
|
||||||
|
|
||||||
# read flake.lock and determine revision from there
|
# Pin the nixpkgs
|
||||||
lock = builtins.fromJSON (builtins.readFile ./flake.lock);
|
nixpkgsPath = import ./nixpkgs.nix;
|
||||||
inherit (lock.nodes.nixpkgs.locked) rev narHash;
|
|
||||||
fetchedNixpkgs = builtins.fetchTarball {
|
pkgs = import nixpkgsPath {
|
||||||
url = "https://github.com/NixOS/nixpkgs/archive/${rev}.tar.gz";
|
overlays = [ bscOverlay ];
|
||||||
sha256 = narHash;
|
|
||||||
};
|
};
|
||||||
in
|
|
||||||
{ overlays ? [ ]
|
in pkgs
|
||||||
, nixpkgs ? fetchedNixpkgs
|
|
||||||
, ...
|
|
||||||
}@attrs:
|
|
||||||
import nixpkgs (
|
|
||||||
(builtins.removeAttrs attrs [ "overlays" "nixpkgs" ]) //
|
|
||||||
{ overlays = [ bscOverlay ] ++ overlays; }
|
|
||||||
)
|
|
||||||
|
|||||||
9
nixpkgs.nix
Normal file
9
nixpkgs.nix
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
let
|
||||||
|
commit = "e4ad989506ec7d71f7302cc3067abd82730a4beb";
|
||||||
|
in builtins.fetchTarball {
|
||||||
|
# Descriptive name to make the store path easier to identify
|
||||||
|
name = "nixpkgs-${commit}";
|
||||||
|
url = "https://github.com/nixos/nixpkgs/archive/${commit}.tar.gz";
|
||||||
|
# Hash obtained using `nix-prefetch-url --unpack <url>`
|
||||||
|
sha256 = "sha256-de9KYi8rSJpqvBfNwscWdalIJXPo8NjdIZcEJum1mH0=";
|
||||||
|
}
|
||||||
@ -21,7 +21,7 @@ let
|
|||||||
#gpi-2 = callPackage ./pkgs/gpi-2/default.nix { }; # Broken: https://jungle.bsc.es/git/rarias/bscpkgs/issues/7
|
#gpi-2 = callPackage ./pkgs/gpi-2/default.nix { }; # Broken: https://jungle.bsc.es/git/rarias/bscpkgs/issues/7
|
||||||
intelPackages_2023 = callPackage ./pkgs/intel-oneapi/2023.nix { };
|
intelPackages_2023 = callPackage ./pkgs/intel-oneapi/2023.nix { };
|
||||||
jemallocNanos6 = callPackage ./pkgs/nanos6/jemalloc.nix { };
|
jemallocNanos6 = callPackage ./pkgs/nanos6/jemalloc.nix { };
|
||||||
lmbench = callPackage ./pkgs/lmbench/default.nix { };
|
#lmbench = callPackage ./pkgs/lmbench/default.nix { }; # Broken
|
||||||
mcxx = callPackage ./pkgs/mcxx/default.nix { };
|
mcxx = callPackage ./pkgs/mcxx/default.nix { };
|
||||||
nanos6 = callPackage ./pkgs/nanos6/default.nix { };
|
nanos6 = callPackage ./pkgs/nanos6/default.nix { };
|
||||||
nanos6Debug = final.nanos6.override { enableDebug = true; };
|
nanos6Debug = final.nanos6.override { enableDebug = true; };
|
||||||
|
|||||||
@ -1,20 +1,14 @@
|
|||||||
{
|
{
|
||||||
stdenv
|
stdenv
|
||||||
, bigotes
|
|
||||||
, cmake
|
, cmake
|
||||||
, clangOmpss2
|
, clangOmpss2
|
||||||
, openmp
|
|
||||||
, openmpv
|
|
||||||
, nanos6
|
, nanos6
|
||||||
, nodes
|
, nodes
|
||||||
, nosv
|
|
||||||
, mpi
|
, mpi
|
||||||
, tampi
|
, tampi
|
||||||
, openblas
|
|
||||||
, ovni
|
|
||||||
, gitBranch ? "master"
|
, gitBranch ? "master"
|
||||||
, gitURL ? "ssh://git@bscpm04.bsc.es/rarias/bench6.git"
|
, gitURL ? "ssh://git@bscpm04.bsc.es/rarias/bench6.git"
|
||||||
, gitCommit ? "bf29a53113737c3aa74d2fe3d55f59868faea7b4"
|
, gitCommit ? "1e6ce2aa8ad7b4eef38df1581d7ec48a8815f85d"
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@ -27,28 +21,9 @@ stdenv.mkDerivation rec {
|
|||||||
rev = gitCommit;
|
rev = gitCommit;
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [ cmake clangOmpss2 nanos6 nodes mpi tampi ];
|
||||||
bigotes
|
|
||||||
cmake
|
|
||||||
clangOmpss2
|
|
||||||
openmp
|
|
||||||
openmpv
|
|
||||||
nanos6
|
|
||||||
nodes
|
|
||||||
nosv
|
|
||||||
mpi
|
|
||||||
tampi
|
|
||||||
openblas
|
|
||||||
openblas.dev
|
|
||||||
ovni
|
|
||||||
];
|
|
||||||
|
|
||||||
env = {
|
|
||||||
NANOS6_HOME = nanos6;
|
|
||||||
NODES_HOME = nodes;
|
|
||||||
NOSV_HOME = nosv;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
enableParallelBuilding = false;
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DCMAKE_C_COMPILER=clang"
|
"-DCMAKE_C_COMPILER=clang"
|
||||||
"-DCMAKE_CXX_COMPILER=clang++"
|
"-DCMAKE_CXX_COMPILER=clang++"
|
||||||
|
|||||||
@ -1,41 +1,35 @@
|
|||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
stdenv,
|
stdenv,
|
||||||
libtirpc,
|
|
||||||
fetchFromGitHub
|
fetchFromGitHub
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "lmbench";
|
pname = "lmbench";
|
||||||
version = "941a0dcc";
|
version = "701c6c35";
|
||||||
|
|
||||||
# We use the intel repo as they have fixed some problems
|
# We use the intel repo as they have fixed some problems
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "intel";
|
owner = "intel";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "941a0dcc0e7bdd9bb0dee05d7f620e77da8c43af";
|
rev = "701c6c35b0270d4634fb1dc5272721340322b8ed";
|
||||||
sha256 = "sha256-SzwplRBO3V0R3m3p15n71ivYBMGoLsajFK2TapYxdqk=";
|
sha256 = "0sf6zk03knkardsfd6qx7drpm56nhg53n885cylkggk83r38idyr";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
postUnpack = ''
|
||||||
|
export sourceRoot="$sourceRoot/src"
|
||||||
|
'';
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
sed -i "s@/bin/rm@rm@g" $(find . -name Makefile)
|
sed -i "s@/bin/rm@rm@g" $(find . -name Makefile)
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildInputs = [ libtirpc ];
|
|
||||||
patches = [ ./fix-install.patch ./gcc-14.patch ];
|
|
||||||
|
|
||||||
hardeningDisable = [ "all" ];
|
hardeningDisable = [ "all" ];
|
||||||
|
|
||||||
enableParallelBuilding = false;
|
enableParallelBuilding = false;
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
makeFlagsArray+=(
|
makeFlagsArray+=(BASE=$out)
|
||||||
-C src
|
|
||||||
BASE=$out
|
|
||||||
CFLAGS=-Wno-implicit-int
|
|
||||||
CPPFLAGS=-I${libtirpc.dev}/include/tirpc
|
|
||||||
LDFLAGS=-ltirpc
|
|
||||||
)
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
|||||||
@ -1,10 +0,0 @@
|
|||||||
--- a/src/Makefile
|
|
||||||
+++ b/src/Makefile
|
|
||||||
@@ -144,6 +144,7 @@ install-target:
|
|
||||||
if [ ! -d $(BASE)/include ]; then mkdir $(BASE)/include; fi
|
|
||||||
if [ ! -d $(BASE)/lib ]; then mkdir $(BASE)/lib; fi
|
|
||||||
cp $(EXES) $(BASE)/bin
|
|
||||||
+ cp $(OPT_EXES) $(BASE)/bin
|
|
||||||
cp $(INCS) $(BASE)/include
|
|
||||||
cp $O/lmbench.a $(BASE)/lib/libmbench.a
|
|
||||||
cd ../doc; env MAKEFLAGS="$(MAKEFLAGS)" make CC="${CC}" OS="${OS}" BASE="$(BASE)" install
|
|
||||||
@ -1,77 +0,0 @@
|
|||||||
From a3c6e7d303cd8368e8d4e35be7cbc1997e801257 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
|
|
||||||
Date: Mon, 21 Jul 2025 17:38:58 +0200
|
|
||||||
Subject: [PATCH] Misc fixes to build with gcc 14
|
|
||||||
|
|
||||||
---
|
|
||||||
src/bench.h | 2 ++
|
|
||||||
src/lat_select.c | 2 +-
|
|
||||||
src/lib_debug.c | 1 +
|
|
||||||
src/lib_sched.c | 2 +-
|
|
||||||
src/lib_timing.c | 2 +-
|
|
||||||
5 files changed, 6 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/bench.h b/src/bench.h
|
|
||||||
index 8166408..4da9079 100644
|
|
||||||
--- a/src/bench.h
|
|
||||||
+++ b/src/bench.h
|
|
||||||
@@ -320,4 +320,6 @@ extern int handle_scheduler(int childno, int benchproc, int nbenchprocs);
|
|
||||||
extern char *rpc_xact_1();
|
|
||||||
extern char *client_rpc_xact_1();
|
|
||||||
|
|
||||||
+void lmbench_usage(int argc, char *argv[], char* usage);
|
|
||||||
+
|
|
||||||
#endif /* _BENCH_H */
|
|
||||||
diff --git a/src/lat_select.c b/src/lat_select.c
|
|
||||||
index 583b505..39df369 100644
|
|
||||||
--- a/src/lat_select.c
|
|
||||||
+++ b/src/lat_select.c
|
|
||||||
@@ -164,7 +164,7 @@ doit(iter_t iterations, void * cookie)
|
|
||||||
state_t * state = (state_t *)cookie;
|
|
||||||
fd_set nosave;
|
|
||||||
static struct timeval tv;
|
|
||||||
- static count = 0;
|
|
||||||
+ static int count = 0;
|
|
||||||
|
|
||||||
tv.tv_sec = 0;
|
|
||||||
tv.tv_usec = 0;
|
|
||||||
diff --git a/src/lib_debug.c b/src/lib_debug.c
|
|
||||||
index e8347dd..cf65312 100644
|
|
||||||
--- a/src/lib_debug.c
|
|
||||||
+++ b/src/lib_debug.c
|
|
||||||
@@ -1,5 +1,6 @@
|
|
||||||
#include "bench.h"
|
|
||||||
#include "lib_debug.h"
|
|
||||||
+#include <math.h>
|
|
||||||
|
|
||||||
/*
|
|
||||||
* return micro-seconds / iteration at the the fraction point.
|
|
||||||
diff --git a/src/lib_sched.c b/src/lib_sched.c
|
|
||||||
index aa83ae0..4f16bbf 100644
|
|
||||||
--- a/src/lib_sched.c
|
|
||||||
+++ b/src/lib_sched.c
|
|
||||||
@@ -91,7 +91,7 @@ handle_scheduler(int childno, int benchproc, int nbenchprocs)
|
|
||||||
childno * (nbenchprocs + 1) + benchproc);
|
|
||||||
} else {
|
|
||||||
/* default action: do nothing */
|
|
||||||
- return;
|
|
||||||
+ return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return sched_pin(cpu % sched_ncpus());
|
|
||||||
diff --git a/src/lib_timing.c b/src/lib_timing.c
|
|
||||||
index af8cf68..7ec9652 100644
|
|
||||||
--- a/src/lib_timing.c
|
|
||||||
+++ b/src/lib_timing.c
|
|
||||||
@@ -1623,7 +1623,7 @@ bread(void* buf, long nbytes)
|
|
||||||
void
|
|
||||||
touch(char *buf, int nbytes)
|
|
||||||
{
|
|
||||||
- static psize;
|
|
||||||
+ static int psize;
|
|
||||||
|
|
||||||
if (!psize) {
|
|
||||||
psize = getpagesize();
|
|
||||||
--
|
|
||||||
2.49.0
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user