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.

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)

Project Activity

See All Activity >

License

MIT License

Follow ViennaCL

ViennaCL Web Site

You Might Also Like
Quality Management Software Icon
Quality Management Software

Ideal for small to medium-sized businesses. Pay for all the modules or only the ones you need.

isoTracker Quality Management is a popular cloud-based quality management software (QMS) that is used by small to medium sized businesses on a worldwide basis. It helps to manage ISO 9001, ISO 13485, ISO 22000, ISO 17025, ISO 14001 systems...plus many similar other systems. It also conforms to the requirements of 21 CFR Part 11.
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
1
0
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5

User Reviews

  • Great project and team.
Read more reviews >

Additional Project Details

Operating Systems

Linux, BSD, Mac, Windows

Intended Audience

Science/Research, Engineering

Programming Language

C++

Related Categories

C++ Algorithms, C++ Mathematics Software, C++ Libraries

Registered

2010-05-12