Container that holds all data associated with an evaluation type. More...
#include <Phalanx_EvaluationContainer.hpp>
Public Member Functions | |
void | requireField (const PHX::FieldTag &f) |
Requests that the container must compute this field. | |
void | aliasField (const PHX::FieldTag &aliasedField, const PHX::FieldTag &targetField) |
void | registerEvaluator (const Teuchos::RCP< PHX::Evaluator< Traits > > &p) |
PHX::any | getFieldData (const PHX::FieldTag &f) |
void | setUnmanagedField (const PHX::FieldTag &f, const PHX::any &a) |
Set the memory for an unmanaged field. | |
void | bindField (const PHX::FieldTag &f, const PHX::any &a) |
Bind the memory pointer for a field in all evaluators. | |
void | postRegistrationSetup (typename Traits::SetupData d, PHX::FieldManager< Traits > &fm, const bool &buildDeviceDAG) |
void | evaluateFields (typename Traits::EvalData d) |
void | evaluateFieldsDeviceDag (const int &work_size, const int &team_size, const int &vector_size, typename Traits::EvalData d) |
void | preEvaluate (typename Traits::PreEvalData d) |
void | postEvaluate (typename Traits::PostEvalData d) |
void | setKokkosExtendedDataTypeDimensions (const std::vector< PHX::index_size_type > &dims) |
const std::vector < PHX::index_size_type > & | getKokkosExtendedDataTypeDimensions () const |
bool | setupCalled () const |
Return true if the postRegistrationSetupMethod has been called. | |
const std::string | evaluationType () const |
void | print (std::ostream &os) const |
void | analyzeGraph (double &speedup, double ¶llelizability) const |
void | buildDag () |
const std::vector < Teuchos::RCP< PHX::FieldTag > > & | getFieldTags () |
void | printEvaluatorStartStopMessage (const Teuchos::RCP< std::ostream > &ostr) |
Print to user specified ostream when each evaluator starts and stops. Useful for debugging. Enabled only in debug builds. More... | |
Public Member Functions inherited from PHX::EvaluationContainerBase< Traits > | |
virtual void | writeGraphvizFile (const std::string filename, bool writeEvaluatedFields, bool writeDependentFields, bool debugRegisteredEvaluators) const |
Protected Attributes | |
bool | post_registration_setup_called_ |
std::unordered_map < std::string, PHX::any > | fields_ |
std::unordered_map < std::string, PHX::any > | unmanaged_fields_ |
std::unordered_map < std::string, std::string > | aliased_fields_ |
std::vector< PHX::index_size_type > | kokkos_extended_data_type_dimensions_ |
bool | build_device_dag_ |
Protected Attributes inherited from PHX::EvaluationContainerBase< Traits > | |
PHX::DagManager< Traits > | dag_manager_ |
Container that holds all data associated with an evaluation type.
void PHX::EvaluationContainer< EvalT, Traits >::buildDag | ( | ) |
Build the DAG. This is automatically called by the postRegistrationSetup() method. This function is a power user feature that allows for cases where the user would like to build the dag and query it to use information from the DAG prior to allocating and binding the memory to fields.
const std::vector< Teuchos::RCP< PHX::FieldTag > > & PHX::EvaluationContainer< EvalT, Traits >::getFieldTags | ( | ) |
Returns the FieldTags for all fields involved in the evaluation. Will return an empty vector unless the user has built the DAG using one of the following calls: postRegistrationSetup(), postRegistrationSetupForType() or buildDagForType().
WARNING: This is a dangerous power user feature. It returns non-const field tags so that the fields can be sized after the DAG has been created.
void PHX::EvaluationContainer< EvalT, Traits >::printEvaluatorStartStopMessage | ( | const Teuchos::RCP< std::ostream > & | ostr | ) |
Print to user specified ostream when each evaluator starts and stops. Useful for debugging. Enabled only in debug builds.
[in] | ostr | RCP to output stream. If set to null, this disables printing. |