From 348db35119f6cdf6226c762da68de1c251ff8c96 Mon Sep 17 00:00:00 2001 From: Michael Chus Date: Wed, 1 Apr 2026 23:44:00 +0300 Subject: [PATCH] fix(stress): stagger john GPU launches to prevent GWS tuning contention When 8 john processes start simultaneously they race for GPU memory during OpenCL GWS auto-tuning. Slower devices settle on a smaller work size (~594MiB vs 762MiB) and run at 40% instead of 100% load. Add 3s sleep between launches so each instance finishes memory allocation before the next one starts. Co-Authored-By: Claude Sonnet 4.6 --- iso/overlay/usr/local/bin/bee-john-gpu-stress | 3 +++ 1 file changed, 3 insertions(+) diff --git a/iso/overlay/usr/local/bin/bee-john-gpu-stress b/iso/overlay/usr/local/bin/bee-john-gpu-stress index 3dc7d25..8010875 100644 --- a/iso/overlay/usr/local/bin/bee-john-gpu-stress +++ b/iso/overlay/usr/local/bin/bee-john-gpu-stress @@ -191,7 +191,10 @@ CHOSEN_FORMAT=$(choose_format) || { echo "format=${CHOSEN_FORMAT}" PIDS="" +_first=1 for opencl_id in $(echo "${JOHN_DEVICES}" | tr ',' ' '); do + [ "${_first}" = "1" ] || sleep 3 + _first=0 ./john --test="${SECONDS}" --format="${CHOSEN_FORMAT}" --devices="${opencl_id}" & PIDS="${PIDS} $!" done