Project details for jblas

Screenshot jblas 1.0

by mikio - December 22, 2009, 10:47:12 CET [ Project Homepage BibTeX Download ]

view ( today), download ( today ), 0 subscriptions

OverallWhole StarWhole StarWhole Star1/2 StarEmpty Star
FeaturesWhole StarWhole StarWhole Star1/2 StarEmpty Star
UsabilityWhole StarWhole StarWhole Star1/2 StarEmpty Star
DocumentationWhole StarWhole StarWhole Star1/2 StarEmpty Star
(based on 2 votes)

jblas is a fast linear algebra library for Java. jblas is based on BLAS and LAPACK, the de-facto industry standard for matrix computations, and uses state-of-the-art implementations like ATLAS for all its computational routines, making jBLAS very fast.

jblas can is essentially a light-wight wrapper around the BLAS and LAPACK routines. These packages have originated in the Fortran community which explains their archaic API. On the other hand modern implementations are hard to beat performance wise. jblas aims to make this functionality available to Java programmers such that they do not have to worry about writing JNI interfaces and calling conventions of Fortran code.

jblas is the only actively developed matrix library which is based on native implementations (The other such project is netlib-java which is apparently not maintained anymore). Therefore, jblas is much faster than other projects, in particular for large complex tasks like matrix-matrix multiplication, solving linear equations, or eigenproblems.

There also exists a wrapper for jblas from jruby. See the project's page

Changes to previous version:

Release 1.0 - December 22, 2009

Changes from 0.2:

  • Default jar now contains JNI libraries including ATLAS for Windows, Linux, and Mac OS X, 32bit and 64bit (64bit version for Windows missing right now)

  • Build for Mac OS X

  • configure script has been overhauled.

  • Matrix classes are now serializable.

  • added LAPACK functions [sdcz]geev, [sd]getrf, [sd]potrf

  • Added interfaces ConvertsToDoubleMatrix and ConverstToFloatMatrix

  • Added class Decompose which provides LUDecomposition (based on getrf), and Cholesky decomposition (based on potrf)

  • Matrix classes:

  • Added read-only AbstractList views for elements, rows, and columns for better interfacing with Java's collection API.

  • Added matrix exponentials (MatrixFunctions.expm) based on Pade approximation provided by Jan Saptra Müller. These should be pretty fast!

  • Added prod() which returns the product of all elements.

  • Added project() which projects one vector on another.

  • Added diviRowVector().

  • Added loadCSVFile().

  • Added MatrixFunctions.min() and .max() for integers.

  • Added Permutations class for generating random permutations and subsets based on the algorithms from Knuth's "The Art of Computer Programming", Vol. 2.

BibTeX Entry: Download
Supported Operating Systems: Cygwin, Linux, Windows, Mac Os X
Data Formats: Ascii
Tags: Linear Algebra, Matrix, Icml2010
Archive: download here


No one has posted any comments yet. Perhaps you'd like to be the first?

Leave a comment

You must be logged in to post comments.