From ceab5c4a63008ca5469cc0c5c8a782989fd35d29 Mon Sep 17 00:00:00 2001 From: harisreedhar Date: Thu, 12 Feb 2026 14:01:34 +0530 Subject: [PATCH] add has_amd_execution_provider and has_nvidia_execution_provider --- facefusion/system.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/facefusion/system.py b/facefusion/system.py index 7fe1bd7f..ab4171eb 100644 --- a/facefusion/system.py +++ b/facefusion/system.py @@ -29,13 +29,21 @@ def detect_static_graphic_devices(execution_providers : Tuple[ExecutionProvider, def detect_graphic_devices(execution_providers : Tuple[ExecutionProvider, ...]) -> List[GraphicDevice]: - if any(execution_provider in [ 'rocm', 'migraphx' ] for execution_provider in execution_providers): + if has_amd_execution_provider(execution_providers): return detect_amd_graphic_devices() - if any(execution_provider in [ 'cuda', 'tensorrt' ] for execution_provider in execution_providers): + if has_nvidia_execution_provider(execution_providers): return detect_nvidia_graphic_devices() return [] +def has_amd_execution_provider(execution_providers : Tuple[ExecutionProvider, ...]) -> bool: + return 'rocm' in execution_providers or 'migraphx' in execution_providers + + +def has_nvidia_execution_provider(execution_providers : Tuple[ExecutionProvider, ...]) -> bool: + return 'cuda' in execution_providers or 'tensorrt' in execution_providers + + def detect_nvidia_graphic_devices() -> List[GraphicDevice]: pynvml = importlib.import_module('pynvml') graphic_devices : List[GraphicDevice] = []