Mojo function
topk_wrapper_no_shmem
topk_wrapper_no_shmem[input_type: DType, index_type: DType, *, is_top_p: Bool, block_size: Int, largest: Bool = True, _test_sort: Bool = False](K: Int, num_elements: Int, num_blocks_per_input: Int, in_buffer: UnsafePointer[Scalar[input_type], ImmutExternalOrigin], local_topk_vals: UnsafePointer[Scalar[input_type], MutExternalOrigin], local_topk_idxs: UnsafePointer[Scalar[index_type], MutExternalOrigin], p_threshold: UnsafePointer[Scalar[input_type], MutExternalOrigin], skip_sort: UnsafePointer[Scalar[DType.bool], MutExternalOrigin])
Shared-memory-free variant of topk_wrapper for Apple GPUs.
Uses warp-level reduction and register-based invalidation instead of shared memory. Only correct when block_size <= WARP_SIZE.
Was this page helpful?
Thank you! We'll create more content like this.
Thank you for helping us improve!