blob: eb4cbac3210197c692851848af6bf4827a885cf1 [file] [log] [blame]
Mike Dubmanc29cd3b2015-11-04 16:39:33 +02001#!/bin/bash -eExl
2
3rc=0
4
5if [ -z "$BUILD_NUMBER" ]; then
6 echo Running interactive
7 WORKSPACE=$PWD
Mike Dubmanc29cd3b2015-11-04 16:39:33 +02008else
9 echo Running under jenkins
Mike Dubmanc29cd3b2015-11-04 16:39:33 +020010fi
11
12make_opt="-j$(($(nproc) - 1))"
13inst=${WORKSPACE}/install
Mike Dubmaneae7a792015-11-05 10:09:10 +020014ibv_test=$inst/bin/ibv_test
Mike Dubmanc29cd3b2015-11-04 16:39:33 +020015
16echo Starting on host: $(hostname)
17
18echo "Autogen"
19./autogen.sh
20
21echo "Build release"
Artemy Kovalyovfedf8452016-05-02 17:12:20 +030022./configure --prefix=$inst LDFLAGS=-L$inst/lib CPPFLAGS=-I$inst/include
Mike Dubmanc29cd3b2015-11-04 16:39:33 +020023make $make_opt install
24
Artemy Kovalyovfedf8452016-05-02 17:12:20 +030025# Set CPU affinity to 2 cores, for performance tests
26if [ -n "$EXECUTOR_NUMBER" ]; then
27 AFFINITY="taskset -c $(( 2 * EXECUTOR_NUMBER ))","$(( 2 * EXECUTOR_NUMBER + 1))"
28 TIMEOUT="timeout 40m"
29else
30 AFFINITY=""
31 TIMEOUT=""
Mike Dubmanc29cd3b2015-11-04 16:39:33 +020032fi
33
34
Artemy Kovalyovfedf8452016-05-02 17:12:20 +030035VALGRIND_ARGS="--show-reachable=yes --xml=yes --gen-suppressions=all --tool=memcheck --leak-check=full --track-origins=yes --fair-sched=try"
36
37for dev in $(ibstat -l); do
38 env IBV_TEST_DEV=${dev} $AFFINITY $ibv_test
39 module load tools/valgrind
40 env IBV_TEST_DEV=${dev} $AFFINITY valgrind $VALGRIND_ARGS --xml-file=$WORKSPACE/${dev}_valgrind.xml --log-file=$WORKSPACE/${dev}_valgrind.txt $ibv_test
41 module unload tools/valgrind
42done
43
Mike Dubmanc29cd3b2015-11-04 16:39:33 +020044exit $rc