aboutsummaryrefslogtreecommitdiff
path: root/jdk8-terasort-benchmark.yaml
diff options
context:
space:
mode:
authorFathi Boudra <fathi.boudra@linaro.org>2015-10-26 10:41:27 +0200
committerFathi Boudra <fathi.boudra@linaro.org>2015-10-26 10:41:27 +0200
commit7eab1fb8779dfb4623c9881d4b5c54fe42706b1c (patch)
treea8b86772dd0c4849ab733a0f9c5b42aa4aa76aec /jdk8-terasort-benchmark.yaml
parent19fbf155dff69a935abad57808dde16c559b604f (diff)
jdk8-terasort-benchmark: add new OpenJDK CI job
Change-Id: Ife756769335a2bde1472219990cd237dc3df7b82 Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Diffstat (limited to 'jdk8-terasort-benchmark.yaml')
-rw-r--r--jdk8-terasort-benchmark.yaml113
1 files changed, 113 insertions, 0 deletions
diff --git a/jdk8-terasort-benchmark.yaml b/jdk8-terasort-benchmark.yaml
new file mode 100644
index 00000000..708ec36d
--- /dev/null
+++ b/jdk8-terasort-benchmark.yaml
@@ -0,0 +1,113 @@
+- job:
+ name: jdk8-terasort-benchmark
+ project-type: matrix
+ defaults: global
+ description: |
+ * Runs the terasort benchmark.
+ logrotate:
+ numToKeep: 10
+ artifactNumToKeep: 1
+ properties:
+ - authorization:
+ linaro:
+ - job-read
+ disabled: false
+ node: aarch64-06
+ display-name: 'OpenJDK - Run terasort benchmark'
+ axes:
+ - axis:
+ type: user-defined
+ name: JVM_VARIANT
+ values:
+ - server
+ - client
+ - axis:
+ type: user-defined
+ name: BUILD_TYPE
+ values:
+ - release
+ execution-strategy:
+ sequential: true
+ wrappers:
+ - workspace-cleanup:
+ dirmatch: false
+ - timestamps
+ - matrix-tie-parent:
+ node: aarch64-06
+ builders:
+ - copyartifact:
+ project: jdk8-build-image
+ filter: 'out/jdk8-${JVM_VARIANT}-${BUILD_TYPE}.tar.gz'
+ target: incoming
+ flatten: true
+ - copyartifact:
+ project: openjdk8-hadoop-LCA14
+ filter: 'out/openjdk8-hadoop-LCA14.tar.gz'
+ target: incoming
+ flatten: true
+ - shell: |
+ #!/bin/bash
+
+ set -exu
+
+ NGIGABYTES=1
+
+ ## Extract jdk
+ rm -rf jdk8*
+ tar xf incoming/BUILD_TYPE=${BUILD_TYPE},JVM_VARIANT=${JVM_VARIANT}/jdk8-${JVM_VARIANT}-${BUILD_TYPE}.tar.gz
+
+ export JAVA_HOME=${WORKSPACE}/jdk8-${JVM_VARIANT}-${BUILD_TYPE}
+ export PATH=${JAVA_HOME}/bin:$PATH
+
+ ## Extract Hadoop pre-builts
+ rm -rf openjdk8-hadooop-LCA14
+ tar xf incoming/openjdk8-hadoop-LCA14.tar.gz
+
+ ## Benchmark
+ # FIXME
+ (cd incoming; wget --progress=dot -e dotbytes=10M http://openjdk-apm1/openjdk8-build-artefacts/${NGIGABYTES}GB.tar.gz; tar xf ${NGIGABYTES}GB.tar.gz)
+
+ TERAGEN_BASELINE_DIR=${WORKSPACE}/incoming
+ HADOOP_DIR=${WORKSPACE}/openjdk8-hadoop-LCA14
+
+ rm -rf out
+ mkdir out
+
+ sed -i '/^export JAVA_HOME=/d' ${HADOOP_DIR}/conf/hadoop-env.sh
+ echo "export JAVA_HOME=$JAVA_HOME" >> ${HADOOP_DIR}/conf/hadoop-env.sh
+
+ source ${HADOOP_DIR}/env.sh
+
+ which hadoop
+ which java
+ which hdfs
+ java -version
+
+ stop-dfs.sh
+ stop-yarn.sh
+
+ rm -rf ${HOME}/hadoop-tmp
+ hdfs namenode -format -force
+ start-dfs.sh
+ start-yarn.sh
+
+ # Need time for the datanodes to materialise.
+ sleep 30
+ jps
+
+ hadoop fs -mkdir -p /user/$USER
+ hadoop fs -copyFromLocal $TERAGEN_BASELINE_DIR/${NGIGABYTES}GB /user/$USER
+
+ trap "stop-dfs.sh; stop-yarn.sh" EXIT
+
+ elapsed_time_file=$(mktemp /tmp/benchmark-terasort-XXXXXX.$$)
+ HADOOP_OPTS=-${JVM_VARIANT} /usr/bin/time -o $elapsed_time_file -f "%e" terasort ${NGIGABYTES}GB ${NGIGABYTES}GB-sorted
+ hadoop fs -rm -R ${NGIGABYTES}GB-sorted
+ sed -i 's/\..*//' $elapsed_time_file
+ elapsed_time=$(cat $elapsed_time_file)
+ date_as_epoch=$(date --date="$(date +'%Y-%m-%d')" +%s)
+ echo "$date_as_epoch,$JVM_VARIANT,$NGIGABYTES,$elapsed_time" > out/terasort-results-${JVM_VARIANT}-${BUILD_TYPE}.csv
+ rm -rf incoming/${NGIGABYTES}*
+ publishers:
+ - archive:
+ artifacts: 'out/terasort-results-*.csv'