CPU kullanımını sekmeyle veya mac'ta firefox'ta eklenti ile kontrol edin


13

Firefox sürümüm, birkaç dakika sonra MacBook Pro'mda (OSX 10.7.4)% 100 işlemci kullanmasını sağlayan bir kontrolden çıktı. Ben kullanmayı denedim about:memoryve about:addons-memorysoruna neden olduğunu anlamaya çalışın, ama hepsi de bellek kullanımı ile ilişkili görünmemektedir. Bunun yerine sekme veya eklenti ile CPU kullanımını görmenin bir yolu var mı?

Yanıtlar:


6

Aslında, about:memorysekme sekme ile bellek ayırmayı gösterir; grok yapmak biraz zor.

Gittiğinizde about:memory, hiyerarşik olarak düzenlenmiş bellek ayırmalarının bir listesini görmelisiniz. Listedeki ilk üst düzey öğe Açık Tahsisler olmalıdır . Bunun altında birkaç yaprak düğümü vardır. Aradığınız pencere nesneleri . Bunun altında, "üst" etiketli düğümlerin çoğu sekmelere başvurur (bir web sitesi yüklerseniz, adresi "üst" ün yanında görürsünüz). Örneğin, şunu görüyorum:

├───29.63 MB (15.27%) -- window-objects
│   ├──12.64 MB (06.52%) ++ top(chrome://browser/content/browser.xul, id=3)
│   ├───6.84 MB (03.53%) ++ top(http://www.cnn.com/, id=31)
│   ├───4.55 MB (02.35%) ++ top(https://ftp.mozilla.org/, id=24)
│   ├───3.50 MB (01.80%) ++ (5 tiny)

Öndeki sayılar, Firefox'un toplam bellek kullanımının yüzdesi olarak da verilen bellek kullanımıdır.

Bellek kullanımı üzerine ekleme de gösterilir, ancak açıkça ekleme üzerine eklenmez. Bir eklentiye ait tüm bileşenleri bularak ve bellek ayırmalarını ekleyerek bunu anlamak için listede arama yapmanız gerekir.

Not, Beta kanalındayım (şu anda Firefox 22.0b2'yi kullanıyorum), ancak bunun eski sürümlerde çalıştığına inanıyorum.


teşekkürler, herhangi bir bellek sızıntıları fark etmedim. hafızanın oldukça sabit kalma eğiliminde olduğu anlaşılıyor. sadece bir süre sonra cpu bu şekilde yükselir ve kalır.
claire

11
Soru özellikle bellek değil CPU kullanımı ile ilgiliydi .
laggingreflex

@laggingreflex: Evet, biliyorum. "Ama bellek kullanımı ile ilgili görünmüyor" ifadesine yanıt veriyordum. Ancak, geriye dönüp baktığımızda, belki claire aslında "bellek" yerine "CPU" demekti.
InnerPortal

Firefox 38 ile (Linux üzerinde çalışan), ben tıklamanız gerekiyordu Measurealtında Show Memory Reportsoluşturmak ve açıkladığınız ağacını görmek için. (Bu tüm platformlarda aynıysa, cevabı biraz daha tamamlayabilir.)
joeytwiddle

5

Firefox'ta aşağıda ayrıntıları verilen yüksek CPU kullanımının birkaç nedeni vardır.

1.Add-ons

CPU problemlerinin genel nedeni kötü bir eklentidir. Yapılması gereken ilk test, Firefox'u eklentiler olmadan başlatmaktır.

Gönderen Güvenli Modu kullanarak giderme Firefox konular :

Firefox penceresinin üst kısmında, Firefox düğmesini tıklayın, Yardım menüsüne gidin ve seçin Restart with Add-ons Disabled.... Firefox, Firefox Güvenli Mod iletişim kutusuyla başlar. Not: Firefox'u başlatırken shift tuşunu basılı tutarak Firefox'u Güvenli Mod'da da başlatabilirsiniz.

Artık iki seçeneğiniz var:

Güvenli Modda Başlat düğmesine tıklamak, uzantılarınızı ve temalarınızı geçici olarak devre dışı bırakır, donanım hızlandırmayı kapatır ve araç çubuğunu ve düğme özelleştirmelerini sıfırlar. Güvenli Mod'dan çıkıp Firefox'u normal şekilde başlattığınızda, uzantılarınız, temalarınız ve ayarlarınız Güvenli Mod'a girmeden önceki durumuna geri döner.

Güvenli modda CPU sorununuz yoksa, sorun eklentilerinizden birindedir. Tools > Add-onsEklentileri seçerek devre dışı bırakmak ve kötü olanı bulana kadar Firefox'u yeniden başlatmak için menüyü kullanabilirsiniz .

2.Flash

Flash bu tür sorunlar için bilinir. Bunu düzeltmenin genel yollarından biri , işaretini kaldırmak için Gelişmiş sekmesini kullanarak Firefox'un Donanım Hızlandırmasını Devre Dışı Bırakmaktır .Tools > OptionsUse Hardware Acceleration When Available

Görüntülediğiniz sayfada Flash dahil olmak üzere gereksiz öğeleri seçici olarak engellemek için iki Adblock Plus ve NoScript eklentisi önerilir.

3.JavaScript

Sekmelerinizden birinde görüntülediğiniz web sitesindeki JavaScript kötü kodlanmış olabilir ve döngü yaparak CPU'yu boşa harcıyor olabilir.

En iyi çözüm, güvenmediğiniz web sitelerinden JavaScript çalıştırmamak için NoScript kullanmaktır. Bu aynı zamanda Siteler arası komut dosyası kullanımlarından kaçınmak için herkesin kullanması gereken bir güvenlik önlemidir .

4.Profiling

Hangi web sitesinin yüksek CPU'ya neden olduğu çok açık değilse, basit bir egzersiz olmasa da Firefox'ta profil oluşturma kullanılabilir.

Profilleme de yapan hata ayıklayıcılar:

Bir geliştiriciyseniz ve bir macera gibi hissediyorsanız ve Mac'te olduğunuzdan, DTrace'i Mozilla geliştiricilerinin kullandığı araç olan Performans / JavaScript'i DTrace ile optimize etme bölümünde açıklandığı gibi kullanabilirsiniz.


3

@claire: Şu anda ne istediğinizi görmenin 'kolay' yolu yok. Eğer harrymc yoluna giderseniz, sorunun kaynağı hakkında bazı bilgiler bulacaksınız, ancak belki emin değilsiniz.

Eğer 'hard' yoluna gitmek istiyorsanız, bu hangi CPU'nuzu firefox ve / veya eklentileri içinde yediğini gösterecektir, firefox'unuzu ortamınızda hata ayıklamaya başlamanız gerekir (bazen sadece firefox ve / veya eklentinin kendisi değildir, ama güvendikleri bozuk bir lib). İşte programlama hakkında biraz fikriniz varsa, sıcak yapmak için tam bir açıklama. XCode apple'dan indirilebilir:

https://developer.mozilla.org/en-US/docs/Debugging_on_Mac_OS_X

Ancak tam mozilla kodunda hata ayıklamanıza gerek yoktur, ancak artan CPU kullanımı ile ilişkili olan noktayı bulacaksınız. Bu size sorunun tam olarak nereden geldiğini söyleyebilir (böyle kötü döngü vb.).


1

Herhangi bir nedenle Firefox'unuz tüm CPU kullanımınızı alıp yiyorsa, no'yu sınırlamaya çalışabilirsiniz. ve CPU kullanımını azaltmak için CPU'nun bu işleme vereceği öncelik.

Bunu yapmak için, Görev Yöneticisi'ni açmak için ( Ctrl+ Alt+ Del) işaretini tıklatın ve sonra işlem sekmesini tıklatın (tüm işlemleri uzantılarıyla birlikte gösteren işlem (temel olarak Windows'ta olduğunuzda tüm işlem bir .exe uzantısıyla bitiyor olmalıdır). üzerinde basıp seç öncelik önceliğini ayarlamak için (daha sonra normale koymak normalden daha yüksek şekilde ayarlanmış ise normale aksi takdirde 's seti ve seçme alt normalden daha değerinden daha fazla aşağı indirmek istiyorum) ve Set Affinity sınırlamak için Bu işleme katkıda bulunan işlemci sayısı İstediğiniz işlemci sayısını ayarlayın ve geri dönmek için Tamam'ı tıklatın.

Bunun yalnızca çok işlemcili bilgisayarlar için (çift çekirdekli, dört çekirdekli vb.) Ve CPU kullanımının bellek kullanımından farklı olduğunu unutmayın.


1
Hatam için özür dilerim, MAC'de firefox kullandığınızı okumayı unuttum. MAC ile ilgili çok fazla deneyimim yok, ancak windows one gibi herhangi bir görev yöneticisi içeriyorsa, bu yöntem yalnızca windows sistemi için çalışır.
Hunter

3
Bu iyi bir tavsiye ama hiçbir şekilde asıl soruyu cevaplamaya bile yaklaşmıyor.
laggingreflex
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.