41#ifndef OPENSWMM_ENGINE_2D_GPU_PLUGIN_ABI_H
42#define OPENSWMM_ENGINE_2D_GPU_PLUGIN_ABI_H
57# if defined(OPENSWMM_GPU_PLUGIN_BUILD)
58# define OPENSWMM_GPU_ABI __declspec(dllexport)
60# define OPENSWMM_GPU_ABI
62#elif defined(__GNUC__)
63# define OPENSWMM_GPU_ABI __attribute__((visibility("default")))
65# define OPENSWMM_GPU_ABI
81#define OPENSWMM_GPU_ABI_VERSION 4
82#define OPENSWMM_GPU_ABI_VERSION_ENV_THREADS_FALLBACK 3
OPENSWMM_GPU_ABI int openswmm_gpu_host_threads(void)
(v4, optional) Host thread count the plugin's Kokkos runtime is initialised with; 0 when not yet init...
Definition GpuPluginOmp.cpp:92
OPENSWMM_GPU_ABI int openswmm_gpu_probe(OpenSwmmGpuProbe *out)
Query the plugin for a usable GPU device.
Definition GpuPluginCuda.cpp:61
OpenSwmmGpuVendor
Definition GpuPluginAbi.h:85
@ OPENSWMM_GPU_VENDOR_OPENMP
Definition GpuPluginAbi.h:90
@ OPENSWMM_GPU_VENDOR_HIP
Definition GpuPluginAbi.h:88
@ OPENSWMM_GPU_VENDOR_CUDA
Definition GpuPluginAbi.h:87
@ OPENSWMM_GPU_VENDOR_SYCL
Definition GpuPluginAbi.h:89
@ OPENSWMM_GPU_VENDOR_NONE
Definition GpuPluginAbi.h:86
OPENSWMM_GPU_ABI void * openswmm_make_gpu_explicit_solver(const OpenSwmmGpuProbe *probe)
Construct the Kokkos explicit LTS marcher surface solver.
Definition GpuPluginCuda.cpp:87
#define OPENSWMM_GPU_ABI
Definition GpuPluginAbi.h:65
Definition GpuPluginAbi.h:94
unsigned long long device_mem_bytes
Definition GpuPluginAbi.h:99
int device_count
Definition GpuPluginAbi.h:96
char device_name[128]
Definition GpuPluginAbi.h:98
int requested_threads
Definition GpuPluginAbi.h:105
int abi_version
Definition GpuPluginAbi.h:95
int vendor
Definition GpuPluginAbi.h:97