Bumblebee
Bumblebee, GNU/Linux sistemlerde, Nvidia Optimus teknolojili diz üstü bilgisayarlarda verim alabilmek için geliştirilen bir çalışmadır. Farklı güç profilleri gerektiren grafiksel kartları kademeli olarak kullanmak üzere geliştirilmiş bir video çıkış birimi (framebuffer) dir.
Konu başlıkları |
Bumblebee: Linux için Optimus
Optimus Teknolojisi, donanım çoklayıcısı olmaksızın , melez grafik kartlarını kullanıdıran bir grafik uygulamasıdır. GPU, sisteme entegre olan ekran kartlarını yönetir ve doğru yapılandırma ile dizüstü bilgisayarlarda güç tasarrufu sağlar ve pil ömrünü uzatır.
Bumblebee, VirtualGL temeline dayalı bir yazılım uygulaması olup, fiziksel ekrana bağlı kalmadan özel GPU ayarlarını kullanabilmek için geliştirilmiş bir çekirdek sürücüsüdür.
Bumblebee, Optimus teknolojisinin davranış şeklini taklit ederek, gereksinim anında özel GPU ayarlarını devreye sokarak güç tasarrufu sağlar. Güncel sürümleri ile sadece verimli güç kullanım talebine cevap verme desteğini devam ettiren bir gelişim sürecindedir.
Nvida ya özel kart, sahte bir ekran kartı olarak ayrı bir X sunucusu tarafından yönetilmektedir ( ekran yapılandırılmıştır ancak kullanılmaz). Bu X sunucusu , VirtualGL kullanan uzak sunucu olarak adlandırılır. Yani, ihtiyacınız olan, sırayla , çekirdek sürücüsü, X sunucusu ve daemons ( artsüreç ) kurulumudur.
Kurulum
Intel/Nvidia Bumblebee Kurulumu
Bumblebee kurulumundan önce BIOS ayarlarınızdan Optimus ( paylaşılabilir ekran kartları) u etkinleştirmelisiniz. Mümkün ise (BIOS size bu özelliği sağlamayabilir) İntel sürücülerini, ikincil tümleşik ekran kartı olarak kurabilirsiniz.
Şimdi güvenle nvidia sürücüleri yüklenebilir:
# pacman -S nvidia
Intel/Nouveau ile Bumblebee kurulumu
Önce nouveau ve gerekli paketleri kurunuz:
# pacman -S xf86-video-nouveau nouveau-dri mesa
- xf86-video-nouveau deneysel 3D hızlandırma sürücüsü
- nouveau-dri Mesa classic DRI + Gallium3D sürücüleri
- mesa Mesa 3-D grafik kütüphaneleri
Bumblebee paket kurulumu ( Aur )
$ yaourt -S bumblebee
{{önemli|Eğer bumblebee, kullanımdan sonra otomatik olarak Nvida ekran kartını kapatsın istiyorsanız bbswitch kullanabilirsiniz. Bakınız aşağıda.
Bumblebee Çalıştırma
Bumblebee kullanabilmek için kendinizi (ve diğer kullanıcıları) bumblebee grubuna eklemeniz gereklidir:
# usermod -a -G bumblebee $USER
Gruba kullanıcı adınızı ekledikten sonra çıkış yaparak yeniden giriş yapınız ve yaptığınız değişikliği onaylayınız.
Bumblebee nin otomatik çalışması için /etc/rc.conf dosyasındaki DAEMONS satırına eklenmesi gereklidir:
DAEMONS=(... @bumblebeed)
Bitti. Sisteminizi yeniden başlatın ve shell kullanarak optirun çalıştırın.
Kullanım
Optimus Nvidia kartı uygulamalarında bumblebee kullanımı için komut satırı ile optirun sizin en iyi arkadaşınızdır.
Bumblee nin Optimus sistemde çalışmasını test ediniz:
$ optirun glxgears
Eğer başarılı ise ekranınızda dönen çarkları göreceksiniz. Tebrikler. Bumblebee çalışıyor.
Genel Kullanım:
$ optirun [options] <application> [application-parameters]
Bazı örnekler:
Firefox u Optimus ile çalıştırmak:
$ optirun firefox
Windows uygulamasını Optimus ile çalıştırmak:
$ optirun wine <windows application>.exe
Nvidia ayarlarını Optimus ile kullanmak:
$ optirun nvidia-settings -c :8
optirun seçeneklerininin listelenmesi:
$ optirun --help
Ayarlar
İhtiyaçlarınıza göre bumblebee davranışını ayarlayabilirsiniz. Hız optimizasyonu, güç yönetimi gibi ince ayarlamalar seçiminiz dahilindedir: /etc/bumblebee/bumblebee.conf
Hız Optimizasyonu
Bumblebee, Nvidia Optimus için ,görünmez X sunucusu ile VirtualGL arasında bir çerçeve oluşturur ve görünür X sunucunuza taşır.
Taşıma işleminden önce oluşturulan çerçeve sıkıştırılarak band genişliğinizi korur hız optimizasyonu sağlar.
Tek uygulamalarda sıkıştırmak için kullanılacak diğer bir yöntem:
$ optirun -c <compress-method> application
Sıkıştırma yöntemleri kullanımında GPU/CPU performansı etkileyecektir. Jpeg gibi sıkıştırma yöntemleri maximum CPU gerektirirken GPU minimum gereksinimde yükleme yapacaktır. Açma yöntemlerinde de GPU üzerine maximum yük binerken CPU bunu minimum seviyede tutacaktır.
Sıkıştırma Yöntemleri : jpeg ,rgb, yuv
Açma Yöntemleri : proxy, xv
Bütün uygulamalar için standart bir sıkıştırma kullanmak için VGL Transport özelliğini bumblebee ayarlarına eklemelisiniz:
/etc/bumblebee/bumblebee.conf
... [optirun] VGLTransport=proxy ...
Güç Yönetimi
Güç yönetimi. Bumblebee tarafından artık kullanılmayacak olan Nvidia kartını kapatır. Bumblebee ile güç yönetimini etkinleştirmek için AUR dan bbswitch kurulur,
/etc/bumblebee/bumblebee.conf ayar sosyasına bbswitch için PMmethod ekleyiniz:
/etc/bumblebee/bumblebee.conf
[bumblebeed] KeepUnusedXServer=false ... [driver-nvidia] PMMethod=bbswitch ... [driver-nouveau] PMMethod=bbswitch ...
Güç yönetimini etkinleştirmek için bumblebee cin ini yeniden çalıştırınız:
# rc.d restart bumblebeed
Çoklu monitör
Birden fazla monitörü xorg.conf ayarlarınızda tanımlayabilirsiniz. Ayarlarınızı Intel Kartı için yapınız. Bumblebee Nvida Kartınızı kullanacaktır. Örnek olarak 1080 p çözünürlük ve HDMI çıkışı kullanan iki ekran için bir yapılandırmayı aşağıda görebilirsiniz:
Section "Screen" Identifier "Screen0" Device "intelgpu0" Monitor "Monitor0" DefaultDepth 24 Option "TwinView" "0" SubSection "Display" Depth 24 Modes "1980x1080_60.00" EndSubSection EndSection Section "Screen" Identifier "Screen1" Device "intelgpu1" Monitor "Monitor1" DefaultDepth 24 Option "TwinView" "0" SubSection "Display" Depth 24 Modes "1980x1080_60.00" EndSubSection EndSection Section "Monitor" Identifier "Monitor0" Option "Enable" "true" EndSection Section "Monitor" Identifier "Monitor1" Option "Enable" "true" EndSection Section "Device" Identifier "intelgpu0" Driver "intel" Option "XvMC" "true" Option "UseEvents" "true" Option "AccelMethod" "UXA" BusID "PCI:0:2:0" EndSection Section "Device" Identifier "intelgpu1" Driver "intel" Option "XvMC" "true" Option "UseEvents" "true" Option "AccelMethod" "UXA" BusID "PCI:0:2:0" EndSection
Muhtemelen BusID değiştirmeniz gerekebilir:
$ lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
Sorun Çözme
[VGL] HATA: Ekran açılamadı: 8
Bazı Wine uygulamalarında bilinen bir sorun, hata izi bırakmasızın uygulamanın kapanmasıdır. (Örn: Özgür çevrim içi bir oyun olan Runes Of Magic)
Bu sorun için geçici bir çözüm :
$ optirun bash $ optirun wine <windows program>.exe
[HATA] ikincil GPU erişilemiyor:
Bazı durumlarda optirun çalışmasını yenileyecektir:
[ERROR]Cannot access secondary GPU - error: [XORG] (EE) No devices detected.
[ERROR]Aborting because fallback start is disabled.
Bu durumda /etc/X11/xorg.conf.d/20-intel.conf dosyasını herhangi bir yere taşımanız gerekir. Bumblebeed cin ini yeniden çalıştırın ve düzelecektir.Bununla ilgili bilgilendirme Freenode sunucusu üzerindeki bumblebee kanalında Lekensteyn e yapılabilir.
Video yırtılma:
Videolar üzerinde yırtılma , Bumblebee üzerinde bilinen yaygın bir sorundur. Bunu düzeltmek için vsync etkinleştirilmelidir.İntel üzerinde bu varsayılan olarak etkindir ancak Xorg.log dosyasından doğrulamak gerekir. Nvidia için etkin olup olmadığını kontrol etmek için:
$ optirun nvidia-settings -c :8
X Server XVideo Settings -> Sync to VBlank ve OpenGL Settings -> Sync to VBlank her ikisi de etkin olmalıdır. Intel kart ile yırtılmalar genelde az olmaktadır, Video için İntel kullanmalısınız. Özellikle video çözme için VA-API kullanınız (Örn:mplayer-vaapi ve -vsync parametresi ile)
İntel kartta yırtılmanın nasıl giderileceğine dair geniş bilgi için İntel Makalesi ni okuyun. Hala çözüm bulamadıysanız, bileşiklik kipini ve 3 boyutluluk desteğini etkinleştirmeyin.