[MUH] Bootstrap muh toolchain — extract/parse/gen_yaml/gen_patch + baseline.muh
Pipeline: 1. extract.py: Parses all 26 CCCL tuning_*.cuh → 26 YAML schemas in muh/schema/ 2. parse.py: .muh file parser with extends-inheritance + schema validation 3. gen_yaml.py: .muh → computility-run.yaml (verified: matches competition reference) 4. gen_patch.py: .muh → vllm kernel unified diff patches (6 algorithm mappings) 5. baseline.muh: Competition reference config, all tuning values pending BI-V100 benchmarks Schemas extracted: 26 algorithms, 8-19 params each, SM75/80/90/100 reference tunings Priority mapping: reduce→attention, topk→sampling, scan→paged_attention, transform→activations, batch_memcpy→KV_cache, for→RoPE Tested: extract→parse→validate→gen_yaml→gen_patch full pipeline passes
This commit is contained in:
508
muh/schema/select_if.yaml
Normal file
508
muh/schema/select_if.yaml
Normal file
@@ -0,0 +1,508 @@
|
||||
# muh schema for select_if
|
||||
# Auto-extracted from cub/cub/device/dispatch/tuning/tuning_select_if.cuh
|
||||
# Generated by muh/extract.py
|
||||
|
||||
algorithm: select_if
|
||||
source: cub/cub/device/dispatch/tuning/tuning_select_if.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
|
||||
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
|
||||
input_size_bytes:
|
||||
type: int
|
||||
range:
|
||||
- 1
|
||||
- 1024
|
||||
step: 1
|
||||
note: unknown_range
|
||||
flag_size_bytes:
|
||||
type: int
|
||||
range:
|
||||
- 1
|
||||
- 1024
|
||||
step: 1
|
||||
note: unknown_range
|
||||
offset_size_bytes:
|
||||
type: int
|
||||
range:
|
||||
- 1
|
||||
- 1024
|
||||
step: 1
|
||||
note: unknown_range
|
||||
reference_tunings:
|
||||
sm80:
|
||||
-
|
||||
threads: 992
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 576
|
||||
items: 14
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 256
|
||||
items: 18
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 192
|
||||
items: 10
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 384
|
||||
items: 4
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 224
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 256
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 320
|
||||
items: 10
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 384
|
||||
items: 6
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 256
|
||||
items: 5
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 512
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 224
|
||||
items: 18
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 192
|
||||
items: 15
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 192
|
||||
items: 10
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 256
|
||||
items: 5
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 512
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 224
|
||||
items: 18
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 192
|
||||
items: 12
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 192
|
||||
items: 12
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 256
|
||||
items: 5
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
sm90:
|
||||
-
|
||||
threads: 256
|
||||
items: 22
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 256
|
||||
items: 22
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 384
|
||||
items: 17
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 384
|
||||
items: 11
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 512
|
||||
items: 5
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 448
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 448
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 384
|
||||
items: 15
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 384
|
||||
items: 11
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 512
|
||||
items: 3
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 384
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 320
|
||||
items: 14
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 256
|
||||
items: 14
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 128
|
||||
items: 12
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 192
|
||||
items: 5
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
-
|
||||
threads: 256
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 512
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 256
|
||||
items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 224
|
||||
items: 6
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 160
|
||||
items: 5
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
sm100:
|
||||
-
|
||||
threads: 384
|
||||
nominal_4b_items: 22
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 448
|
||||
nominal_4b_items: 20
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 256
|
||||
nominal_4b_items: 20
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 384
|
||||
nominal_4b_items: 20
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 384
|
||||
nominal_4b_items: 15
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 512
|
||||
nominal_4b_items: 19
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 384
|
||||
nominal_4b_items: 23
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 512
|
||||
nominal_4b_items: 5
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 512
|
||||
nominal_4b_items: 5
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 896
|
||||
nominal_4b_items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 1024
|
||||
nominal_4b_items: 20
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 256
|
||||
nominal_4b_items: 22
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 448
|
||||
nominal_4b_items: 20
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 512
|
||||
nominal_4b_items: 14
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 384
|
||||
nominal_4b_items: 14
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
threads: 320
|
||||
nominal_4b_items: 22
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_CA
|
||||
-
|
||||
threads: 384
|
||||
nominal_4b_items: 21
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_CA
|
||||
-
|
||||
threads: 512
|
||||
nominal_4b_items: 3
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
threads: 512
|
||||
nominal_4b_items: 3
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
-
|
||||
nominal_4b_items: 15
|
||||
threads: 608
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 22
|
||||
threads: 320
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 19
|
||||
threads: 320
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 20
|
||||
threads: 416
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 22
|
||||
threads: 576
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 20
|
||||
threads: 608
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 18
|
||||
threads: 608
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 14
|
||||
threads: 512
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 22
|
||||
threads: 224
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 22
|
||||
threads: 320
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 19
|
||||
threads: 608
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 23
|
||||
threads: 416
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 20
|
||||
threads: 608
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 22
|
||||
threads: 288
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 19
|
||||
threads: 608
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 23
|
||||
threads: 416
|
||||
load_algorithm: BLOCK_LOAD_WARP_TRANSPOSE
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 20
|
||||
threads: 448
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 18
|
||||
threads: 256
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 19
|
||||
threads: 256
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 21
|
||||
threads: 384
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 20
|
||||
threads: 448
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_CA
|
||||
-
|
||||
nominal_4b_items: 14
|
||||
threads: 320
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 14
|
||||
threads: 640
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 19
|
||||
threads: 384
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 24
|
||||
threads: 256
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 18
|
||||
threads: 256
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 11
|
||||
threads: 448
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 20
|
||||
threads: 384
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 12
|
||||
threads: 256
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 12
|
||||
threads: 256
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 14
|
||||
threads: 352
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
-
|
||||
nominal_4b_items: 11
|
||||
threads: 512
|
||||
load_algorithm: BLOCK_LOAD_DIRECT
|
||||
load_modifier: LOAD_DEFAULT
|
||||
nominal_4B_items_per_thread: 10
|
||||
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
|
||||
Reference in New Issue
Block a user