|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovTaskgraphCopyStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
| All the memory management is discussed in the documentation of GPUCellData.
|
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovBatchedHeapStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovPatchwiseHeapStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovTaskgraphUSMStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovBatchedUSMStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
| This version allocates the temporary data on the GPU via a device malloc, handing in the standard memory, and finally frees the memory again.
|
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovPatchwiseUSMStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
| 1:1 translation of the numerical scheme.
|
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovTaskgraphManagedStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovBatchedManagedStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovPatchwiseManagedStateless (int targetDevice, CellData< double, double > &patchData) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovTaskgraphCopyStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
| Variant of kernel invocation which times core compute time.
|
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovBatchedHeapStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovPatchwiseHeapStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovTaskgraphUSMStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovBatchedUSMStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovPatchwiseUSMStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovTaskgraphManagedStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovBatchedManagedStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::timeStepWithRusanovPatchwiseManagedStateless (int targetDevice, CellData< double, double > &patchData, ::tarch::timing::Measurement &measurement) InlineMethod |
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::internal::timeStepWithRusanovTaskgraphStateless (int targetDevice, auto &patchData) InlineMethod |
| Read the docu page "ExaHyPE's finite volumes Rusanov kernel implementation" (from rusanov.h) before you continue.
|
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::internal::timeStepWithRusanovBatchedStateless (int targetDevice, auto &patchData) InlineMethod |
| Implementation of the Rusanov kernel which builds up a task graph which consists of the logical steps of a Rusanov solver.
|
|
template<class SolverType , std::size_t NumberOfVolumesPerAxisInPatch, std::size_t HaloSize, std::size_t NumberOfUnknowns, std::size_t NumberOfAuxiliaryVariables, bool EvaluateFlux, bool EvaluateNonconservativeProduct, bool EvaluateSource, bool EvaluateMaximumEigenvalueAfterTimeStep, class TempDataEnumeratorType > |
KeywordToAvoidDuplicateSymbolsForInlinedFunctions void | exahype2::fv::rusanov::sycl::internal::timeStepWithRusanovPatchwiseStateless (int targetDevice, auto &patchData) InlineMethod |
| 1:1 translation of the numerical scheme.
|
|