Skip to main content

Mojo struct

FA4MiscMBars

@register_passable(trivial) struct FA4MiscMBars

Fields

  • mbar_base (UnsafePointer[SharedMemBarrier, address_space=AddressSpace(3)]):

Implemented traits

AnyType, Copyable, ImplicitlyCopyable, Movable, UnknownDestructibility

Aliases

__copyinit__is_trivial

alias __copyinit__is_trivial = True

__del__is_trivial

alias __del__is_trivial = True

__moveinit__is_trivial

alias __moveinit__is_trivial = True

C0_offset

alias C0_offset = 4

C1_offset

alias C1_offset = 6

order_offset

alias order_offset = 8

Q1SyncIdx

alias Q1SyncIdx = 10

S0_offset

alias S0_offset = 0

S1_offset

alias S1_offset = 2

size

alias size = 11

Methods

__init__

__init__(mbar_base: UnsafePointer[SharedMemBarrier, address_space=AddressSpace(3)]) -> Self

init

init(self)

producer_s0

producer_s0(self) -> ProducerPipeline[1]

Returns:

ProducerPipeline

producer_s1

producer_s1(self) -> ProducerPipeline[1]

Returns:

ProducerPipeline

consumer_s

consumer_s(self, wg_idx: UInt32) -> ConsumerPipeline[1]

Returns:

ConsumerPipeline

consumer_c0

consumer_c0(self) -> ConsumerPipeline[1]

Returns:

ConsumerPipeline

consumer_c1

consumer_c1(self) -> ConsumerPipeline[1]

Returns:

ConsumerPipeline

producer_c

producer_c(self, wg_idx: UInt32) -> ProducerPipeline[1]

Returns:

ProducerPipeline

pipeline_order_wait

pipeline_order_wait(self, wg_idx: UInt32) -> UnsafePointer[SharedMemBarrier, address_space=AddressSpace(3)]

Returns:

UnsafePointer

pipeline_order_arrive

pipeline_order_arrive(self, wg_idx: UInt32) -> UnsafePointer[SharedMemBarrier, address_space=AddressSpace(3)]

Returns:

UnsafePointer

q1_wait_mbar

q1_wait_mbar(self) -> ref [MutableAnyOrigin, 3] SharedMemBarrier

Returns:

ref

end

end(self) -> UnsafePointer[SharedMemBarrier, address_space=AddressSpace(3)]

Returns:

UnsafePointer

Was this page helpful?