Panzer Version of the Day
Loading...
Searching...
No Matches
panzer::TpetraNodeIsInstantiated< Node > Struct Template Reference

Whether Tpetra explicitly instantiated its classes over Node. More...

#include <Panzer_NodeType.hpp>

Inherits std::false_type.

Detailed Description

template<typename Node>
struct panzer::TpetraNodeIsInstantiated< Node >

Whether Tpetra explicitly instantiated its classes over Node.

Specialized below for each node type Tpetra was configured to instantiate. Tpetra instantiates exactly one execution space by default, and HIP and SYCL are never the default, so a GPU build that does not set the matching Tpetra_INST_<BACKEND> gets a host node while Phalanx picks the GPU.

Comparing node types rather than execution spaces is deliberate: Tpetra's node typedefs already carry the memory space, including its Tpetra_ALLOCATE_IN_SHARED_SPACE choice, so one comparison covers the execution space and both shared space switches at once. It also compares types rather than spellings, so it cannot be fooled by one type named two ways.

Definition at line 59 of file Panzer_NodeType.hpp.


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