ฉันต้องติดตั้ง Bumblebee สำหรับระบบ Hybrid Graphics เพื่อเปิดใช้งาน Optimus บน Ubuntu 16.04 หรือไม่?


10

ฉันถามคำถามนี้เพราะฉันได้พบบทความโดยทั่วไปบอกว่าคอมพิวเตอร์บางเครื่องได้เปิดใช้งานเทคนิค Optimus พร้อมไดรเวอร์กราฟฟิกที่เป็นกรรมสิทธิ์บางตัวตัวอย่างหนึ่งจากหน้า Ubuntu Wikiและอันนี้มาจาก pilot6ในขณะที่ผู้คนจำนวนมากยังคงมองหาวิธีการติดตั้ง Bumblebee ผ่านอินเทอร์เน็ต ดังนั้นฉันจึงสับสน ในขณะที่แม้ว่าแล็ปท็อป Lenovo Thinkpad P50 ของฉันจะอยู่ในเอกสารที่เชื่อมโยงข้างต้นเป็นระบบที่รองรับ แต่ฉันยังไม่ได้ติดตั้งไดรเวอร์ nvidia-361 ที่เป็นกรรมสิทธิ์ (ดูคำถามนี้ ) ซึ่งเอกสารบอกว่าทำงานได้ ในระบบของฉัน ฉันสงสัยเล็กน้อยเกี่ยวกับอำนาจของเอกสาร

ใครสามารถเสนอแหล่งที่เชื่อถือได้หลักฐานและประสบการณ์จริง (หรือเทคนิคเพื่อยืนยันว่ายังไม่พบอินสแตนซ์ที่ประสบความสำเร็จ) เพื่อยืนยัน Ubuntu 16.04 โดยแท้จริงสนับสนุนกราฟิกไฮบริด - การ์ดในตัวหนึ่งการ์ดและการ์ดแยกต่างหาก ฉันไม่ได้สร้างความมั่นใจมากพอจากการค้นหาง่าย ๆ ขอบคุณ!

คำตอบ:


18

ขณะนี้คุณมี (ที่ดีที่สุดในความรู้ของฉัน) สามความเป็นไปได้เกี่ยวกับ Nvidia hybrid graphics (เทคโนโลยี Optimus ที่เรียกว่า) ภายใต้ Linux:

  • ภมรแม้ว่าโครงการนี้อาจดูเหมือนจะตาย แต่ก็ไม่ได้ (เปิดเผย: ฉันเป็นส่วนหนึ่งของทีมพัฒนา) มันได้รับการพัฒนาอย่างช้าๆเป็นเวลานานเพราะเราทุกคนค่อนข้างยุ่ง แต่สิ่งต่าง ๆ ได้ดีขึ้นเมื่อเร็ว ๆ นี้และเราได้รับความช่วยเหลือจากผู้มีส่วนร่วมใหม่ เวอร์ชั่น 4.0 นั้นกำลังอยู่ในระหว่างการติดตามส่วนใหญ่จะแก้ไขข้อผิดพลาดและแบ็กเอนด์พรีมัสกลายเป็นค่าเริ่มต้น (คนส่วนใหญ่จะไม่สังเกตเห็นตั้งแต่ใช้มาแล้ว) Bumblebee ช่วยให้คุณสามารถรันเดสก์ท็อปและแสดงผลบนชิป Intel ในตัวในขณะที่ใช้งานแอพพลิเคชั่นที่เลือกบนการ์ด Nvidia แบบแยก มันสามารถใช้ไดร์เวอร์ nouveau หรือ nvidia ก็ได้ (เนื่องจากพวกเขาสนับสนุนการ์ดของคุณซึ่งพวกเขาควรทำ) และอาศัย bbswitch สำหรับการจัดการพลังงาน (พร้อมตัวเลือกในการใช้ vga_switcheroo หากใช้ nouveau) ในด้านประสิทธิภาพเนื่องจากวิธีการทำงาน Bumblebee เป็นคอขวด PCIe ซึ่งหมายความว่าคุณไม่สามารถบรรลุอัตราเฟรมที่สูงมาก (ซึ่งไม่ได้เป็นประโยชน์จริง ๆ อยู่แล้ว) แต่ยังรวมถึงการที่คุณไม่สามารถใช้พลังเต็มที่กับการ์ด Nvidia ของคุณโดยเฉพาะ ในกรณีที่จอแสดงผลบางส่วนบนแล็ปท็อปของคุณเชื่อมต่อกับชิป Nvidia (มักเป็นกรณีของ HDMI บนแล็ปท็อป Lenovo) Bumblebee ช่วยให้คุณใช้งานได้ แต่ต้องใช้การกำหนดค่าเล็กน้อยอาจจะน้อยกว่าอุดมคติและสูงกว่า ทั้งหมดไม่ได้ทดสอบเนื่องจากไม่มี Bumblebee devs เป็นเจ้าของแล็ปท็อปที่ได้รับผลกระทบ มิฉะนั้น Bumblebee สามารถทำงานได้กับ DRI2 หรือ DRI3 แต่มันต้องมีการกำหนดค่าเล็กน้อยอาจจะน้อยกว่าอุดมคติและเหนือสิ่งอื่นใดที่ไม่ได้ทดสอบเนื่องจากไม่มี Bumblebee devs เป็นเจ้าของแล็ปท็อปที่ได้รับผลกระทบ มิฉะนั้น Bumblebee สามารถทำงานได้กับ DRI2 หรือ DRI3 แต่มันต้องมีการกำหนดค่าเล็กน้อยอาจจะน้อยกว่าอุดมคติและเหนือสิ่งอื่นใดที่ไม่ได้ทดสอบเนื่องจากไม่มี Bumblebee devs เป็นเจ้าของแล็ปท็อปที่ได้รับผลกระทบ มิฉะนั้น Bumblebee สามารถทำงานได้กับ DRI2 หรือ DRI3
  • PRIMEนี่เป็นทางออกที่เหมาะสมสำหรับเทคโนโลยีนี้และมีการใช้งานในระดับที่เหมาะสม: ไดรเวอร์เคอร์เนล Xorg ... PRIME ช่วยให้คุณตั้งค่าเช่นเดียวกับ Bumblebee อย่างไรก็ตามเนื่องจากข้อกังวลทางกฎหมายสนับสนุนนูโวเท่านั้น นอกนั้นก็มีปัญหาบางอย่างเกี่ยวกับการฉีกขาดเนื่องจากการเปลี่ยนแปลงที่จำเป็นในไดรเวอร์ i915 นอกจากนี้นูโวยังมีปัญหามากมายเกี่ยวกับการแสดงดังนั้นจนกว่าจะได้รับการเตือนที่เหมาะสมคุณอาจมี perfs น้อยกว่าในเซ็ตอัพ Bumblebee + nvidia (Bumblebee + นูโวได้รับผลกระทบจากปัญหาเดียวกัน) PRIME ไม่พึ่งพา bbswitch สำหรับการจัดการพลังงาน แต่ควรใช้นูโว / เคอร์เนลในตัว PRIME ยังช่วยให้คุณใช้สายสัญญาณไปยังชิป Nvidia AFAIK ได้อย่างโปร่งใส เมื่อรันบน DRI2 จะต้องมีการกำหนดค่าเล็กน้อย (ขึ้นอยู่กับว่าคุณติดตั้ง Bumblebee / bbswitch ด้วยหรือไม่ จำนวนที่แน่นอนอาจแตกต่างกัน) แต่ไม่มีอะไรโดดเด่น VDPAU รองรับในโหมดนี้เช่นกัน (แต่จะต้องใช้ไดรเวอร์นูโวอีกครั้งเท่านั้น) เมื่อใช้งาน DRI3 ดูเหมือนจะไม่ค่อยใช้ (มากจน Bumblebee อาจได้รับการสนับสนุนสำหรับโหมดนี้ในรุ่นถัดไป) อย่างไรก็ตามคุณไม่ได้รับการสนับสนุน VDPAU และเห็นได้ชัดว่าไม่มีการรองรับ Nvidia output
  • ย้อนกลับ PRIMEที่นี่แนวคิดคือการใช้การ์ด Nvidia สำหรับทุกสิ่งรวมถึงเดสก์ท็อปและใช้เฉพาะชิป Intel เป็นตัวระบายเอาต์พุตสำหรับจอแสดงผลแล็ปท็อป สิ่งนี้ได้รับการสนับสนุนจากนูโว (ซึ่งมีปัญหาเรื่องการแสดงเหมือนด้านบน) และ nvidia (ด้วยเครื่องมือเฉพาะสำหรับ nvidia-prime ภายใต้ Ubuntu) ซึ่งหมายความว่าคุณจะไม่ได้รับการประหยัดพลังงานเลย (และเพิ่มการใช้พลังงานในทุกขั้นตอน) แต่เช่นเดียวกับ PRIME คุณสามารถใช้งานจอแสดงผลได้อย่างง่ายดายและเต็มที่ ในโหมดนี้คุณจะได้รับการ์ดที่ดีที่สุดของคุณเมื่อใช้ไดรเวอร์ nvidia นี่เป็นเพียงการกำหนดค่าเดียวที่คุณสามารถทำให้ VDPAU ทำงานบนชิป Nvidia โดยใช้ไดรเวอร์ nvidia อย่างไรก็ตามก็มีปัญหาบางอย่างเกี่ยวกับการฉีกขาดเนื่องจากการเปลี่ยนแปลงที่จำเป็นในไดรเวอร์ i915 โหมดนี้ใช้งานได้กับ DRI2 เท่านั้น ในความเป็นจริง,

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

PRIME และ Bumblebee สามารถอยู่ร่วมกันได้เมื่อใช้ DRI3 แต่ภายใต้ DRI2 หรือการสลับไปที่ Reverse PRIME ต้องมีการสลับไฟล์การกำหนดค่าและการรีสตาร์ทเซิร์ฟเวอร์ X ดังนั้นขึ้นอยู่กับความต้องการของคุณนี่คือสิ่งที่ฉันจะแนะนำ:

  1. หากคุณไม่สนใจเกี่ยวกับการแสดง แต่ให้ความสำคัญกับความสะดวกในการใช้งาน (สำหรับเอาต์พุตภายนอกเป็นหลัก - หากได้รับผลกระทบ) และ FLOSS ให้ไปที่PRIME
  2. หากคุณสนใจการแสดงมากขึ้น แต่มักใช้แล็ปท็อปของคุณในโหมดแบตเตอรี่และไม่ต้องการรีสตาร์ทเซิร์ฟเวอร์ X ของคุณตลอดเวลาให้ไปที่Bumblebee
  3. หากคุณสนใจการแสดงและใช้แล็ปท็อปของคุณเป็นส่วนใหญ่ในขณะที่ต่อกับ AC (และไม่สนใจการประหยัด W พิเศษ) ลองดูที่Reverse PRIMEโดยใช้ nvidia (คุณสามารถใช้ nvidia-prime เพื่อเปลี่ยนเป็นโหมด Intel เท่านั้นเมื่อทำงาน บางครั้งใช้แบตเตอรี่ แต่ฉันไม่แน่ใจว่าการ์ด Nvidia ถูกปิดในการตั้งค่านี้)

ขอบคุณสำหรับความกระจ่างในเรื่องนี้ - โดยเฉพาะอย่างยิ่งคุณอยู่ในทีม Bumblebee dev! ขอบคุณเวลาของคุณ! ฉันจะรอการเปิดตัวของ Bumblebee 4.0 และหวังว่าการติดตั้งบนเวิร์กสเตชันมือถือ Thinkpad นั้นง่ายพอ!
Xiaodong Qi

คำตอบที่ครอบคลุมนี้มีอายุเกือบ 6 เดือนแล้ว ในขณะเดียวกันด้วยไดรเวอร์ nVidia 370.28, Ubuntu 16.10 พร้อมเคอร์เนล 4.8, มีอะไรเปลี่ยนแปลงหรือปรับปรุงให้ดีขึ้น?
คุณ

ใช่มีการเปลี่ยนแปลงโดยเฉพาะอย่างยิ่งเกี่ยวกับการจัดการพลังงานด้วยเคอร์เนล 4.8 บนแล็ปท็อปรุ่นใหม่ กล่าวคือ bbswitch ทำงานได้ไม่ดีหากไม่มีตัวเลือกเคอร์เนลเฉพาะในกรณีนี้ (ดูgithub.com/Bumblebee-Project/bbswitch/issues/140 ) และโดยทั่วไปจำเป็นต้องได้รับการอัปเดตสำหรับวิธีการล่าสุด นี่คือการทำงานอย่างต่อเนื่อง แต่ไม่มีการทางพิเศษแห่งประเทศไทย เกี่ยวกับ PRIME, Nouveau ยังขาดการรวบรวมที่เหมาะสม ณ วันนี้ ดังนั้นไม่มีข่าวจริงที่นี่ AFAIK เกี่ยวกับ Reverse PRIME พวกเขาได้รับการแก้ไข / ปรับปรุงที่ปรับปรุงสถานการณ์ แต่ก็ยังห่างไกลจากอุดมคติ
Archange

หมายเหตุ: เกี่ยวกับปัญหาย้อนกลับ PRIME สิ่งหนึ่งที่ใหญ่อย่างต่อเนื่อง PRIME การประสานข้อมูลดูที่นี่devtalk.nvidia.com/default/topic/957814/linux/...
Archange

คุณช่วยชี้วิธีการติดตั้งและกำหนดค่า Reverse PRIME เพื่อใช้ในแบบที่คุณอธิบายได้หรือไม่?
mxdsp

3

แน่นอนว่า Ubuntu 16.04 รองรับโซลูชั่นกราฟิกไฮบริดโดยเฉพาะโน้ตบุ๊กที่มีกราฟิก Intel และกราฟิก NVIDIA พร้อมการรองรับ Optimus อย่าติดตั้งbumblebeeมันไม่ได้อยู่ระหว่างการพัฒนาอีกต่อไปเวอร์ชั่นล่าสุดคือตั้งแต่เดือนเมษายน 2556 วิธีแก้ปัญหาในการสลับไปมาระหว่างกราฟิกสองตัวในปัจจุบันคือnvidia-primeมีให้บริการในที่เก็บของ Ubuntu อย่างเป็นทางการ สิ่งสำคัญที่สุดในการทำให้ทุกอย่างทำงานอย่างถูกต้องคือวิธีการติดตั้งไดรเวอร์ ที่นี่คุณจะพบคำแนะนำในการติดตั้งไดรเวอร์ที่มีโอกาสสูงที่ทุกอย่างทำงานได้อย่างถูกต้อง:

ติดตั้งไดรเวอร์ NVIDIA


ฉันมี Ubuntu 16.0.4.1 และ Bumblebee ใช้งานได้ดีสำหรับฉัน
QkiZ

Bumblebee ใช้งานได้ดีสำหรับฉันหลังจากใช้เวลานานหลายชั่วโมงกับไดรเวอร์ NVIDIA ทั้งหมดที่โพสต์บน Askubuntu มี Nvidia 960m
Khashir

ฉันมี Thinkpad Quad5 W520 รุ่นเก่าพร้อมออพติมัส (Quadro 1000M) & Ubuntu 16.04 ฉันได้ทำงานกับไดรเวอร์ที่เป็นกรรมสิทธิ์ของ Nvidia และสามหน้าจอ (จอภาพ DP สองเครื่องผ่านทางแท่นวาง Lenovo และแผงแล็ปท็อป) อย่างไรก็ตามฉันไม่สามารถรับ Unity เพื่อแสดงพาเนลสามตัวฉันต้องใช้ Xfce (แม้ว่าจะมี lightdm, ตัวจัดการการแสดงผลของ Unity)
Tim Richardson

1

เหตุผลในการติดตั้ง bumblebee แทน nvidia-prime คือด้วย bumblebee คุณสามารถสลับได้ง่ายขึ้นระหว่าง GPU ทั้งสอง ด้วย nvidia-prime คุณสามารถเลือก GPU เดี่ยวสำหรับเซสชั่น X นั่นหมายความว่าหากคุณต้องการเปลี่ยน GPU เซสชัน X จะต้องเริ่มต้นใหม่ ด้วย bumblebee ไม่จำเป็นต้องรีสตาร์ทเซิร์ฟเวอร์ X
บล็อกนี้มีคำแนะนำในการติดตั้งสำหรับ bumblebee เมื่อวันที่ 16.04 ส่วนความเห็นยังอธิบายถึงเหตุผลในการติดตั้ง bumblebee แทน nvidia-prime ในรายละเอียดเพิ่มเติม


1
ฉันแนะนำให้สรุปสั้น ๆ ความคิดเห็นบางส่วนในโพสต์ต้นฉบับที่นี่ มีจุดสำคัญที่ดึงดูดผู้คนให้พิจารณา Bumblebee ที่ไม่ทำงานหรือทำให้เครื่องมือ NVidia ดีขึ้น
Xiaodong Qi

1

PRIME ทำงานได้ดีอย่างสมบูรณ์กับไดรเวอร์ที่เป็นกรรมสิทธิ์ของ NVidia ในขณะนี้ (ของฉันคือ 367) ดังนั้นฉันเดาว่าแม้ว่าคำตอบของ @ Archange นั้นกว้างขวางและมีรายละเอียดมาก แต่ PRIME ก็ไม่มีประสิทธิภาพในการทำงานอีกต่อไปและอาจเป็นตัวเลือกที่ดีที่สุด .

@Archange หรือคุณหมายถึงว่าด้วยนูโวมันสามารถเกิดขึ้นได้โดยอัตโนมัติสไตล์ Windows หรือไม่


1
ยิ่งไปกว่านั้น Mir และ Unity ทำให้การจัดการหน้าจอง่ายขึ้น
Xiaodong Qi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.