ViennaCL - The Vienna Computing Library  1.7.1
Free open-source GPU-accelerated linear algebra and solver library.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
compressed_compressed_matrix.hpp File Reference

Implementation of the compressed_compressed_matrix class (CSR format with a relatively small number of nonzero rows) 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_compressed_matrix< NumericT >
 A sparse square matrix in compressed sparse rows format optimized for the case that only a few rows carry nonzero entries. 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 >
void viennacl::detail::copy_impl (const CPUMatrixT &cpu_matrix, compressed_compressed_matrix< NumericT > &gpu_matrix, vcl_size_t nonzero_rows, vcl_size_t nonzeros)
 
template<typename CPUMatrixT , typename NumericT >
void viennacl::copy (const CPUMatrixT &cpu_matrix, compressed_compressed_matrix< NumericT > &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 >
void viennacl::copy (const std::vector< std::map< SizeT, NumericT > > &cpu_matrix, compressed_compressed_matrix< NumericT > &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 >
void viennacl::copy (const compressed_compressed_matrix< NumericT > &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 >
void viennacl::copy (const compressed_compressed_matrix< NumericT > &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...
 

Detailed Description

Implementation of the compressed_compressed_matrix class (CSR format with a relatively small number of nonzero rows)

Definition in file compressed_compressed_matrix.hpp.