...
 
Commits (13)
......@@ -28,6 +28,13 @@ batik:
after_script:
- git clean -df -e "downloads"
batik:
script:
- ant -Dbuild.target-jar=dacapo.jar cassandra
- java -jar dacapo.jar cassandra -s test
after_script:
- git clean -df -e "downloads"
eclipse:
script:
- ant -Dbuild.target-jar=dacapo.jar eclipse
......@@ -42,6 +49,13 @@ fop:
after_script:
- git clean -df -e "downloads"
graphchi:
script:
- ant -Dbuild.target-jar=dacapo.jar graphchi
- java -jar dacapo.jar graphchi -s livejournal
after_script:
- git clean -df -e "downloads"
h2:
script:
- ant -Dbuild.target-jar=dacapo.jar h2
......
<!--
* Copyright (c) 2009 The Australian National University.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Apache License v2.0.
* You may obtain the license at
*
* http://www.opensource.org/licenses/apache2.0.php
-->
<project name="cassandra" default="all" basedir="../..">
<description>DaCapo Cassandra Benchmark</description>
<property file="dacapo.properties"/>
<property name="bm-name" value="cassandra"/>
<property name="bm-version" value="3.11.3"/>
<property name="bm-src" value="${bm-name}-${bm-version}.tar.gz"/>
<property name="bm-git-url" value="http://git-wip-us.apache.org/repos/asf/cassandra.git"/>
<property name="bm-git-commit" value="cassandra-${bm-version}"/>
<import file="../common.xml"/>
<property name="mvn-home" location="${toolsdir}/apache-maven-${mvn.version}/bin"/>
<property name="mvn-exe" value="${mvn-home}/mvn"/>
<condition property="mvn-exe" value="${mvn-home}/mvn.bat">
<os family="windows"/>
</condition>
<property name="ycsb-version" value="0.15.0"/>
<property name="ycsb-git-url" value="https://github.com/brianfrankcooper/YCSB.git"/>
<property name="ycsb-git-commit" value="${ycsb-version}"/>
<property name="ycsb-tgz" value="ycsb-${ycsb-version}.tar.gz"/>
<property name="datastax-driver-version" value="3.6.0"/>
<property name="datastax-driver-url" value="https://repo1.maven.org/maven2/com/datastax/cassandra/cassandra-driver-core/${datastax-driver-version}"/>
<property name="datastax-driver-jar" value="cassandra-driver-core-${datastax-driver-version}.jar"/>
<target name="source">
<antcall target="check-source">
<param name="target-dir" value="${bm-downloads}"/>
<param name="target-url" value="${datastax-driver-url}"/>
<param name="target-file" value="${datastax-driver-jar}"/>
</antcall>
<antcall target="check-git-source">
<param name="target-dir" value="${bm-downloads}"/>
<param name="git-url" value="${ycsb-git-url}"/>
<param name="git-commit" value="${ycsb-git-commit}"/>
<param name="target-file" value="${ycsb-tgz}"/>
<param name="fail-on-error" value="true"/>
</antcall>
</target>
<property name="cassandra-build-top" value="${bm-build-dir}/cassandra-${bm-version}"/>
<target name="cassandra-build">
<mkdir dir="${cassandra-build-top}"/>
<untar src="${bm-downloads}/${bm-src}" dest="${cassandra-build-top}" compression="gzip"/>
<exec executable="ant" dir="${cassandra-build-top}"/>
</target>
<target name="ycsb-build" depends="get-slf4j-simple-jar">
<property name="ycsb-dir" value="${bm-build-dir}/ycsb-${ycsb-version}"/>
<mkdir dir="${ycsb-dir}"/>
<untar src="${bm-downloads}/${ycsb-tgz}" dest="${ycsb-dir}" compression="gzip"/>
<patch patchfile="${bm-files}/ycsb.patch" dir="${ycsb-dir}" strip="0" ignorewhitespace="yes"/>
<exec executable="${mvn-exe}" dir="${ycsb-dir}">
<arg line="-pl com.yahoo.ycsb:cassandra-binding dependency:copy-dependencies -am package -DskipTests"/>
</exec>
</target>
<target name="bm-build" depends="cassandra-build, ycsb-build">
<property name="bm-harness-classpath" value="${cassandra-build-top}/build/classes/main:${bm-downloads}/${datastax-driver-jar}"/>
</target>
<property name="slf4j-version" value="1.7.25"/>
<property name="slf4j-url" value="https://www.slf4j.org/dist"/>
<property name="slf4j-tgz" value="slf4j-${slf4j-version}.tar.gz"/>
<target name="get-slf4j-simple-jar">
<antcall target="check-source">
<param name="target-dir" value="${bm-downloads}"/>
<param name="target-url" value="${slf4j-url}"/>
<param name="target-file" value="${slf4j-tgz}"/>
</antcall>
<untar src="${bm-downloads}/${slf4j-tgz}" dest="${bm-build-dir}" compression="gzip"/>
<property name="slf4j-dir" value="${bm-build-dir}/slf4j-${slf4j-version}"/>
<property name="slf4j-simple-jar" value="${slf4j-dir}/slf4j-simple-${slf4j-version}.jar"/>
</target>
<target name="libs">
<copy todir="${bm-jars}">
<resources>
<!-- cassandra libs -->
<fileset dir="${cassandra-build-top}/lib" includes="*.jar"/>
<!-- datastax cassandra driver -->
<file file="${bm-downloads}/${datastax-driver-jar}"/>
<!-- ycsb libs -->
<file file="${slf4j-simple-jar}"/>
<file file="${ycsb-dir}/cassandra/target/cassandra-binding-${ycsb-version}.jar"/>
<fileset dir="${ycsb-dir}/cassandra/target/dependency" includes="*.jar"/>
<file file="${ycsb-dir}/core/target/core-${ycsb-version}.jar"/>
<fileset dir="${ycsb-dir}/core/target/dependency">
<filename name="HdrHistogram-2.1.4.jar"/>
<filename name="htrace-core4-4.1.0-incubating.jar"/>
<filename name="jackson-core-asl-1.9.4.jar"/>
<filename name="jackson-mapper-asl-1.9.4.jar"/>
</fileset>
</resources>
</copy>
<!-- cassandra libsigar dependency -->
<zip destfile="${bm-dat}/libsigar.zip" basedir="${cassandra-build-top}/lib/sigar-bin"/>
<!-- cassandra config (XXX: maybe put it in another target/directory) -->
<zip destfile="${bm-dat}/cassandra-conf.zip" basedir="${cassandra-build-top}/conf"/>
<!-- ycsb workloads -->
<zip destfile="${bm-dat}/ycsb-workloads.zip" basedir="${ycsb-dir}/workloads"/>
</target>
<target name="jar" depends="libs">
<copy file="${cassandra-build-top}/build/apache-cassandra-${bm-version}-SNAPSHOT.jar"
tofile="${bm-jars}/cassandra-${bm-version}.jar"/>
<copy file="${cassandra-build-top}/build/apache-cassandra-thrift-${bm-version}-SNAPSHOT.jar"
tofile="${bm-jars}/cassandra-thrift-${bm-version}.jar"/>
</target>
</project>
\ No newline at end of file
benchmark cassandra
class org.dacapo.harness.CassandraBench
thread-model per_cpu
jars "cassandra-3.11.3.jar", "cassandra-thrift-3.11.3.jar", "cassandra-driver-core-3.6.0.jar", "ST4-4.0.8.jar", "airline-0.6.jar", "antlr-runtime-3.5.2.jar", "asm-5.0.4.jar", "caffeine-2.2.6.jar", "cassandra-driver-core-3.0.1-shaded.jar", "commons-cli-1.1.jar", "commons-codec-1.9.jar", "commons-lang3-3.1.jar", "commons-math3-3.2.jar", "compress-lzf-0.8.4.jar", "concurrent-trees-2.4.0.jar", "concurrentlinkedhashmap-lru-1.4.jar", "disruptor-3.0.1.jar", "ecj-4.4.2.jar", "guava-18.0.jar", "high-scale-lib-1.0.6.jar", "hppc-0.5.4.jar", "jackson-core-asl-1.9.13.jar", "jackson-mapper-asl-1.9.13.jar", "jamm-0.3.0.jar", "javax.inject.jar", "jbcrypt-0.3m.jar", "jcl-over-slf4j-1.7.7.jar", "jctools-core-1.2.1.jar", "jflex-1.6.0.jar", "jna-4.2.2.jar", "joda-time-2.4.jar", "json-simple-1.1.jar", "jstackjunit-0.0.1.jar", "libthrift-0.9.2.jar", "log4j-over-slf4j-1.7.7.jar", "logback-classic-1.1.3.jar", "logback-core-1.1.3.jar", "lz4-1.3.0.jar", "metrics-core-3.1.5.jar", "metrics-jvm-3.1.5.jar", "metrics-logback-3.1.5.jar", "netty-all-4.0.44.Final.jar", "ohc-core-0.4.4.jar", "ohc-core-j8-0.4.4.jar", "reporter-config-base-3.0.3.jar", "reporter-config3-3.0.3.jar", "sigar-1.6.4.jar", "slf4j-api-1.7.7.jar", "snakeyaml-1.11.jar", "snappy-java-1.1.1.7.jar", "snowball-stemmer-1.3.0.581.1.jar", "stream-2.5.2.jar", "thrift-server-0.3.7.jar", "cassandra-binding-0.15.0.jar", "cassandra-driver-core-3.0.0.jar", "core-0.15.0.jar", "guava-16.0.1.jar", "metrics-core-3.1.2.jar", "netty-buffer-4.0.33.Final.jar", "netty-codec-4.0.33.Final.jar", "netty-common-4.0.33.Final.jar", "netty-handler-4.0.33.Final.jar", "netty-transport-4.0.33.Final.jar", "slf4j-api-1.7.25.jar", "slf4j-simple-1.7.25.jar", "HdrHistogram-2.1.4.jar", "htrace-core4-4.1.0-incubating.jar", "jackson-core-asl-1.9.4.jar", "jackson-mapper-asl-1.9.4.jar";
size test args "workloada";
\ No newline at end of file
CREATE KEYSPACE ycsb WITH REPLICATION = {'class': 'SimpleStrategy', 'replication_factor': 1};
USE ycsb;
CREATE TABLE usertable (
y_id varchar primary key,
field0 varchar,
field1 varchar,
field2 varchar,
field3 varchar,
field4 varchar,
field5 varchar,
field6 varchar,
field7 varchar,
field8 varchar,
field9 varchar);
\ No newline at end of file
<HTML>
<HEAD>
<TITLE>DaCapo Benchmarks: Cassandra</TITLE>
<META HTTP-EQUIV="Description" NAME="DaCapo Benchmark: Cassandra"
CONTENT="The DaCapo Benchmark: Cassandra.">
<META HTTP-EQUIV="Keywords" NAME="Keywords"
CONTENT="dacapo benchmarks performance java pmd">
<LINK REL="stylesheet" TYPE="text/css" HREF="../dacapo.css"/>
</HEAD>
<BODY>
<CENTER><H3>Cassandra</H3></CENTER>
<H4>Description:</H4>
<H4>Characteristics:</H4>
<H4>References:</H4>
<H4>Harness:</H4>
<A HREF="index.html" TARGET="_top">Javadoc for Cassandra harness.</A>
</BODY>
</HTML>
bdd86aa9ddbd018ba4d72f7e50af87d4
\ No newline at end of file
c2404e811972f30f42a6479db3dd59cb
\ No newline at end of file
diff --git orig/core/src/main/java/com/yahoo/ycsb/Client.java core/src/main/java/com/yahoo/ycsb/Client.java
index 00b1e378..9b55a30f 100644
--- orig/core/src/main/java/com/yahoo/ycsb/Client.java
+++ core/src/main/java/com/yahoo/ycsb/Client.java
@@ -715,9 +715,10 @@ public final class Client {
Measurements.getMeasurements().exportMeasurements(exporter);
} finally {
- if (exporter != null) {
- exporter.close();
- }
+ // DaCapo XXX: closing the exporter will also close the DaCapo TeePrintStream
+ // if (exporter != null) {
+ // exporter.close();
+ // }
}
}
@@ -844,8 +845,8 @@ public final class Client {
e.printStackTrace();
System.exit(-1);
}
-
- System.exit(0);
+ // DaCapo: don't bomb the system/process when finish
+ // System.exit(0);
}
private static List<ClientThread> initDb(String dbname, Properties props, int threadcount,
<!--
* Copyright (c) 2009 The Australian National University.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Apache License v2.0.
* You may obtain the license at
*
* http://www.opensource.org/licenses/apache2.0.php
-->
<project name="graphchi" default="all" basedir="../..">
<description>DaCapo GraphChi benchmark</description>
<property file="dacapo.properties"/>
<property name="bm-name" value="graphchi"/>
<property name="bm-version" value="0.2.2"/>
<property name="bm-src" value="${bm-name}-java-src-${bm-version}.tar.gz"/>
<property name="bm-git-url" value="${github.url}/GraphChi/graphchi-java"/>
<property name="bm-git-commit" value="e5136d52512823fb34594e2851cbb23d62dd7ac8"/>
<property name="netflix-mm-dl" value="netflix_mm.gz"/>
<property name="netflix-mm-url" value="https://courses.cs.washington.edu/courses/cse547/16sp/datasets"/>
<property name="livejournal-dl" value="soc-LiveJournal1.txt.gz"/>
<property name="livejournal-url" value="https://snap.stanford.edu/data"/>
<import file="../common.xml"/>
<property name="mvn-home" location="${toolsdir}/apache-maven-${mvn.version}/bin"/>
<property name="mvn-exe" value="${mvn-home}/mvn"/>
<condition property="mvn-exe" value="${mvn-home}/mvn.bat">
<os family="windows"/>
</condition>
<target name="unpack" depends="untar, patch"/>
<target name="bm-build">
<mkdir dir="${bm-build-dir}"/>
<exec executable="${mvn-exe}" dir="${bm-build-dir}" failonerror="yes">
<arg line="assembly:assembly -DdescriptorId=jar-with-dependencies"/>
</exec>
</target>
<target name="data"/>
<target name="jar">
<copy file="${bm-build-dir}/target/${bm-name}-java-${bm-version}-jar-with-dependencies.jar"
tofile="${bm-jars}/${bm-name}-${bm-version}.jar"/>
</target>
</project>
<HTML>
<HEAD>
<TITLE>DaCapo Benchmarks: GraphChi</TITLE>
<META HTTP-EQUIV="Description" NAME="DaCapo Benchmark: GraphChi"
CONTENT="The DaCapo Benchmark: GraphChi.">
<META HTTP-EQUIV="Keywords" NAME="Keywords"
CONTENT="dacapo benchmarks performance java graphchi">
<LINK REL="stylesheet" TYPE="text/css" HREF="../dacapo.css"/>
</HEAD>
<BODY>
<CENTER><H3>GraphChi</H3></CENTER>
<H4>Description:</H4>
<H4>Characteristics:</H4>
<H4>References:</H4>
<H4>Harness:</H4>
<A HREF="index.html" TARGET="_top">Javadoc for fop harness.</A>
</BODY>
</HTML>
\ No newline at end of file
f5d4925861787fca675520cddee88126
\ No newline at end of file
benchmark graphchi
class org.dacapo.harness.GraphChi
thread-model per_cpu
jars "graphchi-0.2.2.jar";
// TODO: calibrate & validate
size netflix args "ALSMatrixFactorization", "${DATA}/graphchi/netflix_mm", "10";
size livejournal args "Pagerank", "${DATA}/graphchi/soc-LiveJournal1.txt", "10", "edgelist";
description
short "A disk-based graph computation engine.",
long "A disk-based system for computing efficiently on graphs with billions of edges, by using parallel sliding windows method on smaller shards of graphs.",
copyright "Copyright 2012 Aapo Kyrola, Guy Blelloch, Carlos Guestrin / Carnegie Mellon University",
license "Apache License, Version 2.0",
url "https://github.com/GraphChi/graphchi-java",
version "0.2.2",
threads "Explicitly multi-threaded, scaled to available processors.";
diff --git orig/pom.xml ./pom.xml
index 52d0b86..1a7857a 100644
--- orig/pom.xml
+++ ./pom.xml
@@ -47,7 +47,7 @@
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
- <version>2.9.0-1</version>
+ <version>2.11.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
@@ -73,11 +73,6 @@
<artifactId>hadoop-core</artifactId>
<version>0.20.2</version>
</dependency>
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-math</artifactId>
- <version>2.0</version>
- </dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-math</artifactId>
diff --git orig/src/main/java/edu/cmu/graphchi/ChiLogger.java ./src/main/java/edu/cmu/graphchi/ChiLogger.java
index fd67754..0c7ac42 100644
--- orig/src/main/java/edu/cmu/graphchi/ChiLogger.java
+++ ./src/main/java/edu/cmu/graphchi/ChiLogger.java
@@ -63,18 +63,18 @@ public class ChiLogger {
StringBuilder sb = new StringBuilder();
// Minimize memory allocations here.
- dat.setTime(record.getMillis());
- args[0] = dat;
-
-
- // Date and time
- StringBuffer text = new StringBuffer();
- if (formatter == null) {
- formatter = new MessageFormat(format);
- }
- formatter.format(args, text, null);
- sb.append(text);
- sb.append(" ");
+ // dat.setTime(record.getMillis());
+ // args[0] = dat;
+
+
+ // // Date and time
+ // StringBuffer text = new StringBuffer();
+ // if (formatter == null) {
+ // formatter = new MessageFormat(format);
+ // }
+ // formatter.format(args, text, null);
+ // sb.append(text);
+ // sb.append(" ");
// Logger name
/*
* Copyright (c) 2009 The Australian National University.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Apache License v2.0.
* You may obtain the license at
*
* http://www.opensource.org/licenses/apache2.0.php
*/
package org.dacapo.harness;
import java.io.File;
import java.util.Arrays;
import org.dacapo.harness.Benchmark;
import org.dacapo.parser.Config;
public class GraphChi extends Benchmark {
private String[] args;
private Class<?> cls;
public GraphChi(Config config, File scratch, File data) throws Exception {
super(config, scratch, data, false);
}
@Override
protected void prepare(String size) throws Exception {
super.prepare(size);
String[] config_args = config.preprocessArgs(size, scratch, data);
String strAppClsName = config_args[0];
args = Arrays.copyOfRange(config_args, 1, config_args.length);
cls = Class.forName("edu.cmu.graphchi.apps." + strAppClsName, true, loader);
this.method = cls.getMethod("main", new Class[] { String[].class });
}
public void iterate(String size) throws Exception {
method.invoke(null, (Object)args);
}
}
......@@ -397,6 +397,9 @@ See ${log.build.report} for a summary of benchmark build status.
<target name="batik" depends="init,harness">
<build.bm benchmark="batik"/>
</target>
<target name="cassandra" depends="init,harness">
<build.bm benchmark="cassandra"/>
</target>
<target name="h2" depends="init,harness">
<build.bm benchmark="h2"/>
</target>
......@@ -406,6 +409,9 @@ See ${log.build.report} for a summary of benchmark build status.
<target name="fop" depends="init,harness">
<build.bm benchmark="fop"/>
</target>
<target name="graphchi" depends="init,harness">
<build.bm benchmark="graphchi"/>
</target>
<target name="jython" depends="init,harness">
<build.bm benchmark="jython"/>
</target>
......