Firefox 3.6.x#
Optymalizacja#
Po krótkim wprowadzeniu i nakreśleniu podstawowych zagadnień dotyczących Firefoksa, teraz skupie się na czymś równie ważnym - czyli prędkości działania przeglądarki.
Pomimo niewątpliwe ogromnej liczby zalet "ognistego Liska", przeglądarka jak każdy program posiada wady. Dział ten dotyczy zastosowania przeglądarki w grze The Crims, dlatego poruszone problemy tylko i wyłącznie nawiązywać będą do wirtualnej rozgrywki.
Nie wszystko złoto co się świeci#
Przeglądarka ze stajni Mozilli jest dobrym produktem, trzymającym się od długiego czasu w ścisłej czołówce. Posiada szerokie wsparcie dla standardów WWW, szybki silnik JavaScript, nie najgorsze renderowanie stron, znakomite zarządzanie pamięcią. Niewątpliwie jedną z najważniejszych zalet jest możliwość dowolnej rozbudowy i modyfikacji udostępnianego towaru. Chciałoby się rzec: "I gdzie te wady?".
Schody zaczynają się pojawiać w przypadku wykorzystania przeglądarki do nieustannego mielenia po wszystkich kartach (oknach) z wykorzystaniem skryptów (np. moich). Niechlujne napisanie kodu wykluczam, wszystko co mogło ulec poprawieniu zostało wykonane. Objawem niedomagań Liska w przypadku tak ekstremalnego zastosowania (jednoczesne wykonywanie czynności na kilkunastu kartach - np. skoki grupowe) jest denerwujące zamrażanie interfejsu (brak reakcji lub niemożność wykonania czegokolwiek do czasu skończenia działania), częste wywalanie białej strony informującej o błędzie połączenia internetowego (pomimo posiadania szybkiego łącza).
Przyznam szczerze, że nie mam pojęcia czemu tak się dzieje. Problem pojawia się na słabych jak i wydajnych maszynach z dobrym łączem internetowym. Z własnych obserwacji stwierdzam, że przeglądarka generuje bardzo duże obciążenie procesora (często osiągając 100%). Do takiego stanu niewątpliwie przyczynia się samo rozszerzenie Greasemonkey, które każdy skrypt podpinany pod stronę uruchamia w sandboxie (piaskownicy - izolowane środowisko).
Szukając rozwiązania dla mojej ulubionej przeglądarki przeczesałem Internet wzdłuż i wszerz. Jest wiele artykułów odnośnie optymalizacji, z tym że są to materiały dosyć stare i nieaktualne. Pomimo tego znalazłem kilka ciekawych uwag, które w dalszej części postaram się zaprezentować.
Przegląd metod#
Całą uwagę koncentruję na przyspieszeniu wykonywania skoków grupowych w grze The Crims. Nie wiem, czy polecone przeze mnie sposoby okażą się przydatne w przypadku innych zastosowań.
Z przetestowanych porad utworzyłem listę trików, które rozwiążą większość problemów:
- Modernizacja sprzętu: najlepiej wybrać procesor wielordzeniowy z dużą ilością pamięci cache, pamięć RAM nie mniejsza niż 2 GB. Oczywiście taka konfiguracja zapewni iście komfortowe warunki rozgrywki. Z drugiej strony nie popadajmy w skrajność, nie ma sensu wydawać kilku/kilkunastu stówek tylko i wyłącznie z powodu gry. Jak sam się przekonasz z wnikliwej lektury strony, nawet ze starego, jednordzeniowego dziadka można sporo wycisnąć.
- Zastosuj wydajny dysk SSD. Obecnie wąskim gardłem stają się przestarzałe, magnetyczne dyski twarde. Najnowsze rozwiązania oparte na technologi flash umożliwiają większe transfery w porównaniu z magnetycznymi kuzynami. Jeszcze większe możliwości uzyskamy budując macierz RAID z dwóch lub więcej dysków flash. Potencjał nowych technologi można podziwiać w następującym filmiku. Nowinki techniczne sporo kosztują, obecnie masowe pamięci flash to wydatek kilkuset złotych. Tragedii nie ma, jeszcze niedawno było to ponad dwa tysiące. Z biegiem czasu technologia się upowszechni osiągając ceny, na które pozwoli sobie przeciętny użytkownik.
- Szybki Internet. Reguła jest jedna, im szybciej tym lepiej. Żyjemy w czasach, kiedy łącza megabitowe stają się standardem (co nie zmienia faktu, że Polska wciąż pozostaje zaściankiem ze swoimi wygórowanymi cenami). Szybkie łącze to szybsze ściąganie danych, co w grze The Crims jest bardzo istotne. Analizę ilości danych pobieranych i odbieranych w czasie giercowania pod Firefoksem pozwala monitorować rozszerzenie Firefox Throttle. Po godzinie gry wielkości sięgają rzędu kilkudziesięciu megabajtów.
- Dbanie o kondycję systemu operacyjnego, prawdopodobnie w większości przypadków będzie to Windows.
- Wyłączenie wszystkich usług spowalniających system.
- Alokacja części składowych przeglądarki w RAM-ie, w celu uzyskania szybkich czasów dostępu i odciążenia pracy dysku. Bardzo ważna uwaga, o której napisze dalej w poradniku.
- Liczba rozszerzeń hamuje Liska, dlatego zgodnie ze wskazówkami, na profilu przeznaczonym do gry trzymaj ich jak najmniejszą ilość.
- Blokada niepotrzebnych elementów witryny (grafika, reklamy, banery, liczniki i inne ustrojstwa) z wykorzystaniem rozszerzenia Adblock Plus.
- Ukrywanie nieznaczących elementów witryny (grafika, reklamy, banery, liczniki i inne ustrojstwa) z wykorzystaniem rozszerzenia Stylish.
- Zastosowanie odpowiedniego rozszerzenia optymalizującego ustawienie sieciowe przeglądarki, polecam Fasterfox (wersja pierwotna).
- Ograniczenie akcji wykonywanych przez skrypt do niezbędnego minimum - wykonane w najnowszej odsłonie.
Efekty wyżej wymienionych rozwiązań hardwarowych są oczywiste. Porady dotyczące strony softwarowej przynoszą pożądany efekt, czego sam osobiście doświadczyłem. Wypróbuj każdej metody, jeśli i w Twoim przypadku rezultaty będą zadowalające proszę o zdanie relacji, jest to dla mnie dość istotne zagadnienie.
Nienaganna kondycja Windowsa#
Z góry zakładam, że korzystasz z wynalazku Billa jak i 90% pozostałych użytkowników komputerów. Okienka Microsoftu mają poważny feler, nie ważne jak pieścisz system, po jakimś czasie ulegnie zaśmieceniu. Winę za taką sytuację ponosi rejestr systemowy, przechowujący wpisy poszczególnych aplikacji. Problem w tym, że deinstlacja oprogramowania niekoniecznie usuwa ze sobą wszystkie ślady, przez co śmietnik się nawarstwia. Nie wspomnę już o pozostałym balaście jakim są kopie przetrzymywanych poprawek, dzienniki zdarzeń, punktów przywracania itd.
Wszelkiej maść sprzątacze, uninstalery i inne wynalazki na nic się zdadzą. Owszem, potrafią odzyskać nawet kilka GB danych, lecz nigdy nie zrobią porządków w 100%. Jedyne co zasługuje na uwagę z tego typu programów to CCleaner (najlepiej pobrać w wersji portable). W opcjach poustawiać, które programy oraz elementy Windows mają być sprzątane. Od czasu do czasu warto uruchomić odśmiecanie oraz porządkowanie rejestru systemowego.
Proponuję także inne, dodatkowe rozwiązanie, dzięki czemu unikniesz poważniejszych problemów. Z pewnością każdy zauważył, że po zainstalowaniu "gołego" systemu pracuje on elegancko (responsywność, lekkość działania). Z każdym kolejnym zainstalowanym programem i ubytkiem czasu czar pryska. Nic nie stoi na przeszkodzie by zapisać świeży obraz systemu od razu po instalacji, oczywiście po dograniu najistotniejszych sterowników. Dobrym pomysłem jest również poustawianie wszelakich preferencji, które naszym zdaniem umożliwiają komfortową pracę z systemem.
Na rynku istnieje sporo programów umożliwiających wykonywanie kopii systemu operacyjnego (najbardziej znane to Norton Ghost i Acronics True Image - niestety oba płatne). Utworzony obraz można bezpośrednio wypalić na płytach, przechowywać na innej partycji lub dysku. W razie niespodziewanego wysypania systemu (atak wszelkiego robactwa, wirusów, trojanów) lub jego spowolnienia przywrócenie obrazu potrwa kilka minut. Kuszące rozwiązanie, biorąc pod uwagę ile czasu schodzi z samą instalacją systemu i dogrywaniem wszystkiego.
Dodatkowo, zamiast instalacji oprogramowania proponuję korzystać z ich odpowiedników w wersji portable, czyli nie wymagającym instalacji. Są to specjalnie przygotowane programy, które wszystkie ustawienia trzymają w swoim katalogu, nie panosząc się po katalogach systemowych. Bez problemu można uruchomić je z każdego nośnika danych (dyski twarde, płyty CD/DVD czy pendrive'y).
Kolejnym zagadnieniem będzie defragmentacja dysków (tylko w przypadku nośników magnetycznych). Nie będę za bardzo wnikał w proces fragmentacji, ogólnie chodzi o to, że z biegiem czasu pliki dzielone są na małe fragmenty i losowo rozmieszczane na dysku. Przez takie zabiegi odczyt danych zostaje spowolniony, głowica dysku musi wykonać sporo ruchów. Co jakiś czas (np. 1 miesiąc) należy z powrotem posklejać takie pliki i umieścić w jednym miejscu nośnika danych. Do tego służą wszelakie defragmentatory.
Wybór jest naprawdę spory, od płatnych kombajnów (Diskeeper, O&O Defrag), po prościutkie aplikacje w wersji portable. Polecam bezinstalacyjnego Defraglera w polskiej wersji językowej. Nie jest demonem prędkości, ale na tle konkurencji charakteryzuje się dużą dokładnością.
Największe znaczenie w poprawie wydajności będzie maiła defragmentacja partycji z systemem operacyjnym.
Wyłączenie niepotrzebnych usług systemowych#
Część nowoinstlowanych programów uruchamianych jest wraz ze startem systemu operacyjnego. Sytuacja dotyczy większości antywirusów, zapór sieciowych. Nawet programy do wirtualnych napędów (popularny DAEMON Tools), wykonywania kopii (Norton Ghost), defragmentacji dysku (Diskeeper) posiadają własnego agenta pracującego w tle.
Kilka takich wynalazków i system operacyjny zostanie przyhamowany. W przypadku wykonywania skoków grupowych nie ma kompromisów, należy wyłączyć wszystko co się da, włącznie z zabezpieczeniami antywirusowymi. Nowoczesne skanery wirusów pracują w tle, analizują każdy plik przewijający się przez system, dlatego mogą znacząco wpływać na odpowiedź przeglądarki.
Z oczywistych względów nie namawiam do całkowitego pozbywania się programów zabezpieczających, nie jestem samobójcą. Niemniej jednak na czas gry proponuje wyłączyć wszystko co w naszej mocy. Po zakończeniu gry nic nie stoi na przeszkodzie by całość przywrócić do pierwotnych ustawień.
Po wyłączeniu zabezpieczeń nie odwiedzaj nieznanych stron internetowych i w żadnym wypadku nie pobieraj plików niewiadomego pochodzenia (tak, głownie chodzi mi o nielegalne oprogramowanie naszpikowane wirusami).
W systemie Windows XP niechciane usługi wyłączyć można w następujący sposób: Start >> Uruchom >> msconfig
. W otwartym oknie, w zakładkach Usługi
(zaznacz Ukryj wszystkie usługi firmy Microsoft
) oraz Uruchamianie
należy odznaczyć wszystko co zbędne, dograne przez nowe programy.
Po ponownym uruchomieniu komputera zbędny balast zostanie wyłączony. Po zakończeniu rozgrywki w analogiczny sposób można przywrócić działanie programów (wystarczy kliknąć na Włącz wszystkie
) w obu wspomnianych wyżej zakładkach.
Pamięć RAM złotym środkiem#
Firefox ma dziwną tendencję do nieustannego zapisywania danych do swojej wewnętrznej bazy danych, do plików profilu, jak również tworzenia sporej ilości sekwencyjnie rosnących plików tymczasowych. Gdy to wszystko weźmie się razem do jednego worka, dysk twardy zaczyna szaleć.
Jak sobie zatem z tym wszystkim poradzić? Najprostszym rozwiązaniem jakie przychodzi do głowy to przeniesienie wszystkich tych operacji do pamięci RAM. W obecnych czasach większość osób dysponuje pamięcią rzędu 2-4 GB, z czego część leży odłogiem. Wypadałoby zagospodarować pewną część nieużytku.
Wystarczy za pomocą odpowiedniego oprogramowania utworzyć RAM-Dysk. Najprostszy w użyciu będzie program Gavotte Ramdisk, filmik instruktażowy powinien ułatwić zadanie. Kolejnym krokiem będzie ulokowanie odpowiednich katalogów w nowo utworzonym RAM-Dysku. Rozwiązań jest kilka, niektórzy przechowują w nim tylko pliki tymczasowe, inni z kolei cały profil.
Sam postawiłbym krok dalej i umieścił całego Firefoksa w pamięci RAM. Wystarczy ściągnąć przeglądarkę w wersji portable, dograć wszystkie rozszerzenia, zainstalować skrypty, ustawić pozostałe opcje. Należy mieć tylko na uwadze, że RAM jest pamięcią ulotną, czyli w przypadku zaniku zasilania (po wyłączeniu komputera) wszystkie dane są tracone. Dlatego za każdym razem, gdy uruchamiamy komputer należałoby przegrać z dysku twardego cały katalog programu do RAM-Dysku. Jeśli chcemy by historia i inne zapisane ślady przeczesywania Sieci zostały zapamiętane przed wyłączeniem komputera należałoby z powrotem skopiować zawartość RAM-Dysku na dysk twardy. Obydwie czynności można zautomatyzować, robiąc odpowiednie skrypty, które wszystko wykonają za nas. Polecam kolejny filmik, który dokładnie przedstawia przytoczoną przeze mnie możliwość (cześć I, cześć II)
Powyższe rozwiązanie możesz zastosować w przypadku pozostałych programów. Pamiętaj, że z RAM-u korzystają wszystkie aplikacje, dlatego jego zapas wykorzystuj z umiarem, w przeciwnym wypadku szybkość działania komputera (w przypadku uruchomieniu kilku programów) może diametralnie spaść.
Drążąc dalej temat okazuje się, że do pamięci RAM załadować można cały system operacyjny. Istnieją specjalnie przygotowane moduły, w których osadzić można kilka kości DDR2 (nie muszą być najszybsze). Takie rozwiązanie wydajnością przewyższa obecnie dostępne dyski SSD. Co ciekawe kości DDR2 są tanie, w niedługim czasie będą "odpadem" (obecnie stosujemy DDR3). Wiele ciekawych artykułów znaleźć można przeszukując zasoby WWW pod hasłami: i-RAM lub Acard ANS. Pierwszy z brzegu opis z testem pozwala zorientować się w drzemiącym potencjale rozwiązania.