Distributed Ranges
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
dr::sp::sparse_matrix< T, I > Class Template Reference

Public Types

using size_type = std::size_t
 
using difference_type = std::ptrdiff_t
 
using value_type = dr::matrix_entry< T >
 
using scalar_reference = rng::range_reference_t< dr::sp::device_vector< T, dr::sp::device_allocator< T > > >
 
using const_scalar_reference = rng::range_reference_t< const dr::sp::device_vector< T, dr::sp::device_allocator< T > > >
 
using reference = dr::matrix_ref< T, scalar_reference >
 
using const_reference = dr::matrix_ref< const T, const_scalar_reference >
 
using key_type = dr::index< I >
 
using segment_type = dr::views::csr_matrix_view< T, I, rng::iterator_t< dr::sp::device_vector< T, dr::sp::device_allocator< T > > >, rng::iterator_t< dr::sp::device_vector< I, dr::sp::device_allocator< I > > > >
 
using iterator = distributed_sparse_matrix_iterator< std::span< segment_type > && >
 

Public Member Functions

 sparse_matrix (key_type shape)
 
 sparse_matrix (key_type shape, double density)
 
 sparse_matrix (key_type shape, double density, const matrix_partition &partition)
 
 sparse_matrix (key_type shape, const matrix_partition &partition)
 
size_type size () const noexcept
 
key_type shape () const noexcept
 
iterator begin ()
 
iterator end ()
 
segment_type tile (key_type tile_index)
 
template<typename... Args>
auto copy_tile_async (key_type tile_index, dr::views::csr_matrix_view< T, I, Args... > tile_view)
 
template<typename... Args>
void copy_tile (key_type tile_index, dr::views::csr_matrix_view< T, I, Args... > tile_view)
 
key_type tile_shape () const noexcept
 
key_type grid_shape () const noexcept
 
std::span< segment_typetiles ()
 
std::span< segment_typesegments ()
 

The documentation for this class was generated from the following file: