ViennaCL provides high level C++ interfaces for linear algebra routines on CPUs and GPUs using CUDA, OpenCL, and OpenMP. The focus is on generic implementations of iterative solvers often used for large linear systems and simple integration into existing projects.
Cloudbased voice solutions are common in enterprise networks and frustrating for operations teams to manage. Simplify VoIP monitoring by having a proactive analysis of on-prem, hybrid and UCaaS voice services. Try the ThousandEyes VoIP monitoring solution today, free.
Post Views:
633
Website |
http://viennacl.sourceforge.net |
Tags |
AlgorithmsLibrariesMathematics |
License |
MIT License
|
Platform |
BSD
Linux
Mac
Windows
|
Features |
- Three computing backends: CUDA, OpenCL, OpenMP
- Iterative Solvers: Conjugate Gradient, Stabilized BiConjugate Gradient, Generalized Minimum Residual
- Preconditioners: ICHOL, ILUT, ILU0, Block-ILU, AMG, (F)SPAI, Jacobi
- BLAS Level 1, Level 2 and Level 3 routines on GPUs and multi-core CPUs
- Fast sparse matrix-vector and sparse matrix-matrix products
- Convenient C++ wrappers for common linear algebra operations
- Fast Fourier transform
- C++ Interface is mostly uBLAS compatible
- Interfaces for uBLAS, Armadillo, Eigen and MTL 4
- Iterative Solvers can directly be used with uBLAS, Armadillo, Eigen and MTL4 objects
- Structured matrices: Circulant, Hankel, Toeplitz, Vandermonde
- OpenCL Kernel optimization environment for optimal performance on the target device
- Header-only library
- MATLAB interface for the iterative solvers (separate download)
- Python interface (PyViennaCL)
|