1616ROOT = os .path .abspath (os .path .join (os .path .dirname (__file__ ), ".." , ".." ))
1717sys .path .insert (0 , ROOT )
1818
19+ # ---------------------------------------------------------------------------
20+ # Load mega_kernel via importlib, bypassing
21+ # vllm_fl.dispatch.backends.vendor.ascend.impl.__init__ (which eagerly
22+ # imports modules that require a fully-initialized vLLM runtime).
23+ #
24+ # We register the module under a dotted package name so that the relative
25+ # import "from .compile import ..." inside mega_kernel.py resolves correctly
26+ # against sibling modules registered in sys.modules under the same package.
27+ # ---------------------------------------------------------------------------
28+ import importlib .util as _ilu
29+
30+ _PTO_PKG = "vllm_fl.dispatch.backends.vendor.ascend.impl.pto_chunk_gdn"
31+ _PTO_DIR = os .path .join (
32+ ROOT ,
33+ "vllm_fl" , "dispatch" , "backends" , "vendor" , "ascend" , "impl" , "pto_chunk_gdn" ,
34+ )
35+
36+
37+ def _load_sibling (name , path ):
38+ """Load a Python file as a module of package _PTO_PKG."""
39+ spec = _ilu .spec_from_file_location (f"{ _PTO_PKG } .{ name } " , path )
40+ mod = _ilu .module_from_spec (spec )
41+ mod .__package__ = _PTO_PKG
42+ sys .modules [f"{ _PTO_PKG } .{ name } " ] = mod
43+ spec .loader .exec_module (mod )
44+ return mod
45+
46+
47+ # Load compile.py first (dependency of mega_kernel.py), then mega_kernel.py.
48+ _load_sibling ("compile" , os .path .join (_PTO_DIR , "compile.py" ))
49+ _mega = _load_sibling ("mega_kernel" , os .path .join (_PTO_DIR , "mega_kernel.py" ))
50+ run_mega_kernel = _mega .run_mega_kernel
51+
1952
2053def main () -> int :
2154 torch .npu .config .allow_internal_format = True
@@ -24,8 +57,6 @@ def main() -> int:
2457
2558 enable_custom_op ()
2659
27- from vllm_fl .ops .pto_chunk_gdn .mega_kernel import run_mega_kernel
28-
2960 device = torch .device ("npu:0" )
3061 B , T , Hg , H , D = 1 , 128 , 8 , 16 , 128
3162
@@ -65,4 +96,4 @@ def main() -> int:
6596
6697
6798if __name__ == "__main__" :
68- raise SystemExit (main ())
99+ raise SystemExit (main ())
0 commit comments