Ustal, która karta w przeglądarce Firefox używa zasobów procesora?

274

Czy w obecnej przeglądarce Firefox jest coś podobnego do Menedżera zadań w Google Chrome? ( Shift+ Esc)

Jest coś, co czasami zajmuje wystarczająco dużo procesora, aby Firefox nie reagował - ale z wieloma oknami, każde z kilkoma otwartymi kartami, próba i błąd zajmie trochę czasu.

Chris
źródło
1
Nie, nie da się tego zrobić natywnie. Nie opublikuję odpowiedzi, ponieważ może istnieć jakieś rozwiązanie innej firmy.
Sasha Chedygov
Znalazłem to przez google, jest to wtyczka. addons.mozilla.org/en-US/firefox/addon/bartab ... Sprawia, że ​​(podobno) karta nie korzysta z zasobów, dopóki jej nie klikniesz i nie będziesz aktywnie jej przeglądać. Z komentarzy użytkowników może nie działać dokładnie tak, jak reklamowano, i najwyraźniej w firefox4 jest to zachowanie natywne bez wtyczki. Osobiście spróbowałbym ff4, jeśli jeszcze tego nie zrobiłeś.
CreeDorofl
1
Firefox nie używa osobnych procesów dla każdej karty i wtyczki, tak jak Chrome, więc nie ma powodu, aby mieć menedżera zadań takiego jak Chrome.
Synetech
@chris: Ach, właśnie, w tym roku przeszli na szybszy model wydania ...
Tamara Wijsman,
1
Pięć lat później Firefox nigdy tego nie zapewnił. Użytkownicy zainteresowani taką funkcją zachęcani są do poparcia tej prośby .
Luís de Sousa

Odpowiedzi:

292

Zużycie zasobów można monitorować za pomocą about:performancestrony, która działa jak w Task ManagerFirefoksie 64. Przeszedł on gruntowny przegląd i daje teraz znacznie bardziej szczegółowy wgląd w działanie kart i dodatków.

Menadżer zadań

UnclickableCharacter
źródło
7
To miłe. Mam jednak proces „Web Content” w 100% z procesora, który tutaj się nie pokazuje.
Matthias Urlichs
42

about:memorypokazuje szczegóły wykorzystania pamięci Firefox. Na tej stronie znajduje się również przycisk, który pozwala zminimalizować zużycie pamięci.

jutro__
źródło
13
Oczywiście to nie to samo, co użycie procesora, ale z mojego doświadczenia wynika, że bardzo częstoone skorelowane. Po zabiciu największej zakładki zapamiętywania pamięci użycie procesora i opóźnienie często spadają zauważalnie.
peterflynn
13
Obviously it’s not the same as CPU usage, but in my experience they're very often correlated. @ytpete, często odwiedzasz wąski podzbiór stron internetowych, ponieważ nie ma absolutnie żadnego powodu, dla którego byłyby koniecznie połączone. Wystarczy mieć stronę 1KB, która ma JavaScript z nieskończoną pętlą, a tym samym 100% obciążenia procesora, i kolejną ze 100 MB obrazów, które nie wymagają procesora.
Synetech
9
about:memory shows Firefox's memory usage details. There's also a button on that page that allows you to minimize memory usage. Czy ta strona zawiera informacje o obciążeniu procesora? Jeśli nie, to co to ma wspólnego z zadanym pytaniem? Ta „odpowiedź” powinna być komentarzem, a nie odpowiedzią.
Synetech
3
@ Synetech Minęło wiele lat, odkąd zwykła nieskończona pętla JS zrobiłaby wiele: Firefox i większość innych przeglądarek po kilku sekundach wyświetla komunikat „nie reaguje na skrypt”, a następnie pętla zostaje przerwana.
peterflynn
6
To zadziałało dla mnie świetnie. Chociaż prawdą jest, że mała pętla JavaScript może uderzyć w procesor bez użycia pamięci, nie robi tego większość skryptów stron internetowych - wykonują one zdalne połączenia, aktualizują i manipulują DOM, są wywoływane przez wtyczki (np. Flash) itp. Wszystkie te rzeczy mogą skutkować zwiększonym wykorzystaniem pamięci (szczególnie jeśli strona powoli przecieka obiekty). Znalazłem kartę winowajcy, zamknąłem ją, użyłem przycisku Minimalizuj pamięć, a Firefox działał płynnie. Dzięki jeszcze raz!
Nick
11

Pierwszym prawdopodobnym winowajcą jest Flash. Kill Flash - teraz.

Może to być nieuczciwy kod JavaScript. Rozszerzenie JavaScript Deobfuscator w przeglądarce Firefox pozwala obserwować liczbę wywołań funkcji JavaScript:

Nie jest to miara użycia procesora, ale wystarczająco blisko proxy: znajdź funkcję z wybiegającą liczbą wywołań, a prawdopodobnie złapiesz winowajcę.

Jean-Marc Liotier
źródło
1
Nie mam zainstalowanego Flasha i nie mam zainstalowanego NoScript. Nadal dzieje się to w OSX, mimo że mam dwa procesory z 8 rdzeniami i 32 GB pamięci RAM
chaostheory
6

Firefox 16 powinien w końcu wprowadzić odpowiedni wbudowany profiler .

mk-fg
źródło
1
Niestety pytający używa Firefox 3.x. :(
dangowans
2
Zadowolę się każdą wersją Firefoksa :)
Chris
1
Najwyraźniej ten profiler nigdy nie został wprowadzony. Podany link jest w tej chwili martwy.
Luís de Sousa,
Link jest dostępny, ale powolny
Journeyman Geek
4

Używając Flashblock i Nevercrash , teraz zastąpionych FlashStopper i UnloadTab , przechodzisz długą drogę do blokowania Flasha lub kart, zapobiegając marnowaniu procesora zamiast go śledzić. Dotyczy to również pamięci. Flash, np. Youtube nie może się uruchomić, dopóki go nie klikniesz, więc możesz uruchomić je na kilku kartach, a one zaczekają na otwarcie kart. Karty są pobierane z pamięci i bezczynne, dopóki ich nie otworzysz, a następnie są odświeżane z pamięci podręcznej (jeśli nadal są dostępne).
Zamykanie Internetu na jakiś czas działa również wtedy, gdy go nie potrzebujesz ;-)
Firefox tak bardzo fragmentuje pamięć wirtualną, że wykorzystuje nadmierną ilość pamięci rzeczywistej (w pamięci rzeczywistej jest zbyt dużo nieużywanej pamięci wirtualnej). Trzeba okresowo zatrzymywać i ponownie uruchamiać Firefoksa z tymi samymi stronami. Spowoduje to defragmentację pamięci, a cały system będzie działał szybciej przez zmniejszenie wymiany.
W moim systemie Ubuntu rzeczywiste użycie pamięci powoli wzrasta do 98%. Potem nadszedł czas, aby zatrzymać Firefoksa i uruchomić go ponownie: wówczas zużyje mniej niż 1 MB prawdziwej pamięci zamiast 3 MB. To samo dotyczy Thunderbirda ..

Papou
źródło
Możesz również odnieść sukces, korzystając z przycisków czyszczenia pamięci w about:memory. Nie wiem, czy będą działać tak samo, jak ponowne uruchomienie Firefoksa. Chciałbym zobaczyć trochę badań na ten temat.
joeytwiddle
Dzięki. Zrobiłem to wcześniej, zrobił to ponownie, a rzeczywiste użycie pamięci pozostaje na poziomie 92% po kliknięciu dowolnego. <br/> Jeśli chodzi o Flashblock i Nevercrash, o czym wspominałem, stały się one niezgodne z Firefoksem 34. „Czy uaktualniłeś do najnowszej wersji?” wieczny problem. Fala jest teraz Flashstopper i UnloadTab. Raczej kompatybilny, ale UnloadTab, co nie dziwi, zwalnia karty, nie wymaga wyraźnego „rozładowywania kart” (w porządku), a „przeładowywanie kart” działa jak odświeżenie strony (mniej dobrze, ale przy użyciu pamięci podręcznej). Można ustawić opcję „Zachowaj ładowanie adresu”, gdy ponowne ładowanie przerywa stan strony, który chcesz zachować.
Papou
Dzięki za testowanie. :) <plug> Używam własnego skryptu użytkownika Hibernacji Idle Tabs z Greasemonkey. Przechodzi do lekko trzymającej strony po tym, jak karta była nieużywana przez kilka godzin. Hibernację można wymusić za pomocą jej bookmarkletu .
joeytwiddle
4

Oprócz wspomnianego już dodatku about:performanceistnieje Menedżer zadań, który miał być klonem menedżera zadań Chrome.

wprowadź opis zdjęcia tutaj

czerny
źródło
5
Niestety nie jest jeszcze kompatybilny z Firefoksem 57.0+
Ed Randall
3

Poniższa odpowiedź na inne pytanie może ci pomóc. Odpowiedź jest napisana przez użytkownika „wyróżnienie”.

XUL Profiler to niesamowite rozszerzenie, które może wskazywać rozszerzenia i banany JS po stronie klienta pod względem procesora. Nie działa na podstawie kart, ale według skryptów (lub mniej więcej). Zwykle możesz ręcznie powiązać te skrypty .js ze swoimi kartami lub rozszerzeniami.

Warto również wspomnieć, że Google Chrome ma wbudowany naprawdę dobry menedżer zadań, który zapewnia użycie pamięci i procesora na kartę, rozszerzenie i wtyczkę.

Pozwól, że dodam więcej informacji do odpowiedzi na wyróżnienie. W styczniu 2012 r. Najnowszą wersją XUL Profiler jest 1.0.4, wydana w grudniu 2008 r. Jest certyfikowana tylko dla Firefox 2.0 - 3.6. *. Tak więc wyraźnie potrzebuje nowego opiekuna.

Zastanawiam się, czy jest jakiś sposób, aby zmusić rozszerzenie do działania w nowszych wersjach Firefoksa.

Zastanawiam się także, czy dobrze jest tymczasowo obniżyć Firefoksa, aby używać XUL Profiler z istniejącymi kartami w certyfikowanej kompatybilnej wersji Firefox.

jasonspiro
źródło
1

Tutaj około 20% procesora nie zostało uwzględnione przez : wydajność .

Wyłączenie pola wyboru „Włącz debugowanie dodatków” w około: debugowanie pozbyło się tego dodatkowego użycia procesora.

about: debugging Pole wyboru „Włącz debugowanie dodatków” w kontekście

Możesz także wyłączyć debugowanie tego dodatku w about: config . Ustaw albo devtools.chrome.enabled lub devtools.debugger.remote włączone - lub oba - na wyłączone.

Więcej informacji na temat: debugowanie - Firefox Developer Tools | MDN

Alban Browaeys
źródło
0

Czy masz zainstalowaną Flashblock lub NoScript? Zwłaszcza jeśli nie, najpierw spróbuję zajrzeć do zakładek z dużą ilością flasha. Widziałem także wiele kart na eBayu, które zatrzymały Firefoksa, chociaż to było trochę wcześniej (kiedy faktycznie korzystałem z eBayu).

daleko od domu
źródło
Tak dla obu, a także dla bloku reklam plus. Ale wciąż jest coś, co okresowo korzysta z procesora.
Chris
Następnie moją kolejną myślą byłyby strony z JavaScriptem, na które zezwalasz przez NoScript.
farfromhome
2
To naprawdę powinien był być komentarz, ponieważ oczywiście wymaga wyjaśnienia z PO.
Burgi