From 6a7559133cf32eb8f257d8cc376054cce7d1995f Mon Sep 17 00:00:00 2001 From: Frederik Hennig <frederik.hennig@fau.de> Date: Wed, 12 Mar 2025 09:42:28 +0100 Subject: [PATCH] separate failing and non-failing getters for gpu api --- src/pystencilssfg/composer/gpu_composer.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/pystencilssfg/composer/gpu_composer.py b/src/pystencilssfg/composer/gpu_composer.py index 274c81c..4c3a8a4 100644 --- a/src/pystencilssfg/composer/gpu_composer.py +++ b/src/pystencilssfg/composer/gpu_composer.py @@ -85,8 +85,13 @@ class SfgGpuComposer(SfgComposerMixIn): self._gpu_api_provider = HipAPI() @property - def gpu_api(self) -> ProvidesGpuRuntimeAPI: - """GPU runtime API wrapper currently used by this GPU composer. + def gpu_api(self) -> ProvidesGpuRuntimeAPI | None: + """GPU runtime API wrapper currently used by this GPU composer, + or `None` if none was selected.""" + return self._gpu_api_provider + + def get_gpu_api(self) -> ProvidesGpuRuntimeAPI: + """GPU runtime API provider currently used by this GPU composer. Raises: AttributeError: If no runtime API was set yet (see `use_cuda`, `use_hip`) @@ -140,7 +145,7 @@ class SfgGpuComposer(SfgComposerMixIn): launch_config = ker.get_launch_configuration() - dim3 = self.gpu_api.dim3 + dim3 = self.get_gpu_api().dim3 grid_size: ExprLike block_size: ExprLike -- GitLab