Oto pełna odpowiedź (na podstawie odpowiedzi Alexa Falappy i Lekensteyna ):
Rzeczywiście jest możliwe, aby procesory graficzne nVidia Optimus działały na CUDA na Ubuntu.
Trzmiel nie jest konieczny dla CUDA. (więcej o Bumblebee : czy Ubuntu obsługuje NVIDIA GeForce z technologią Optimus? )
Jednak, gdy trzeba pokazać przykłady graficznych przy użyciu OpenGL, możesz zrobić coś jak Bumblebee systemów Optimusa, w przeciwnym razie albo nie widać nic na ekranie lub pojawia się błąd:
ERROR: Support for necessary OpenGL extensions missing.
Jeśli potrzebujesz programu intensywnie korzystającego z grafiki, takiego jak Blender, Bumblebee jest obecnie dobrym rozwiązaniem.
Przejdź do Instalowania CUDA, jeśli nie chcesz instalować Bumblebee (tj. Jeśli nie potrzebujesz OpenGL).
W przeciwnym razie czytaj dalej.
Instalowanie Bumblebee
Postępuj zgodnie z instrukcjami na stronie Jak dobrze działają laptopy z Nvidia Optimus?
Są one obecnie aktualizowane przez programistę Bumblebee.
Po zainstalowaniu Bumblebee i ponownym uruchomieniu będziesz mógł wybrać kartę graficzną, która będzie używana podczas uruchamiania programów za pomocą optirun
programu.
Na przykład:
optirun blender
Aby szybko sprawdzić, czy wszystko działa poprawnie, użyj:
optirun glxspheres
Zobaczysz program z kolorowymi kulkami, jeśli wszystko działa poprawnie.
Sprawdź, czy ciąg dostawcy GL w terminalu zawiera słowo nvidia .
Jeśli uruchomisz tylko glxspheres
, zobaczysz, że ciąg dostawcy zawiera kartę Intel.
Podczas uruchamiania programu CUDA musisz zainstalować zestaw narzędzi CUDA i sterownik nvidia. Jeśli zamierzasz kompilować programy, potrzebujesz również zestawu SDK. Instalatory można znaleźć na stronie http://developer.nvidia.com/cuda-downloads , przeczytaj poniższe instrukcje przed schowaniem laptopa Optimus.
Instalowanie CUDA
Kierowca
Zalecam instalację sterownika nvidia z menedżera pakietów Ubuntu. Jeśli zainstalujesz Bumblebee, nie musisz martwić się o sterownik. W przeciwnym razie, po instalacji, wyłączyć biblioteki nvidia opisane na https://askubuntu.com/a/107746/6969 . Jeśli tego nie zrobisz, stracisz przyspieszenie 3D i prawdopodobnie utkniesz w niskiej rozdzielczości.
zestaw narzędzi
Zasadniczo musisz pobrać instalator, uczynić go wykonywalnym i uruchomić. - Pobierz instalator. Na dzień 9 stycznia 2013 r. 5.0.35 jest najnowszym sterownikiem. Ponieważ mam 64-bitowy system operacyjny, korzystam z 64-bitowego pakietu Ubuntu 11.10 (chociaż korzystam z wersji 12.10) - uczyń go wykonywalnym i zezwól na instalację, aby /usr/local/cuda
:
chmod +x cudatoolkit_5.0.35_linux_64_ubuntu11.10-1.run
sudo ./cudatoolkit_5.0.35_linux_64_ubuntu11.10-1.run
Gdy pojawi się komunikat instalacyjny z pytaniem, gdzie zainstalować CUDA, po prostu naciśnij Enter, aby zaakceptować wartość domyślną /usr/local/cuda
:
......................................
Enter install path (default /usr/local/cuda, '/cuda' will be appended):
Po instalacji wydrukuje kilka komunikatów sugerujących umieszczenie katalogu biblioteki cuda w ścieżce wyszukiwania biblioteki:
========================================
* Please make sure your PATH includes /tmp/cuda/cuda/bin
* Please make sure your LD_LIBRARY_PATH
* for 32-bit Linux distributions includes /tmp/cuda/cuda/lib
* for 64-bit Linux distributions includes /tmp/cuda/cuda/lib64:/tmp/cuda/cuda/lib
* OR
* for 32-bit Linux distributions add /tmp/cuda/cuda/lib
* for 64-bit Linux distributions add /tmp/cuda/cuda/lib64 and /tmp/cuda/cuda/lib
* to /etc/ld.so.conf and run ldconfig as root
* Please read the release notes in /tmp/cuda/cuda/doc/
* To uninstall CUDA, remove the CUDA files in /tmp/cuda/cuda
* Installation Complete
Możesz pominąć ten krok, jeśli chcesz, ale potem musisz ustawić go LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/lib:$LD_LIBRARY_PATH
później podczas uruchamiania programu.
SDK
Jeśli chcesz mieć możliwość kompilacji aplikacji CUDA, możesz zainstalować zestaw SDK w podobny sposób, jak opisano powyżej. Pobierz, uruchom go i uruchom (nie jako root, np. Bez sudo
!).
Korzystanie z CUDA
CUDA nie potrzebuje do działania serwera X sterowanego przez nvidię. W takim przypadku możesz uruchomić swój losowy program testowy, taki jak:
LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: $ LD_LIBRARY_PATH someComputallyIntensiveProgram
Jeśli nie dodałeś CUDA do ścieżki biblioteki, będziesz potrzebować:
LD_LIBRARY_PATH = / usr / lib / nvidia-current: / usr / lib32 / nvidia-current: / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH someComputallyIntensiveProgram
(możesz usunąć z niego 32-bitowe ścieżki, jeśli twój program jest 64-bitowy).
Jeśli program CUDA ma coś do wyświetlenia za pomocą OpenGL, musisz użyć optirun:
optirun blender
Lub jeśli nie masz CUDA dodanego do domyślnej ścieżki:
LD_LIBRARY_PATH = / usr / local / cuda / lib64: / usr / local / cuda / lib: $ LD_LIBRARY_PATH mikser optirun
Instalowanie wersji Blendera
(Ze wstępnie skompilowanymi jądrami CUDA)
Po uruchomieniu optirun blender
możesz otrzymać komunikat z Blendera, informujący, że kompilacja jądra CUDA nie powiodła się, oraz komunikat w terminalu podobny do następującego:
Compiling CUDA kernel ...
nvcc warning : Option '--opencc-options (-Xopencc)' is obsolete and ignored, when
targeting compute_20, sm_20, or higher
gcc: error trying to exec 'cc1plus': execvp: No such file or directory
CUDA kernel compilation failed, see console for details.
Jeśli chcesz użyć funkcji renderowania GPU Blendera, możesz potrzebować kompilacji Blendera ze wstępnie skompilowanymi jądrami CUDA. Wszystkie wersje z Blender.org mają wstępnie skompilowane jądra CUDA; kompilacje ppa: cheleb / blender-svn ( więcej informacji na to pytanie ) nie.
Aby zainstalować oficjalną wersję Blendera, po prostu postępuj zgodnie z instrukcjami zawartymi w tej odpowiedzi .
Jeśli zainstalowałeś Blendera /usr/lib/blender
, powinieneś być w stanie uruchomić Blendera z terminala i używać renderowania GPU z:
optirun '/usr/lib/blender/blender'