Add GPU error handling and performance optimizations

Introduces a comprehensive GPU configuration and fallback system to resolve GPU process launch failures (Error 18), including new modules for GPU management and performance monitoring. Adds a GPU diagnostics HTML page, optimized CSS for rendering, and a diagnostic startup script. Updates main and preload scripts for improved stability, async file operations, and enhanced API exposure. Site history and bookmarks handling are optimized for performance and reliability.
This commit is contained in:
2025-07-26 14:38:05 +12:00
parent 0b61f86dd4
commit fbd9ba8a1b
10 changed files with 1081 additions and 59 deletions
+48
View File
@@ -0,0 +1,48 @@
@echo off
echo Starting Nebula Browser with GPU diagnostics...
echo.
REM Check if running with administrator privileges
net session >nul 2>&1
if %errorLevel% neq 0 (
echo Warning: Not running as administrator. Some GPU features may not work.
echo Consider running as administrator if you encounter GPU issues.
echo.
)
REM Set environment variables for better GPU support
set ELECTRON_ENABLE_LOGGING=1
set ELECTRON_LOG_FILE=gpu-debug.log
REM Alternative GPU configurations
echo Choose GPU configuration:
echo 1. Default (recommended)
echo 2. Force GPU acceleration
echo 3. Disable GPU (software rendering)
echo 4. Debug mode with verbose logging
echo.
set /p choice="Enter choice (1-4): "
if "%choice%"=="1" (
echo Starting with default GPU configuration...
npm start
) else if "%choice%"=="2" (
echo Forcing GPU acceleration...
set ELECTRON_FORCE_HARDWARE_ACCELERATION=1
npm start
) else if "%choice%"=="3" (
echo Using software rendering...
set ELECTRON_DISABLE_GPU=1
npm start -- --disable-gpu
) else if "%choice%"=="4" (
echo Starting in debug mode...
set ELECTRON_ENABLE_STACK_DUMPING=1
npm start -- --enable-logging --log-level=0 --vmodule=gpu*=3
) else (
echo Invalid choice, using default...
npm start
)
echo.
echo Browser closed. Check gpu-debug.log for GPU-related messages.
pause