|
10 | 10 | from pathlib import Path
|
11 | 11 | from typing import Iterator
|
12 | 12 |
|
13 |
| -from ._logger import logger |
14 | 13 | from .defines import is_arch_x86
|
15 | 14 | from .version import ARRAYFIRE_VER_MAJOR
|
16 | 15 |
|
| 16 | +VERBOSE_LOADS = os.environ.get("AF_VERBOSE_LOADS", "") == "1" |
| 17 | + |
17 | 18 |
|
18 | 19 | class _LibPrefixes(Enum):
|
19 | 20 | forge = ""
|
@@ -120,10 +121,6 @@ def __iter__(self) -> Iterator:
|
120 | 121 |
|
121 | 122 | class Backend:
|
122 | 123 | _backend_type: BackendType
|
123 |
| -# HACK for osx |
124 |
| -# _backend.clib = ctypes.CDLL("/opt/arrayfire//lib/libafcpu.3.dylib") |
125 |
| -# HACK for windows |
126 |
| -# _backend.clib = ctypes.CDLL("C:/Program Files/ArrayFire/v3/lib/afcpu.dll") |
127 | 124 | _clib: ctypes.CDLL
|
128 | 125 |
|
129 | 126 | def __init__(self) -> None:
|
@@ -136,18 +133,21 @@ def _load_forge_lib(self) -> None:
|
136 | 133 | for lib_name in self._lib_names("forge", _LibPrefixes.forge):
|
137 | 134 | try:
|
138 | 135 | ctypes.cdll.LoadLibrary(str(lib_name))
|
139 |
| -logger.info(f"Loaded {lib_name}") |
| 136 | +if VERBOSE_LOADS: |
| 137 | +print(f"Loaded {lib_name}") |
140 | 138 | break
|
141 | 139 | except OSError:
|
142 |
| -logger.warning(f"Unable to load {lib_name}") |
| 140 | +if VERBOSE_LOADS: |
| 141 | +print(f"Unable to load {lib_name}") |
143 | 142 | pass
|
144 | 143 |
|
145 | 144 | def _load_backend_libs(self) -> None:
|
146 | 145 | for backend_type in BackendType:
|
147 | 146 | self._load_backend_lib(backend_type)
|
148 | 147 |
|
149 | 148 | if self._backend_type:
|
150 |
| -logger.info(f"Setting {backend_type.name} as backend.") |
| 149 | +if VERBOSE_LOADS: |
| 150 | +print(f"Setting {backend_type.name} as backend.") |
151 | 151 | break
|
152 | 152 |
|
153 | 153 | if not self._backend_type and not self._clib:
|
@@ -169,19 +169,23 @@ def _load_backend_lib(self, _backend_type: BackendType) -> None:
|
169 | 169 | if _backend_type == BackendType.cuda:
|
170 | 170 | self._load_nvrtc_builtins_lib(lib_name.parent)
|
171 | 171 |
|
172 |
| -logger.info(f"Loaded {lib_name}") |
| 172 | +if VERBOSE_LOADS: |
| 173 | +print(f"Loaded {lib_name}") |
173 | 174 | break
|
174 | 175 | except OSError:
|
175 |
| -logger.warning(f"Unable to load {lib_name}") |
| 176 | +if VERBOSE_LOADS: |
| 177 | +print(f"Unable to load {lib_name}") |
176 | 178 | pass
|
177 | 179 |
|
178 | 180 | def _load_nvrtc_builtins_lib(self, lib_path: Path) -> None:
|
179 | 181 | nvrtc_name = self._find_nvrtc_builtins_lib_name(lib_path)
|
180 | 182 | if nvrtc_name:
|
181 | 183 | ctypes.cdll.LoadLibrary(str(lib_path / nvrtc_name))
|
182 |
| -logger.info(f"Loaded {lib_path / nvrtc_name}") |
| 184 | +if VERBOSE_LOADS: |
| 185 | +print(f"Loaded {lib_path / nvrtc_name}") |
183 | 186 | else:
|
184 |
| -logger.warning("Could not find local nvrtc-builtins library") |
| 187 | +if VERBOSE_LOADS: |
| 188 | +print("Could not find local nvrtc-builtins library") |
185 | 189 |
|
186 | 190 | def _lib_names(self, name: str, lib: _LibPrefixes, ver_major: str | None = None) -> list[Path]:
|
187 | 191 | post = self._backend_path_config.lib_postfix if ver_major is None else ver_major
|
|
0 commit comments