Parallel Colt

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Parallel Colt
Original authorPiotr Wendykier
Stable release
0.9.4 / March 21, 2010 (2010-03-21)
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemCross-platform
    TypeLibrary
    LicenseVarious
    Websitesites.google.com/site/piotrwendykier/software/parallelcolt

    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

    [edit | edit source]

    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 | edit source]

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

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).