Tell me more ×
Computational Science Stack Exchange is a question and answer site for scientists using computers to solve scientific problems. It's 100% free, no registration required.

This complements an earlier question on usable, fast C++ matrix libraries.

I've looked at the Java Matrix Benchmark, and it seems like the performance of java matrix libraries is all over the place. The Apache Commons Math library seems like a simple solution, but I'm curious for others recommendations.

Specifically, I'm curious which libraries are much easier/more performant than the others, and/or if Java library writers are better off just using JNI to call to an existing, better developed native matrix libraries. (Though that seems like it could make the code less portable or more of a hassle to setup.)

share|improve this question

1 Answer

In general, you are almost always better off using the JNI if you are concerned about performance. A JNI interface to a fast BLAS is implemented by the Intel Math Kernel Library, which would be option if you are considering a cross-platform commercial offering. If you are looking for a fast open source offering, you might want to consider jblas, which tries to be multi-platform (with a few holes), and wraps ATLAS, a reasonably fast open source implementations of the BLAS.

Your mileage will vary based on the specific matrix operations you are performing and how big the matrices are.

Related Questions:

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.