Tpetra parallel linear algebra
Version of the Day
|
Implementation detail of Tpetra::Details::getGraphDiagOffsets, which in turn is an implementation detail of Tpetra::CrsGraph. More...
#include <Tpetra_Details_getGraphDiagOffsets_decl.hpp>
Public Member Functions | |
GetGraphDiagOffsets (const diag_offsets_type &diagOffsets, const local_map_type &lclRowMap, const local_map_type &lclColMap, const row_offsets_type &ptr, const lcl_col_inds_type &ind, const bool isSorted) | |
Constructor; also runs the functor. More... | |
KOKKOS_FUNCTION void | operator() (const LO &lclRowInd) const |
Kokkos::parallel_for loop body. More... | |
Implementation detail of Tpetra::Details::getGraphDiagOffsets, which in turn is an implementation detail of Tpetra::CrsGraph.
FIXME (mfh 12 Mar 2016) There's currently no way to make a MemoryUnmanaged Kokkos::StaticCrsGraph. Thus, we have to do this separately for its column indices. We want the column indices to be unmanaged because we need to take subviews in this kernel. Taking a subview of a managed View updates the reference count, which is a thread scalability bottleneck.
mfh 12 Mar 2016: Tpetra::CrsGraph::getLocalDiagOffsets returns offsets as size_t. However, see Github Issue #213.
Definition at line 79 of file Tpetra_Details_getGraphDiagOffsets_decl.hpp.
Tpetra::Details::Impl::GetGraphDiagOffsets< LO, GO, Node, DiagOffsetType >::GetGraphDiagOffsets | ( | const diag_offsets_type & | diagOffsets, |
const local_map_type & | lclRowMap, | ||
const local_map_type & | lclColMap, | ||
const row_offsets_type & | ptr, | ||
const lcl_col_inds_type & | ind, | ||
const bool | isSorted | ||
) |
Constructor; also runs the functor.
Implementation detail of Tpetra::Details::getGraphDiagOffsets, which in turn is an implementation detail of Tpetra::CrsGraph.
FIXME (mfh 12 Mar 2016) There's currently no way to make a MemoryUnmanaged Kokkos::StaticCrsGraph. Thus, we have to do this separately for its column indices. We want the column indices to be unmanaged because we need to take subviews in this kernel. Taking a subview of a managed View updates the reference count, which is a thread scalability bottleneck.
mfh 12 Mar 2016: Tpetra::CrsGraph::getLocalDiagOffsets returns offsets as size_t. However, see Github Issue #213.
Definition at line 78 of file Tpetra_Details_getGraphDiagOffsets_def.hpp.
KOKKOS_FUNCTION void Tpetra::Details::Impl::GetGraphDiagOffsets< LO, GO, Node, DiagOffsetType >::operator() | ( | const LO & | lclRowInd | ) | const |
Kokkos::parallel_for loop body.
Definition at line 105 of file Tpetra_Details_getGraphDiagOffsets_def.hpp.