K iUddlmZmZddlmZGddeZGddeZGddZed e Zeee d <d efd Z ed e a ee d <d eefdZ y))OptionalProtocol) ContextVarceZdZdefdZy)BufferreturncyN)selfs `/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/triton/runtime/_allocation.pydata_ptrzBuffer.data_ptr N)__name__ __module__ __qualname__intrr rr rrs # rrc*eZdZdededeedefdZy) Allocatorsize alignmentstreamrcyr r r rrrs r __call__zAllocator.__call__ rrNrrrrrrrr rr rr s' S S (3- F rrc*eZdZdededeedefdZy) NullAllocatorrrrrctd)NzxKernel requires a runtime memory allocation, but no allocator was set. Use triton.set_allocator to specify an allocator.) RuntimeErrorrs r rzNullAllocator.__call__sOP PrNrr rr rrs,PSPSP(3-PFPrr _allocator)default allocatorc.tj|y)z The allocator function is called during kernel launch for kernels that require additional global memory workspace. N)r"setr$s r set_allocatorr(s NN9r_profile_allocatorc.tj|y)z The profile allocator function is called before kernel launch for kernels that require additional global memory workspace. N)r)r&r's r set_profile_allocatorr+&s 9%rN) typingrr contextvarsrrrrr"__annotations__r(r)r+r rr r/s%%" X   PP%/|]_$U Jy !UY!+< QIQ&Xi%8&r