Mojo struct
ClcPipelineStorage
struct ClcPipelineStorage[num_stages: Int]
Storage for CLC (Cluster Launch Control) scheduler pipeline.
CLC has a different barrier pattern:
- full/empty: Standard producer-consumer for work items
- throttle: Rate limiting barriers (2 per stage)
- response: CLC response storage (UInt128 per stage)
Parameters
- num_stages (
Int): Number of CLC pipeline stages.
Fields
- full_storage (
ClcPipelineStorage[num_stages].BarrierArray.Storage): - empty_storage (
ClcPipelineStorage[num_stages].BarrierArray.Storage): - throttle_storage (
ClcPipelineStorage[num_stages].ThrottleArray.Storage): - response_storage (
ClcPipelineStorage[num_stages].ResponseArray.Storage):
Implemented traits
AnyType,
ImplicitlyDestructible
comptime members
__del__is_trivial
comptime __del__is_trivial = True
BarrierArray
comptime BarrierArray = SMemArray[SharedMemBarrier, num_stages]
ResponseArray
comptime ResponseArray = SMemArray[UInt128, num_stages]
ThrottleArray
comptime ThrottleArray = SMemArray[SharedMemBarrier, (num_stages * 2)]
Methods
full
full(ref[AddressSpace._value._mlir_value] self) -> ClcPipelineStorage[num_stages].BarrierArray
Returns:
ClcPipelineStorage
empty
empty(ref[AddressSpace._value._mlir_value] self) -> ClcPipelineStorage[num_stages].BarrierArray
Returns:
ClcPipelineStorage
throttle
throttle(ref[AddressSpace._value._mlir_value] self) -> ClcPipelineStorage[num_stages].ThrottleArray
Returns:
ClcPipelineStorage
response
response(ref[AddressSpace._value._mlir_value] self) -> ClcPipelineStorage[num_stages].ResponseArray
Returns:
ClcPipelineStorage
Was this page helpful?
Thank you! We'll create more content like this.
Thank you for helping us improve!