Opm::gpuistl::HypreHostDataArrays Struct Reference

Host arrays for HYPRE matrix and vector data transfers. More...

#include <HypreDataStructures.hpp>

Public Attributes

std::vector< HYPRE_Int > row_indexes
 Pre-computed row start indexes for HYPRE_IJMatrixSetValues2. More...
 
std::vector< HYPRE_BigInt > indices
 Global DOF indices for owned degrees of freedom. More...
 
std::vector< HYPRE_Real > continuous_vector_values
 Temporary buffer for vector values in non-owner-first ordering. More...
 

Detailed Description

Host arrays for HYPRE matrix and vector data transfers.

Pre-computed arrays to efficiently transfer data to/from HYPRE without repeated calculations during solve operations.

Member Data Documentation

◆ continuous_vector_values

std::vector<HYPRE_Real> Opm::gpuistl::HypreHostDataArrays::continuous_vector_values

Temporary buffer for vector values in non-owner-first ordering.

Only allocated when owner_first=false, to size N_owned. Used to collect owned DOF values from scattered positions in the input vector into a contiguous array. Size: N_owned when allocated, empty otherwise.

Referenced by Hypre::HyprePreconditioner< M, X, Y, Comm >::HyprePreconditioner(), Opm::gpuistl::HypreInterface::transferCpuVectorToHypre(), and Opm::gpuistl::HypreInterface::transferHypreToCpuVector().

◆ indices

std::vector<HYPRE_BigInt> Opm::gpuistl::HypreHostDataArrays::indices

Global DOF indices for owned degrees of freedom.

Sequential indices starting from dof_offset, used for vector operations Size: N_owned, contains [dof_offset, dof_offset+1, ..., dof_offset+N_owned-1]

Referenced by Hypre::HyprePreconditioner< M, X, Y, Comm >::HyprePreconditioner(), Opm::gpuistl::HypreInterface::transferCpuVectorToHypre(), and Opm::gpuistl::HypreInterface::transferHypreToCpuVector().

◆ row_indexes

std::vector<HYPRE_Int> Opm::gpuistl::HypreHostDataArrays::row_indexes

Pre-computed row start indexes for HYPRE_IJMatrixSetValues2.

For owner_first=true: prefix sum of ncols (contiguous data) For owner_first=false: maps owned rows to positions in full matrix Used to index into the full matrix data (including ghost rows)

Referenced by Hypre::HyprePreconditioner< M, X, Y, Comm >::HyprePreconditioner(), and Opm::gpuistl::HypreInterface::updateMatrixFromCpuMatrix().


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