diff --git a/lhc/simpletrack/.simpletrack-ci.yml b/lhc/simpletrack/.simpletrack-ci.yml index 0c4c78c34352542075d1e0c7ad0556d7a7ac7fad..8c6cf03fd9bfb631cbca28f8e0498206fa095079 100644 --- a/lhc/simpletrack/.simpletrack-ci.yml +++ b/lhc/simpletrack/.simpletrack-ci.yml @@ -40,7 +40,7 @@ stages: environment: name: test/$CI_COMMIT_REF_NAME script: - - cd /simpletrack/examples/lhc && ./lhc-simpletrack.sh -b "all" + - cd /simpletrack/examples/lhc && ./lhc-simpletrack.sh -b "all" -w $CI_PROJECT_DIR/jobs only: variables: - $CI_COMMIT_REF_NAME == "qa" diff --git a/lhc/simpletrack/Dockerfile.nvidia b/lhc/simpletrack/Dockerfile.nvidia index c7e4536c8b85afedb66794e834c084e0a5618451..d56253ecedbe2047d6942dd4351423f0d46487d4 100644 --- a/lhc/simpletrack/Dockerfile.nvidia +++ b/lhc/simpletrack/Dockerfile.nvidia @@ -11,7 +11,8 @@ RUN distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \ RUN yum install -y python3 python3-devel python3-pip git gcc gcc-c++ ocl-icd-devel && pip3 install pybind11 mako pyopencl \ && mkdir /.cache && chmod -R 777 /.cache \ && git clone https://github.com/rdemaria/simpletrack \ - && cd simpletrack && pip3 install -e . + && cd simpletrack && pip3 install -e . \ + && mkdir /results COPY lhc/simpletrack/lhc-simpletrack.sh /simpletrack/examples/lhc/lhc-simpletrack.sh diff --git a/lhc/simpletrack/lhc-simpletrack.sh b/lhc/simpletrack/lhc-simpletrack.sh index 5ff77760f4b41cbcc15cd9d8357511e588208ed6..bdbb1dad0e0025fb192976102678e4f1556412b1 100755 --- a/lhc/simpletrack/lhc-simpletrack.sh +++ b/lhc/simpletrack/lhc-simpletrack.sh @@ -46,6 +46,7 @@ parse_args() { --turns|-t) shift 1 ; TURNS=$1 ;; --device|-d) shift 1 ; DEVICE=$1 ;; --benchmark|-b) shift 1 ; BENCHMARK=$1 ;; + --resultsdir|-w) shift 1; WORK_DIR=$1 ;; --show|-s) python3 benchmark_opencl.py -s ; exit 0 ;; *) log error "Invalid argument: $*. Please use: $0 --help for the list of available options" esac @@ -73,7 +74,7 @@ get_json() { ################################### ####### Main ###################### -if [ ! "$CI_PROJECT_DIR" == "" ]; then WORK_DIR=$CI_PROJECT_DIR/jobs; else WORK_DIR="/tmp/jobs"; fi +if [[ -z "$WORK_DIR" ]]; then WORK_DIR="/results"; fi if [ ! -d $WORK_DIR ]; then mkdir -p $WORK_DIR; fi if [ -f $WORK_DIR/out.log ]; then rm $WORK_DIR/out.log; fi @@ -93,11 +94,11 @@ case $BENCHMARK in log info "Running benchmark for ${#list[@]} device(s)"; for dev in "${list[@]}" do - OUT=$(run_benchmark $dev); get_json $dev $OUT | tee -a $WORK_DIR/summary.json; + OUT=$(run_benchmark $dev); get_json $dev $OUT | tee -a $WORK_DIR/simpletrack_summary.json; done ;; device) log info "Running benchmark for $DEVICE device"; - OUT=$(run_benchmark $DEVICE); get_json $DEVICE $OUT | tee -a $WORK_DIR/summary.json ;; + OUT=$(run_benchmark $DEVICE); get_json $DEVICE $OUT | tee -a $WORK_DIR/simpletrack_summary.json ;; *) python3 benchmark_opencl.py -p $PARTICLES -t $TURNS -d $DEVICE 2>&1 | tee -a $WORK_DIR/out.log; esac