9 คะแนน โดย GN⁺ 2024-08-09 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • โปรเจ็กต์ที่มีเป้าหมายเพื่อแทนที่ CUDA Driver API เพื่อให้สามารถรันโค้ด CUDA บน Nvidia GPU ได้โดยไม่ต้องพึ่งพา CUDA runtime แบบปิด
  • สื่อสารกับฮาร์ดแวร์โดยตรงผ่าน ioctls (โดยเฉพาะสิ่งที่เรียกว่า rmapi ใน open GPU kernel module ของ Nvidia) และ QMD ซึ่งเป็นโครงสร้างคิวคำสั่ง MMIO ของ Nvidia
  • สามารถอัปโหลดไบนารี CUDA ELF ไปยัง GPU และรันผ่านคิวคำสั่งได้
  • ความสามารถปัจจุบัน
    • จัดสรรและคืนหน่วยความจำ GPU รวมถึงแมปหน่วยความจำเพื่อให้ CPU เข้าถึงได้
    • สามารถอัปโหลดไบนารี CUDA ELF ไปยัง GPU ได้
    • รัน CUDA kernel ผ่านคิวคำสั่ง
  • สัญญาอนุญาต MIT

สรุปโดย GN⁺

  • LibreCUDA เป็นโปรเจ็กต์ที่ช่วยให้รันโค้ด CUDA บน Nvidia GPU ได้โดยไม่ต้องใช้ CUDA runtime แบบปิด
  • ขณะนี้ยังมีการใช้งานพื้นฐานเท่านั้น และยังไม่พร้อมสำหรับการใช้งานจริง
  • โปรเจ็กต์ที่มีความสามารถคล้ายกันคือ ROCm ซึ่งมอบความสามารถคล้าย CUDA บน AMD GPU

1 ความคิดเห็น

 
GN⁺ 2024-08-09
ความเห็นจาก Hacker News
  • เป้าหมายของ Open CUDA คือทำให้สามารถรันได้บน GPU อื่นที่ไม่ใช่ NVIDIA GPU

    • ถ้ายังต้องซื้อ NVIDIA GPU ก็ไม่มีความหมาย
    • ถ้ามีการแข่งขันที่แท้จริง ก็น่าจะซื้ออุปกรณ์ที่มี VRAM มากกว่าได้ง่ายขึ้น
    • สักวันหนึ่งก็น่าจะรัน Llama 405b แบบโลคัลได้
  • มีประสบการณ์กับ CUDA ค่อนข้างจำกัด แต่สงสัยว่านี่จะช่วยแก้ปัญหาเรื่องเวอร์ชัน dependency ของ CUDA/CUDNN ที่เกิดขึ้นตอนรันไลบรารี ML ต่าง ๆ (เช่น TensorFlow, ONNX) ได้หรือไม่

  • ดีมาก

    • นี่คือทั้งหมดที่ฉันต้องการจาก CUDA runtime
    • น่าจะสามารถรัน LLVM libc unit test ได้
    • สิ่งนี้อาจทำให้ไลบรารีของ AMD ที่ใช้แนวทาง direct system call แบบเดียวกันมีความสมเหตุสมผลมากขึ้น
  • สำหรับโปรเจ็กต์ที่พึ่งพา CUDA การย้ายจาก LibreCUDA ไปยัง HiP เพื่อให้ได้อิสระด้านแพลตฟอร์มน่าจะเป็นก้าวแรก

  • สงสัยว่า CUDA ELF file คืออะไร

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

  • ดูเหมือนจะพลาดโอกาสในการตั้งชื่อว่า CUDA Libre

  • สงสัยว่ายังต้องรันไดรเวอร์กราฟิกแบบ proprietary ของ NVIDIA อยู่หรือไม่ หรือว่าไม่เกี่ยวกันเลย

  • ผู้เขียนน่าจะต้องเริ่มคิดเรื่องการแจ้งเตือนการละเมิดเครื่องหมายการค้าแล้ว

  • หลังจากที่ ZLUDA ถูกยุติตามคำขอของ AMD ก็จำเป็นต้องมีตัวแทนของ ZLUDA ในฐานะวิธีทั่วไปสำหรับปลด dependency จาก CUDA

    • ต้องการสิ่งที่ไม่ถูกผูกติดกับฮาร์ดแวร์ของ NVIDIA