This is an automated email from the ASF dual-hosted git repository.
yongzao pushed a commit to branch fix-backend-selection
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/fix-backend-selection by this
push:
new ceebce8d16f Update device_manager.py
ceebce8d16f is described below
commit ceebce8d16f8adb81410264aef002f4b65d1a8bc
Author: Yongzao <[email protected]>
AuthorDate: Wed Mar 18 20:21:56 2026 +0800
Update device_manager.py
---
iotdb-core/ainode/iotdb/ainode/core/manager/device_manager.py | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/iotdb-core/ainode/iotdb/ainode/core/manager/device_manager.py
b/iotdb-core/ainode/iotdb/ainode/core/manager/device_manager.py
index daac19b8a42..0886d565465 100644
--- a/iotdb-core/ainode/iotdb/ainode/core/manager/device_manager.py
+++ b/iotdb-core/ainode/iotdb/ainode/core/manager/device_manager.py
@@ -23,8 +23,11 @@ from iotdb.ainode.core.device.backend.cpu_backend import
CPUBackend
from iotdb.ainode.core.device.backend.cuda_backend import CUDABackend
from iotdb.ainode.core.device.device_utils import DeviceLike, parse_device_like
from iotdb.ainode.core.device.env import DistEnv, read_dist_env
+from iotdb.ainode.core.log import Logger
from iotdb.ainode.core.util.decorator import singleton
+LOGGER = Logger()
+
@singleton
class DeviceManager:
@@ -32,7 +35,7 @@ class DeviceManager:
"""
Unified device entry point:
- - Select backend (cuda/npu/cpu)
+ - Select backend (cuda/cpu)
- Parse device expression (None/int/str/torch.device/DeviceSpec)
- Provide device, autocast, grad scaler, synchronize, dist backend
recommendation, etc.
"""
@@ -50,11 +53,13 @@ class DeviceManager:
# ==================== selection ====================
def _auto_select_backend(self) -> BackendAdapter:
- for name in BackendType:
+ for name in [BackendType.CUDA]:
backend = self.backends.get(name)
if backend is not None and backend.is_available():
self.type = backend.type
+ LOGGER.info(f"AINode selects backend: {name}")
return backend
+ LOGGER.info("No GPU/TPU backend available, AINode falling back to CPU
backend.")
return self.backends[BackendType.CPU]
# ==================== public API ====================