openCARP
Doxygen code documentation for the open cardiac electrophysiology simulator openCARP
Classes | Namespaces | Enumerations | Functions
target.h File Reference

Defines valid targets for an ionic model to run on and an allocator for allocating memory on a specific target. More...

#include <stdexcept>
#include <iostream>
#include <string>
#include <cstring>
Include dependency graph for target.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  limpet::TargetAllocator< T >
 Allocator structure for dynamically allocating memory on multiple targets. More...
 

Namespaces

 limpet
 

Enumerations

enum  limpet::Target {
  limpet::AUTO = -2, limpet::UNKNOWN = -1, limpet::CPU, limpet::MLIR_CPU,
  limpet::MLIR_ROCM, limpet::MLIR_CUDA, limpet::N_TARGETS
}
 enum that represents different targets to run ionic models on. More...
 

Functions

Target limpet::get_target_from_string (std::string const str)
 Returns a value from the Target enum from a given string. More...
 
std::string limpet::get_string_from_target (Target const target)
 Get a string representation of a given target. More...
 
std::string limpet::get_target_list_string ()
 Returns a string containing the list of available targets. More...
 
bool limpet::is_gpu (Target const target)
 Checks if this is a GPU target. More...
 
bool limpet::is_concrete (Target const target)
 Checks if target is a real, concrete target. More...
 
template<typename T >
T * limpet::allocate_on_target (Target target, std::size_t n, bool always_managed=false, bool do_zero=true)
 Utility function for allocating memory on a target. See TargetAllocator. More...
 
template<typename T >
void limpet::deallocate_on_target (Target target, T *ptr)
 Utility function for deallocating memory on a target. See TargetAllocator. More...
 

Detailed Description

Defines valid targets for an ionic model to run on and an allocator for allocating memory on a specific target.

Definition in file target.h.