Szybsze Ubuntu i Unity? Żaden problem!

Dlaczego właśnie Ubuntu? Szczerze po wielu próbach z różnymi dystrybucjami doszedłem do wniosku, że jak dla mnie najlepszy jest Debian. Problem w tym, że w wersji stabilnej za bardzo nie widzę go na desktopie. Oczywiście są osoby które go z powodzeniem używają w takim zastosowaniu, ciesząc się przy okazji bardzo wysokim poziomem stabilności. Ja od zawsze lubiłem eksperymentować, dlatego byłoby to rozwiązanie zbyt nudne, jakkolwiek to brzmi. Na serwerze spisuje się po prostu fantastycznie, ale coś takiego i mój desktop? Nie, to naprawdę by nie przeszło. Znacznie lepszym wyborem stało się Ubuntu, które właśnie z Debiana się wywodzi. Nie jest to oczywiście dystrybucja idealna, ale jak dla mnie na tyle wyważona i oferująca to, co mi potrzebne. Nie będę tu wspominał o wadach takich jak zamieszanie odnośnie serwerów wyświetlania, czy też własna wizja Cannonical na niektóre sprawy. Póki działa jest ok, po prostu.

Dlaczego Unity?!

Dlaczego natomiast zdecydowałem się na to złowieszcze, tak krytykowane przez niektóre osoby Unity? Tutaj również decyzję zrzucę na to, że próbowałem wielu środowisk i w zasadzie tylko to naprawdę mi się spodobało. GNOME 3 bije prostotą… tak, bardzo, że mocno w tej kwestii przesadza. KDE to z kolei drugi biegun, gdzie można ustawić wszystko, tylko że zabraknie nam na to życia. Tymczasem dodatkowo domyślny Oxygen jak był brzydki tak nadal jest i śni mi się po nocach powodując ze budzę się w lęku, oblany potem. LXDE jest takie jakieś… No jest i tyle, nijakie, bez polotu. Przy XFCE czułem się dobrze ze względu na niesamowitą szybkość, ale na dłuższą metę nie było zbyt wygodne. Do MATE podszedłem tylko raz, a że nigdy nie widziałem żadnej magii GNOME 2 to i tutaj jej nie znalazłem. Dosyć ciekawie wygląda Cinnamon, acz moim zdaniem jeszcze nieco za mało można w nim spersonalizować. Koncepcja interfejsu jaki zaproponował swojego czasu Cannonical i jaką ciągle pcha do przodu bardzo mi odpowiada z kilku powodów. Przede wszystkim jest dosyć prosta. Nie ma tu miliarda opcji, których na co dzień i tak nie będę używał. Równocześnie za pomocą kilku dodatkowych narzędzi da się je nieco lepiej dopasować do własnych potrzeb.

Nie idealnie, bo opcji za wiele nie ma, jednak na tyle, abym czuł się naprawdę komfortowo. Już w standardzie menu jest tam gdzie powinno dla mnie być, czyli po lewej stronie. Dlaczego tam? Od popularyzacji formatów panoramicznych marnuje się sporo miejsca w poziomie, gdy w pionie wiecznie go brakuje. Podobnie ma się sprawa z oknami. Przykładem jest tu przeglądarka Firefox, która pod systemem Windows integruje górny pasek z tłem, przez co maksymalnie zwiększa przestrzeń roboczą. To samo zapewnia GlobalMenu z Unity, choć trzeba przyznać, że do jego zachowania trzeba się nieco przyzwyczaić. Kolejny aspekt to po prostu… Spójność. Moim zdaniem Unity ją zapewnia, bo tak to widzę używając wielu aplikacji jednocześnie. To są właśnie powody, że względu na które wybrałem to a nie inne środowisko.

ubu1

ubu2

Trzeba mimo wszystko przyznać, że Unity do rozwiązań najlżejszych nie należy. Gdy na tym samym komputerze o jakiejś średniej specyfikacji porównamy sobie responsywność (wiem, że tego słowa nie ma w słówniku, ale dobrze oddaje o chodzi) Unity do XFCE to pierwsze rozwiązanie wyda nam się naprawdę wolniejsze. Jeszcze gorzej sprawa przedstawia się ma maszynach wirtualnych, gdzie można zobaczyć niemalże pokaz slajdów, przede wszystkim wtedy, gdy zapragniemy przeciągnąć jakieś okno na bok ekran aby zajęło jego połowę. Tą sytuację da się jednak zmienić poprzez kilka dosyć prostych zabiegów. Chciałbym je zabrać tutaj do kupy i zaprezentować, być może dla kogoś okażą się przydatne i zwiększą komfort pracy z Unity.

 

Unity 2D i GNOME Fallback

Jednym z rozwiązań jest skorzystanie z Unity 2D. Jest to specjalna wersja środowiska, która nie korzysta z Compiza i OpenGL a jak możemy wyczytać „jest zbiorem programów, które są napisane w QML”. Nie mamy w nim możliwość używania pewnych funkcji, nie ma też niektórych efektów graficznych, ale skutkuje to znacznie szybszą pracą i mniejszymi wymaganiami sprzętowymi. Wadą tego rozwiązania jest to, że Unity 2D nie jest dostępne na wersjach nowszych niż wydanie ze wsparciem długoterminowym 12.04. Dlaczego uważam to za wadę? Jak napisałem wcześniej, lubię eksperymentować. Poza tym na swoim, ciągle dosyć nowym sprzęcie widzę znaczną różnicę w działaniu poszczególnych wersji. Nowsze, choć mogą być czasami niestabilne, to jednak działają szybciej, a także w mniejszym stopniu rozgrzewają sprzęt. Z wersji na wersję zmienia się także samo Unity, które przyspiesza i to również jest odczuwalne. To właśnie z tego powodu wersja 2D zniknęła już w wydaniu 12.10. Niemniej dla użytkowników wersji LTS zadowolonych z jego pracy z pewnością jest to dobre rozwiązanie, z którego warto skorzystać. Unity 2D powinno być dostępne od razu z poziomu wyboru środowiska na ekranie logowania. Jeśli tak nie jest, instalujemy je poleceniem:

sudo apt-get install unity-2d

Podobnie możemy wykorzystać także GNOME Fallback, który został stworzony dla komputerów z kartami graficznymi, które nie wspierają niektórych efektów. Jak sama nazwa wskazuje, ma to więcej wspólnego z GNOME aniżeli z Unity, niemniej dla niektórych może być dobrym wyjściem. Z tego co widziałem, nowsze wersje mają je zainstalowane domyślnie, w innym wypadku robimy to ręcznie:

sudo apt-get install gnome-session-fallback

Po zakończeniu procesu możemy przejść do GNOME wylogowując się i wybierając odpowiednie środowisko graficzne. Fallback jest dostępny z podstawowymi efektami graficznymi i funkcjami takimi jak przeciąganie na boki, a także zupełnie bez nich.

 

Unity Tweak Tool oraz CompizConfig Settings Manager

Naprawdę sporo możemy osiągnąć instalując dwie niewielkie aplikacje, które przydają się do konfiguracji samego Unity jak i Compiza. Jest to Unity Tweak Tool a także CompizConfig Settings Manager. W tym wpisie chciałbym przedstawić tylko zmiany dotyczące wydajności, ale warto przyjrzeć się tym aplikacjom znacznie głębiej, bo znaleźć w nich można opcje znacznie uprzyjemniające codzienne używanie tego system. Druga z nich znajduje standardowych repozytoriach dystrybucji, druga w wypadku wersji 12.04 wymaga dodania odpowiedniego repozytorium:

sudo add-apt-repository ppa:freyja-dev/unity-tweak-tool-daily
sudo apt-get update && sudo apt-get install unity-tweak-tool compizconfig-settings-manager

Po tym jakże prostym zabiegu oba narzędzia będą dostępne z poziomu samego menu. Najpierw polecam otworzyć konfigurator Compiza i w nim po prostu… wyłączyć animacje oraz płynne rozjaśnianie i przyciemnianie okien . UWAGA: pod żadnym pozorem nie wyłączamy obramowań okien! Jeżeli to zrobimy, to interfejs z miejsca dosyć wyraźnie się posypie i będziemy i tak musieli włączyć je ponownie. Po tych zabiegach w zasadzie nie zobaczymy zmian wizualnych, powinniśmy już jednak odczuć różnicę w działaniu całego interfejsu. W wypadku maszyn wirtualnych i używania wersji LTS polecam eksperymentowanie z zakładką OpenGL i synchronizacją VBlank. Domyślnie jest ona włączona i Unity na Ubuntu puszczonym w VirtualBoxie działało naprawdę kiepsko, pomimo instalacji dodatków integracyjnych. Po odznaczeniu tej opcji wydajność i responsywność natychmiastowo się poprawiła. W tej konkretnej sytuacji można zastosować jeszcze jeden zabieg: nie zawsze moduły integracyjne są prawidłowo ładowane, aby to poprawić, wystarczy w terminalu wydać polecenie:

sudo bash -c 'echo vboxvideo >> /etc/modules'

Po ponownym uruchomieniu system powinniśmy zauważyć i odczuć znacznie szybszą pracę. Teraz zajmijmy się dedykowaną aplikacją do konfigurowania samego Unity. Posiada ona sporo opcji, nas jednak interesują głównie te związane z menu i animacjami. Przechodzimy najpierw do zakładki General w sekcji Overwiew. Tam Możemy zająć się dwoma rzeczami. Pierwsza to filtr tekstur, który domyślnie skupia się na ich jakości. Możemy bez większego wpływu na faktyczną jakość obrazu zmienić go na szybki (Fast). Niżej znajdziemy ustawienia animacji. Najlepiej po prostu je wyłączamy. Przechodzimy teraz do zakładki Search. Tutaj najważniejsza opcja to rozmycie (blur) jakie mamy przy wyszukiwaniu. Domyślnie jest to rozmycie aktywne, zależne od tego co mamy w tle. Możemy je zupełnie wyłączyć, lub też zmienić na statyczne, obie opcje pozytywnie wpływają na wydajność. Niżej znajdziemy także opcje wyszukiwania w innych miejscach. Osobiście wyłączyłem wszystko, bo przeszukiwanie zasobów internetowych powodowało tylko długie oczekiwanie, a tak naprawdę niewiele było z tego pożytku. Wychodzę z założenia, że do wyszukiwania w zasobach sieciowych mamy przeglądarkę internetową. Ostatnie zmiany możemy wykonać w zakładce Web Apps, gdzie warto wyłączyć całą integrację tego typu, a także integrację z Amazonem i Ubuntu One. Nie będziemy mieli „gratis” ofert zakupów muzyki czy książek przy wyszukiwaniu aplikacji na własnym sprzęcie.

ubu3

ubu4

Proload i zabawa z profilem

Całkiem niezłym wyjściem jest także instalacja niewielkiej aplikacji preload, która może zadbać o to, aby najczęściej uruchamiane aplikacje działały szybciej. Po prostu w ich wypadku ładuje je ona z wyprzedzeniem do pamięci. Jako że elementy Unity z pewnością do nich należą, również i ono może zostać tak przyśpieszone. Wystarczy zainstalować aplikację poleceniem:

sudo apt-get install preload

W wypadku wydania 12.04 i 12.10 możemy dodatkowo pokusić o całkowite wyłączenie wszystkich efektów czy przezroczystości poprzez prosty zabieg. Wystarczy w dowolnym edytorze tekstowym stworzyć plik o treści:

export UNITY_LOW_GFX_MODE=1

A następnie zapisać go w naszym katalogu domowym jako .xprofile (~/.xprofile). Rezultat powinniśmy zobaczyć po wylogowaniu i ponownym zalogowaniu się.

Inne rozwiązania

Co możemy jeszcze zmienić? Przede wszystkim zmienić kernel. Wpłynie to nie tylko na Unity, ale w zasadzie cały system i wszystkie aplikacje. Może także pozytywnie odbić się na temperaturach i poborze energii. Osobiście bardzo polecam tutaj ten stworzony przez ext73, a także całą jego aplikację Netext’73, która oprócz kernela pozwala nam na zainstalowanie skryptu APM, zamkniętych sterowników graficznych i microcode procesora. Nie będę wchodził w szczegóły, skieruję raczej do wyczerpującego artykułu FadeMinda, który objaśniał całość na przykładzie konkretnego modelu laptopa.

Ostatnim, dosyć przewrotnym rozwiązaniem jest… Zmiana środowiska graficznego. Jak wspomniałem już na początku, Unity nie należy do tych najlżejszych. Warto spróbować tej dystrybucji w wariantach Xubuntu i Lubuntu aby przekonać się, że potrafi być naprawdę szybka. Obok dowolnego środowiska możemy także doinstalować Cinnamona (choć w przypadku 12.04 może to się źle skończyć). Znajdziemy je w oficjalnym PPA. Poniżej polecenia jakie pozwolą nam na jego instalację.

udo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable
sudo apt-get update
sudo apt-get install cinnamon

Po tym zabiegu wystarczy się wylogować, a logując ponownie jako środowisko graficzne wybrać właśnie Cinnamona.

Mam nadzieje, ze powyższe porady komuś się przydadzą. Samo Unity również przechodzi obecnie duże zmiany. Warto przypomnieć, że całość jest przepisywana na Qt, co jeszcze w tym roku może zaowocować naprawdę sporym wzrostem wydajności. Zachęcam również do dyskusji. Może macie inne pomysły na jego przyśpieszenie w chwili obecnej, a może po prostu jakieś zupełnie odmienne zdanie na jego temat.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.