Spaces:
Sleeping
Sleeping
| #!/usr/bin/env python3 | |
| """ | |
| Проверка GPU в процессах Kiro. | |
| Определяет используется ли SwiftShader (software rendering). | |
| """ | |
| import sys | |
| try: | |
| import psutil | |
| except ImportError: | |
| print("❌ Установи psutil: pip install psutil") | |
| sys.exit(1) | |
| def check_kiro_gpu(): | |
| """Проверяет GPU процессы Kiro.""" | |
| print("🔍 Проверка GPU в Kiro...\n") | |
| gpu_processes = [] | |
| for proc in psutil.process_iter(['pid', 'name', 'cmdline', 'memory_info']): | |
| try: | |
| if proc.info['name'] and 'kiro' in proc.info['name'].lower(): | |
| cmdline = proc.info['cmdline'] or [] | |
| cmdline_str = " ".join(cmdline).lower() | |
| if "--type=gpu-process" in cmdline_str: | |
| mem_mb = proc.info['memory_info'].rss / (1024**2) | |
| is_swiftshader = "swiftshader" in cmdline_str | |
| use_angle = "--use-angle=" in cmdline_str | |
| # Извлекаем параметры | |
| angle_backend = "unknown" | |
| if use_angle: | |
| for arg in cmdline: | |
| if arg.startswith("--use-angle="): | |
| angle_backend = arg.split("=")[1] | |
| break | |
| gpu_processes.append({ | |
| 'pid': proc.info['pid'], | |
| 'memory_mb': mem_mb, | |
| 'swiftshader': is_swiftshader, | |
| 'angle': angle_backend, | |
| 'cmdline': cmdline_str | |
| }) | |
| except (psutil.NoSuchProcess, psutil.AccessDenied): | |
| continue | |
| if not gpu_processes: | |
| print("❌ GPU процессы Kiro не найдены") | |
| return | |
| print(f"Найдено GPU процессов: {len(gpu_processes)}\n") | |
| for i, gpu in enumerate(gpu_processes, 1): | |
| print(f"GPU Process #{i} (PID {gpu['pid']}):") | |
| print(f" Память: {gpu['memory_mb']:.0f} MB") | |
| if gpu['swiftshader']: | |
| print(f" Режим: 🔴 SwiftShader (Software Rendering)") | |
| print(f" ANGLE: {gpu['angle']}") | |
| print(f" ⚠️ ПРОБЛЕМА: Используется программный рендеринг!") | |
| print(f" 💡 Это причина лагов!") | |
| else: | |
| print(f" Режим: ✅ Hardware Acceleration") | |
| print(f" ANGLE: {gpu['angle']}") | |
| print() | |
| # Итоговый вердикт | |
| has_swiftshader = any(g['swiftshader'] for g in gpu_processes) | |
| print("=" * 60) | |
| if has_swiftshader: | |
| print("🔴 ВЕРДИКТ: Kiro использует Software Rendering") | |
| print("\nПричины:") | |
| print(" 1. Драйвера видеокарты устарели или не установлены") | |
| print(" 2. Видеокарта в блоклисте Chromium") | |
| print(" 3. Проблемы с DirectX/OpenGL") | |
| print("\nРешения:") | |
| print(" 1. Обнови драйвера видеокарты") | |
| print(" 2. Проверь: Ctrl+Shift+P → 'Preferences: Configure Runtime Arguments'") | |
| print(" 3. Добавь в argv.json: \"ignore-gpu-blocklist\": true") | |
| else: | |
| print("✅ ВЕРДИКТ: Hardware Acceleration работает") | |
| print(" Лаги не связаны с GPU") | |
| if __name__ == "__main__": | |
| check_kiro_gpu() | |