Code Monkey home page Code Monkey logo

jvm-compressor-benchmark's Introduction

Overview

This project is focus on building a comprehensive benchmark for comparing time and space efficiency of open source compression codecs on JVM platform. Codecs to include need to be accesible from Java (and thereby from any JVM language) via either pure Java interface or JNI; and need to support either basic block mode (byte array in, byte array out), or streaming code (InputStream in, OutputStream out).

Benchmark suite is based on Japex framework.

In addition to benchmark itself, we also provide access to set of benchmark results, which can be used for overview of general performance patterns for standard test suites. It is recommended, however, to run tests yourself since they vary depending on platform. In addition, to get more accurate understanding of how results apply to your use case(s), the best thing to do is to collect specific set of test data that reflects your usage, and run tests over this.

For more complete description, checkout out project Wiki

Running tests

To run tests, you first need to compile the Java sources using Ant:

ant compile

After you have built classes, you can invoke tests directly by running test suite. There are couple of sample scripts to show options and configurations available, and you can run one of them like:

./run-calgary-compress.sh

but commonly you probably want to create your own scripts by modifying one of existing ones, to choose different sets of input data and/or compression codecs to use. Configuration uses standard Japex xml file based configuration, with a set of system properties.

The main thing, either way, is to invoke Japex main class com.sun.japex.Japex with a single xml configuration file as its argument. System properties named with japex. prefix can be used to override default settings as well as definitions from the xml file as needed.

Results

Are available on project Wiki.

Codecs included

Codecs are listed on project Wiki.

Test data used

We have tried to make use of existing de-facto standard test suites, including:

Getting involved

To access source, just clone project

To participate in discussions of benchmark suite, results, and other things related to compression performance, please join our discussion group

License

Benchmark code is licensed under Apache 2.0.

jvm-compressor-benchmark's People

Contributors

cowtowncoder avatar jpountz avatar dain avatar svanoort avatar fommil avatar xerial avatar 0x333333 avatar

Watchers

James Cloos avatar zhongfuhai avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.