EngineX replaces the missing corex_gdn/corex_moe/corex_fa2 operator chain
that Sub168 has but our BI-V100 image lacks.
Architecture (mirrors CCCL dispatch/tuning/kernel three-layer system):
Registry (policy_selector) → three-tier dispatch:
Tier 1: Native .so via dlopen (libcorex_gdn.so, libixattn.so)
Tier 2: ixformer Python ops (vendor-provided)
Tier 3: PyTorch fallback (always available)
Critical fixes vs comp 168 docker log:
- moe_topk_softmax: replacement for missing ixformer op
- gdn_prefill: NaN-stable chunked impl (chunk_size=16)
- gdn_decode: state clamp prevents NaN accumulation
18 operators, all tests pass.
17 lines
565 B
Python
17 lines
565 B
Python
"""
|
|
EngineX — Algorithm Factor Replacement Engine for BI-V100
|
|
|
|
Architecture modeled after CCCL's dispatch/tuning/kernel three-layer system:
|
|
CCCL: tuning_*.cuh → dispatch_*.cuh → kernel_*.cuh
|
|
EngineX: tuning/*.py → dispatch/*.py → ops/*.py
|
|
|
|
The engine dlopen()s native .so when available, falls back to PyTorch/ixformer.
|
|
This is NOT an adapter — it's a full algorithm factor replacement layer.
|
|
"""
|
|
|
|
__version__ = "0.1.0"
|
|
|
|
from enginex.dispatch.registry import OperatorRegistry, get_registry
|
|
|
|
__all__ = ["OperatorRegistry", "get_registry"]
|