#include <Zoltan2_Adapter.hpp>
template<typename User>
class Zoltan2::BaseAdapter< User >
Definition at line 101 of file Zoltan2_Adapter.hpp.
◆ lno_t
◆ gno_t
◆ scalar_t
◆ node_t
◆ part_t
◆ offset_t
◆ ~BaseAdapter()
◆ adapterType()
Returns the type of adapter.
Implemented in Zoltan2::IdentifierAdapter< User >, Zoltan2::GraphAdapter< User, UserCoord >, Zoltan2::GraphAdapter< User, User >, Zoltan2::MatrixAdapter< User, UserCoord >, Zoltan2::MatrixAdapter< User, User >, Zoltan2::MeshAdapter< User >, and Zoltan2::VectorAdapter< User >.
◆ getIDsView()
Provide a pointer to this process' identifiers.
- Parameters
-
ids | will on return point to the list of the global Ids for this process. |
Reimplemented in Zoltan2::BasicIdentifierAdapter< User >, Zoltan2::BasicKokkosIdentifierAdapter< User >, Zoltan2::GraphAdapter< User, UserCoord >, Zoltan2::GraphAdapter< User, User >, Zoltan2::MatrixAdapter< User, UserCoord >, Zoltan2::MatrixAdapter< User, User >, and Zoltan2::MeshAdapter< User >.
Definition at line 123 of file Zoltan2_Adapter.hpp.
◆ getIDsKokkosView()
template<typename User >
virtual void Zoltan2::BaseAdapter< User >::getIDsKokkosView |
( |
Kokkos::View< const gno_t *, typename node_t::device_type > & |
ids | ) |
const |
|
inlinevirtual |
◆ getPartsView()
Provide pointer to a weight array with stride.
- Parameters
-
wgt | on return a pointer to the weights for this idx |
stride | on return, the value such that the \t nth weight should be found at wgt[n*stride] . |
idx | the weight index, zero or greater This function or getWeightsKokkosView must be implemented in derived adapter if getNumWeightsPerID > 0. This function should not be called if getNumWeightsPerID is zero. / virtual void getWeightsView(const scalar_t *&wgt, int &stride, int idx = 0) const { If adapter does not define getWeightsView, getWeightsKokkosView is called. If adapter does not define getWeightsKokkosView, getWeightsView is called. Allows forward and backwards compatibility. Kokkos::View<scalar_t **, typename node_t::device_type> kokkos_wgts_2d; getWeightsKokkosView(kokkos_wgts_2d); Kokkos::View<scalar_t *, typename node_t::device_type> kokkos_wgts; wgt = Kokkos::subview(kokkos_wgts_2d, Kokkos::ALL, idx).data(); stride = 1; } |
/*! Provide kokkos view of weights.
- Parameters
-
wgt | on return a Kokkos view of the weights for this idx This function or getWeightsView must be implemented in derived adapter if getNumWeightsPerID > 0. This function should not be called if getNumWeightsPerID is zero. / virtual void getWeightsKokkosView(Kokkos::View<scalar_t **,
typename node_t::device_type> & wgt) const { If adapter does not define getWeightsKokkosView, getWeightsView is called. If adapter does not define getWeightsView, getWeightsKokkosView is called. Allows forward and backwards compatibility. wgt = Kokkos::View<scalar_t **, typename node_t::device_type>( "wgts", getLocalNumIDs(), getNumWeightsPerID()); typename Kokkos::View<scalar_t **, typename node_t::device_type>::HostMirror host_wgt = Kokkos::create_mirror_view(wgt); for(int j = 0; j < this->getNumWeightsPerID(); ++j) { const scalar_t * ptr_wgts; int stride; getWeightsView(ptr_wgts, stride, j); size_t i = 0; for(size_t n = 0; n < this->getLocalNumIDs() * stride; n += stride) { host_wgt(i++,j) = ptr_wgts[n]; } } Kokkos::deep_copy(wgt, host_wgt); } |
/*! Provide pointer to an array containing the input part assignment for each ID. The input part information may be used for re-partitioning to reduce data movement, or for mapping parts to processes. Adapters may return NULL for this pointer (the default behavior); if NULL is returned, algorithms will assume the rank
- Parameters
-
inputPart | on return a pointer to input part numbers |
Definition at line 212 of file Zoltan2_Adapter.hpp.
◆ applyPartitioningSolution()
template<typename User >
template<typename Adapter >
Apply a PartitioningSolution to an input.
This is not a required part of the InputAdapter interface. However if the Caller calls a Problem method to redistribute data, it needs this method to perform the redistribution.
- Parameters
-
in | An input object with a structure and assignment of of global Ids to processes that matches that of the input data that instantiated this Adapter. |
out | On return this should point to a newly created object with the specified partitioning. |
solution | The Solution object created by a Problem should be supplied as the third argument. It must have been templated on user data that has the same global ID distribution as this user data. |
- Returns
- Returns the number of local Ids in the new partition.
Definition at line 236 of file Zoltan2_Adapter.hpp.
◆ generateWeightFileOnly()
template<typename User >
void Zoltan2::BaseAdapter< User >::generateWeightFileOnly |
( |
const char * |
fileprefix, |
|
|
const Teuchos::Comm< int > & |
comm |
|
) |
| const |
|
protected |
The documentation for this class was generated from the following file: