Distributed Ranges
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
dr::sp::distributed_dense_matrix< T > 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<>
 
using iterator = distributed_dense_matrix_iterator< T, dr::sp::device_vector< T, dr::sp::device_allocator< T > > >
 

Public Member Functions

 distributed_dense_matrix (key_type shape)
 
 distributed_dense_matrix (key_type shape, const matrix_partition &partition)
 
size_type size () const noexcept
 
key_type shape () const noexcept
 
scalar_reference operator[] (key_type index)
 
const_scalar_reference operator[] (key_type index) const
 
iterator begin ()
 
iterator end ()
 
key_type tile_shape () const noexcept
 
key_type grid_shape () const noexcept
 
auto tile (key_type tile_index)
 
std::vector< dense_matrix_view< T, rng::iterator_t< dr::sp::device_vector< T, dr::sp::device_allocator< T > > > > > tiles ()
 
template<typename Allocator = std::allocator<T>>
auto get_tile (key_type tile_index, const Allocator &alloc=Allocator{})
 
template<typename Allocator = std::allocator<T>>
auto get_tile_async (key_type tile_index, const Allocator &alloc=Allocator{})
 
auto segments ()
 

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