Implementation of the compressed_matrix class. More...
#include <vector>
#include <list>
#include <map>
#include "viennacl/forwards.h"
#include "viennacl/vector.hpp"
#include "viennacl/linalg/sparse_matrix_operations.hpp"
#include "viennacl/tools/tools.hpp"
#include "viennacl/tools/entry_proxy.hpp"
Go to the source code of this file.
Classes | |
class | viennacl::compressed_matrix< NumericT, AlignmentV > |
A sparse square matrix in compressed sparse rows format. More... | |
Namespaces | |
viennacl | |
Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them. | |
viennacl::detail | |
Holds implementation details for functionality in the main viennacl-namespace. Not intended for direct use by library users. | |
Functions | |
template<typename CPUMatrixT , typename NumericT , unsigned int AlignmentV> | |
void | viennacl::detail::copy_impl (const CPUMatrixT &cpu_matrix, compressed_matrix< NumericT, AlignmentV > &gpu_matrix, vcl_size_t nonzeros) |
Implementation of the copy of a host-based sparse matrix to the device. More... | |
template<typename CPUMatrixT , typename NumericT , unsigned int AlignmentV> | |
void | viennacl::copy (const CPUMatrixT &cpu_matrix, compressed_matrix< NumericT, AlignmentV > &gpu_matrix) |
Copies a sparse matrix from the host to the OpenCL device (either GPU or multi-core CPU) More... | |
template<typename SizeT , typename NumericT , unsigned int AlignmentV> | |
void | viennacl::copy (const std::vector< std::map< SizeT, NumericT > > &cpu_matrix, compressed_matrix< NumericT, AlignmentV > &gpu_matrix) |
Copies a sparse square matrix in the std::vector< std::map < > > format to an OpenCL device. Use viennacl::tools::sparse_matrix_adapter for non-square matrices. More... | |
template<typename CPUMatrixT , typename NumericT , unsigned int AlignmentV> | |
void | viennacl::copy (const compressed_matrix< NumericT, AlignmentV > &gpu_matrix, CPUMatrixT &cpu_matrix) |
Copies a sparse matrix from the OpenCL device (either GPU or multi-core CPU) to the host. More... | |
template<typename NumericT , unsigned int AlignmentV> | |
void | viennacl::copy (const compressed_matrix< NumericT, AlignmentV > &gpu_matrix, std::vector< std::map< unsigned int, NumericT > > &cpu_matrix) |
Copies a sparse matrix from an OpenCL device to the host. The host type is the std::vector< std::map < > > format . More... | |
template<typename NumericT , unsigned int AlignmentV> | |
std::ostream & | viennacl::operator<< (std::ostream &os, compressed_matrix< NumericT, AlignmentV > const &A) |
Output stream support for compressed_matrix. Output format is same as MATLAB, Octave, or SciPy. More... | |
Implementation of the compressed_matrix class.
Definition in file compressed_matrix.hpp.