Giter Club home page Giter Club logo

java-matrix-benchmark's Introduction

Java Matrix Benchmark

Java Matrix Benchmark (JMatBench) is a tool used to evaluate the runtime performance, stability, and memory efficiency of linear algebra libraries at performing dense real operations.

WARNING The latest version is a major modification from the past and isn't fully functional yet

Instructions

JMatBench is designed to be run as a command line application. As much of the process has been automated as possible, however a few libraries aren't on Maven central so you need to download their jars manually and place them in the libraries "libs/" directory. Instructions for where to download the latest jar is typically provided in the "libs/source.txt". After those jars have been downloaded gradle will be able to compile the project.

  1. Install dependencies required by tested libraries
    sudo apt-get install libblas-dev liblapack-dev
  2. Manual download jars for libraries which haven't been posted on Maven central
    • jeigen: See its readme.md
  3. ./gradlew createRuntimeJars; ./gradlew benchmarkJar
  4. java -jar benchmark.jar
  5. Follow printed instructions for the benchmark you wish to run

Settings Up Results E-Mailing

Create a file called "email_login.txt". DO NOT ADD TO GIT.

  • First line is your login.
  • Second line is your password.
  • Third line is the destination e-mail.

This is configured for gmail only right now. You need to turn on "Allow less secure apps" by going to https://myaccount.google.com/security

Adding Your Own Library

  1. Create new directory in external
  2. Copy "src" and "build.gradle" from another project in external into your directory
  3. Modify the source code, build.gradle, and rename classes
  4. Create your own "TestSetInfo.txt" file using CreateTestSetInfo.
  5. Add the library to "external/DefaultTestSet.txt" if you wish it to be included by default
  6. Add your library to settings.gradle so that Gradle will compile it

java-matrix-benchmark's People

Contributors

apete avatar dependabot[bot] avatar lessthanoptimal avatar

Watchers

 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.