Merge branch 'saiph' into 'master'

Saiph changes

- nix-shell changes
- useless exports avoided

See merge request rarias/bscpkgs!1
This commit is contained in:
Rodrigo Arias 2020-10-02 10:52:12 +02:00
commit fd47044bfb
6 changed files with 206 additions and 17 deletions

7
NOISE
View File

@ -99,5 +99,12 @@ ABSTRACT
In bscpkgs the symbolic links have been removed for the clangOmpss2
compiler.
1.7 Nix-shell does not allow isolation
Nix-shell is not isolated, the compilation process tries then to
use headers and libs from /usr.
This can induce compilation errors not happening inside nix-build.
Do not use to ensure reproducibility.
/* vim: set ts=2 sw=2 tw=72 fo=watqc expandtab spell autoindent: */

View File

@ -0,0 +1,82 @@
<?xml version='1.0'?>
<trace enabled="yes"
initial-mode="detail"
type="paraver"
>
<openmp enabled="yes" ompt="no">
<locks enabled="no" />
<taskloop enabled="no" />
<counters enabled="yes" />
</openmp>
<pthread enabled="no">
<locks enabled="no" />
<counters enabled="yes" />
</pthread>
<counters enabled="yes">
<cpu enabled="yes" starting-set-distribution="1">
<set enabled="yes" domain="all" changeat-time="0">
PAPI_TOT_INS,PAPI_TOT_CYC,PAPI_L1_DCM,PAPI_L2_DCM,PAPI_L3_TCM,PAPI_BR_INS,PAPI_BR_MSP,RESOURCE_STALLS
</set>
<set enabled="yes" domain="all" changeat-time="0">
PAPI_TOT_INS,PAPI_TOT_CYC,PAPI_VEC_SP,PAPI_SR_INS,PAPI_LD_INS,PAPI_FP_INS
<sampling enabled="no" period="1000000000">PAPI_TOT_CYC</sampling>
</set>
</cpu>
<network enabled="no" />
<resource-usage enabled="no" />
<memory-usage enabled="no" />
</counters>
<storage enabled="no">
<trace-prefix enabled="yes">TRACE</trace-prefix>
<size enabled="no">5</size>
<temporal-directory enabled="yes">/scratch</temporal-directory>
<final-directory enabled="yes">/gpfs/scratch/bsc41/bsc41273</final-directory>
</storage>
<buffer enabled="yes">
<size enabled="yes">5000000</size>
<circular enabled="no" />
</buffer>
<trace-control enabled="yes">
<file enabled="no" frequency="5M">/gpfs/scratch/bsc41/bsc41273/control</file>
<global-ops enabled="no"></global-ops>
</trace-control>
<others enabled="yes">
<minimum-time enabled="no">10M</minimum-time>
<finalize-on-signal enabled="yes"
SIGUSR1="no" SIGUSR2="no" SIGINT="yes"
SIGQUIT="yes" SIGTERM="yes" SIGXCPU="yes"
SIGFPE="yes" SIGSEGV="yes" SIGABRT="yes"
/>
<flush-sampling-buffer-at-instrumentation-point enabled="yes" />
</others>
<sampling enabled="no" type="virtual" period="50m" variability="10m" />
<dynamic-memory enabled="no" />
<input-output enabled="no" />
<syscall enabled="no" />
<merge enabled="yes"
synchronization="default"
tree-fan-out="16"
max-memory="512"
joint-states="yes"
keep-mpits="yes"
sort-addresses="yes"
overwrite="yes"
/>
</trace>

View File

@ -0,0 +1,99 @@
<?xml version='1.0'?>
<trace enabled="yes"
initial-mode="detail"
type="paraver"
>
<openmp enabled="no" ompt="no">
<locks enabled="no" />
<taskloop enabled="no" />
<counters enabled="no" />
</openmp>
<pthread enabled="no">
<locks enabled="no" />
<counters enabled="no" />
</pthread>
<callers enabled="no">
<mpi enabled="no">1-3</mpi>
<sampling enabled="no">1-5</sampling>
<dynamic-memory enabled="no">1-3</dynamic-memory>
<input-output enabled="no">1-3</input-output>
<syscall enabled="no">1-3</syscall>
</callers>
<user-functions enabled="no" list="/home/bsc41/bsc41273/user-functions.dat" exclude-automatic-functions="no">
<counters enabled="no" />
</user-functions>
<counters enabled="no">
<cpu enabled="no" starting-set-distribution="1">
<set enabled="no" domain="all" changeat-time="0">
PAPI_TOT_INS,PAPI_TOT_CYC,PAPI_L1_DCM,PAPI_L2_DCM,PAPI_L3_TCM,PAPI_BR_INS,PAPI_BR_MSP,RESOURCE_STALLS
</set>
<set enabled="no" domain="all" changeat-time="0">
PAPI_TOT_INS,PAPI_TOT_CYC,PAPI_VEC_SP,PAPI_SR_INS,PAPI_LD_INS,PAPI_FP_INS
<sampling enabled="no" period="1000000000">PAPI_TOT_CYC</sampling>
</set>
</cpu>
<network enabled="no" />
<resource-usage enabled="no" />
<memory-usage enabled="no" />
</counters>
<storage enabled="no">
<trace-prefix enabled="yes">TRACE</trace-prefix>
<size enabled="no">5</size>
<temporal-directory enabled="yes">/scratch</temporal-directory>
<final-directory enabled="yes">/gpfs/scratch/bsc41/bsc41273</final-directory>
</storage>
<buffer enabled="yes">
<size enabled="yes">5000000</size>
<circular enabled="no" />
</buffer>
<trace-control enabled="no">
<file enabled="no" frequency="5M">/gpfs/scratch/bsc41/bsc41273/control</file>
<global-ops enabled="no"></global-ops>
</trace-control>
<others enabled="yes">
<minimum-time enabled="no">10M</minimum-time>
<finalize-on-signal enabled="yes"
SIGUSR1="no" SIGUSR2="no" SIGINT="yes"
SIGQUIT="yes" SIGTERM="yes" SIGXCPU="yes"
SIGFPE="yes" SIGSEGV="yes" SIGABRT="yes"
/>
<flush-sampling-buffer-at-instrumentation-point enabled="yes" />
</others>
<bursts enabled="no">
<threshold enabled="yes">500u</threshold>
<mpi-statistics enabled="yes" />
</bursts>
<sampling enabled="no" type="default" period="50m" variability="10m" />
<dynamic-memory enabled="no" />
<input-output enabled="no" />
<syscall enabled="no" />
<merge enabled="yes"
synchronization="default"
tree-fan-out="16"
max-memory="512"
joint-states="yes"
keep-mpits="no"
sort-addresses="yes"
overwrite="no"
/>
</trace>

View File

View File

@ -18,7 +18,7 @@ let
# Common configuration
common = {
# Compile time nbody config
gitBranch = "Saiph_TAMPI_OMPSS";
gitBranch = "garlic/tampi+isend+oss+task+simd";
mpi = pkgs.bsc.impi;
# Resources
@ -44,14 +44,23 @@ let
w = runWrappers;
sbatch = {stage, conf, ...}: with conf; w.sbatch {
program = stageProgram stage;
exclusive = true;
time = "02:00:00";
qos = "debug";
jobName = "saiph";
inherit nixPrefix nodes ntasksPerNode;
};
sbatch = {stage, conf, ...}: with conf; w.sbatch (
# Allow a user to define a custom reservation for the job in MareNostrum4,
# by setting the garlic.sbatch.reservation attribute in the
# ~/.config/nixpkgs/config.nix file. If the attribute is not set, no
# reservation is used. The user reservation may be overwritten by the
# experiment, if the reservation is set like with nodes or ntasksPerNode.
optionalAttrs (pkgs.config ? garlic.sbatch.reservation) {
inherit (pkgs.config.garlic.sbatch) reservation;
} // {
program = stageProgram stage;
exclusive = true;
time = "02:00:00";
qos = "debug";
jobName = "saiph";
inherit nixPrefix nodes ntasksPerNode;
}
);
control = {stage, conf, ...}: with conf; w.control {
program = stageProgram stage;

View File

@ -38,19 +38,11 @@ stdenv.mkDerivation rec {
# Required for nanos6
hardeningDisable = [ "bindnow" ];
# Enable debug
# postPatch = ''
# sed -i 's/^SANITIZE_FLAGS=/SANITIZE_FLAGS=$(DEBUG_FLAGS)/g' \
# saiphv2/cpp/src/Makefile.clang
# '';
preBuild = ''
cd saiphv2/cpp/src
export VTK_VERSION=8.2
export VTK_HOME=${vtk}
export BOOST_HOME=${boost}
export SAIPH_HOME=.
'';
makeFlags = [