Parallel Colt

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Parallel Colt
Original author(s) Piotr Wendykier
Stable release
0.9.4 / March 21, 2010 (2010-03-21)
Operating system Cross-platform
Type 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.


Parallel Colt has all the capabilities of the original Colt library, with the following additions.[1]

  • 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[edit]

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);


  1. ^ Official site "Parallel Colt Project Page" Check |url= value (help). Parallel Colt. Retrieved June 15, 2013.