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, ImplicitlyDeletable

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​

def full(ref[AddressSpace._value] self) -> Self.BarrierArray

Returns:

Self.BarrierArray

empty​

def empty(ref[AddressSpace._value] self) -> Self.BarrierArray

Returns:

Self.BarrierArray

throttle​

def throttle(ref[AddressSpace._value] self) -> Self.ThrottleArray

Returns:

Self.ThrottleArray

response​

def response(ref[AddressSpace._value] self) -> Self.ResponseArray

Returns:

Self.ResponseArray