Project details for jblas

Screenshot jblas 0.1

by mikio - March 31, 2009, 12:11:34 CET [ Project Homepage BibTeX Download ]

view (12 today), download ( 4 today ), 1 subscription

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.

Changes to previous version:

added logo to mloss page

BibTeX Entry: Download
URL: Project Homepage
Supported Operating Systems: Cygwin, Linux, Windows
Data Formats: Ascii
Tags: Linear Algebra, Matrix
Archive: download here

Other available revisons

Version Changelog Date

Changes from 1.0:

  • Added singular value decomposition
  • Fixed bug with returning complex values
  • Many other minor improvements
September 1, 2010, 13:53:51

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.

December 22, 2009, 10:47:12

Release v2.0 - May 8, 2009

Release v2.0 mostly adds features to the build process and renames some packages and classes to make the structure simpler. No new significant functionality has been added.

Changes from version v1.0:

  • fixed a bug in DoubleMatrix.copy()
  • Renamed packages to make structure simpler -> org.jblas -> org.jblas.exceptions -> org.jblas.ranges org.jblas.core -> moved content to org.jblas and org.jblas.util

  • Renamed classes

Blas -> NativeBlas

  • Build process can now generate different kinds of jar files, and also generate shared libraries which are statically linked against BLAS, LAPACK or ATLAS. You can also generate a multiplatform jar file which contains shared libraries for different platforms.

  • Generated wrapper code has been optimized a bit:

  • in the lapack wrapper with automatic workspace allocation, only small dummy arrays are passed in the workspace query, meaning that the real arrays are only passed once, not twice.

  • The wrapper now also parses information whether output variables are input or output and releases the arrays with JNI_ABORT in case they are not output variables. This should also reduce the amount of copying.

May 8, 2009, 12:34:39

added logo to mloss page

March 30, 2009, 14:37:03


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.