IMPORTANT: To view this page as Markdown, append `.md` to the URL (e.g. /max/get-started.md). For the complete documentation index, see llms.txt.
Skip to main content
For the complete documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /max/get-started.md).

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​

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] self) -> ClcPipelineStorage[num_stages].BarrierArray

Returns:

ClcPipelineStorage[num_stages].BarrierArray

empty​

empty(ref[AddressSpace._value] self) -> ClcPipelineStorage[num_stages].BarrierArray

Returns:

ClcPipelineStorage[num_stages].BarrierArray

throttle​

throttle(ref[AddressSpace._value] self) -> ClcPipelineStorage[num_stages].ThrottleArray

Returns:

ClcPipelineStorage[num_stages].ThrottleArray

response​

response(ref[AddressSpace._value] self) -> ClcPipelineStorage[num_stages].ResponseArray

Returns:

ClcPipelineStorage[num_stages].ResponseArray