Gönderen Konu: Nvidia Optimus Teknolojisi ve Linux  (Okunma sayısı 108792 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

« Yanıtla #1 : »
Not: Daha güncel ve sade bir anlatım için şuraya bakılabilir: http://forum.ubuntu-tr.net/index.php?topic=41898.0


Optimus Teknolojisi ve Linux

Öncelikle bu yazıyı yazma amacımı belirtmek istiyorum. Ben dahil bir çok arkadaşımız yeni aldığı dizüstü bilgisayarlarda, Windows işletim sistemlerinde çalışan fakat Linux temelli sistemlerde oldukça fazla zorluk çıkaran yeni bir teknolojiyle tanıştık. Bu teknolojinin ismi Optimus. Optimus teknolojisi hakkında yazının ilerleyen bölümlerinde ayrıntılı bilgi vereceğim.

Gelelim neden bu yazıyı yazıyorum kısmına. Yukarıda da belirttiğim üzere optimus teknolojisi Windows işletim sistemlerinde kararlı (çoğunlukla) çalıştığı halde Linux temelli sistemlerde çalışmamakta ve kendisi çalışmadığı gibi Linux dağıtımları yüklendiği takdirde bütünüyle bilgisayarın çalışmasını da zorlaştırmaktadır. Bu nedenle yurtdışında optimusun Linux dağıtımlarında bir engel oluşturmasını engellemek ve varolan zorlukları aşıp bilgisayarın donanım-yazılım bütünlüğünde kararlı çalışmasını sağlamak için bir kaç proje başlatılmıştır. İşte bu yazıda, hem optimus teknolojisinden, hem de bu teknolojinin linux yüklü bilgisayarlarda çıkardığı zorlukların aşılmasından bahsedeceğim.

Şunu da unutmadan söylemeliyim. Linux camiasında yeni sayılırım. Belli başlı bazı dağıtımları deneme fırsatım oldu, fakat henüz görmediğim ve bilmediğim bir çok dağıtım da mevcut. Anlatacağım çözüm yollarından bazılarını Ubuntu 11.04 ve Mint 11'de deneme fırsatım oldu. Yani bu demektir ki daha kat etmem gereken çok yol var. Bu nedenle bu yazının bir kaynaktan çok bir başlangıç olarak kabul edilmesini  rica ediyorum.

Bir çoğumuz gelecekte sahip olacağı dizüstü bilgisayarlarda bu teknolojiyle karşılaşacağından, herhangi bir Linux dağıtımı yükledikten sonra mutlaka buradaki ya da diğer kaynak olacak sitelerdeki çözüm yollarını deneyecektir. Elbette hepimiz sahip olduğumuz bilgisayar için bir çözüm yolu bulamayacağız, fakat bir çoğumuz bulduğu çözüm yollarını dile getirecektir. Böylece biz kullanıcıların deneyimleri, hem yazıyı geliştirip bir kaynak olacak kadar kapsamlı hale getirecek, hem de yeni linux kullanıcılarının yaşayacağı zorlukları aşmasını sağlayacaktır. (Ümit ediyorum)

Not: Optimus teknolojisinin masaüstü bilgisayarlardaki karşılığı Synergy teknolojisidir.

Şimdi başlayalım.

Optimus Teknolojisine Doğru

Günümüzde dizüstü bilgisayarlar oldukça yaygınlaştı ve artık taşınabilirliğin yanında tasarım, uzun pil ömrü ve performans beklentisi de ortaya çıktı. Bu nedenle üreticiler hitap ettikleri kitlelere farklı farklı modeller sunarak piyasayı model zengini bir yapıya büründürdü. Fakat bazı istekler varolan koşullar nedeniyle karşılanamazken elden geldiğince tatmin edici çözümler sunulmaya çalışıldı. İşte bu beklentilerden biri de       -aslında talep de denebilir- hem uzun pil ömrü hem de performansın bir arada olmasıydı. Buna karşılık bazı üreticiler pil tüketimini azaltmak amaçlı kullanıcı tarafından kapatılıp açılabilen, biri işlemciyle tümleşik, diğeriyse bağımsız/harici olmak üzere 2 adet ekran kartına sahip modelleri piyasaya sürdü. Bu modellerde yüksek grafik gücü gerektirmeyen işlemlerde işlemciyle tümleşik ekran kartı kullanılırken, yüksek grafik gerektiren işlemlerde harici ekran kartını kullanmanın yolu açıldı. Fakat bu durum, bilgisayarı kapatıp açmayı, dolayısıyla hem zaman kaybının olması hem de kullanılabilirliğin azalmasını getirmekteydi. Buna bir çözüm yok muydu?

Elbette vardı, Nvidia geliştirdiği teknoloji ile buna bir çözüm sundu. Optimus.

Optimus Teknolojisi Nedir?

Optimus teknolojisi bir otomatik geçiş teknolojisidir. Bu teknoloji, sadece Nvidia ekran kartlarının sahip olduğu, gerektiğinde işlemciyle tümleşik grafik yongasının da kullanılabildiği bir teknoloji olmakla birlikte, Arrandale (Core i3/i5/i7), Penryn (Core 2 Duo) ve Pine Trail (Atom N4xx) altyapılarını desteklemektedir. Yüksek grafik isteyen uygulamalarda (yazılım,oyun ya da multimedya) Nvidia ekran kartı devredeyken, internette gezinirken, yazı yazarken, okurken ya da müzik dinlerken (veya benzeri uygulamalarda) yani kısacası yüksek grafik gücü gerektirmeyen durumlarda ise işlemciyle tümleşik grafik kartının devrede olması yukarıda bahsettiğim pil ömrü/performans ilişkisini en üst düzeyde tutmaktadır. Böylece sahip olduğumuz Nvidia canavarı her daim çalışmayacağından pilimiz uzun süre dayanacak ve dolum-boşalım işlemlerinin az olması nedeniyle de pil ömrümüz normalden uzun olacak ve bilgisayarımız daha az ısınacaktır. İşte bu durumu otomatikleştiren de Optimus teknolojisidir.

Optimus teknolosini Transformers filmindeki robotlara benzetebiliriz, altınızda kısıtlı hareketler yapabilen bir araba varken canınız biranda akrobatik hareketler ve ordan oraya atlamayı çekti diyelim, işte optimus sayesinde otobanda giderken arabanız bir anda hem de siz içindeyken robota dönüşüyor ve yüksek hareket kabiliyetiyle robotunuzun izin verdiği ölçüde istediğinizi yapabiliyorsunuz. :) Daha sonra da yine robotunuzu durdurmadan arabaya dönüşmesini istediniz, anında bu gerçekleşiyor ve hem enerjiden tasarruf ediyorsunuz, hem de bu geçiş sizi kısıtlamıyor.

Optimus teknolojisini Nvidia şu sözlerle tanıtıyor;

Alıntı
MÜKEMMEL PİL ÖMRÜ VE MUKEMMEL PERFORMANS. BU KADAR BASİT.
NVIDIA® Optimus™ teknolojisi, dizüstü bilgisayarınızı akıllı bir şekilde optimize ederek daha uzun süreli bir keyif yaşamanız için pil ömrünü uzatarak gereksinim duyduğunuz olağanüstü grafik performansını sunar.
 
Başlıca Avantajlar:
*Optimus teknolojisi tamamen otomatiktir, ayarları manuel olarak değiştirmek zorunda olmadan daha uzun pil ömrü ve muhteşem görsellere olanak verir.
*Optimus, arka planda ve yaptığınız işi kesintiye uğratmadan dizüstü bilgisayar deneyiminizi en iyi nasıl optimize edeceğine karar verir.
*NVIDIA® CUDA™ teknolojisi ile 10 kattan fazla daha iyi performans beklediğiniz NVIDIA grafikleri, kesintisiz ve endişesiz olarak uygulamalarınızın ve oyunlarınızın keyfini çıkarmanıza olanak verir.

Tanıtım videosu;
http://www.youtube.com/watch?v=nv1S9amZiCU

İngilizce tanıtım yazısı;
http://www.nvidia.co.th/object/lo-optimus-whitepaper-tr.html

Gelelim işin Linux boyutuna,

Optimus ve Linux

Nvidia'nın Optimus teknolojisi konusunda çok fazla, hatta hiç uğraşmadığı Nvidia'nın şu sözleriyle açıklığa kavuşmaktadır; ''We have no plans to support Optimus on Linux at this time.''

Bunun üzerine Linux camiasında bir topluluk oluşturulmuş ve Geçişli (Hibrid olarak kullanılsa da ben geçişli demeyi tercih ediyorum) kartların Linux dağıtımlarında kullanılmasına yönelik uygulamalar yapılmaya başlanmıştır. Şu anda Optimus teknolojisi Linux dağıtımlarında kullanılamamaktadır. Fakat bu teknolojinin yarattığı zorluklar (fan hızı/sesi, bilgisayar sıcaklığı v.b.) belirli metodlarla aşılmaya çalışılmaktadır.

Topluluğa buradan ulaşabilirsiniz; Ayrıca aşağıda anlatacağım çözüm yollarının İngilizce anlatımları da bu sayfada ayrıntılı olarak mevcuttur.

Nvidia Geçişli Kartlar için;

İronhide; (11.10 ve önceki sürümler için önerilir)

İronhide, Bumblebee ile aynı özellikleri göstermekte fakat donanıma göre farklı performans sunabilmektedir. Ubuntu 11.04 ve Mint 11 üzerinde iki çözüm yolunu da denedim. Bumblebee ile sistem açılmazken (güncelleştirmelerle ilgili bir çakışma söz konusu olabilir diye düşünüyorum) İronhide ile sistemi çok verimli olarak kullanabildim. Şimdi 12.04 üzerinde Bumblebee 3.0 oldukça iyi sonuç vermekte ve özellikle pil tüketimi daha az olmaktadır. Yani şarjınız daha uzun gitmektedir.
 
Gelelim kuruluma;

İronhide kurulumundan önce mesa-utils kurulmalıdır. Bunun için uçbirimi açıyoruz.

Kod: [Seç]
sudo apt-get install mesa-utils
komutu ile mesa-utils kurulmaktadır. Daha sonra aktif haldeki nouveau sürücülerini pasifleştiriyoruz ve böylece nvidia-current sürücüsü yüklenirken çakışma yaşanmasını engellemiş oluyoruz. Bunun için;

Kod: [Seç]
sudo rmmod nouveau
Ardından şu komutları sırasıyla uygulayarak ironhide kurulumuna geçiyoruz;

Kod: [Seç]
sudo apt-add-repository ppa:mj-casalogic/ironhide
sudo apt-get update
sudo apt-get install ironhide

İndirme tamamlandıktan sonra ironhide bilgisayarımızı otomatik olarak tanıyacak, güncel verilerle varolan yapılanışlardan/konfigürasyonlardan bilgisayarımıza uygun olanını ekrana getirecektir.





Daha sonra bize sunduğu seçeneklerden istediğimizi seçebiliriz, istersek de ''Show all profilles''seçeneğini seçerek daha fazla yapılanışa ulaşabiliriz.



Resimde de gördüğünüz üzere gönüllü çalışmalar bir çok farklı model bilgisayara ulaşmakta ve aynı model için bile farklı yapılanış seçilebilmektedir. Deneme yanılma yöntemi ya da kullanıcı geribildirimlerini takip etme yöntemiyle istediğimiz seçeneği seçmekte özgürüz, dilersek ''Enter Manuel Configuration'' seçeneği ile kendimize özel yapılanış da yapabiliriz. Ben kendi bilgisayarıma uygun olan ve ''Thomas Krutz'' tarafından oluşturulan 2 numaralı yapılanışı seçiyorum.



En uygun seçeneği seçip bir sonraki aşamaya geçtiğimizde, resimde görülen pencere karşımıza çıkmaktadır. Bu aşamada, seçilen yapılanışın kullanıcı sayısı, kim tarafından hazırlandığı ve hangi dağıtımın hangi sürümünde test edildiği ile ilgili bilgiler yer almaktadır. Dilerseniz siz de bu yapılanış grubuna katılabilirsiniz.





Yapılanış seçiminden sonra karşımıza görüntülerin kartlar arasında aktarımı ile ilgili seçenekleri gelmektedir. İlgili açıklama resimde mevcut olmakla birlikte ''XV'' varsayılan olarak seçili gelmektedir.
Gerekli yapılandırmalar tamamlandıktan sonra İronhide bize ''Tamamlandı'' uyarısını iletecektir.

Bumblebee 3.0; (12.04 ve 12.10 ile Uyumludur)

Bumblebee, yukarıda da değindiğim üzere İronhide ile aynı özellikleri göstermektedir. Sadece kurulum komutları farklı olmakla birlikte, yapılanışa da gerek yoktur.

Not: Genel anlamda İronhide, Ubuntu ve türevleri için öncelikli olarak tavsiye edilmekte fakat Bumblebee 3.0 ve güncel çekirdeklerle daha uzun pil süresine sahip olunmaktadır.

Bumblebee kurulumu için uçbirimi açıp;

Kod: [Seç]
sudo bumblebee-uninstall
sudo apt-get install ppa-purge
sudo ppa-purge ppa:ubuntu-x-swat/x-updates
sudo ppa-purge ppa:xorg-edgers/ppa
sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia
sudo usermod -a -G bumblebee $USER

Not: $USER yazan yere kullanıcı adınızı girmelisiniz.

komutlarını yürütmek yeterli olacaktır. Bu komutlarla, varsa daha önceden kurulu bumblebee kaldırılacak, x-updates ve xorg-edgers ppa'ları kaldırılacak, ardından bumblebee deposu eklenecek, son olarak da bumblebee kurulacaktır. Yapılanış ayarları gerekmemektedir.

İster Bumblebee ister İronhide yüklemiş olun, herhangi bir programı Nvidia ekran kartı ile çalıştırmak istediğiniz de uçbirimden;

Kod: [Seç]
optirun program_ismi
komutunu yürütmek yeterli olacaktır. Program kapatıldığında ise görüntü otomatik olarak İntel görüntü birimine aktarılmaktadır ve uçbirimde buna dair uyarı da gösterilmektedir. Örneğin Firefox'u Nvidia kartı ile çalıştırmak istediğimizde;

Kod: [Seç]
optirun firefox
 * Starting Ironhide X server ironhide                                         
 _PS0 Enabling nVidia Card Succeded.
DGPS Enabling nVidia Card Succeded.
.                                                                        [ OK ]

mesajı size başarılı bir şekilde Firefox'un Nvidia kart ile çalıştırıldığını, Firefox kapatıldığında ise;

Kod: [Seç]
NOTE: child process received `Goodbye', closing down
 * Stopping Ironhide X server ironhide                                         
_DSM Disabling nVidia Card Succeded.
_PS3 Disabling nVidia Card Succeded.
DGPS Disabling nVidia Card Succeded.
                                                                         [ OK ]


mesajı size başarılı bir şekilde Nvidia kartın kapatıldığını iletmektedir.

Ayrıca sistemimize kurduğumuz Bumblebee ya da İronhide'ı google-chrome tarayıcı ile şu şekilde de test etmemiz mümkündür. Uçbirimi açıp;

Kod: [Seç]
optirun google-chrome http://webglsamples.googlecode.com/hg/aquarium/aquarium.html
komutu ile belirtilen adrese gidebiliriz. Tarayıcının sol üst tarafında balık sayısı ve oynatımdaki fps değeri görülmektedir. Bir de uçbirimden şu komutu yürüttüğümüzde;

Kod: [Seç]
google-chrome http://webglsamples.googlecode.com/hg/aquarium/aquarium.html
aradaki farkı görebilirsiniz. İlk komutla birlikte tarayıcıyı Nvidia kart ile açmakta ve oynatımı bu kart ile göstermekteyiz fakat 2. komutla oynatım intel görüntü birimi ile gösterilmektedir.

İronhide Grafik Arayüzü

@speakerXXL'den alıntı

Ironhide ile Nvidia Optimus kullananlar için kullanımı kolaylaştıran ironhide-ui isimli bir paket eklendi.
Bu paketi aşağıdaki kodu uçbirimde çalıştırarak kurabilirsiniz.

Kod: [Seç]
sudo apt-get install ironhide-ui
Peket uygulamaları optimus ile ilişkilendireceğiniz bir grafik arayüz ve sistem çekmesine eklenebilen bir uygulamacıkdan (indicator) oluşuyor.



Sistem çekmesinden kullancağınız uygulamacığın otomatik başlamasını istiyorsanız Başlangıç Uygulamalarına eklemeniz gerekiyor.

İsim => Ironhide-UI
Komut => ironhide-indicator



Aşağıdaki bağlantıdan videosuna erişebilirsiniz.

http://www.youtube.com/watch?v=D8Vs-LXQ3rA&feature=player_embedded

Yazıda, acpi_call ve byo-switcheroo yöntemlerine değinmedim. Bu yöntemler genel olarak daha çok ATI(AMD) ekran kartları olan dizüstülerde kullanılmaktadır. İlerleyen zamanlarda bu yöntemleri ve daha farklı bilgileri de yazıya ekleyeceğim. Son olarak şunu belirtmek isterim;
Önce de belirttiğim üzere bu başlık gün geçtikçe gerek benim tarafımdan gerekse forumdaki diğer arkadaşlarımız tarafından güncelleştirilecektir.

Bu yazının yazılmasına aşağıdaki konular vesile olmuştur.
http://forum.ubuntu-tr.net/index.php?topic=27255.0
http://forum.ubuntu-tr.net/index.php?topic=26955.0
http://forum.ubuntu-tr.net/index.php?topic=28709.0
http://forum.ubuntu-tr.net/index.php?topic=28248.0
http://forum.ubuntu-tr.net/index.php?topic=26850.0
http://forum.ubuntu-tr.net/index.php?topic=19995.0
http://forum.ubuntu-tr.net/index.php?topic=25700.0
« Son Düzenleme: 14 Ocak 2014 - 15:24:19 Gönderen: heartsmagic »

« Yanıtla #675 : »
Mxm destekli nvidia kartları çıkartılabiliyor, değiştirilebiliyor. Ancak yeni nesil dizüstü bilgisayarlarda ekran kartları genel olarak entegre. Tabi bazı üreticiler, özellikle oyuncu için dizüstü bilgisayar üreten üreticiler harici ekran kartını değiştirilebilir yapıyor.

« Yanıtla #676 : »
aynen.yanlız bir konuya yazmıştım çekirdekten kartı iptal etmenin yolu vardı.Yani sanırım sürücüyü silip kartı tek karta düşürüyorduk böyle bir yöntem işe yarayabilir.Neyse artık önümüzdeki aylarda bu sorun tamamen ortadan kalkacak gibi görünüyor :)

« Yanıtla #677 : »
yok hiç bir uyarı ya da hata iletisi almadım.
Tam olarak nasıl bir yol takip ettiniz kurulumda hocam?

« Yanıtla #678 : »
yok hiç bir uyarı ya da hata iletisi almadım.
Tam olarak nasıl bir yol takip ettiniz kurulumda hocam?
Burdan güncel ubuntuyu indirdim. Kurulum yaptıktna sonra hiç bir günceleme vs yapmadım. http://cdimage.ubuntu.com/daily-live/current/

Ardından, bu sitedeki üç işlemi terminalde gerçekleştirdim. http://www.webupd8.org/2013/12/more-work-to-support-nvidia-optimus.html

14.04 henüz beta aşamasında bile değil. O yüzden bu tarz sorunlar verebilir. Ama sen sorunun çözülmesini istiyorsan. Pc'nin verdiği hatayı web'te arat eğer sonuç alamazsan. Buraya yaz. çözmeye çalışalım. Tabii ayrı bir başlık altında.
Msi Cx 640
İ52410M 2.3
Gt520m+Intel Hd 3000