Pull requests / #2148

#2148 hip: add a gfx1150 hipBLASLt 100500 tuning table (Radeon 890M / Ryzen AI 9 HX 370)

open · @onionbutties · 0 comments · View on GitHub

Setup & installAMD / HIPWindows

Description

Issue: #1217 (the gfx1150 build/run report) - the table it did not have

## Summary
A hipBLASLt tuning table for gfx1150 (Radeon 890M on a Ryzen AI 9 HX 370, Strix Point), for engines built with
hipBLASLt 1.5.0 (version 100500). Setup picks it up by itself when the installed hipBLASLt reports 100500.

## What changed
- `tools/hip/gfx1150-hipblaslt-100500.txt` (new): 141 rows over the 16 dense GEMM geometries of
  `gfx1150-hipblaslt-100401.txt` at T = 64, 128, ..., 16384.
  - Two `tune_hipblaslt --workspace-mib 32` passes; each row keeps the solution with the lowest mean of the six
    repetitions (a repetition stalls now and then on this chip, so the tool's mean-of-three pick can differ between
    passes).
  - The three rows slower than plain hipBLAS (the tiny bf16 N=1 K=2560 shape at T = 64 / 128 / 256; about 13-39 us and
    noise-dominated) are left out, so those buckets route to the nearest good row.
  - Every remaining row beats plain hipBLAS: 1.07x to 16.7x per GEMM, geometric mean 5.0x.
- No source change: the engine already loads a table for the running card's arch and version
  (`src/prefill/hipblaslt_tuning.hpp`).

## Extra Notes
- Calibrated on one machine: Radeon 890M (gfx1150), Ryzen AI 9 HX 370, 96 GB DDR5-5600, Windows 11, engine 0.1.43,
  ROCm 10.2.0a20260930, hipBLASLt 1.5.0. A table's solution IDs are scoped to one hipBLASLt version and architecture,
  so a different 1.5.0 build should recalibrate before using it (the engine refuses any other header version).
- The prompt-speed gain of the whole model is not measured separately here (the per-GEMM numbers above are); per the
  maintainers' convention a shipped table should show the end-to-end prompt speed too.
- The installer opt-in that wires this table in for a gfx1150 install is #2147.

Related on strata.com

Editorial links to help you install, pick models, or read release notes — not part of the upstream thread.