Files
intel-gpu-llm-diagnosis/repos/patch/apply.sh
T
sleepy 6ad84d543c feat: phased patch system for Intel Arc GPU performance fixes
3-model council (GLM-5.1, Minimax-M2.7, Kimi k2p5) analyzed Intel Arc GPU
performance issues and produced patches for llama.cpp:

Phase 1 - SYCL Sync: Enable graph execution by default (GGML_SYCL_DISABLE_GRAPH)
Phase 2 - SYCL Kernel: Fix VER_GEN12/13 thresholds, tune DMMV_X/MMV_Y
Phase 3 - Vulkan Intel: Arc 140T device-ID Xe2 override

Includes:
- Phased apply script (apply-phase.sh [1|2|3|all])
- Master apply script with --status/--reverse/--dry-run
- Per-phase READMEs with testing checklists
- Council deliberation logs (gitignored in logs/)

Verified: all patches apply/reverse cleanly via git apply.
Static verification: VER_GEN arithmetic and DMMV_X divisibility pass.
2026-04-15 14:53:40 +02:00

48 lines
1.5 KiB
Bash
Executable File

#!/usr/bin/env bash
#
# apply.sh — Apply all Intel GPU diagnosis patches
#
# Delegates to apply-phase.sh. See that script for options.
#
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
NC='\033[0m'
# Parse args to detect --reverse and pass through
REVERSE=0
DRY_RUN=0
for arg in "$@"; do
case "$arg" in
--reverse) REVERSE=1 ;;
--dry-run) DRY_RUN=1 ;;
--status)
# Status mode — check each patch
echo "Patch status:"
for phase_dir in "$SCRIPT_DIR"/phase*/; do
phase_name=$(basename "$phase_dir")
echo ""
echo " [$phase_name]"
for patch_file in "$phase_dir"*.patch; do
[[ -f "$patch_file" ]] || continue
patch_name=$(basename "$patch_file")
target_repo="$(dirname "$SCRIPT_DIR")/llama.cpp"
if (cd "$target_repo" && git apply --check "$patch_file" 2>/dev/null); then
echo -e " ${YELLOW}NOT APPLIED${NC} $patch_name"
elif (cd "$target_repo" && git apply --check -R "$patch_file" 2>/dev/null); then
echo -e " ${GREEN}APPLIED${NC} $patch_name"
else
echo -e " ${RED}CONFLICT${NC} $patch_name"
fi
done
done
exit 0
;;
esac
done
exec "$SCRIPT_DIR/apply-phase.sh" all "$@"