Skip to content

Commit

Permalink
Added instructions to README
Browse files Browse the repository at this point in the history
  • Loading branch information
Paul M Bauer committed Jan 21, 2012
1 parent f916c65 commit d2966c6
Showing 1 changed file with 51 additions and 4 deletions.
55 changes: 51 additions & 4 deletions README.markdown
@@ -1,7 +1,54 @@
Benchmark (and regression) suite for Clojure
Copyright (c) Rich Hickey.
## Getting Started
### Requirements
* JDK with java/javac on path - http://www.oracle.com/technetwork/java/javase/downloads/index.html
* maven - http://maven.apache.org/guides/getting-started/index.html
* add the following to your ~/.m2/settings.xml file
```xml
<settings>
<activeProfiles>
<activeProfile>clojure-dev</activeProfile>
</activeProfiles>

License and CA same as Clojure. See epl-v10.html at the root of the
project for details.
<profiles>
<profile>
<id>clojure-dev</id>
<activation> <activeByDefault>false</activeByDefault> </activation>
<repositories>
<repository>
<id>clojars</id>
<url>http://clojars.org/repo/</url>
</repository>
</repositories>
</profile>
...
</profiles>
...
</settings>
```
### Building
```bash
git clone git@github.com:clojure/test.benchmark.git
cd test.benchmark
mvn test
```
### Misc
```bash
# starts a swank server
mvn clojure:swank
```
### Running a benchmark (e.g. alioth.thread-ring)
```bash
script/run alioth.thread-ring 1000
```
### Contributing
There are a number of completed benchmarks, but there is a lot more left to do.
Andy Fingerhut has a suit of benchmarks tailored for Clojure 1.2 and need updated or redone for Clojure 1.3 (https://github.com/jafingerhut/clojure-benchmarks).

A good general approach is to examine the fastest alioth implementations, usually Java or C, and write a Clojure port.
Idiomatic Clojure typically shows poorly in the benchmarks. Liberal use of primitive arrays, type hinting, and iteration apply.

Long term goal is a performance regression test suit ...

Alioth Benchmark site is here: http://shootout.alioth.debian.org/

Work on the benchmarks is tracked here: http://dev.clojure.org/jira/browse/TBENCH

0 comments on commit d2966c6

Please sign in to comment.