updated benchmark script to cover HBLASLT for all rocm backends

This commit is contained in:
Donato Capitella
2025-11-17 15:30:19 +00:00
parent 528923aa66
commit f62c6e47c5
+18 -11
View File
@@ -39,26 +39,33 @@ declare -A CMDS=(
[vulkan_radv]="toolbox run -c llama-vulkan-radv -- /usr/sbin/llama-bench" [vulkan_radv]="toolbox run -c llama-vulkan-radv -- /usr/sbin/llama-bench"
) )
get_hblt_modes() {
local env="$1"
if [[ "$env" == rocm* ]]; then
printf '%s\n' default off
else
printf '%s\n' default
fi
}
for MODEL_PATH in "${MODEL_PATHS[@]}"; do for MODEL_PATH in "${MODEL_PATHS[@]}"; do
MODEL_NAME="$(basename "$MODEL_PATH" .gguf)" MODEL_NAME="$(basename "$MODEL_PATH" .gguf)"
for ENV in "${!CMDS[@]}"; do for ENV in "${!CMDS[@]}"; do
CMD="${CMDS[$ENV]}" CMD="${CMDS[$ENV]}"
mapfile -t HBLT_MODES < <(get_hblt_modes "$ENV")
# For ROCm 6.4.4 and 7 envs, run default + HIPBLASLT=0 variants; others: default only
if [[ "$ENV" == rocm7* || "$ENV" == rocm6_4_* ]]; then
HBLT_MODES=( default off )
else
HBLT_MODES=( default )
fi
for MODE in "${HBLT_MODES[@]}"; do for MODE in "${HBLT_MODES[@]}"; do
BASE_SUFFIX="" BASE_SUFFIX=""
CMD_EFFECTIVE="$CMD" CMD_EFFECTIVE="$CMD"
if [[ "$MODE" == off ]]; then
BASE_SUFFIX="__hblt0" if [[ "$ENV" == rocm* ]]; then
# inject env inside the container invocation: after the "--" if [[ "$MODE" == off ]]; then
CMD_EFFECTIVE="${CMD_EFFECTIVE/-- /-- env ROCBLAS_USE_HIPBLASLT=0 }" BASE_SUFFIX="__hblt0"
CMD_EFFECTIVE="${CMD_EFFECTIVE/-- /-- env ROCBLAS_USE_HIPBLASLT=0 }"
else
CMD_EFFECTIVE="${CMD_EFFECTIVE/-- /-- env ROCBLAS_USE_HIPBLASLT=1 }"
fi
fi fi
# run twice: baseline and with flash attention # run twice: baseline and with flash attention