Czy lekkie środowiska są lekkie?

Problem oszczędnego gospodarowania zasobami naszych maszyn chyba nigdy się nie skończy. Gdy docieramy do rozsądnego kompromisu ilości pamięci w stosunku do zapotrzebowania na RAM naszego środowiska graficznego, nadchodzi rewolucja, nowe funkcje, nowe możliwości i ponownie jesteśmy w miejscu, w którym zastanawiamy się nad dokupieniem RAMu. W przypadku otwartej architektury naszego peceta nie stanowi to problemu. Gorzej, gdy do rzeczonej maszynki nie mamy możliwości dorzucenia kości pamięci. Dodatkowo, oprogramowanie użytkowe też nie stoi w miejscu i rozwijając się, pochłania coraz to kolejne megabajty pamięci roboczej. Stąd też odpowiedni dobór środowiska graficznego to gra warta świeczki. Ale które środowiska są naprawdę lekkie, a które nie?

Najprostszy sposób aby się o tym przekonać, to bazowy system do którego z łatwością doinstalujemy (za każdym razem na świeżo) paczki i usługi konieczne do funkcjonowania konkretnego środowiska. Jednak nim zaczniemy przygotowywać komponenty do takiego testu, upewniamy się, czy ktoś już nie wpadł na podobny pomysł. Akurat w tym przypadku okazuje się, że ktoś już wykonał to zadanie za nas – dlatego wystarczy przyjrzeć się wynikom.

Martin Wimpress na swoim blogu przeprowadził podobny test z użyciem dziewiczej 32bitowej wirtualnej instalacji Arch Linuksa, sklonowanej w kilku egzemplarzach. Na każdej z wirtualnych maszyn (której przydzielił 768MB pamięci), zainstalował kolejno środowiska wraz z wszelkimi przynależnymi im składnikami niezbędnymi do funkcjonowania. Zatem menadżer logowania, menadżer okien, pulpitu, plików, itp, itd. Lista paczek użyta dla każdego ze środowisk jest do podglądnięcia tutaj (uwaga – oczywistym jest, że to tylko paczki bazowe, bez zależności). Po uruchomieniu tak spreparowanej maszyny i odczekaniu pełnego zalogowania się do pulpitu, dane o zużyciu pamięci były pobierane za pomocą SSH (w celu uniknięcia uruchomienia jakiegokolwiek programu). Jak zatem wygląda apetyt najpopularniejszych środowisk na pamięć naszego komputera?

| Desktop Environment  | Memory Used |
| ---------------------|------------:|
| Enlightenment 0.18.8 |    83.8 MiB |
| LXDE 0.5.5           |    87.0 MiB |
| XFCE 4.10.2          |   110.0 MiB |
| LXQt 0.7.0           |   113.0 MiB |
| MATE 1.8.1           |   123.0 MiB |
| Cinnamon 2.2.13      |   176.3 MiB |
| GNOME3 3.12.2        |   245.3 MiB |
| KDE 4.13.1           |   302.6 MiB |
| Unity 7.2.0.14       |   312.5 MiB |

Xubuntu 14.04 LTS
Z pewnością wielu z nas oczekiwało podobnych wyników, choć może dziwić niewielka różnica pomiędzy MATE a Xfce (drzewiej MATE było o wiele bardziej zasobożerne, a może to wynik zaangażowania Martina w projekt MATE?). Jednak kwintesencją rozważań jest podjęcie oceny na ile środowiska słusznie zajmują aż tyle pamięci, lub czy ich minimalizm nie jest zbyt przesadzony i obdzierający pulpit z funkcjonalności?

Najbardziej krytyczną ocenę zbierają oczywiście Unity i KDE, które za cenę wygody użytkownika (?) wymagają sporych zasobów do samodzielności. Ale również LXDE, które za cenę lekkości sprawia odbiorcom koszmarny eklektyzm konfiguracyjny, czy Enlightenment za graniczne oderwanie od standardu. Innym komunałem, który ciśnie się na myśl jest fakt, że większe środowiska to więcej kodu, zatem więcej czasu procesora na jego przetworzenie (wykonanie), a stąd większe obciążenie CPU, co skutkuje krótszym czasem pracy na baterii, itp.

Ubuntu MATE remix
Wychodzi na to, że najwięcej skorzystamy ze środowisk ‘środka’, czyli znajdujących się pośrodku stawki – MATE, Xfce, Cinnamon i wschodząca gwiazda LXQt. Wszystkie łączy zgrabne i niezobowiązujące nawiązanie do tradycji użytkowania pulpitu, brak elementów zaskoczenia w postaci przewróconej do góry nogami obsługi i łagodnego kompromisu pomiędzy wykorzystaniem zasobów, oferowanymi możliwościami oraz atrakcyjnością wizualną. Problemem może okazać się jednie fakt, że niewiele dystrybucji przykłada się do godnego zaprezentowania w pełnej okazałości możliwości np. takiego Xfce (które po odrobinie konfiguracji nie ma się czego wstydzić). Czy to oznacza, że duże środowiska nie nadają się do niczego? Niekoniecznie, jednak tam otrzymujemy nieco inny zestaw możliwości za inną cenę. Teoretycznie ‘bezobsługowe’ Unity lub KDE w pewnych momentach i tak będą wymagały przestawienia paru opcji, lub zoptymalizowania prędkości działania.

Nie należy się też dać zwariować – generalnie używajmy to tego, co się nam podoba. Jedynie w momentach krytycznych należy pamiętać o fakcie, że środowisko graficzne i zestaw jego usług oraz składników też wymaga pamięci RAM i zasobów CPU – i tu należy pamiętać o ew. odpowiednim doborze pulpitu pod posiadane zasoby sprzętowe.