Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Houman Mirzaalian Dastjerdi
waLBerla
Commits
c5217465
Commit
c5217465
authored
Jun 06, 2018
by
Sebastian Eibl
Browse files
added automatic test script
parent
626d941a
Changes
2
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
c5217465
...
...
@@ -1528,3 +1528,64 @@ conda-py35-linux:
-
apt-get update
-
apt-get install -y build-essential
-
conda build --python=3.5 --user=lssfau utilities/conda/walberla
###############################################################################
## ##
## Benchmarks ##
## ##
###############################################################################
.benchmark_template
:
&benchmark_definition
script
:
-
apt-get update --fix-missing
-
apt-get install -y python3-influxdb python3-git
-
$CXX --version
-
cmake --version
-
ccache --version
-
mpirun --version
-
export CCACHE_BASEDIR=$CI_PROJECT_DIR
-
mkdir $CI_PROJECT_DIR/build
-
cd $CI_PROJECT_DIR/build
-
cmake .. -DWALBERLA_BUFFER_DEBUG=OFF -DWALBERLA_BUILD_TESTS=OFF -DWALBERLA_BUILD_BENCHMARKS=ON -DWALBERLA_BUILD_TUTORIALS=OFF -DWALBERLA_BUILD_TOOLS=OFF -DWALBERLA_BUILD_WITH_MPI=ON -DWALBERLA_BUILD_WITH_CUDA=OFF -DWALBERLA_BUILD_WITH_PYTHON=OFF -DWALBERLA_BUILD_WITH_OPENMP=OFF -DCMAKE_BUILD_TYPE=RELEASE -DMPIEXEC_PREFLAGS=$MPIEXEC_PREFLAGS -DWALBERLA_DOUBLE_ACCURACY=ON -DWARNING_ERROR=ON -DWALBERLA_BUILD_WITH_METIS=OFF -DWALBERLA_BUILD_WITH_PARMETIS=OFF -DWALBERLA_OPTIMIZE_FOR_LOCALHOST=ON -DWALBERLA_BUILD_WITH_FASTMATH=ON -DWALBERLA_BUILD_WITH_LTO=ON
-
cmake . -LAH
-
cd apps/benchmarks/PeriodicGranularGas
-
make -j
20
-
export PATH=$PATH:/usr/local/likwid/bin
-
likwid-setFrequencies -t
0
-
likwid-setFrequencies -g performance
-
likwid-setFrequencies -x 3.3 -y
3.3
# set frequency to 3.3
-
mpirun --allow-run-as-root -np 8 --map-by core --bind-to core --report-bindings ./PeriodicGranularGas PeriodicGranularGas.cfg --DEM --syncNextNeighbor | tee PeriodicGranularGas_DEM_NN.txt
-
mpirun --allow-run-as-root -np 8 --map-by core --bind-to core --report-bindings ./PeriodicGranularGas PeriodicGranularGas.cfg --DEM --syncShadowOwners | tee PeriodicGranularGas_DEM_SO.txt
-
mpirun --allow-run-as-root -np 8 --map-by core --bind-to core --report-bindings ./PeriodicGranularGas PeriodicGranularGas.cfg --HCSITS --syncNextNeighbor --InelasticFrictionlessContact | tee PeriodicGranularGas_HCSITS_NN_IFC.txt
-
mpirun --allow-run-as-root -np 8 --map-by core --bind-to core --report-bindings ./PeriodicGranularGas PeriodicGranularGas.cfg --HCSITS --syncNextNeighbor --ApproximateInelasticCoulombContactByDecoupling | tee PeriodicGranularGas_HCSITS_NN_AICCBD.txt
-
mpirun --allow-run-as-root -np 8 --map-by core --bind-to core --report-bindings ./PeriodicGranularGas PeriodicGranularGas.cfg --HCSITS --syncNextNeighbor --InelasticCoulombContactByDecoupling | tee PeriodicGranularGas_HCSITS_NN_ICCBD.txt
-
mpirun --allow-run-as-root -np 8 --map-by core --bind-to core --report-bindings ./PeriodicGranularGas PeriodicGranularGas.cfg --HCSITS --syncNextNeighbor --InelasticGeneralizedMaximumDissipationContact | tee PeriodicGranularGas_HCSITS_NN_IGMDC.txt
-
mpirun --allow-run-as-root -np 8 --map-by core --bind-to core --report-bindings ./PeriodicGranularGas PeriodicGranularGas.cfg --HCSITS --syncShadowOwners --InelasticFrictionlessContact | tee PeriodicGranularGas_HCSITS_SO_IFC.txt
-
python3 upload.py
only
:
variables
:
-
$ENABLE_BENCHMARKS
tags
:
-
docker-benchmark
artifacts
:
paths
:
-
$CI_PROJECT_DIR/build/apps/benchmarks/PeriodicGranularGas/PeriodicGranularGas_DEM_NN.txt
-
$CI_PROJECT_DIR/build/apps/benchmarks/PeriodicGranularGas/PeriodicGranularGas_DEM_SO.txt
-
$CI_PROJECT_DIR/build/apps/benchmarks/PeriodicGranularGas/PeriodicGranularGas_HCSITS_NN_IFC.txt
-
$CI_PROJECT_DIR/build/apps/benchmarks/PeriodicGranularGas/PeriodicGranularGas_HCSITS_NN_AICCBD.txt
-
$CI_PROJECT_DIR/build/apps/benchmarks/PeriodicGranularGas/PeriodicGranularGas_HCSITS_NN_ICCBD.txt
-
$CI_PROJECT_DIR/build/apps/benchmarks/PeriodicGranularGas/PeriodicGranularGas_HCSITS_NN_IGMDC.txt
-
$CI_PROJECT_DIR/build/apps/benchmarks/PeriodicGranularGas/PeriodicGranularGas_HCSITS_SO_IFC.txt
benchmark_intel17
:
<<
:
*benchmark_definition
image
:
i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
benchmark_gcc7
:
<<
:
*benchmark_definition
image
:
i10git.cs.fau.de:5005/walberla/buildenvs/gcc:7
benchmark_clang6
:
<<
:
*benchmark_definition
image
:
i10git.cs.fau.de:5005/walberla/buildenvs/clang:6.0
\ No newline at end of file
apps/benchmarks/PeriodicGranularGas/upload.py
0 → 100644
View file @
c5217465
import
os
import
time
import
math
import
random
import
re
from
influxdb
import
InfluxDBClient
from
git
import
Repo
def
main
():
try
:
write_user_pw
=
os
.
environ
[
"INFLUXDB_WRITE_USER"
]
except
KeyError
:
import
sys
print
(
'Password for the InfluxDB write_user was not set.
\n
'
,
'See https://docs.gitlab.com/ee/ci/variables/#secret-variables'
,
file
=
sys
.
stderr
)
exc_info
=
sys
.
exc_info
()
raise
exc_info
[
0
].
with_traceback
(
exc_info
[
1
],
exc_info
[
2
])
client
=
InfluxDBClient
(
'i10grafana.informatik.uni-erlangen.de'
,
8086
,
'pe'
,
write_user_pw
,
'pe'
)
#repo = Repo(search_parent_directories=True)
#commit = repo.head.commit
with
open
(
"PeriodicGranularGas_DEM_NN.txt"
)
as
f
:
s
=
f
.
read
()
m
=
re
.
search
(
'runtime: (\d*.\d*)'
,
s
)
json_body
=
[
{
'measurement'
:
'pe_benchmark'
,
'tags'
:
{
'host'
:
os
.
uname
()[
1
],
'image'
:
os
.
environ
[
"DOCKER_IMAGE_NAME"
],
'model'
:
'DEM'
,
'friction'
:
'Coulomb'
,
'sync'
:
'next neighbor'
},
'time'
:
int
(
time
.
time
()),
'fields'
:
{
'runtime'
:
float
(
m
.
group
(
1
))}
}
]
print
(
float
(
m
.
group
(
1
)))
client
.
write_points
(
json_body
,
time_precision
=
's'
)
#*************************************************
with
open
(
"PeriodicGranularGas_DEM_SO.txt"
)
as
f
:
s
=
f
.
read
()
m
=
re
.
search
(
'runtime: (\d*.\d*)'
,
s
)
json_body
=
[
{
'measurement'
:
'pe_benchmark'
,
'tags'
:
{
'host'
:
os
.
uname
()[
1
],
'image'
:
os
.
environ
[
"DOCKER_IMAGE_NAME"
],
'model'
:
'DEM'
,
'friction'
:
'Coulomb'
,
'sync'
:
'shadow owner'
},
'time'
:
int
(
time
.
time
()),
'fields'
:
{
'runtime'
:
float
(
m
.
group
(
1
))}
}
]
print
(
float
(
m
.
group
(
1
)))
client
.
write_points
(
json_body
,
time_precision
=
's'
)
#*************************************************
with
open
(
"PeriodicGranularGas_HCSITS_NN_IFC.txt"
)
as
f
:
s
=
f
.
read
()
m
=
re
.
search
(
'runtime: (\d*.\d*)'
,
s
)
json_body
=
[
{
'measurement'
:
'pe_benchmark'
,
'tags'
:
{
'host'
:
os
.
uname
()[
1
],
'image'
:
os
.
environ
[
"DOCKER_IMAGE_NAME"
],
'model'
:
'HCSITS'
,
'friction'
:
'InelasticFrictionlessContact'
,
'sync'
:
'next neighbor'
},
'time'
:
int
(
time
.
time
()),
'fields'
:
{
'runtime'
:
float
(
m
.
group
(
1
))}
}
]
print
(
float
(
m
.
group
(
1
)))
client
.
write_points
(
json_body
,
time_precision
=
's'
)
#*************************************************
with
open
(
"PeriodicGranularGas_HCSITS_NN_AICCBD.txt"
)
as
f
:
s
=
f
.
read
()
m
=
re
.
search
(
'runtime: (\d*.\d*)'
,
s
)
json_body
=
[
{
'measurement'
:
'pe_benchmark'
,
'tags'
:
{
'host'
:
os
.
uname
()[
1
],
'image'
:
os
.
environ
[
"DOCKER_IMAGE_NAME"
],
'model'
:
'HCSITS'
,
'friction'
:
'ApproximateInelasticCoulombContactByDecoupling'
,
'sync'
:
'next neighbor'
},
'time'
:
int
(
time
.
time
()),
'fields'
:
{
'runtime'
:
float
(
m
.
group
(
1
))}
}
]
print
(
float
(
m
.
group
(
1
)))
client
.
write_points
(
json_body
,
time_precision
=
's'
)
#*************************************************
with
open
(
"PeriodicGranularGas_HCSITS_NN_ICCBD.txt"
)
as
f
:
s
=
f
.
read
()
m
=
re
.
search
(
'runtime: (\d*.\d*)'
,
s
)
json_body
=
[
{
'measurement'
:
'pe_benchmark'
,
'tags'
:
{
'host'
:
os
.
uname
()[
1
],
'image'
:
os
.
environ
[
"DOCKER_IMAGE_NAME"
],
'model'
:
'HCSITS'
,
'friction'
:
'InelasticCoulombContactByDecoupling'
,
'sync'
:
'next neighbor'
},
'time'
:
int
(
time
.
time
()),
'fields'
:
{
'runtime'
:
float
(
m
.
group
(
1
))}
}
]
print
(
float
(
m
.
group
(
1
)))
client
.
write_points
(
json_body
,
time_precision
=
's'
)
#*************************************************
with
open
(
"PeriodicGranularGas_HCSITS_NN_IGMDC.txt"
)
as
f
:
s
=
f
.
read
()
m
=
re
.
search
(
'runtime: (\d*.\d*)'
,
s
)
json_body
=
[
{
'measurement'
:
'pe_benchmark'
,
'tags'
:
{
'host'
:
os
.
uname
()[
1
],
'image'
:
os
.
environ
[
"DOCKER_IMAGE_NAME"
],
'model'
:
'HCSITS'
,
'friction'
:
'InelasticGeneralizedMaximumDissipationContact'
,
'sync'
:
'next neighbor'
},
'time'
:
int
(
time
.
time
()),
'fields'
:
{
'runtime'
:
float
(
m
.
group
(
1
))}
}
]
print
(
float
(
m
.
group
(
1
)))
client
.
write_points
(
json_body
,
time_precision
=
's'
)
#*************************************************
with
open
(
"PeriodicGranularGas_HCSITS_SO_IFC.txt"
)
as
f
:
s
=
f
.
read
()
m
=
re
.
search
(
'runtime: (\d*.\d*)'
,
s
)
json_body
=
[
{
'measurement'
:
'pe_benchmark'
,
'tags'
:
{
'host'
:
os
.
uname
()[
1
],
'image'
:
os
.
environ
[
"DOCKER_IMAGE_NAME"
],
'model'
:
'HCSITS'
,
'friction'
:
'InelasticFrictionlessContact'
,
'sync'
:
'shadow owner'
},
'time'
:
int
(
time
.
time
()),
'fields'
:
{
'runtime'
:
float
(
m
.
group
(
1
))}
}
]
print
(
float
(
m
.
group
(
1
)))
client
.
write_points
(
json_body
,
time_precision
=
's'
)
if
__name__
==
"__main__"
:
main
()
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment