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

Other Useful Business Software

Upgrade Your Phone Service with Jive Voice Upgrade Your Phone Service with Jive Voice Icon
Upgrade Your Phone Service with Jive Voice Icon

Get reliable and Enterprise-Grade Communication

  • Get your first month free
  • No fees for upgrades, features or add-ons
  • Very simple to use for admins and users

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

Intended Audience

Science/Research, Engineering

Programming Language

C++

Registered

2010-05-12