RPi-VK-Drive: คอนโทรลเลอร์ GPU ที่รองรับ Vulkan สำหรับบอร์ด RPI รุ่นเก่า

เมื่อไม่นานมานี้ มูลนิธิ Raspberry Pi ร่วมกับ Igaliaได้ประกาศต่อสาธารณชนถึงการทำงานร่วมกันในการพัฒนาไดรเวอร์ Vulkan สำหรับบอร์ด Raspberry Piในเบื้องต้น พวกเขาระบุว่าไดรเวอร์นี้จะใช้งานได้กับบอร์ดรุ่นล่าสุดเท่านั้น คือ "Raspberry Pi 4" และนั่นคือจุดเริ่มต้นของการพัฒนา พวกเขาไม่ได้กล่าวถึงวันที่แน่นอนว่าไดรเวอร์จะพร้อมใช้งานเมื่อใด หรือจะเหมาะสมสำหรับการใช้งานจริงเมื่อใด

สิ่งเดียวที่พวกเขากล่าวถึงคือ อาจเป็นไปได้ในช่วงครึ่งหลังของปี 2020 ในข้อกำหนดของตัวควบคุมนั้น ระบุว่าจำกัดเฉพาะการใช้งานร่วมกับตัวเร่งกราฟิก VideoCore VI ซึ่งใช้มาตั้งแต่รุ่น Raspberry Pi 4 และจะไม่สามารถใช้งานร่วมกับบอร์ดรุ่นเก่ากว่าได้ หมายความว่ารุ่น 3b+ และรุ่นก่อนหน้านั้นจะไม่สามารถใช้งานได้

นอกจากนี้พวกเขากล่าวว่าเมื่อเทียบกับ OpenGL การใช้ Vulkan สามารถปรับปรุงประสิทธิภาพของแอพพลิเคชั่นกราฟิกและเกมได้

ด้วยข่าวนี้แฟน ๆ และเจ้าของ Raspberry Pi ที่ไม่ใช่รุ่น 4 จำนวนมากรู้สึกผิดหวังเพราะพวกเขารู้สึกว่าพวกเขาถูกวางเฉยและพวกเขาประกาศในทางปฏิบัติว่าไม่คุ้มค่าที่จะสนับสนุนบอร์ดเหล่านี้ต่อไป

แต่ตอนนี้ในข่าวล่าสุดดูเหมือนว่ามีการเปลี่ยนแปลงเมื่อนักพัฒนามาพิสูจน์เป็นอย่างอื่น

เกี่ยวกับ RPi-VK-Driver 1.0

มาร์ติน โทมัส วิศวกรของ NVIDIA เป็นผู้รับผิดชอบในการพัฒนา RPi-VK-Driverซึ่งเป็นไดรเวอร์โอเพนซอร์ส ที่ตามคำกล่าวของผู้เขียนแล้ว:

"คอนโทรลเลอร์ได้รับการพัฒนาโดยอย่างไรก็ตามการพัฒนาเป็นโปรเจ็กต์ส่วนบุคคลโดยไม่เกี่ยวข้องกับ NVIDIA (คอนโทรลเลอร์ได้รับการพัฒนาในช่วงสองปีที่ผ่านมาในช่วงเวลาว่าง)"

ไดรเวอร์ RPi-VK-Driver 1.0 เวอร์ชันแรกนี้เป็นโอเพนซอร์สและเผยแพร่ภายใต้ใบอนุญาต MIT โดยรองรับ API กราฟิก Vulkanสำหรับบอร์ด Raspberry Pi รุ่นเก่าที่มี GPU Broadcom Videocore IV

ตัวควบคุมนี้เหมาะสำหรับบอร์ด Raspberry Pi ทุกรุ่นที่วางจำหน่ายก่อน Raspberry Pi 4

จากโมเดลที่รองรับมีการกล่าวถึงต่อไปนี้ในที่เก็บ:

  • Cero
  • ศูนย์ w
  • 1 รุ่น
  • 1 รุ่น A +
  • 1 รุ่น B
  • 1 รุ่น B +
  • 2 รุ่น B
  • 3 รุ่น A +
  • 3 รุ่น B
  • 3 รุ่น B +
  • โมดูลคำนวณ 1
  • โมดูลคำนวณ 3
  • โมดูลประมวลผล 3 lite
  • โมดูลคำนวณ 3+
  • โมดูลประมวลผล 3+ lite

เนื่องจากความสามารถของ GPU VideoCore IVซึ่งติดตั้งอยู่ใน Raspberry Pi รุ่นเก่าไม่เพียงพอสำหรับการใช้งาน Vulkan อย่างเต็มรูปแบบ ไดรเวอร์จึงใช้งานเพียงส่วนย่อยของ API Vulkan เท่านั้นซึ่งไม่ได้ครอบคลุมมาตรฐานทั้งหมด แต่พยายามปฏิบัติตามเท่าที่ทีมงานอนุญาต

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

ไดรเวอร์ยังรองรับคุณสมบัติต่างๆ เช่น MSAA (Multisample Anti-aliasing), เชเดอร์ระดับต่ำ และตัวนับประสิทธิภาพข้อจำกัดอย่างหนึ่งคือ การขาดการสนับสนุนเชเดอร์ GLSL ซึ่งยังไม่พร้อมใช้งานในขั้นตอนการพัฒนานี้

สำหรับผู้เขียนเราสามารถเน้นว่าเขายังรับผิดชอบในการเผยแพร่พอร์ตของเกม Quake 3 สำหรับ Raspberry Pi ซึ่งทำหน้าที่สาธิตความสามารถของคอนโทรลเลอร์ใหม่

เกมดังกล่าวมีพื้นฐานมาจากเอ็นจิ้น ioQuake3 ซึ่งได้เพิ่มแบ็กเอนด์การเรนเดอร์แบบแยกส่วนตาม Vulkan ซึ่งพัฒนาโดยโครงการ Quake III Arena Kenny Edition ด้วยการใช้คอนโทรลเลอร์ใหม่ในเกมทำให้สามารถแสดงผลได้มากกว่า 100 เฟรมต่อวินาที (FPS) บนบอร์ด Raspberry Pi 3B + ที่เอาต์พุต 720p

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


เพิ่มเป็นแหล่งข้อมูลที่ต้องการใน Google