Skip to content
GitLab
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
hpc
gekkofs
Compare revisions
0bc9b21a8cfad507f5e0889d1d4dd8f139a1f590 to 78d9e0da449632f97a1bbfea9d31910512a7c367
Commits on Source (2)
deps version bump
· d16629b3
Marc Vef
authored
Apr 19, 2021
d16629b3
reformating
· 78d9e0da
Marc Vef
authored
Apr 19, 2021
78d9e0da
Hide whitespace changes
Inline
Side-by-side
scripts/compile_dep.sh
View file @
78d9e0da
...
...
@@ -54,12 +54,12 @@ NGIO_DEPS=(
)
DIRECT_DEPS
=(
"ofi"
"mercury"
"argobots"
"margo"
"rocksdb"
"syscall_intercept"
"date"
"ofi"
"mercury"
"argobots"
"margo"
"rocksdb"
"syscall_intercept"
"date"
)
ALL_DEPS
=(
"bzip2"
"zstd"
"lz4"
"snappy"
"capstone"
"bmi"
"ofi"
"mercury"
"argobots"
"margo"
"rocksdb"
"syscall_intercept"
"date"
"agios"
"syscall_intercept"
"date"
"agios"
)
CI_DEPS
=(
...
...
@@ -67,7 +67,7 @@ CI_DEPS=(
)
usage_short
()
{
echo
"
echo
"
usage: compile_dep.sh [-h] [-l] [-n <NAPLUGIN>] [-c <CONFIG>] [-d <DEPENDENCY>] [-j <COMPILE_CORES>]
source_path install_path
"
...
...
@@ -114,22 +114,22 @@ list_dependencies() {
for
d
in
"
${
MOGON1_DEPS
[@]
}
"
;
do
echo
-n
"
$d
"
done
echo
echo
echo
-n
" Mogon 2: "
for
d
in
"
${
MOGON2_DEPS
[@]
}
"
;
do
echo
-n
"
$d
"
done
echo
echo
echo
-n
" NGIO: "
for
d
in
"
${
NGIO_DEPS
[@]
}
"
;
do
echo
-n
"
$d
"
done
echo
echo
echo
-n
" Direct GekkoFS dependencies: "
for
d
in
"
${
DIRECT_DEPS
[@]
}
"
;
do
echo
-n
"
$d
"
done
echo
echo
echo
-n
" All: "
for
d
in
"
${
ALL_DEPS
[@]
}
"
;
do
echo
-n
"
$d
"
...
...
@@ -139,28 +139,28 @@ list_dependencies() {
for
d
in
"
${
CI_DEPS
[@]
}
"
;
do
echo
-n
"
$d
"
done
echo
echo
}
check_dependency
()
{
local
DEP
=
$1
shift
local
DEP_CONFIG
=(
"
$@
"
)
# ignore template when specific dependency is set
if
[[
-n
"
${
DEPENDENCY
}
"
]]
;
then
# check if specific dependency was set and return from function
if
echo
"
${
DEPENDENCY
}
"
|
grep
-q
"
${
DEP
}
"
;
then
return
fi
else
# if not check if dependency is part of dependency config
for
e
in
"
${
DEP_CONFIG
[@]
}
"
;
do
if
[[
"
${
DEP
}
"
==
"
${
e
}
"
]]
;
then
return
local
DEP
=
$1
shift
local
DEP_CONFIG
=(
"
$@
"
)
# ignore template when specific dependency is set
if
[[
-n
"
${
DEPENDENCY
}
"
]]
;
then
# check if specific dependency was set and return from function
if
echo
"
${
DEPENDENCY
}
"
|
grep
-q
"
${
DEP
}
"
;
then
return
fi
done
fi
false
else
# if not check if dependency is part of dependency config
for
e
in
"
${
DEP_CONFIG
[@]
}
"
;
do
if
[[
"
${
DEP
}
"
==
"
${
e
}
"
]]
;
then
return
fi
done
fi
false
}
prepare_build_dir
()
{
...
...
@@ -275,29 +275,29 @@ fi
# enable predefined dependency template
case
${
TMP_DEP_CONF
}
in
mogon1
)
DEP_CONFIG
=(
"
${
MOGON1_DEPS
[@]
}
"
)
echo
"'Mogon1' dependencies are compiled"
;;
DEP_CONFIG
=(
"
${
MOGON1_DEPS
[@]
}
"
)
echo
"'Mogon1' dependencies are compiled"
;;
mogon2
)
DEP_CONFIG
=(
"
${
MOGON2_DEPS
[@]
}
"
)
echo
"'Mogon2' dependencies are compiled"
;;
DEP_CONFIG
=(
"
${
MOGON2_DEPS
[@]
}
"
)
echo
"'Mogon2' dependencies are compiled"
;;
ngio
)
DEP_CONFIG
=(
"
${
NGIO_DEPS
[@]
}
"
)
echo
"'NGIO' dependencies are compiled"
;;
DEP_CONFIG
=(
"
${
NGIO_DEPS
[@]
}
"
)
echo
"'NGIO' dependencies are compiled"
;;
all
)
DEP_CONFIG
=(
"
${
ALL_DEPS
[@]
}
"
)
echo
"'All' dependencies are compiled"
;;
DEP_CONFIG
=(
"
${
ALL_DEPS
[@]
}
"
)
echo
"'All' dependencies are compiled"
;;
ci
)
DEP_CONFIG
=(
"
${
CI_DEPS
[@]
}
"
)
echo
"'CI' dependencies are compiled"
;;
DEP_CONFIG
=(
"
${
CI_DEPS
[@]
}
"
)
echo
"'CI' dependencies are compiled"
;;
direct
|
*
)
DEP_CONFIG
=(
"
${
DIRECT_DEPS
[@]
}
"
)
echo
"'Direct' GekkoFS dependencies are compiled (default)"
;;
DEP_CONFIG
=(
"
${
DIRECT_DEPS
[@]
}
"
)
echo
"'Direct' GekkoFS dependencies are compiled (default)"
;;
esac
USE_BMI
=
"-DNA_USE_BMI:BOOL=OFF"
...
...
@@ -419,7 +419,7 @@ if check_dependency "ofi" "${DEP_CONFIG[@]}"; then
elif
check_dependency
"psm2-system"
"
${
DEP_CONFIG
[@]
}
"
;
then
OFI_CONFIG
=
"
${
OFI_CONFIG
}
--enable-psm2=yes"
fi
${
OFI_CONFIG
}
${
OFI_CONFIG
}
make
-j
${
CORES
}
make
install
[
"
${
PERFORM_TEST
}
"
]
&&
make check
...
...
@@ -428,12 +428,12 @@ fi
# AGIOS
if
check_dependency
"agios"
"
${
DEP_CONFIG
[@]
}
"
;
then
echo
"############################################################ Installing: AGIOS"
CURR
=
${
SOURCE
}
/agios
prepare_build_dir
"
${
CURR
}
"
cd
"
${
CURR
}
"
/build
$CMAKE
-DCMAKE_INSTALL_PREFIX
=
"
${
INSTALL
}
"
..
make
install
echo
"############################################################ Installing: AGIOS"
CURR
=
${
SOURCE
}
/agios
prepare_build_dir
"
${
CURR
}
"
cd
"
${
CURR
}
"
/build
$CMAKE
-DCMAKE_INSTALL_PREFIX
=
"
${
INSTALL
}
"
..
make
install
fi
# Mercury
...
...
@@ -502,7 +502,8 @@ if check_dependency "rocksdb" "${DEP_CONFIG[@]}"; then
cd
"
${
CURR
}
"
make clean
USE_RTTI
=
1 make
-j
"
${
CORES
}
"
static_lib
INSTALL_PATH
=
"
${
INSTALL
}
"
make
install
# INSTALL_PATH older version, PREFIX newer versions
INSTALL_PATH
=
"
${
INSTALL
}
"
PREFIX
=
"
${
INSTALL
}
"
make
install
fi
# syscall_intercept
...
...
scripts/dl_dep.sh
View file @
78d9e0da
...
...
@@ -389,7 +389,7 @@ fi
# get libfabric
if
[
"
${
NA_LAYER
}
"
==
"ofi"
]
||
[
"
${
NA_LAYER
}
"
==
"all"
]
;
then
if
check_dependency
"ofi-experimental"
"
${
DEP_CONFIG
[@]
}
"
;
then
clonedeps
"libfabric"
"https://github.com/ofiwg/libfabric.git"
""
"-b v1.1
1
.1"
&
clonedeps
"libfabric"
"https://github.com/ofiwg/libfabric.git"
""
"-b v1.1
2
.1"
&
elif
check_dependency
"ofi-verbs"
"
${
DEP_CONFIG
[@]
}
"
;
then
# libibverbs 1.2.1-1 used on mogon 1i (installed on system) which is linked to libfabric
# libfabric 1.8 random RPCs fail to be send. 1.9 RPC client cannot be started when in an MPI environment
...
...
@@ -404,30 +404,33 @@ if check_dependency "psm2" "${DEP_CONFIG[@]}"; then
fi
# get Mercury
if
check_dependency
"mercury"
"
${
DEP_CONFIG
[@]
}
"
;
then
clonedeps
"mercury"
"https://github.com/mercury-hpc/mercury"
"3b2934490fbbcc291541e9f417fed120ffc1a04f"
"--recurse-submodules"
&
if
check_dependency
"mercury-experimental"
"
${
DEP_CONFIG
[@]
}
"
;
then
# currently not compatible with Hermes
clonedeps
"mercury"
"https://github.com/mercury-hpc/mercury"
"71672b0d453dc5a64d20f46b86f25fed12566eff"
"--recurse-submodules"
&
elif
check_dependency
"rocksdb"
"
${
DEP_CONFIG
[@]
}
"
;
then
clonedeps
"mercury"
"https://github.com/mercury-hpc/mercury"
"4796aeeb90ba58be8a3b17a73f27aa3afed1ee0f"
"--recurse-submodules"
&
fi
# get Argobots
if
check_dependency
"argobots"
"
${
DEP_CONFIG
[@]
}
"
;
then
wgetdeps
"argobots"
"https://github.com/pmodels/argobots/archive/v1
.0
.1.tar.gz"
&
wgetdeps
"argobots"
"https://github.com/pmodels/argobots/archive/
refs/tags/
v1.1.tar.gz"
&
fi
# get Margo
if
check_dependency
"margo"
"
${
DEP_CONFIG
[@]
}
"
;
then
clonedeps
"margo"
"https://github.com/mochi-hpc/mochi-margo"
"
0
84
b61323933a0e014653eecf8f6b66a94196a2d
"
&
clonedeps
"margo"
"https://github.com/mochi-hpc/mochi-margo"
"84
c7a123fcabaac1545cc0352a74ea27ed1d6a83
"
&
fi
# get rocksdb
if
check_dependency
"rocksdb-experimental"
"
${
DEP_CONFIG
[@]
}
"
;
then
wgetdeps
"rocksdb"
"https://github.com/facebook/rocksdb/archive/v6.1
5.5
.tar.gz"
&
wgetdeps
"rocksdb"
"https://github.com/facebook/rocksdb/archive/
refs/tags/
v6.1
6.4
.tar.gz"
&
elif
check_dependency
"rocksdb"
"
${
DEP_CONFIG
[@]
}
"
;
then
wgetdeps
"rocksdb"
"https://github.com/facebook/rocksdb/archive/v6.11.4.tar.gz"
&
fi
# get syscall_intercept
if
check_dependency
"syscall_intercept"
"
${
DEP_CONFIG
[@]
}
"
;
then
clonedeps
"syscall_intercept"
"https://github.com/pmem/syscall_intercept.git"
"
f7cebb7b7e7512a19b78a31ce236ad6ca22636dd
"
""
"syscall_intercept.patch"
&
clonedeps
"syscall_intercept"
"https://github.com/pmem/syscall_intercept.git"
"
304404581c57d43478438d175099d20260bae74e
"
""
"syscall_intercept.patch"
&
fi
# get AGIOS
...
...