#!/bin/bash # Script de diagnostic GPU automatique pour Ollama/ROCm # À exécuter sur folzo-Corp quand le GPU est à 100% LOG_FILE="/tmp/gpu-debug-$(date +%Y%m%d-%H%M%S).log" echo "==========================================" | tee -a "$LOG_FILE" echo "DIAGNOSTIC GPU - $(date)" | tee -a "$LOG_FILE" echo "==========================================" | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "1. UTILISATION GPU:" | tee -a "$LOG_FILE" echo "-------------------" | tee -a "$LOG_FILE" rocm-smi 2>&1 | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "2. PROCESSUS GPU:" | tee -a "$LOG_FILE" echo "-----------------" | tee -a "$LOG_FILE" rocm-smi --showpids 2>&1 | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "3. TOP OLLAMA:" | tee -a "$LOG_FILE" echo "--------------" | tee -a "$LOG_FILE" top -bn1 -p $(pgrep -d',' ollama) 2>&1 | head -20 | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "4. THREADS OLLAMA:" | tee -a "$LOG_FILE" echo "------------------" | tee -a "$LOG_FILE" ps -eLf | grep ollama | grep -v grep | head -30 | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "5. STATUT OLLAMA:" | tee -a "$LOG_FILE" echo "-----------------" | tee -a "$LOG_FILE" ollama ps 2>&1 | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "6. LOGS OLLAMA RECENTS:" | tee -a "$LOG_FILE" echo "-----------------------" | tee -a "$LOG_FILE" sudo journalctl -u ollama --since "1 minute ago" --no-pager 2>&1 | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "7. TEMPERATURE GPU:" | tee -a "$LOG_FILE" echo "-------------------" | tee -a "$LOG_FILE" cat /sys/class/drm/card0/device/hwmon/hwmon*/temp1_input 2>/dev/null | awk '{print "GPU Temp: " $1/1000 "°C"}' | tee -a "$LOG_FILE" echo "" | tee -a "$LOG_FILE" echo "==========================================" | tee -a "$LOG_FILE" echo "Log sauvegardé dans: $LOG_FILE" | tee -a "$LOG_FILE" echo "==========================================" | tee -a "$LOG_FILE" # Afficher aussi à l'écran cat "$LOG_FILE"