K i pddlmZmZddlmZmZmZmZGddeZGddeZ Gdd e Z y ) )ABCMetaabstractmethod)CallableListProtocolSequencec,eZdZdedeedeefdZy) Benchmarker kernel_call quantilesreturnc yN)selfr r kwargss \/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/triton/backends/driver.py__call__zBenchmarker.__call__ N)__name__ __module__ __qualname__rrfloatrrrrrr r s' H DK V^_dVe rr c~eZdZeedZededefdZedZedZ ede fdZ d d Z y) DriverBasecyrrrs r is_activezDriverBase.is_active s rtyr cy)z Converts a Triton type string to its corresponding C++ type string for this backend. Args: ty (str): The Triton type string. e.g., 'i32', '*fp16', 'fp32'. Returns: str: The C++ type string. Nr)rr s rmap_python_to_cpp_typez!DriverBase.map_python_to_cpp_types rcyrrrs rget_current_targetzDriverBase.get_current_target rcyrrrs rget_active_torch_devicez"DriverBase.get_active_torch_device#r%rct)z[ Return the benchmarking function that this backend should use by default. )NotImplementedErrorrs rget_benchmarkerzDriverBase.get_benchmarker's "!rNcyrrrs r__init__zDriverBase.__init__.rr)r N) rrr classmethodrrstrr"r$r'r r*r,rrrrr s              """  rr) metaclassceZdZdZdZy) GPUDrivercddljj|_ ddlm}||_jj|_jj|_ y#t $r fd|_YLwxYw)Nr)_cuda_getCurrentRawStreamcNjj|jSr)cudacurrent_stream cuda_stream)idxtorchs rz$GPUDriver.__init__..<s%**2K2KC2P2\2\r) r9r5get_device_capabilitytorch._Cr3get_current_stream ImportErrorcurrent_deviceget_current_device set_deviceset_current_device)rr3r9s @rr,zGPUDriver.__init__4sj%*ZZ%E%E" ] :&?D ##(**";";"'**"7"7 ]&\D # ]s A&&A<;A<c|Srr)rtensormaps_infoargss rassemble_tensormap_to_argz#GPUDriver.assemble_tensormap_to_argAs rN)rrrr,rFrrrr1r12s  8rr1N) abcrrtypingrrrrr rr1rrrrIs3'55 ( $ 7$ N r