# muh schema for scan_by_key # Auto-extracted from cub/cub/device/dispatch/tuning/tuning_scan_by_key.cuh # Generated by muh/extract.py algorithm: scan_by_key source: cub/cub/device/dispatch/tuning/tuning_scan_by_key.cuh parameters: threads_per_block: type: int range: - 32 - 1024 step: 32 items_per_thread: type: int range: - 1 - 32 step: 1 load_algorithm: type: enum values: - BLOCK_LOAD_DIRECT - BLOCK_LOAD_VECTORIZE - BLOCK_LOAD_TRANSPOSE - BLOCK_LOAD_WARP_TRANSPOSE - BLOCK_LOAD_WARP_TRANSPOSE_TIMESLICED - BLOCK_LOAD_STRIPED load_modifier: type: enum values: - LOAD_DEFAULT - LOAD_CA - LOAD_CG - LOAD_CS - LOAD_CV - LOAD_LDG store_algorithm: type: enum values: - BLOCK_STORE_DIRECT - BLOCK_STORE_WARP_TRANSPOSE - BLOCK_STORE_WARP_TRANSPOSE_TIMESLICED - BLOCK_STORE_STRIPED scan_algorithm: type: enum values: - BLOCK_SCAN_RAKING - BLOCK_SCAN_RAKING_MEMOIZE - BLOCK_SCAN_WARP_SCANS lookback_delay.kind: type: enum values: - no_delay - fixed_delay - exponential_backoff - exponential_backoff_jitter - exponential_backoff_jitter_window - exponential_backon_jitter_window - exponential_backon_jitter - exponential_backon lookback_delay.delay: type: int range: - 0 - 2000 step: 50 lookback_delay.l2_write_latency: type: int range: - 0 - 2000 step: 50 key_size: type: int range: - 1 - 1024 step: 1 note: unknown_range value_size: type: int range: - 1 - 1024 step: 1 note: unknown_range accum_size: type: int range: - 1 - 1024 step: 1 note: unknown_range reference_tunings: sm80: - threads: 128 items: 12 load_algorithm: BLOCK_LOAD_DIRECT store_algorithm: BLOCK_STORE_DIRECT - threads: 288 items: 12 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 15 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 192 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 19 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 8 load_algorithm: BLOCK_LOAD_DIRECT store_algorithm: BLOCK_STORE_DIRECT - threads: 320 items: 14 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 15 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 160 items: 17 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 160 items: 14 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 12 load_algorithm: BLOCK_LOAD_DIRECT store_algorithm: BLOCK_STORE_DIRECT - threads: 256 items: 12 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 15 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 9 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 17 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 11 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 224 items: 13 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 224 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 320 items: 8 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 192 items: 7 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 192 items: 7 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 7 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 15 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 15 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE sm90: - threads: 128 items: 12 load_algorithm: BLOCK_LOAD_DIRECT store_algorithm: BLOCK_STORE_DIRECT - threads: 256 items: 16 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 15 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 224 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 23 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 12 load_algorithm: BLOCK_LOAD_DIRECT store_algorithm: BLOCK_STORE_DIRECT - threads: 128 items: 20 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 22 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 224 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 23 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 12 load_algorithm: BLOCK_LOAD_DIRECT store_algorithm: BLOCK_STORE_DIRECT - threads: 256 items: 14 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 288 items: 14 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 224 items: 14 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 23 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 12 load_algorithm: BLOCK_LOAD_DIRECT store_algorithm: BLOCK_STORE_DIRECT - threads: 224 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 192 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 224 items: 11 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 192 items: 15 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 192 items: 7 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 224 items: 10 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 256 items: 9 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 192 items: 9 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE - threads: 128 items: 23 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE sm100: - items: 13 threads: 288 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT - items: 13 threads: 288 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT - items: 19 threads: 224 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 18 threads: 192 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 12 threads: 384 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT - items: 14 threads: 160 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT - items: 14 threads: 160 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT - items: 13 threads: 224 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 20 threads: 224 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 13 threads: 288 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 20 threads: 224 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 14 threads: 224 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 12 threads: 160 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT - items: 15 threads: 288 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT - items: 22 threads: 160 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_CA - items: 23 threads: 256 load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE store_algorithm: BLOCK_STORE_WARP_TRANSPOSE load_modifier: LOAD_DEFAULT nominal_4b_items_per_thread: 9 bi_v100: status: pending_benchmark note: Run muh benchmark on Iluvatar BI-V100 to fill these values threads_per_block: TBD items_per_thread: TBD