Matrices multiplication benchmark: Apache math vs colt vs ejml vs la4j vs nd4j

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/java

Our great sponsors
  • Sonar - Write Clean Java Code. Always.
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • SaaSHub - Software Alternatives and Reviews
  • multik

    Can the benchmark add the recent https://github.com/Kotlin/multik And https://github.com/Kotlin/kotlin-numpy

  • gocypher-cybench-java

    CyBench Benchmark Launcher for running, executing and reporting JMH benchmarks.

    We will look into it. There is just so much we can bench..:) Also, keep in mind anyone can create and run benchmarks and compare. CyBench benchmark harness is open source and extends JMH. More on this here: https://github.com/K2NIO/gocypher-cybench-java/wiki.

  • Sonar

    Write Clean Java Code. Always.. Sonar helps you commit clean code every time. With over 600 unique rules to find Java bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

  • nd4j

    Fast, Scientific and Numerical Computing for the JVM (NDArrays)

    nd4j is v good but is no longer actively maintained. I just posted an issue to see if anyone on that project might "wake up" or transition to new maintainers. https://github.com/deeplearning4j/nd4j/issues/2939

  • Deeplearning4j

    Suite of tools for deploying and training deep learning models using the JVM. Highlights include model import for keras, tensorflow, and onnx/pytorch, a modular and tiny c++ library for running math code and a java based math library on top of the core c++ library. Also includes samediff: a pytorch/tensorflow like library for running deep learning using automatic differentiation.

    Nd4j is actively developed. The latest commit was 6 hours ago. Nd4j is part of deeplearning4j which is now owned by eclipse (but the main contributors are from a company) https://github.com/eclipse/deeplearning4j/tree/master/nd4j

  • cybench-java-benchmarks

    Java code benchmark focused on core java services using JMH.

    Here is the link to the actual benchmark code: https://github.com/K2NIO/gocypher-cybench-java-core/blob/main/gocypher-cybench-matrices/src/main/java/com/baeldung/matrices/benchmark/BigMatrixMultiplicationBenchmarking.java

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts