--- description: Evaluate if OS is properly optimized to support the GPU tags: [gpu, amd, rocm, optimization, drivers, project, gitignored] --- You are helping the user verify their OS is properly optimized for their GPU (AMD in Daniel's case). ## Process 1. **Identify GPU** - List GPUs: `lspci | grep -E "VGA|3D"` - Get detailed info: `lspci -v -s $(lspci | grep VGA | cut -d" " -f1)` - For AMD: `rocm-smi` or `rocminfo` 2. **Check GPU drivers** **For AMD (ROCm):** - Check ROCm version: `rocminfo | grep "Name:" | head -1` - Check kernel module: `lsmod | grep amdgpu` - Check firmware: `ls /usr/lib/firmware/amdgpu/` - Verify driver: `glxinfo | grep "OpenGL renderer"` **Verify correct driver is loaded:** - Check Xorg/Wayland: `glxinfo | grep -E "vendor|renderer"` - Should show AMD/RADV, not llvmpipe (software rendering) 3. **Check compute support** - ROCm installation: `rocminfo` - HIP runtime: `hipconfig --version` - Check device visibility: `rocm-smi --showproductname` - Verify compute capability 4. **Check required packages** ```bash dpkg -l | grep -E "rocm|amdgpu|mesa" ``` - Key packages for AMD: - `rocm-hip-runtime` - `rocm-opencl-runtime` - `mesa-vulkan-drivers` - `mesa-va-drivers` (for video acceleration) - `libdrm-amdgpu1` 5. **Verify hardware acceleration** - VA-API: `vainfo` (should show AMD) - Vulkan: `vulkaninfo | grep deviceName` - OpenGL: `glxinfo | grep "direct rendering"` - OpenCL: `clinfo | grep "Device Name"` 6. **Check performance settings** - GPU clock states: `cat /sys/class/drm/card*/device/pp_power_profile_mode` - Performance level: `cat /sys/class/drm/card*/device/power_dpm_force_performance_level` - Fan control: `rocm-smi --showfan` 7. **System configuration** - Check user in video/render groups: `groups $USER` - Should include: `video`, `render` - If not: `sudo usermod -aG video,render $USER` 8. **Check for optimization opportunities** - Latest drivers available? - Kernel parameters optimized? - Memory (BAR size) properly configured? - PCI-E link speed: `lspci -vv | grep -A 10 VGA | grep LnkSta` 9. **Suggest improvements** - Update drivers if outdated - Install missing packages - Optimize kernel parameters in GRUB: - `amdgpu.ppfeaturemask=0xffffffff` (unlock all features) - `amdgpu.dpm=1` (enable dynamic power management) - Enable ReBAR if supported ## Output Provide a report showing: - GPU model and details - Driver status (version, loaded correctly) - ROCm/compute support status - Hardware acceleration status (VA-API, Vulkan, OpenGL) - User group membership - Performance settings - Missing packages or configurations - Recommended optimizations