MFEM
v4.4.0
Finite element discretization library
|
#include <ginkgo.hpp>
Public Types | |
enum | ExecType { REFERENCE = 0, OMP = 1, CUDA = 2, HIP = 3 } |
Public Member Functions | |
GinkgoExecutor (ExecType exec_type) | |
GinkgoExecutor (Device &mfem_device) | |
virtual | ~GinkgoExecutor ()=default |
std::shared_ptr< gko::Executor > | GetExecutor () const |
This class wraps a Ginkgo Executor for use in MFEM. Note that objects in the Ginkgo namespace intended to work together, e.g. a Ginkgo solver and preconditioner, should use the same GinkgoExecutor object. In general, most users will want to create one GinkgoExecutor object for use with all Ginkgo-related objects. The wrapper can be created to match MFEM's device configuration.
Definition at line 437 of file ginkgo.hpp.
Enumerator | |
---|---|
REFERENCE |
Reference CPU Executor. |
OMP |
OpenMP CPU Executor. |
CUDA |
CUDA GPU Executor. |
HIP |
HIP GPU Executor. |
Definition at line 441 of file ginkgo.hpp.
mfem::Ginkgo::GinkgoExecutor::GinkgoExecutor | ( | ExecType | exec_type | ) |
Constructor. Takes an GinkgoExecType
argument and creates an Executor.
Definition at line 31 of file ginkgo.cpp.
mfem::Ginkgo::GinkgoExecutor::GinkgoExecutor | ( | Device & | mfem_device | ) |
Constructor. Takes an MFEM Device
object and creates an Executor that "matches" (e.g., if MFEM is using the CPU, Ginkgo will choose the OmpExecutor; if MFEM is using CUDA, Ginkgo will choose the CudaExecutor).
Definition at line 82 of file ginkgo.cpp.
|
virtualdefault |
Destructor.
|
inline |
Definition at line 472 of file ginkgo.hpp.