Czy muszę zainstalować Bumblebee for Hybrid Graphics system, aby włączyć Optimus na Ubuntu 16.04?

10

Zadaję to pytanie, ponieważ znalazłem artykuły w zasadzie mówiące, że niektóre komputery włączyły technikę Optimus z niektórymi sterownikami graficznymi, na przykład ten ze strony Wiki Ubuntu i ten z pilot6 , podczas gdy wiele osób wciąż szuka metod instalacji Trzmiel przez Internet. Więc się pomyliłem. Tymczasem chociaż mój laptop, Lenovo Thinkpad P50, jest wymieniony w powyższym dokumencie jako obsługiwany system, ale nie udało mi się pomyślnie zainstalować sterownika nvidia-361 (patrz to pytanie ), o którym mówi ten dokument, aby działał w moim systemie. Mam trochę podejrzeń co do autorytetu dokumentu.

Czy ktokolwiek mógłby zaoferować pewne wiarygodne źródła, dowody i prawdziwe doświadczenia (lub techniki potwierdzające, jeśli nie znaleziono jeszcze sukcesu) w celu potwierdzenia, że ​​Ubuntu 16.04 rzeczywiście natywnie obsługuje grafikę hybrydową - jedną kartę zintegrowaną i jedną kartę dyskretną - nie gorsze niż Bumblebee? Nie zbudowałem wystarczającej pewności siebie przez proste wyszukiwanie. Dzięki!

Xiaodong Qi
źródło

Odpowiedzi:

18

Obecnie masz (zgodnie z moją najlepszą wiedzą) trzy możliwości dotyczące grafiki hybrydowej Nvidii (tak zwana technologia Optimus) pod Linuksem:

  • Trzmiel.Chociaż ten projekt może wydawać się martwy, nie jest (odkrywca: Jestem częścią zespołu deweloperów). Rozwija się powoli od bardzo dawna, ponieważ wszyscy byliśmy dość zajęci, ale ostatnio sytuacja się poprawiła i otrzymaliśmy pomoc od nowych autorów. Wersja 4.0 jest na dobrej drodze, głównie poprawki błędów, a backend Primus staje się domyślny (większość ludzi nie zauważy, ponieważ już go używali). Bumblebee pozwala na uruchamianie pulpitu i wyświetlanie na zintegrowanym układzie Intel, podczas uruchamiania wybranych aplikacji na dyskretnej karcie Nvidia. Może używać sterownika nouveau lub nvidia (biorąc pod uwagę, że obsługują twoją kartę, co powinny zrobić oba) i polega na bbswitch do zarządzania energią (z opcją użycia vga_switcheroo, jeśli używasz nouveau). Po stronie wydajności, z powodu tego, jak to działa, Bumblebee ma wąskie gardło PCIe, co oznacza, że ​​nie możesz osiągnąć bardzo wysokich prędkości klatek (co i tak nie jest tak naprawdę przydatne), ale także, że nigdy nie możesz osiągnąć pełnej mocy swojej dedykowanej karty Nvidia. W przypadku, gdy niektóre wyjścia wyświetlacza w twoim laptopie są podłączone do układu Nvidia (często w przypadku HDMI w laptopie Lenovo), Bumblebee pozwala na ich użycie, ale wymaga nieco konfiguracji, jest prawdopodobnie znacznie mniej niż idealny i powyżej wszystko nie zostało przetestowane, ponieważ żaden z twórców Bumblebee nie posiada laptopa, którego dotyczy problem. W przeciwnym razie Bumblebee działa z DRI2 lub DRI3. ale wymaga nieco konfiguracji, jest prawdopodobnie znacznie mniej niż idealny, a przede wszystkim nie został przetestowany, ponieważ żaden deweloper Bumblebee nie posiada laptopa, którego dotyczy problem. W przeciwnym razie Bumblebee działa z DRI2 lub DRI3. ale wymaga nieco konfiguracji, jest prawdopodobnie znacznie mniej niż idealny, a przede wszystkim nie został przetestowany, ponieważ żaden deweloper Bumblebee nie posiada laptopa, którego dotyczy problem. W przeciwnym razie Bumblebee działa z DRI2 lub DRI3.
  • GŁÓWNY.Jest to właściwe rozwiązanie dla tej technologii i zostało zaimplementowane na odpowiednim poziomie: sterowniki, jądro, Xorg… PRIME pozwala na taką samą konfigurację jak Bumblebee, jednak ze względów prawnych obsługiwany jest tylko nouveau. Poza tym ma również pewne problemy z rozrywaniem z powodu zmian potrzebnych w sterowniku i915. Ponadto nouveau nadal ma wiele problemów związanych z wydajnością, więc dopóki nie zostanie poprawnie przywrócone, możesz mieć mniej perfów niż w konfiguracji Bumblebee + nvidia (Bumblebee + nouveau ma oczywiście ten sam problem). PRIME nie opiera się na przełączniku bbswitch do zarządzania energią, ale raczej używa zintegrowanego nouveau / kernel. PRIME pozwala również na użycie wyjść połączonych z układem Nvidia dość transparentnie AFAIK. Podczas pracy na DRI2 wymaga to trochę konfiguracji (w zależności od tego, czy masz również zainstalowany Bumblebee / bbswitch, dokładna kwota może się różnić), ale nic szczególnego. VDPAU jest również obsługiwane w tym trybie (ale tylko w przypadku sterownika nouveau). Podczas pracy na DRI3 korzystanie z niego wydaje się bardzo niemożliwe (do tego stopnia, że ​​Bumblebee prawdopodobnie uzyska wsparcie dla tego trybu w następnej wersji). Jednak nie otrzymujesz wsparcia VDPAU i najwyraźniej nie obsługuje również wyjść Nvidii.
  • Odwróć PRIME.Tutaj chodzi o to, aby używać karty Nvidia do wszystkiego, łącznie z komputerem stacjonarnym, i używać tylko procesora Intel jako zlewu wyjściowego wyświetlacza laptopa. Obsługuje to zarówno nouveau (z tymi samymi problemami z wydajnością jak powyżej) i nvidia (na przykład z dedykowanym narzędziem nvidia-prime w Ubuntu). Oznacza to, że w ogóle nie oszczędzasz energii (i uzyskujesz zwiększone zużycie energii na wszystkich etapach), ale tak jak w przypadku PRIME, możesz łatwo i w pełni wykorzystać każdy wyświetlacz. W tym trybie uzyskasz to, co najlepsze z dedykowanej karty, korzystając ze sterownika nvidia. Jest to również jedyna konfiguracja, w której VDPAU może pracować na układzie Nvidia za pomocą sterownika nvidia. Ma jednak również pewne problemy z rozrywaniem ze względu na zmiany potrzebne w sterowniku i915. Ten tryb działa tylko z DRI2. W rzeczywistości,

Zauważ, że takie rzeczy jak CUDA lub OpenCL nie wymagają żadnego z tych narzędzi, tylko trochę konfiguracji, ale Bumblebee jako tryb łatwego korzystania z nich, przy jednoczesnym zachowaniu innych zalet.

PRIME i Bumblebee mogą współżyć podczas korzystania z DRI3, ale w DRI2 lub przejście na Reverse PRIME wymaga zmiany plików konfiguracyjnych i zrestartowania serwera X. Tak więc, w zależności od potrzeb, doradziłbym:

  1. Jeśli nie zależy Ci na wydajności, ale zależy Ci na łatwości użycia (głównie w przypadku wyjść zewnętrznych - jeśli dotyczy) i FLOSS, wybierz PRIME.
  2. Jeśli bardziej zależy Ci na wydajności, ale często używasz laptopa w trybie bateryjnym i nie chcesz cały czas restartować serwera X, wybierz Bumblebee.
  3. Jeśli zależy Ci na wydajności i używasz głównie laptopa podłączonego do prądu zmiennego (i nie martwisz się o dodatkowe oszczędności W), spójrz na Reverse PRIME za pomocą nvidii (możesz użyć nvidia-prime, aby przełączyć się w tryb tylko Intel podczas działania czasami na baterii, ale nie jestem pewien, czy karta Nvidia jest wyłączona w tej konfiguracji).
Archange
źródło
Dziękujemy za wyjaśnienie tej kwestii - szczególnie jesteś w zespole deweloperów Bumblebee! Doceń swój czas! Będę czekał na wydanie Bumblebee 4.0 i mam nadzieję, że instalacja na mobilnej stacji roboczej Thinkpad jest dość łatwa!
Xiaodong Qi
Ta kompleksowa odpowiedź ma już prawie 6 miesięcy. W międzyczasie, w przypadku sterownika nVidia 370.28, Ubuntu 16.10 z jądrem 4.8, czy coś się zmieniło lub nawet poprawiło?
youri
Tak, zostały wprowadzone zmiany, szczególnie w zakresie zarządzania energią z jądrem 4.8 w nowszych laptopach. Mianowicie, bbswitch nie działa zbyt dobrze bez konkretnej opcji jądra w tym przypadku (patrz github.com/Bumblebee-Project/bbswitch/issues/140 ), a bardziej ogólnie wymaga aktualizacji dla najnowszych metod. To trwające prace, ale brak ETA. Jeśli chodzi o PRIME, w dniu dzisiejszym wciąż brakuje odpowiedniego ponownego otwierania. Więc nie ma tu prawdziwych wiadomości AFAIK. Jeśli chodzi o Reverse PRIME, to były pewne łatki / aktualizacje, które poprawiły sytuację, ale wciąż dalekie od ideału.
Archange
Uwaga: jeśli chodzi o problemy z odwrotnym PRIME, jedną wielką rzeczą, która trwa, jest synchronizacja PRIME, patrz tutaj devtalk.nvidia.com/default/topic/957814/linux/… .
Archange
Czy mógłbyś wskazać pomoc dotyczącą instalacji i konfiguracji Reverse PRIME, aby używać go w sposób opisany?
mxdsp,
3

Ubuntu 16.04 oczywiście obsługuje rozwiązania z grafiką hybrydową, zwłaszcza notebooki z grafiką Intel i grafiką NVIDIA z obsługą Optimus. NIE instaluj bumblebee, nie jest już w fazie rozwoju, najnowsza wersja pochodzi z kwietnia 2013 r. Obecnie dostępne jest rozwiązanie do przełączania między dwiema grafikami nvidia-prime, które jest dostępne w oficjalnych repozytoriach Ubuntu. Najważniejsze, aby wszystko działało poprawnie, to sposób instalacji sterowników. Tutaj znajdziesz instrukcje instalacji sterowników z dużą szansą, że wszystko działa poprawnie:

Zainstaluj sterowniki NVIDIA

cl-netbox
źródło
Mam Ubuntu 16.0.4.1 i Bumblebee działa dla mnie dobrze.
QkiZ
Trzmiel pracował dla mnie po wielu godzinach pracy z wszystkimi postami sterowników NVIDIA na Askubuntu. Posiadaj Nvidię 960m.
Khashir
Mam stary Thinkpad quadcore W520 z Optimusem (Quadro 1000M) i Ubuntu 16.04. Mam go współpracującego ze sterownikami Nvidia i trzema ekranami (dwa monitory DP przez stację dokującą Lenovo i panel laptopa). Jednak nie mogłem zmusić Unity do wyświetlenia trzech paneli, musiałem użyć Xfce (chociaż z lightdm, menedżerem wyświetlania Unity).
Tim Richardson,
1

Powodem zainstalowania trzmiela zamiast nvidii-prime jest to, że dzięki trzmielowi możesz łatwiej przełączać się między dwoma procesorami graficznymi. Dzięki nvidia-prime możesz wybrać tylko jeden procesor graficzny dla sesji X. Oznacza to, że jeśli chcesz przełączyć GPU, sesja X musi zostać ponownie uruchomiona. W przypadku trzmiela ponowne uruchomienie serwera X nie jest konieczne.
Ten blog zawiera instrukcje instalacji dla trzmiela 16.04. W sekcji komentarzy bardziej szczegółowo omówiono powód zainstalowania trzmiela zamiast nvidii-prime.

KiekerJan
źródło
1
Sugeruję krótkie podsumowanie niektórych komentarzy w oryginalnym poście tutaj. Istnieją ważne punkty, które zachęcają ludzi do rozważenia nieaktywnego Bumblebee lub ulepszenia narzędzi NVidia.
Xiaodong Qi
1

PRIME działa teraz doskonale z zastrzeżonymi sterownikami NVidia (moja to 367), więc sądzę, że chociaż odpowiedź @ Archange jest bardzo obszerna i szczegółowa, PRIME nie ma już wpływu na wydajność i jest prawdopodobnie najlepszą opcją pod względem wydajności teraz .

@Archange, czy miałeś na myśli, że w przypadku secesji może to naprawdę nastąpić automatycznie, w stylu Windows?

yuranos87
źródło
1
Ponadto Mir i Unity ułatwiają zarządzanie wyświetlaniem.
Xiaodong Qi,