[vmkit-commits] [vmkit] r180388 - Updated Dacapo testing framework.
Peter Senna Tschudin
peter.senna at gmail.com
Thu Apr 25 10:14:49 PDT 2013
Author: peter.senna
Date: Thu Apr 25 12:04:24 2013
New Revision: 180388
URL: http://llvm.org/viewvc/llvm-project?rev=180388&view=rev
Log:
Updated Dacapo testing framework.
(cherry picked from commit c607350866285950c2622e269049460f213b3ad3)
Added:
vmkit/trunk/tests/dacapo/collect-log-data.sh
vmkit/trunk/tests/dacapo/jars/download.sh
vmkit/trunk/tests/dacapo/run-bench.sh
Removed:
vmkit/trunk/tests/dacapo/jars/download.txt
Modified:
vmkit/trunk/incinerator/README.TXT
vmkit/trunk/tests/dacapo/2006-10/Makefile
vmkit/trunk/tests/dacapo/Makefile.inc
Modified: vmkit/trunk/incinerator/README.TXT
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/incinerator/README.TXT?rev=180388&r1=180387&r2=180388&view=diff
==============================================================================
--- vmkit/trunk/incinerator/README.TXT (original)
+++ vmkit/trunk/incinerator/README.TXT Thu Apr 25 12:04:24 2013
@@ -45,7 +45,11 @@ LLVM:
git clone http://llvm.org/git/llvm.git
cd llvm/tools
git clone http://llvm.org/git/clang.git
-cd clang
+cd ../projects
+git clone http://llvm.org/git/compiler-rt.git
+cd compiler-rt
+git config branch.master.rebase true
+cd ../../tools/clang
git config branch.master.rebase true
cd ../..
git config branch.master.rebase true
@@ -90,7 +94,8 @@ svn co http://llvm.org/svn/llvm-project/
* Make it (debug mode):
-./configure --enable-incinerator --with-llvmsrc=/home/koutheir/PhD/VMKit/llvm --with-llvmobj=/home/koutheir/PhD/VMKit/llvm --with-gnu-classpath-libs=/usr/local/classpath/lib/classpath --with-gnu-classpath-glibj=/usr/local/classpath/share/classpath/glibj.zip
+./configure --enable-incinerator --with-mmtk-plan=org.mmtk.plan.marksweep.MS --with-llvmsrc=/home/koutheir/PhD/VMKit/llvm --with-llvmobj=/home/koutheir/PhD/VMKit/llvm --with-gnu-classpath-libs=/home/koutheir/PhD/VMKit/classpath/lib --with-gnu-classpath-glibj=/home/koutheir/PhD/VMKit/classpath/lib/glibj.zip
+./configure --enable-incinerator --with-mmtk-plan=org.mmtk.plan.immix.Immix --with-llvmsrc=/home/koutheir/PhD/VMKit/llvm --with-llvmobj=/home/koutheir/PhD/VMKit/llvm --with-gnu-classpath-libs=/home/koutheir/PhD/VMKit/classpath/lib --with-gnu-classpath-glibj=/home/koutheir/PhD/VMKit/classpath/lib/glibj.zip
make -j12 ENABLE_OPTIMIZED=0 REQUIRES_FRAME_POINTER=1 KEEP_SYMBOLS=1 DEBUG_RUNTIME=1 DEBUG_SYMBOLS=1
=============
Modified: vmkit/trunk/tests/dacapo/2006-10/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tests/dacapo/2006-10/Makefile?rev=180388&r1=180387&r2=180388&view=diff
==============================================================================
--- vmkit/trunk/tests/dacapo/2006-10/Makefile (original)
+++ vmkit/trunk/tests/dacapo/2006-10/Makefile Thu Apr 25 12:04:24 2013
@@ -1,6 +1,6 @@
LEVEL := ..
DACAPO_VERSION := 2006-10
DACAPO_ARGS := -s default
-DECAPO_BENCHMARKS := antlr bloat chart eclipse fop hsqldb jython luindex lusearch pmd xalan batik ps
+DECAPO_BENCHMARKS := antlr bloat chart eclipse fop hsqldb jython luindex lusearch pmd xalan
include ../Makefile.inc
Modified: vmkit/trunk/tests/dacapo/Makefile.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tests/dacapo/Makefile.inc?rev=180388&r1=180387&r2=180388&view=diff
==============================================================================
--- vmkit/trunk/tests/dacapo/Makefile.inc (original)
+++ vmkit/trunk/tests/dacapo/Makefile.inc Thu Apr 25 12:04:24 2013
@@ -5,13 +5,12 @@ else
endif
TEMP_LEVEL := ../..
+RUN_BENCH := $(PWD)/$(LEVEL)/run-bench.sh
DACAPO := $(PWD)/$(LEVEL)/jars/dacapo-$(DACAPO_VERSION).jar
+TMP_DIR := $(LEVEL)/tmp
LOG_DIR := $(LEVEL)/logs
-LOG_DIR_FROM_TEMP := $(PWD)/$(LOG_DIR)
-J3_PATH := $(PWD)/../$(TEMP_LEVEL)/$(LEVEL)/vmkit2/$(BUILD_MODE)/bin/j3
-TEMP_J3 := $(PWD)/$(LEVEL)/$(DACAPO_VERSION)/j3
+J3_PATH := $(PWD)/../$(TEMP_LEVEL)/$(LEVEL)/vmkit/$(BUILD_MODE)/bin/j3
IJVM_PATH := $(PWD)/../$(TEMP_LEVEL)/$(LEVEL)/ijvm/$(BUILD_MODE)/bin/j3
-TEMP_IJVM := $(PWD)/$(LEVEL)/$(DACAPO_VERSION)/ijvm
ifndef ENABLE_J3
ENABLE_J3 := 1
@@ -21,21 +20,11 @@ ifndef ENABLE_IJVM
ENABLE_IJVM := 1
endif
-J3_DEFINED := [ "$(ENABLE_J3)" -ne 0 ]
-IJVM_DEFINED := [ "$(ENABLE_IJVM)" -ne 0 ]
-
-all: $(VM) $(LOG_DIR) $(DECAPO_BENCHMARKS)
-
-$(LOG_DIR):
- @mkdir -p $@ 2>/dev/null
+all: $(VM) $(DECAPO_BENCHMARKS)
$(DECAPO_BENCHMARKS): $(DACAPO)
- @-$(J3_DEFINED) && echo "Dacapo benchmark version " $(DACAPO_VERSION) ": j3 ==> " $@
- @-$(J3_DEFINED) && rm -rf $(TEMP_J3)/$@ && mkdir -p $(TEMP_J3)/$@
- @-$(J3_DEFINED) && cd $(TEMP_J3)/$@ && $(J3_PATH) -jar $(DACAPO) $(DACAPO_ARGS) $@ >$(LOG_DIR_FROM_TEMP)/j3-$@-$(DACAPO_VERSION).log 2>&1
- @-$(IJVM_DEFINED) && echo "Dacapo benchmark version " $(DACAPO_VERSION) ": ijvm ==> " $@
- @-$(IJVM_DEFINED) && rm -rf $(TEMP_IJVM)/$@ && mkdir -p $(TEMP_IJVM)/$@
- @-$(IJVM_DEFINED) && cd $(TEMP_IJVM)/$@ && $(IJVM_PATH) -jar $(DACAPO) $(DACAPO_ARGS) $@ >$(LOG_DIR_FROM_TEMP)/ijvm-$@-$(DACAPO_VERSION).log 2>&1
+ @-$(RUN_BENCH) "$(ENABLE_J3)" "j3" "$(DACAPO_VERSION)" "$(J3_PATH)" "$(DACAPO)" "$(DACAPO_ARGS)" "$@"
+ @-$(RUN_BENCH) "$(ENABLE_IJVM)" "ijvm" "$(DACAPO_VERSION)" "$(IJVM_PATH)" "$(DACAPO)" "$(DACAPO_ARGS)" "$@"
clean:
- @-rm -rf $(LOG_DIR) $(TEMP_J3) $(TEMP_IJVM) 2>/dev/null
+ @-rm -rf "$(TMP_DIR)" "$(LOG_DIR)" 2>/dev/null
Added: vmkit/trunk/tests/dacapo/collect-log-data.sh
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tests/dacapo/collect-log-data.sh?rev=180388&view=auto
==============================================================================
--- vmkit/trunk/tests/dacapo/collect-log-data.sh (added)
+++ vmkit/trunk/tests/dacapo/collect-log-data.sh Thu Apr 25 12:04:24 2013
@@ -0,0 +1,43 @@
+#!/bin/bash
+
+dacapo_dir=/home/koutheir/PhD/VMKit/vmkit/tests/dacapo
+log_collect_file=$dacapo_dir/logs/collected_passed.log
+log_synth_file=$dacapo_dir/logs/synth.log
+
+synth_awk=$(cat <<EOF
+BEGIN {
+ FS = ",";
+ getline;
+
+ bench_version = \$1;
+ bench_name = \$2;
+ vm_name = \$3;
+ val = \$4;
+ nval = 1;
+}
+/^\$/ {}
+{
+ if (\$1 == bench_version && \$2 == bench_name && \$3 == vm_name) {
+ val += \$4;
+ nval++;
+ } else {
+ val /= nval;
+ print bench_version FS bench_name FS vm_name FS int(val);
+
+ bench_version = \$1;
+ bench_name = \$2;
+ vm_name = \$3;
+ val = \$4;
+ nval = 1;
+ }
+}
+END {
+ val /= nval;
+ print bench_version FS bench_name FS vm_name FS val;
+}
+EOF
+)
+
+cd "$dacapo_dir/logs"
+grep '^===== DaCapo [A-Za-z]\+ PASSED' tmp.* | sed 's/tmp[^_]\+_//g' | sed 's/ msec =====//g' | sed 's/\.log:===== DaCapo [a-z]\+ PASSED in /_/g' | tr '_' ',' | sort > $log_collect_file
+awk -e "$synth_awk" "$log_collect_file" > $log_synth_file
Added: vmkit/trunk/tests/dacapo/jars/download.sh
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tests/dacapo/jars/download.sh?rev=180388&view=auto
==============================================================================
--- vmkit/trunk/tests/dacapo/jars/download.sh (added)
+++ vmkit/trunk/tests/dacapo/jars/download.sh Thu Apr 25 12:04:24 2013
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+wget http://sourceforge.net/projects/dacapobench/files/archive/2006-10-MR2/dacapo-2006-10-MR2.jar/download -O dacapo-2006-10-MR2.jar
+wget http://sourceforge.net/projects/dacapobench/files/archive/2006-10/dacapo-2006-10.jar/download -O dacapo-2006-10.jar
+wget http://sourceforge.net/projects/dacapobench/files/9.12-bach/dacapo-9.12-bach.jar/download -O dacapo-9.12-bach.jar
Removed: vmkit/trunk/tests/dacapo/jars/download.txt
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tests/dacapo/jars/download.txt?rev=180387&view=auto
==============================================================================
--- vmkit/trunk/tests/dacapo/jars/download.txt (original)
+++ vmkit/trunk/tests/dacapo/jars/download.txt (removed)
@@ -1,3 +0,0 @@
-http://sourceforge.net/projects/dacapobench/files/archive/2006-10/
-http://sourceforge.net/projects/dacapobench/files/archive/2006-10-MR2/
-http://sourceforge.net/projects/dacapobench/files/9.12-bach/
Added: vmkit/trunk/tests/dacapo/run-bench.sh
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tests/dacapo/run-bench.sh?rev=180388&view=auto
==============================================================================
--- vmkit/trunk/tests/dacapo/run-bench.sh (added)
+++ vmkit/trunk/tests/dacapo/run-bench.sh Thu Apr 25 12:04:24 2013
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+enable=$1
+
+if [ "$enable" -ne "1" ]; then exit 0; fi
+
+vm_name=$2
+bench_version=$3
+jvm=$4
+jar=$5
+vmargs=$6
+bench_name=$7
+
+dacapo_dir=/home/koutheir/PhD/VMKit/vmkit/tests/dacapo
+
+suffix=_${bench_version}_${bench_name}_${vm_name}
+
+mkdir -p "$dacapo_dir/tmp" "$dacapo_dir/logs" 2>/dev/null
+scratch_dir=$(mktemp -d --suffix=$suffix --tmpdir=$dacapo_dir/tmp)
+log_file=$(mktemp --suffix=${suffix}.log --tmpdir=$dacapo_dir/logs)
+
+cd "$scratch_dir"
+"$jvm" -jar "$jar" $vmargs "$bench_name" > $log_file 2>&1 || exit 1
+
+cd ..
+rm -rf "$scratch_dir"
+exit 0
More information about the vmkit-commits
mailing list