หน้าแรก / บทความ / Hardware
Hardware วิเคราะห์จากสเปค + รีวิว

วิเคราะห์และรีวิว: ผลงานของ Timur Kristóf จาก Valve ที่ช่วยยกระดับ GPU AMD รุ่นเก่าบน Linux

เจาะลึกผลงานของ Timur Kristóf จาก Valve และผลกระทบต่อประสิทธิภาพ ความเข้ากันได้ และประสบการณ์ใช้งาน GPU AMD รุ่นเก่าบน Linux

วิเคราะห์และรีวิว: ผลงานของ Timur Kristóf จาก Valve ที่ช่วยยกระดับ GPU AMD รุ่นเก่าบน Linux

Timur Kristóf วิศวกรทีมกราฟิก Linux ของ Valve ขึ้นพูดที่งาน XDC 2026 ที่โตรอนโต สรุปผลงานตลอดปีที่ผ่านมาที่เขาทุ่มให้กับการ์ดจอ AMD รุ่น GCN 1.0 และ 1.1 อายุร่วมสิบปี โดยย้ายการ์ดกลุ่มนี้จากไดรเวอร์ radeon รุ่นเก่าไปใช้ไดรเวอร์ amdgpu สมัยใหม่แทน

แรงจูงใจของงานนี้ไม่ใช่แค่เรื่องเทคนิค แต่เป็นเรื่องความยั่งยืน เขาพูดถึงการ “กันฮาร์ดแวร์ที่ยังใช้งานได้ไม่ให้ไปจบที่กองขยะ” ในช่วงที่ราคาการ์ดจอและแรมพุ่งสูง ทำให้การยืดอายุของเดิมมีความหมายมากขึ้นกว่าเดิม

ทำความเข้าใจงานของ Timur Kristóf: จากไดรเวอร์ radeon สู่ amdgpu

ก่อนหน้านี้การ์ดจอ AMD รุ่นเก่าใช้ไดรเวอร์ radeon ซึ่งเป็นโค้ดที่ออกแบบไว้ตั้งแต่ราวปี 2013 เสถียรแต่แทบไม่มีการพัฒนาต่อ และขาดฟีเจอร์ที่ซอฟต์แวร์ยุคใหม่ต้องการ เช่น Vulkan, DisplayPort MST, atomic modesetting และ HDR

งานของ Kristóf คือการย้ายการ์ดกลุ่มนี้ไปใช้ amdgpu ซึ่งเป็นไดรเวอร์หลักที่ AMD พัฒนาต่อเนื่องสำหรับการ์ดจอรุ่นใหม่ เมื่อย้ายมาแล้ว การ์ดเก่าจะเข้าถึง RADV ไดรเวอร์ Vulkan ของ Mesa ได้โดยตรง พร้อมระบบแสดงผลที่ทันสมัยกว่าเดิม

การทดสอบการ์ดจอ AMD รุ่นเก่าบนเดสก์ท็อป Linux ด้วยไดรเวอร์ amdgpu

GPU รุ่นไหนได้อานิสงส์: GCN 1.0 และ GCN 1.1

กลุ่มที่ได้รับผลโดยตรงคือ Southern Islands (GCN 1.0) อย่าง Tahiti, Pitcairn, Cape Verde, Oland และ Hainan ซึ่งอยู่ในการ์ดอย่าง Radeon HD 7970, HD 7870 และ R9 280X รวมถึง Sea Islands (GCN 1.1) อย่าง Hawaii และ Bonaire ที่อยู่ในการ์ดอย่าง R9 290 และ R7 260

ฝั่งเคอร์เนล Linux การเปลี่ยนแปลงนี้ทยอยลงตามรอบ: Linux 6.19 ทำให้การ์ด SI/CIK เปลี่ยนไปใช้ amdgpu เป็นค่าเริ่มต้น ตามด้วย Linux 7.1 ที่ครอบคลุม APU ตระกูล Kaveri และ Linux 7.3 ที่เพิ่ม DRM format modifiers กับระบบ soft reset เข้ามาอีกชั้น

การ์ดจอ ATI Radeon รุ่นเก่าที่เป็นตัวแทนของการ์ดกลุ่ม GCN 1.0 ที่ได้รับการปรับปรุงไดรเวอร์

บั๊กที่แก้และฟีเจอร์ที่เพิ่มเข้ามา

งานส่วนใหญ่ไม่ใช่ฟีเจอร์หวือหวา แต่เป็นการไล่แก้จุดที่ทำให้การ์ดรุ่นเก่าใช้งานจริงไม่ได้เต็มที่ ทั้งอาการจอกระพริบ ปัญหาตอน initialize และภาพเพี้ยนบนตัวควบคุมจอแสดงผล DCE 6 ถึง DCE 11 รวมถึงเพิ่มการรองรับขั้วต่อแบบอนาล็อกและ DisplayPort bridge encoder ที่การ์ดรุ่นนี้ยังใช้งานอยู่

ฝั่งพลังงานมีการแก้ปัญหาข้อมูล VBIOS เสียหายบนบอร์ดบางรุ่น ส่วนระบบกู้คืนเมื่อ GPU ค้างก็เปลี่ยนจากการรีเซ็ตทั้งระบบ มาเป็น soft reset ที่พักงานใหม่ สำรองข้อมูลทุก ring แล้วรีเซ็ตเฉพาะส่วนที่ค้างแทน นอกจากนี้ยังเปิดใช้งาน VCE1 encoder บนการ์ด Southern Islands และแก้ regression เรื่องตำแหน่งหน่วยความจำของ UVD ด้วย

เทียบไดรเวอร์ radeon กับ amdgpu หลังย้ายมาใช้งานจริง

Factor ไดรเวอร์ radeon (เดิม)ไดรเวอร์ amdgpu (หลังย้าย)
Vulkan ไม่รองรับรองรับผ่าน RADV
ระบบแสดงผล ไม่มี atomic modesetting, DisplayPort MST, HDRรองรับ atomic modesetting และมาตรฐานจอใหม่
การกู้คืนเมื่อ GPU ค้าง ต้องรีเซ็ตทั้งระบบรองรับ soft reset เฉพาะจุด
การพัฒนาต่อ แทบหยุดนิ่งตั้งแต่ราวปี 2013อยู่ในสายไดรเวอร์หลักที่ยังอัปเดตต่อเนื่อง

ตัวเลขประสิทธิภาพที่วัดได้ และสิ่งที่ตัวเลขนี้ไม่ได้บอก

Phoronix ทดสอบการ์ดกลุ่ม GCN 1.0 บน Linux 6.19 เปรียบเทียบไดรเวอร์ radeon กับ amdgpu แล้วพบว่าคะแนนเฉลี่ยเชิงเรขาคณิตของชุดทดสอบทั้งหมดอยู่ที่ 179.42 สำหรับ radeon และ 234.21 สำหรับ amdgpu คิดเป็นส่วนต่างราว 30%

กราฟเปรียบเทียบคะแนนเฉลี่ยเชิงเรขาคณิตของไดรเวอร์ radeon กับ amdgpu บนการ์ด GCN 1.0 ภายใต้ Linux 6.19 จาก Phoronix

ตัวเลขนี้มาจากการทดสอบของ Phoronix เอง ไม่ใช่เบนช์มาร์กที่ Kristóf เผยแพร่โดยตรง และเป็นค่าเฉลี่ยรวมจากชุดทดสอบหลายรายการ ไม่ใช่ตัวแทนของทุกเกมหรือทุกการ์ดในกลุ่ม GCN 1.0/1.1 บางงานอาจได้เพิ่มมากกว่านี้ บางงานอาจแทบไม่ต่าง ขึ้นอยู่กับว่าซอฟต์แวร์นั้นพึ่งพาฟีเจอร์ที่ amdgpu รองรับมากแค่ไหน

ผลกับการเล่นเกมและใช้งานจริงบน Linux

การย้ายไป amdgpu เปิดทางให้ RADV รันเกมที่ต้องการ Vulkan ได้ ซึ่งเดิมการ์ดกลุ่มนี้ทำไม่ได้เลยบนไดรเวอร์ radeon ปัจจุบัน RADV ยืนยันว่า Tahiti, Hawaii และ Polaris ผ่านชุดทดสอบ Vulkan 1.3 ใน CI ของ Mesa เรียบร้อยแล้ว เกมที่ใช้ Proton จึงมีโอกาสเปิดและเล่นได้มากขึ้นกว่าเดิม

การแก้ปัญหาจอแสดงผลและการรองรับ DRM format modifiers ยังส่งผลต่อผู้ใช้ Wayland โดยตรง เพราะ compositor สมัยใหม่หลายตัวต้องพึ่งฟีเจอร์นี้ ส่วนคนที่เจอ GPU ค้างบ่อยในงานกราฟิกหนักๆ ก็ได้ประโยชน์จาก soft reset ที่ไม่ต้องรีสตาร์ททั้งเซสชันเหมือนก่อน

เทียบกับการซื้อ GPU ใหม่ คุ้มกว่ากันแค่ไหน

Factor ใช้การ์ดเดิมกับ amdgpuซื้อ GPU AMD รุ่นใหม่
ค่าใช้จ่ายทันที ไม่ต้องจ่ายเพิ่มต้องมีงบซื้อการ์ดใหม่
ประสิทธิภาพ ดีขึ้นกว่าเดิมแต่ยังจำกัดตามสถาปัตยกรรมสูงกว่าชัดเจนในงานหนัก
ความยุ่งยาก ต้องใช้ดิสโทรและเคอร์เนลที่อัปเดตติดตั้งแล้วใช้งานได้ทันที
ความเหมาะสม เหมาะกับงานทั่วไปและเกมที่ไม่โหดเหมาะกับงานกราฟิกหนักหรือเกมใหม่ล่าสุด

ข้อดีและข้อจำกัดที่ควรรู้ก่อนคาดหวังผลลัพธ์

ข้อดี

  • +ยืดอายุการ์ด GCN 1.0/1.1 ให้ใช้ Vulkan และ Proton ได้
  • +ลดปัญหาจอแสดงผลและการค้างของ GPU ที่สะสมมานาน
  • +ไม่ต้องเสียเงินซื้อการ์ดใหม่เพื่อใช้งานทั่วไปต่อ

ข้อเสีย

  • −ต้องใช้เคอร์เนล Linux รุ่นใหม่พอ (6.19 ขึ้นไป) ถึงจะได้ครบ
  • −ตัวเลข 30% มาจากค่าเฉลี่ยรวม ไม่ใช่ทุกเกมจะได้เท่ากัน
  • −ประสิทธิภาพโดยรวมยังตามหลัง GPU รุ่นใหม่อยู่ดี

ต้นทุนที่ไม่ได้อยู่บนป้ายราคา GPU

การไม่ต้องซื้อการ์ดใหม่ไม่ได้แปลว่าไม่มีต้นทุนเลย ผู้ใช้ยังต้องอัปเดตดิสโทรให้ตามเคอร์เนลที่ต้องการ ตรวจสอบว่าการ์ดของตัวเองอยู่ในกลุ่มที่ได้รับการแก้ไขแล้วจริง และอาจต้องไล่เซ็ตค่า Proton เพิ่มเติมสำหรับบางเกม

อีกจุดที่มองข้ามได้ง่ายคือค่าไฟ การ์ดรุ่น GCN 1.0/1.1 กินไฟสูงกว่าการ์ดยุคใหม่เมื่อเทียบกับประสิทธิภาพที่ได้ สำหรับคนที่เปิดเครื่องเล่นเกมหรือทำงานนานๆ ค่าไฟสะสมอาจกลายเป็นต้นทุนแฝงที่คุ้มน้อยกว่าที่คิดในระยะยาว

บทสรุป

งานของ Timur Kristóf ไม่ได้ทำให้การ์ดจอ AMD อายุสิบปีแรงขึ้นมาเทียบรุ่นใหม่ได้ แต่ทำให้การ์ดกลุ่มนี้กลับมาใช้งานได้อย่างมีฟีเจอร์ครบและเสถียรขึ้นบน Linux ผ่านการย้ายไปไดรเวอร์ amdgpu ที่ยังได้รับการดูแลต่อเนื่อง

ถ้ายังมีการ์ด Southern Islands หรือ Sea Islands อยู่ในเครื่อง สิ่งที่ควรเช็กก่อนคืออัปเดตเคอร์เนลให้ถึง 6.19 เป็นอย่างน้อยนะ แล้วลองใช้งานจริงดูก่อนตัดสินใจเปลี่ยนการ์ด เพราะสำหรับงานทั่วไปและเกมที่ไม่ได้หนักมาก การ์ดเดิมอาจยังตอบโจทย์ได้ดีกว่าที่คิด