gpu-unlock-ada: Can Thiệp Kernel Module Để Mở Khóa Băng Thông Tensor Trên GPU NVIDIA Ada Lovelace

6 phút đọc

Repository JustAResearcher/gpu-unlock-ada là một dự án nguồn mở thu hút sự chú ý lớn từ cộng đồng kỹ thuật máy tính và nghiên cứu AI. Được phát triển chủ yếu bằng ngôn ngữ C theo giấy phép GPL-2.0-only, repository này hiện ghi nhận 662 stars và 81 lượt forks. Dự án cung cấp mã nguồn kernel module trên Linux nhằm can thiệp vào cơ chế ghi đè tốc độ SM (speed-select override) của các dòng card đồ họa kiến trúc Ada Lovelace trước khi driver chính thức của NVIDIA khởi chạy.

Cơ chế can thiệp firmware và quy trình xử lý hạ tầng

Phương pháp của gpu-unlock-ada dựa trên việc tích hợp payload phân tích từ dự án TOTORONG/AD103_win_unlocker vào hệ thống mã nguồn module Linux của Zagitta/gpu-unlock. Quá trình thực thi không yêu cầu người dùng phải chỉnh sửa (patch) driver NVIDIA hay can thiệp ứng dụng UEFI.

Khi hệ thống khởi động, kernel module thực hiện các bước kỹ thuật chính:

  • Tải và chạy firmware có chữ ký số của NVIDIA.
  • Xác nhận đánh dấu hoàn tất (completion marker) và kiểm tra các quyền hạn cần thiết của payload.
  • Ghi các giá trị điều khiển SS0 0x88888888 và SS1 0x8.
  • Thực hiện lệnh PCI Function Level Reset (FLR) nhằm làm sạch trạng thái trước khi driver gốc NVIDIA (phiên bản thử nghiệm như 615.78.08) tiếp quản thiết bị.

Kết quả đo đạc thực tế trên RTX 4090 và RTX 4070 Ti SUPER

Dữ liệu thử nghiệm được ghi nhận chi tiết trong repository cho thấy sự cải thiện rõ rệt về tần suất phát lệnh (issue rate) Tensor nhưng mức độ tăng trưởng thực tế phụ thuộc vào từng dạng bài test:

  • Đối với GeForce RTX 4090 (AD102, ID 10de:2684): Thử nghiệm độc lập trên môi trường Linux 7.2.11 với giới hạn công suất 450W cho thấy tốc độ lệnh FP16/FP32 tăng từ 160.4 lên 320.4 TF/s (gần 2 lần) và BF16/FP32 tăng từ 159.7 lên 320.2 TF/s. Khi chạy benchmark cuBLAS GEMM thực tế, mức tăng hiệu năng đạt từ 12–34% đối với FP16 và 16–20% đối với BF16 tùy thuộc vào kích thước ma trận. Tuy nhiên, ở ma trận kích thước 4096³, hiệu năng gần như không đổi. Mức hiệu năng của INT8, dp4a và FP32 scalar giữ nguyên ở mức baseline. Tùy chọn thực nghiệm gpu_unlock.rtx4090d_experimental=1 cũng hỗ trợ dòng RTX 4090 D (10de:2685).
  • Đối với RTX 4070 Ti SUPER (AD103, ID 10de:2705): Thử nghiệm cold boot với driver 580.178.04 dưới giới hạn công suất 240W ghi nhận tốc độ Tensor FP16/FP32 tăng từ 95.0 lên 189.9 TF/s và BF16/FP32 tăng từ 95.0 lên 189.7 TF/s. Tốc độ TF32/FP32 tăng từ 47.49 lên 94.51 TF/s (1.99 lần). Ngược lại, thử nghiệm CUTLASS FP8 GEMM (E4M3 FP8/FP32) chỉ biến đổi từ 59.326 TF/s lên 59.495 TF/s (tăng 0.3%, không đáng kể). Các phép toán Unsigned INT4/INT32 duy trì ở mức 754.8 TOP/s.

Tác giả lưu ý rõ: Các chỉ số TFLOPS gia tăng nêu trên phản ánh tốc độ phát lệnh tại mức thanh ghi (register-resident issue rates), không đại diện cho mức tăng tốc toàn cục của ứng dụng end-to-end hay các tác vụ suy luận AI phức tạp.

Quy trình biên dịch nội bộ và điều kiện vận hành

Dự án tuân thủ nguyên tắc không phân phối sẵn các tệp binary hay firmware đã qua chế bản của NVIDIA. Toàn bộ tài sản firmware được tạo cục bộ (locally generated) trên máy người dùng thông qua công cụ build:

  • Hệ thống tự động tải gói driver gốc NVIDIA 610.43.03 qua giao thức HTTPS và kiểm tra mã SHA-256 trước khi trích xuất.
  • Hỗ trợ đóng gói cho các bộ tạo initramfs phổ biến như dracut, initramfs-tools, và mkinitcpio (có sẵn các lệnh make arch, make deb, make rpm).
  • Yêu cầu bắt buộc hệ thống phải trải qua quá trình khởi động lạnh (cold boot / tắt nguồn hoàn toàn) trong lần đầu thiết lập để đưa GPU về trạng thái firmware chưa khởi tạo. Nếu thiết bị đã bị chiếm dụng bởi driver NVIDIA hoặc còn lưu trạng thái WPR2, module sẽ từ chối thực thi để tránh lỗi.
  • Người dùng phải cấu hình tham số tham chiếu card thông qua kernel command line, ví dụ lệnh chọn chính xác địa chỉ PCI gpu_unlock.targets=.... Dòng RTX 4070 Ti SUPER đòi hỏi thêm cờ kích hoạt gpu_unlock.ad103_experimental=1 và địa chỉ PCI cụ thể.

Những điểm hạn chế và vấn đề chưa xác định

Dù mang lại kết quả khả quan về mặt chỉ số kỹ thuật, repository gpu-unlock-ada vẫn tồn tại nhiều giới hạn mà người dùng cần cân nhắc:

  • Chưa kiểm chứng độ ổn định lâu dài: Các con số đo đạc mới chỉ dựa trên một số chu kỳ chạy benchmark ngắn trên số lượng phần cứng rất hạn chế (chỉ 1 card RTX 4070 Ti SUPER được xác minh).
  • Khả năng tương thích hẹp: Module không hỗ trợ các dòng card Ada chuyên nghiệp (NVIDIA RTX A-series), dòng Data Center, hay các ID Ada chưa được khai báo. Việc dùng chung firmware không đảm bảo module sẽ hoạt động trên các phần cứng chưa thử nghiệm.
  • Tính năng đồ họa và đa GPU: Việc bàn giao hiển thị màn hình (display handoff) qua FLR có thể làm đen màn hình tạm thời cho đến khi nvidia-drm tiếp quản. Dự án chưa kiểm chứng tính ổn định khi chạy mô hình nhiều card đồ họa (multi-card operation).
  • Chưa đánh giá toàn diện FP8: Các nhân tính toán (kernel) FP8 ngoài bài test CUTLASS nêu trên hiện chưa được kiểm thử đầy đủ.

Nguồn tham khảo: Xem bài gốc

📅 Âm: 4/10 · Canh Dần

📅 Lịch Âm Dương NsN

×
Hôm Nay · Thứ Năm
Âm Lịch: 4 Tháng 10
Năm Bính Ngọ
📌 Can Chi: Canh Dần
✨ Hoàng Đạo: Tý (23-1), Sửu (1-3), Thìn (7-9), Tỵ (9-11), Mùi (13-15), Tuất (19-21)
Vĩnh Phúc (Liên Bảo - Vĩnh Yên)
31°C
Nắng Đẹp
💧 83% | 💨 18 km/h
Hôm nay 32°
02/11 28°
03/11 30°
04/11 31°
05/11 31°