ข้อจำกัดความรับผิดชอบ: ค่อนข้างใหม่สำหรับ Linux
ข้อกำหนดของระบบที่เกี่ยวข้อง:
เมนบอร์ด: MSI B450 Tomahawk Max
CPU: AMD Ryzen 9 3950X (ไม่มี iGPU)
สล็อต PCIe 0: Nvidia 2070 Super (เชื่อมต่อจอภาพ 1x)
สล็อต PCIe 1: AMD RX 550X (เชื่อมต่อจอภาพ 2x)
ระบบปฏิบัติการ: Ubuntu 20.04.2 LTS
ฉันกำลังติดตาม คู่มือของ Noob ในการตั้งค่า Windows virtual machine ด้วย passthrough GPU สำหรับเล่นเกม โดยใช้ xubuntu เป็น hypervisor แทน Debian ซึ่งใช้ในคู่มือ ขั้นตอนทั้งหมดในการแยก GPU ของ Nvidia นั้นใช้ได้ แต่เมื่อฉันแยก GPU จริงโดยใช้ vfio ดูเหมือนว่า GPU AMD ของฉันจะปิดใช้งานหรืออย่างน้อยก็ไม่ได้ใช้งาน และฉันเหลือหน้าจอสีดำ (เปิดแต่) ไว้บนจอภาพทั้งหมด เพื่อให้หน้าจอแสดงอีกครั้ง ฉันต้องปิดใช้งาน IOMMU ในการตั้งค่า BIOS จากนั้นฉันจึงสามารถปิดใช้งาน vfio และเปิดใช้งาน IOMMU อีกครั้งได้
ฉันลองสลับกราฟิกการ์ด ซึ่งด้วยเหตุผลบางอย่างทำให้ ACS ยุ่งเหยิง ดังนั้น GPU แต่ละตัวจึงไม่สามารถแยกได้อย่างถูกต้อง ดังนั้นจึงไม่สามารถทำได้
ฉันพยายามติดตามคำตอบของ คำถามที่คล้ายกันนี้อย่างไรก็ตาม เมื่อฉันสร้างการกำหนดค่า xorg ฉันลงเอยด้วยส่วน GPU แยกกันสามส่วน โดยแต่ละส่วนถูกกำหนดให้กับแต่ละหน้าจอที่เชื่อมต่อ นอกจากนี้ GPU ของ AMD อยู่ด้านบน ซึ่งจะให้ความสำคัญในตรรกะของฉัน
ส่วน "อุปกรณ์"
ตัวระบุ "Card0"
ไดรเวอร์ "amdgpu"
รหัสบัส "PCI:37:0:0"
ส่วนท้าย
ส่วน "อุปกรณ์"
ตัวระบุ "Card1"
ไดรเวอร์ "amdgpu"
รหัสบัส "PCI:37:0:1"
ส่วนท้าย
ส่วน "อุปกรณ์"
ตัวระบุ "Card2"
คนขับ "นูโว"
รหัสบัส "PCI:38:0:0"
ส่วนท้าย
ฉันพยายามลบ card2 และจอแสดงผลที่เชื่อมต่ออย่างโง่เขลาซึ่งทำให้ระบบของฉันหยุดทำงานและบังคับให้ฉันติดตั้งใหม่
เนื่องจากฉันยังใหม่กับ linux และนี่เป็นครั้งแรกที่ฉันดำดิ่งสู่ xorg.conf ตอนนี้ฉันจึงนิ่งงัน ฉันจะเปลี่ยน GPU เริ่มต้นที่ใช้โดย OS จากสล็อต 0 เป็นสล็อต 1 ได้อย่างไร
ที่เกี่ยวข้อง, เอาต์พุตสำหรับ lspci -nn | เกรป vga
เป็น
25:00.0 คอนโทรลเลอร์ที่รองรับ VGA [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] [1002:699f] (rev c7)
26:00.0 คอนโทรลเลอร์ที่รองรับ VGA [0300]: NVIDIA Corporation TU104 [GeForce RTX 2070 SUPER] [10de:1e84] (rev a1)
และ ค้นหา /sys/kernel/iommu_groups/ -type l
ยืนยันว่า GPU เป็นหนึ่งเดียวในกลุ่ม IOMMU
ครั้งแรกที่ถาม โปรดแจ้งให้เราทราบว่าฉันพลาดอะไรไปหรือทำผิดพลาดไปหรือไม่ ขออภัยในความไม่เข้าใจ โปรดอธิบายให้ฉันฟังเหมือนฉันอายุ 5 ขวบ