This document chronicles the successful restoration and hardening of a legacy NVIDIA GTX 760 (Kepler architecture) on Ubuntu 26.04 running Linux Kernel 7.0. Official support for this hardware ended with the 470 driver branch, which is natively incompatible with Kernel 7.0.
| Component | Specification |
|---|---|
| GPU Chip | GK104 (Kepler Architecture) |
| CUDA Cores | 1,152 |
| VRAM | 2 GB GDDR5 (256-bit interface) |
| Base / Boost Clock | 980 MHz / 1,033 MHz |
| TDP | 170W |
| Release Date | June 2013 |
| Compute Capability | 3.0 |
Ubuntu 26.04 dropped the nvidia-driver-470 package. Modern drivers (535+) do not support Kepler. Kernel 7.0 introduced significant changes to memory management and GPL-only symbols that broke original 470 sources.
- Clean Slate: Purged all modern
nvidia-*packages and ghost modules. - Community Patching: Utilized the
joanbm/nvidia-470xx-linux-mainlinepatchset. - Iterative Compilation: Force-compiled the
470.256.02driver through DKMS, bridging the "symbol wall" formigrate_vmaandkvmalloc. - The Aperture Bridge: Surgically injected C code using
aperture_remove_conflicting_pci_devicesintonvidia-drm-drv.cto fix the structural black-screen failure on Kernel 7.0. - Boot Sealing: Blacklisted
nouveauand regeneratedinitramfs.
Manually built and enabled nvidia-persistenced to prevent the card from cycling power states.
Created a device-aware systemd service (nvidia-reclock.service) that monitors /dev/nvidia0 and forces the card into its 1000MHz+ "Performance State" (0f).
Deployed an automated fan-curve service (nvidia-fan-curve.sh) that dynamically adjusts fan speed (30% @ 40C to 100% @ 80C) to safely maintain the high-performance clock state.
Created explicit ICD manifests in /usr/share/glvnd/ to force the system to use NVIDIA GLX/EGL libraries, resolving the GNOME login loop and libnvidia-glcore.so segfaults.
- Toolkit Version: CUDA 10.2 (Final branch with stable CC 3.0 support).
- Compiler Shield: Deployed
/usr/local/bin/gcc-cuda-shieldto strip modern GCC 15 attributes from system headers that crash the legacynvcccompiler. - Verification: Empirically proven with a live 4K Matrix Multiplication stress test on hardware.
Concurrent with the driver work, the euler-scraper was rebuilt into a production microservice:
- Concurrency Control: Semaphore-based (1-instance limit).
- Network Optimization: Blocked media/ads (70% bandwidth reduction).
- Stability: Added a "Zombie-Killer" hard-timer for browser processes.
