diff --git a/astrai/extension/lib/__init__.py b/astrai/extension/lib/__init__.py new file mode 100644 index 0000000..49723b7 --- /dev/null +++ b/astrai/extension/lib/__init__.py @@ -0,0 +1 @@ +"""Compiled CUDA kernel modules (``*.so``) live here, kept separate from Python source.""" diff --git a/astrai/extension/loader.py b/astrai/extension/loader.py index 587ac3c..e9bf24e 100644 --- a/astrai/extension/loader.py +++ b/astrai/extension/loader.py @@ -18,7 +18,7 @@ _modules: dict[str, object] = {} for _name in KERNEL_NAMES: try: - _mod = importlib.import_module(f".{_name}", package=__package__) + _mod = importlib.import_module(f".lib.{_name}", package=__package__) _available[_name] = True _modules[_name] = _mod except ImportError: diff --git a/setup.py b/setup.py index 3e48e9d..b5c4fdc 100644 --- a/setup.py +++ b/setup.py @@ -7,7 +7,7 @@ from setuptools import setup from setuptools.command.build_ext import build_ext as _build_ext sys.path.insert(0, str(Path(__file__).parent)) -os.makedirs("astrai/extension", exist_ok=True) +os.makedirs("astrai/extension/lib", exist_ok=True) def _should_build(): @@ -57,7 +57,7 @@ if _should_build(): for name, info in REGISTRY.items(): ext_modules.append( CUDAExtension( - f"astrai.extension.{name}", + f"astrai.extension.lib.{name}", info["sources"], extra_compile_args={ "cxx": info["cxx_flags"],