gpu-unlock: kernel module โอเพนซอร์สที่ปลดล็อกอัตรา FP16/BF16 (สะสมผลแบบ FP32) ของการ์ด RTX 30 ให้เท่ารุ่นมืออาชีพ ผู้ใช้รายงาน BF16 GEMM เร็วขึ้น 25–80% และ prefill ของ LLM เร็วขึ้น 14–36% แต่ decode แทบไม่เปลี่ยน
การ์ด RTX 3090 มือสองยังเป็นการ์ดยอดนิยมของสาย local LLM เพราะได้ VRAM 24GB ในราคาที่จับต้องได้ เมื่อ 24 ต.ค. 2026 repo Zagitta/gpu-unlock ขึ้นหน้าแรก Hacker News (258 คะแนน) และมีดาวบน GitHub กว่า 4,400 ดวง ตัว repo เปิดเมื่อ 18 ต.ค. ปัจจุบัน README ระบุเป็นเวอร์ชัน 1.0.0 และตารางการ์ดที่ผู้ใช้ทดสอบแล้วเพิ่งถูกเพิ่มเข้ามาเมื่อ 24 ต.ค. คำอธิบายบรรทัดแรกของ repo คือ “Unlock FP/BF16 instruction issue rate on Nvidia 3000’s cards to their professional equivalents”
ประเด็นคือการ์ด GeForce ตระกูล Ampere ทำ FMA แบบรับ input เป็น FP16/BF16 แล้ว สะสมผลเป็น FP32 ได้ในอัตราต่ำกว่าการ์ดมืออาชีพที่ใช้ชิปเดียวกัน README ระบุว่าการปลดล็อกนี้ “doubles the instruction issuing speed of FP/BF16 FMA into FP32 operations on GA102, GA103, GA104 and GA106 cards” ซึ่งตรงกับรูปแบบ BF16 ที่การเทรนและ inference ส่วนใหญ่ใช้อยู่
ทำงานอย่างไร
gpu-unlock เป็น Linux kernel module ที่โหลดจาก initramfs ก่อนโมดูล nvidia จะ bind การ์ด โดยรวมเทคนิค V67/PLM จากโปรเจกต์ปลดล็อกการ์ดขุดคริปโต CMP เข้ากับจังหวะ “ทำก่อนไดรเวอร์” แบบเดียวกับวิธี UEFI ตัวโมดูลจะรันขั้นตอนปลดล็อก เขียนค่า speed selector (SS0 0x88888888 ซึ่งเลือกอัตรา BF16 เต็ม และ SS1 0x8) แล้วสั่ง function-level reset ให้การ์ด จากนั้นไดรเวอร์ NVIDIA ตัวปกติที่ไม่ได้แก้ไขใด ๆ ก็โหลดตามมาตามปกติ ข้อดีเหนือการแพตช์ไดรเวอร์คือ ไม่ต้องแพตช์ใหม่ทุกครั้งที่ NVIDIA ออกไดรเวอร์เวอร์ชันใหม่
git clone https://github.com/Zagitta/gpu-unlock
cd gpu-unlock
make install
# แล้วเพิ่ม gpu_unlock.targets=all (หรือ PCI address) ใน kernel command line
ตัวโมดูลจะไม่ทำอะไรเลยถ้าไม่ได้ opt-in ผ่าน kernel command line รองรับแพ็กเกจ Arch, Debian/Ubuntu และ Fedora/RHEL รองรับหลายการ์ดในเครื่องเดียว รองรับการ์ดที่ต่อจอ และปลดล็อกซ้ำให้อัตโนมัติหลัง suspend-to-RAM (แต่ไม่รองรับ hibernate) ถ้าจะเลิกใช้ ก็แค่ลบพารามิเตอร์ออกจาก command line
ตัวเลขจากผู้ใช้
ผลวัดแรกใน issue #1 เป็น dense GEMM ขนาด 8192³ บน RTX 3090 Ti ที่ 450 W (ค่ามัธยฐาน 5 รอบ สะสมผลแบบ FP32):
| Input | ก่อน | หลัง |
|---|---|---|
| FP16 | 87.46 TFLOPS | 118.39 TFLOPS |
| BF16 | 87.50 TFLOPS | 157.41 TFLOPS |
| TF32 | 42.58 TFLOPS | 82.61 TFLOPS |
ตารางความเข้ากันได้ที่รวบรวมจากรายงานของผู้ใช้: RTX 3090 +25–67% (ตัวเลขต่ำสุดมาจากการ์ดที่จำกัดกำลังไฟไว้ 225 W), 3080 10GB +70–73%, 3070 +73–81%, 3060 12GB ราว +80% ส่วน 3080 Ti 20GB รุ่น OEM ปลดล็อกผ่านแต่ BF16 ยังเป็นครึ่งอัตราเท่าเดิม และ GA103 ยังไม่มีใครรายงาน README เตือนเองว่าแต่ละรายงานใช้ benchmark ของตัวเอง จึงเอามาเทียบกันตรง ๆ ไม่ได้
สำหรับงาน LLM สิ่งที่สำคัญกว่าคือผลจริงตอนรัน issue #25 วัดบน RTX 3090 สต็อกด้วย vLLM 0.30.0 กับโมเดล 27B BF16 (prompt 2,904 token) ได้ prefill เร็วขึ้น 33% (จากราว 12,346 เป็น 16,165 tok/s) และ TTFT ลดลง 24% แต่ decode เพิ่มแค่ 1.2% ซึ่งเป็นไปตามคาด เพราะ decode ถูกจำกัดด้วย memory bandwidth ไม่ใช่การคำนวณ ผู้รายงานคนนี้รันโหลดผสม (LLM, diffusion, image-to-video) ต่อเนื่องกว่า 8 ชั่วโมงโดยไม่เจอ Xid error และอุณหภูมิกับกำลังไฟไม่ต่างจากเดิม README สรุปไว้ว่า prefill ดีขึ้น 14–36%, งาน diffusion และ FlashAttention เร็วขึ้น ส่วน decode และงาน INT8 แทบเท่าเดิม และรายงานที่เทียบผลลัพธ์พบว่า ได้ผลแบบ bit-identical กับก่อนปลดล็อก
ข้อควรระวัง
- เป็นโปรเจกต์ไม่เป็นทางการ เราไม่พบท่าทีใด ๆ จาก NVIDIA ต่อโปรเจกต์นี้
- Secure Boot: รายงานที่เราอ่านต้องปิด Secure Boot เพราะโมดูลไม่ได้ถูก sign และ kernel จะถูกมาร์กเป็น tainted
- firmware ของ NVIDIA: ไฟล์
firmware/NOTICE.mdบอกว่า build จะดาวน์โหลดแพ็กเกจ NVIDIA ที่ pin checksum ไว้แล้วสร้าง payload ในเครื่อง firmware ยังอยู่ภายใต้สัญญาไลเซนส์ของ NVIDIA และ repo เขียนไว้ชัดว่า “redistribution approval is not claimed” ส่วนตัวโมดูลเป็น GPL-2.0 - Linux เท่านั้น และจอที่ต่อกับการ์ดจะดับไปช่วงสั้น ๆ ระหว่าง reset ตอนบูต
- ใน issue #1 ผู้รายงานเขียนเองว่าการแก้โค้ดและวิเคราะห์ผลทำโดย GPT-6.1 Sol (Codex) ส่วนการวัดทำบนฮาร์ดแวร์จริง ซึ่งเป็นภาพสะท้อนว่างาน reverse engineering ระดับฮาร์ดแวร์เริ่มมี AI ช่วยแล้วเช่นกัน
มุมมอง AI Curator
ข่าวนี้น่าตื่นเต้นสำหรับคนไทยสาย local AI เพราะในตลาดมือสองบ้านเรา RTX 3090 และ 3060 12GB ยังเป็นตัวเลือกคุ้มค่าที่สุดตัวหนึ่ง การได้ throughput BF16 เพิ่มเกือบเท่าตัว โดยไม่ต้องจ่ายเงินเพิ่ม มีความหมายมากกับงานที่ขึ้นกับการคำนวณ เช่น fine-tune ด้วย LoRA, สร้างภาพ/วิดีโอด้วย diffusion และ RAG ที่ prompt ยาว ๆ (prefill หนัก) แต่ต้องตั้งความคาดหวังให้ถูก: ถ้าคุณใช้ 3090 แชตกับโมเดลผ่าน llama.cpp หรือ Ollama ทีละคำถาม ความเร็วตอนพิมพ์คำตอบ (decode) จะแทบไม่เปลี่ยน เพราะคอขวดอยู่ที่แบนด์วิดท์หน่วยความจำ
อีกด้านที่ต้องคิดคือความเสี่ยงระยะยาว การล็อกอัตรานี้เป็นการแบ่งเกรดสินค้าโดยเจตนาของ NVIDIA ผมคาดว่า NVIDIA มีโอกาสปิดช่องนี้ในไดรเวอร์หรือ firmware รุ่นหลัง (นี่เป็นการคาดการณ์ของผม ไม่ใช่สิ่งที่ NVIDIA ประกาศ) และการปิด Secure Boot บนเครื่อง production ก็เป็นการแลกที่ทีมความปลอดภัยองค์กรน่าจะไม่ยอม คำแนะนำของผมคือ: ลองได้ถ้าเป็นเครื่องส่วนตัวหรือเครื่องแล็บที่ใช้เทรนหรือสร้างภาพเป็นหลัก ให้วัดก่อนและหลังด้วยงานจริงของคุณเอง ส่งผลกลับเป็น compatibility report ให้โปรเจกต์ และอย่าเพิ่งวางแผนซื้อฮาร์ดแวร์โดยนับประสิทธิภาพที่ได้จากการปลดล็อกนี้เป็นค่าตั้งต้น
แหล่งข่าว
อ่านเพิ่มในหมวด เครื่องมือนักพัฒนา
Betelgeuse รัน Qwen3.8 Flash Next ขนาด 68GB บน RTX 3060 กับแรม 16GB ส่วน Basalt วัดให้เห็นว่าเอนจินที่เร่งด้วยแฟล็กลัดทำให้โมเดลลืมของ
Betelgeuse ฟอร์ก llama.cpp ที่เปิดเมื่อ 31 ต.ค. ดึง expert จาก NVMe เข้า VRAM ตามต้องการ อ้าง 22 tok/s แบบไม่ทิ้ง expert แต่ README เตือนเองว่ายังทดลองและตัวเลขมาจากคนละรอบ วันเดียวกันผู้พัฒนา Basalt เผยผลวัดว่าแฟล็กเร่งความเร็วทำคุณภาพ Q8 ตกไปใกล้ Q2
กฎห้ามโคลนเกมของ Claude Code เริ่มกระทบงานจริง บริษัทรับทำเกมกระดานร้องงานลูกค้าหยุด แต่รายงานหลายชิ้นปนกับตัวกรองไซเบอร์คนละเรื่อง
ต่อจากที่เราพบกฎนี้ในไบนารี Claude Code ผู้ใช้เริ่มรายงานว่างานเชิงพาณิชย์ถูกปฏิเสธ และ Tom's Hardware กับ Mashable หยิบไปรายงาน แต่เมื่อไล่ issue ที่อ้างถึง พบว่าหลายรายการเกิดก่อนกฎจะมา จึงน่าจะเป็นตัวกรองด้านไซเบอร์ ส่วน Anthropic ยังไม่ชี้แจง
Claude Code ส่ง transcript ของ background agent ให้โมเดลทุก ~30 วินาทีเพื่อเขียนสถานะ 3–5 คำ ผู้วัดรายงานกินราว 16% และยังปิดแบบทางการไม่ได้
รายงานอิสระพบว่าฟีเจอร์ agent_summary ของ Claude Code ส่ง transcript เต็มของ background agent ไปถามสถานะทุก ~30 วินาที คิดเป็น 16.4% ของค่าใช้จ่ายในระบบของผู้วัด Issue เปิดมาตั้งแต่ ส.ค. ยังไม่มีสวิตช์ปิดที่รองรับ เราตรวจพบโค้ดนี้ใน 2.1.314 และพบกฎใหม่เรื่องเกมที่ไม่อยู่ใน changelog