Kaw's Lair Kolejny blog do marudzenia

17Sie/122

GG 11 cięższe niż poprzednik

Wiadomo, że lubię analizować programy pod względem tego ile zasobów komputera. Stąd też mój co-jakoś-czasowe porównanie komunikatorów pod tym względem. Z tymi porównaniami był tylko zawsze jeden problem, trzeba zrobić milion screenshotów, obrobić powstawiać i tak dalej. Oraz - test zamyka się w maksymalnie 24h (nie lubię trzymać mojego głównego kompa online jeśli nic na nim nie robię). Z tych to powodów napisałem program, który monitoruje wybrane procesy (komunikatorów) i wrzuca informacje o nich (co 5 minut) do Excela. To, wraz z instalacją ESXi na domowym serwerze daje możliwość testowania programów przez długi okres czasu, i zrobienia wykresów obciążenia pamięci, wykorzystania CPU, etc.

Wygląda jak wszystkie moje zabawki "Tylko dla mnie" mniej więcej tak:

Ale do rzeczy. Przy okazji testów tej zabawki, chciałem zrobić porównanie, "ile Nowe GG jest lepsze niż Stare" i (prawdopodobnie) pochwalić GG Team za wyciąganie wniosków i nowy wygląd (który im całkiem przyjemnie wyszedł). Ale okazało się, że jak na razie jest dokładnie odwrotnie, tj "Stare GG jest lepsze niż Nowe GG". Rzućmy okiem na poniższe wykresy:

Powyższy wykres pokazuje zmiany wykorzystania pamięci przez procesy GG 11 (gghub.exe, ggdrive.exe, ggapp.exe - łącznie - niebieska linia) oraz proces GG 10 (gg.exe - czerwona linia). Obie aplikacje pracowały w tym samym systemie (Windows 7 X86 Trial, SP1 + wszystkie aktualizacje, 1GB RAM, AMD Turion II Neo K625), zostały włączone w tym samym momencie, robiły dokładnie to samo (no, czasem pokazując inne reklamy). Wychodzi z tego, że GG 11 jest o jakieś 43% bardziej RAMożerne niż Gadu-Gadu 10 (średnia odpowiednio 235MiB i 166MiB). Oraz, że nowsze gadu ma dziwne tendencje do krótkotrwałego pożerania pamięci w ogromnych ilościach, 430MiB w szczycie, bez wyraźnego powodu.

Nowe Gadu jest także o 31% bardziej CPUżerne (średnie odpowiednio: 25% i 19%). Byłem ciekaw na ile jest to obciążenie powodowane przez sam komunikator (szczególnie w wypadku GG 11), dlatego wysłałem wiadomość do GG Team z prośbą o udostępnienie bez-reklamowej wersji do kilku testów (i tylko testów), niestety nikt mi nawet nie raczył odpowiedzieć. Dlatego nie pozostaje nic innego jak uwzględnić reklamy jako integralną część komunikatora.

Innymi-wykresowo, jeśli ktoś odpaliłby na 1,5GHz CPU GG 10 i 11 jednocześnie, zjadłyby mu w szczycie ~70% mocy całego procesora. Chociaż nie wiem dlaczego ktoś miałby odpalać dwie wersje GG jednocześnie... ale wiem czemu mógłby odpalić dwie kopie jednej wersji - do obsługi 2 numerów. Acz wtedy (prawdopodobnie reklamy) zajechałyby średnio-starszy komputer;

To tyle z ciekawostek. Narzędzie będzie pewnie kiedyś udostępnione publicznie, jakby ktoś chciał się bawić w takie analizy, ale najpierw musi dostać jakąś możliwość konfiguracji. Poza tym nowe zestawienie zasobożerności komunikatorów ukaże się kiedy wyjdzie nowe AQQ (skompilowane na nowym Delphi co wygląda na zły pomysł). Plus, w nowej formule komunikatory będą nieprzerwanie musiały pracować 7 dni. Co powinno ujawnić ewentualne większe wycieki pamięci. ;)

1Sie/120

GG, F16 i „minimalizm”

Cała sprawa, do której właśnie dorzucam swoje trzy gorsze, rozpoczęła się od wpisu na blogu GG jest minimalistyczne. Oczywiście nie jest, ale GG, przyznając się do niezłej wtopy z GG 8 i 10, usiłuje teraz wszystkim wmówić, że jest. Na ten wpis zareagował Grzegorz Ułan z antywebu, porównując GG do chrome i Skype, na co Pan Rybus z GG odpisał, że to jak porównywanie F16 i ferrari. Cała sprawa w gruncie rzeczy jest całkiem zabawna, jak to zwykle z marketingiem bywa. Ale do rzeczy.

Pan Rybus zarzuca, że porównywanie GG i Chrome to jak porównywanie F16 i Ferrari (dodaje nawet odpowiedni filmik). A ja powiem tak, faktem jest, że to dwie różne rzeczy, jednak łączy je wbrew pozorom całkiem wiele. W obu da się rozmawiać z ludkami z GG, oba bazują na silnikach, których głównym zadaniem jest wyświetlanie HTML (chrome ma webkit, GG ma Gecko). W obu można wyświetlić gry. Generalnie, da się w obu zrobić to samo, nawet przesyłać pliki kontaktom z GG (dziękujemy za ggDysk), toteż, dlaczego miało by się nie dać porównać? ;)

Poza tym, GG Team wykazuje się lekką niekompetencją w swoim teście.

1.  GG wypada lepiej, pod warunkiem że zsumuje się rzeczywiste zużycie. Chrome_dzieli_bowiem_swoje_działanie_na_kilka_procesów – aby pokazać prawdziwe obciążenie przeglądarki, należy je zsumować – tylko wtedy będzie to rzetelne w porównaniu do pokazywania GG, które widnieje w jednym punkcie na liście aktywnych aplikacji, już zsumowane.

To prawda, co tam jest napisane, jednak zsumowano bzdurne liczniki. Zsumowano  "zestaw roboczy", pokazujący ile aplikacja zajmuje danych w fizycznej pamięci (RAM) wraz z tym co jest między nimi (i systemem) współdzielone. Ujmując to inaczej: jeśli zsumujemy "zestawy robocze" wszystkich aplikacji, przy założeniu, że wskaźnik "obciążenie pamięci" jest >99%, to wyjdzie nam, że wszystkie aplikacje zajmują więcej pamięci niż posiadamy RAMu. Procesy Chrome współdzielą większość pamięci (jak widać na pierwszym screenie z "testu", "prywatny zestaw roboczy" w procesach chrome to najczęściej mniej niż 50% zestawu roboczego). A co jest we współdzielonym obszarze? Głównie biblioteki systemowe, a także to, co procesy w sposób jawny mają zadeklarowane jako "shared". Co więcej, oba te liczniki i tak mają jeszcze poważniejszą wadę, pokazują ile pamięci aplikacja trzyma (tylko) w pamięci RAM. Dlaczego to źle? System może wypchnąć sporą ilość danych z pamięci do pliku wymiany, to z kolei może doprowadzić do sytuacji, kiedy nieaktywne karty Chrome (albo proces GG) będą wyglądały jak góra lodowa. Ich czubek będzie załadowany do pamięci a reszta tego, co tak na prawdę zżera aplikacja, będzie przechowywane w pliku wymiany. Tę sztuczkę wykorzystuje AQQ aby przed nieświadomym użytkownikiem ukryć swoje rozmiary.

2. Porównywanie GG z inną aplikacją, jak chociażby Chrome, mimo wszystko i tak trochę mija się z celem. GG to komunikator, a Chrome to przeglądarka. Lamborghini to samochód, a F 16 to odrzutowiec.

Po części tak, po części nie. Ze względu na to jak GG i Chrome są skonstruowane, można by powiedzieć, że Chrome napędza silnik F110-GE-100 (F16) a GG napędzany jest Lyulka AL-37FU (jeden z silników SU-37). Fajnie, że Chrome to samolot, a GG to samochód. Jeszcze fajniej, że ten samochód lata... tylko  skrzydła trochę przeszkadzają w jeździe, a i  silnik do najmniejszych nie należy, o spalaniu nie wspominając. Dlatego GG nigdy nie będzie "minimalistyczne". Musi pomieścić w sobie  wielki silnik, gecko. Gecko ze swojej natury jest pamięciożerne, nic tego nie zmieni, nawet szczere chęci całego GG Team i ekipy Mozilli. Fakt, że silnik sprawia, iż to GG lata, a może nawet  wgryza się w ziemie i buduje tunele, tylko czy tego tak na prawdę potrzeba w komunikatorze? Kwestia do dyskusji, ja nie mam szczególnie nic przeciw GG, ot program dla specyficznej grupy docelowej. Jeśli komuś odpowiada jego specyfika - niech używa. Ale wciskanie kitu jakie to ono jest "minimalistyczne" i mało zasobów wtrynia, to naciąganie rzeczywistości. Ani zbędnych modułów tegoż wyłączyć się nie da, ani jego apetytu na pamięć czy CPU (a tak, flash) ukrócić. Można tylko sprawić aby ów „minimalizm” pozorował samym tylko wyglądem.

3. Co do konkurencyjnych na polskim rynku komunikatorów – pomimo że to nadal tak samo samochody, a więc ta sama kategoria, to jednak oferujące znacznie różniące się między sobą możliwości, różne spalanie. A większe nieco spalanie nie wynika przecież z tego, że projektanci i inżynierowie wsadzili na siłę pod maskę za duży silnik na złość kierowcy. Lecz zrobili to dlatego, że zaprojektowali nowy model pod szersze drogi, korzystając z nich zaprojektowali to, co jeszcze parę lat temu było niemożliwe

I to dla odmiany, całkiem prawdziwa prawda, szkoda tylko, że te drogi w Pl. nie są tak szerokie, jakby ludzie tego chcieli.

Gecko nie jest natywne na Macu, na Linuksie też nie bardzo, a tam (mac), w obciążaniu pamięci i CPU, bije jeszcze większe rekordy (o rozmiarze instalatora nie wspominając). Ja jak zwykle się nie znam i wierzę w natywne programy na daną platformę, zamiast w chodzenie na skróty za pomocą QT albo Gecko.

12Lis/1141

Komunikatory kontra systemowe zasoby, edycja „Listopad 2011”

Witamy w kolejnej edycji "wodotryski kontra obciążenie", powody obecnej edycji są w zasadzie dwa:

  • AQQ dorobiło się nowego systemu skórkowania okien, który uwaga: mi się nawet podoba... przynajmniej przez pierwsze 5 minut.
  • WTW dorobiło się możliwości nieużywania Internet Explorera.

Tlen obecnie z zestawienia został usunięty, bo i tak nie jest rozwijany. Wygląda jakby o2 czekało aż po cichu wyzionie ducha. Poza tym w zestawieniu (tak, zestawienie to jest nie konkurs) mamy:

  • AQQ (2.4, ostatnia stabilna)
  • Miranda (0.9.33, ostatnia stabilna będąca pod ręką)
  • WTW (0.8.24, ostatnia stabilna)
  • GG Lite (0.3.8, ciężko stwierdzić, ale to chyba też ostatnia stabilna)
  • Gadu-Gadu (chyba ostatnia stabilna, 10.5.2.13164)
  • Pidgin (2.7.10)
  • Kadu (ostatnia hm, wydana wersja: )

Zestawienie ma na celu pokazanie jak komunikatory (w najwłaściwszej dla siebie konfiguracji, czyli praktycznie domyślnej) w prawie identycznych warunkach obciążają system. Wszystkie mają do dyspozycji Windows 7 uaktualniony o co tylko się da, w wersji X86. Otrzymują z sieci identyczne dane, dzięki czemu nie dochodzi do sytuacji z rodzaju "jak Ty to zrobiłeś, że ci tyle RAMu zje, u mnie tylko 640kiB!". Procedura "testowa" jest banalnie prosta: odpalamy wszystkie komunikatory równocześnie, dajemy im się zalogować do sieci i czekamy około (w tym wypadku) 17h, po drodze z innego systemu gadając sobie z ludźmi. Zbieramy wyniki z Process Explorera oraz Task Managera, zestawiamy je, dodajemy komentarz, i gotowe.

13Kwi/1136

Komunikatory vs Systemu zasoby, 2.0

Tekst ten to nowa wersja tego oto mojego tekstu o tym jak prawie domyślnie ustawione komunikatory obciążają system. Metodologia została taka jak była. Komunikatory ostały uaktualnione do takich wersji do jakich się same uaktualniły. Do szeregu dołączyły także oryginalne GG (mimo niespełnienia wymagań, jako ciekawostka), GG Lite oraz Kadu. W efekcie test był przeprowadzony łącznie na 8 sztukach, podzielonych na dwie maszyny wirtualne w których działał Windows 7 SP1 podparty IE9.

11Kwi/112

Gadu-Gadu i zrywanie połączenia

Jak zapewne część z Was zaobserwowała, od paru dni alternatywne komunikatory miały (a część wciąż ma) pewne problemy ze zrywaniem połączenia do serwerów Gadu-Gadu. Problem wystąpił wraz ze zmianą certyfikatów SSL używanych na serwerach GG. Pierwszym komunikatorem, który sobie z tym poradził było AQQ (prawdopodobnie dzięki beheritowi), ostatnio dołączyło do tego grona WTW. Pewnie więc nie możecie się doczekać, by dowiedzieć się o co właściwie chodzi. Wbrew części podejrzeń, to nie ma związku z TLS. Ale może do rzeczy?

Zakres tematyczny: Gadu-Gadu, Komunikatory, WTW Czytaj dalej