Parallel Colt Explained
Author: | Piotr Wendykier |
Operating System: | Cross-platform |
Latest Release Version: | 0.9.4 |
Genre: | Library |
License: | Various |
Parallel Colt is a set of multithreaded version of Colt. It is a collection of open-source libraries for High Performance Scientific and Technical Computing written in Java. It contains all the original capabilities of Colt and adds several new ones, with a focus on multi-threaded algorithms.
Capabilities
Parallel Colt has all the capabilities of the original Colt library, with the following additions.
- Multithreading
- Specialized Matrix data structures
- JPlasma
- Java port of PLASMA (Parallel Linear Algebra for Scalable Multi-core Architectures).
- CSparseJ
- CSparseJ is a Java port of CSparse (a Concise Sparse matrix package).
- Netlib-java
- Netlib is a collection of mission-critical software components for linear algebra systems (i.e. working with vectors or matrices).
- Solvers and preconditioners
- Nonlinear Optimization
- Java translations of the 1-dimensional minimization routine from the MINPACK
- Matrix reader/writer
- All classes that use floating-point arithmetic are implemented in single and double precision.
- Parallel quicksort algorithm
Usage Example
Example of Singular Value Decomposition (SVD):DenseDoubleAlgebra alg = new DenseDoubleAlgebra;DenseDoubleSingularValueDecomposition s = alg.svd(matA);
DoubleMatrix2D U = s.getU;DoubleMatrix2D S = s.getS;DoubleMatrix2D V = s.getV;
Example of matrix multiplication:DenseDoubleAlgebra alg = new DenseDoubleAlgebra;DoubleMatrix2D result = alg.mult(matA,matB);