Stok CPU Kullanım verileri nasıl okunur


114

Ice Cream Sandwich'te, Geliştirici Seçeneklerindeki bir seçenek, ekrana bir kaplama ekleyen "CPU Kullanımını Göster" dir (aşağıdaki ekran görüntüsüne bakın).

Sorum şu, verileri nasıl okuyacağım? Paket adlarının şu anda aktif olan süreç olduğunu tahmin ettim, ancak arkasındaki kırmızı ve yeşil çubuklar ne anlama geliyor? Ayrıca paketlerin üstündeki 3 numara nedir?

görüntü açıklamasını buraya girin


1
RAM için buna benzer bir şeyimiz var mı?
Behnam

2
3 "yük ortalamalarım" yaklaşık 9.0. Yeşil ve kırmızı çubuklar neredeyse görünmezdir ve grafik olarak yoğun oyunlarda yaklaşık% 5 ekran genişliğine ulaşır, bunun üzerine "yük ortalamaları" yaklaşık 10.0'a ulaştı. Telefonum dört çekirdekli ve pil ömrü uzun. Sanırım buradaki cevaplar eksik.
John

2
@Campiador Bu yaklaşık 1 yıl gecikti, ancak RAM için bellek hakkındaki bilgileri incelemek için c: \> adb shell vmstat <ENTER> komutunu çalıştırabilirsiniz. Adb için android-sdk-windows \ platform-tools \ CD'sine.
raddevus

Yanıtlar:


78

Bu Unix yük ortalaması olmalıdır. Wikipedia'da bununla ilgili güzel bir makale var.

Rakamlar , farklı zaman aralıklarında CPU'nun ortalama yükünü gösterir . Soldan sağa: son dakika / son beş dakika / son on beş dakika


2
Geliştiriciler sitesinden: CPU kullanımını göster Ekranın üst kısmında CPU sayaçlarını görüntüler ve CPU'nun ne kadar kullanıldığını gösterir. Üstteki kırmızı çubuk, genel CPU kullanımını gösterir ve altındaki yeşil çubuk, ekranı birleştirmek için harcanan CPU süresini gösterir. Not: Bu özelliği, öykünücüyü yeniden başlatmadan açtıktan sonra kapatamazsınız. developer.android.com/tools/debugging/debugging-devtools.html
Rolf ツ

45
"Yeşil, kullanıcı alanındaki zamandır, kırmızı çekirdekteki zamandır, mavi ise kesinti süresidir." - Dianne Hackborn groups.google.com/forum/?fromgroups=#!topic/android-platform/…
Bo.

1
Çekirdek başına bir çubuk var mı? Sadece 2 çubuk görüyorum, ancak bir quadcore cihazım var. Bu, tüm çekirdeklerimi kullanmadığım anlamına mı geliyor?
Ken

5
@Ken: Çubuklar, çekirdeklerin değil, tüm CPU'nun ortalama yüküdür. Üst çubuk, işletim sisteminin CPU kullanımını gösterir ve tüm programlar ve diğer çubuklar, belirli programın CPU kullanımını gösterir. Endişelenmeyin, Android tüm çekirdekleri kullanır.
nkr

1
Kafam biraz karıştı. Dianne Hackborn diyor ki: Yeşil = kullanıcı alanı, Kırmızı = Çekirdek, Mavi = kesinti ama geliştirici sitesinde şöyle diyor: kırmızı = genel CPU kullanımı, Yeşil = ekranı birleştiriyor. Tam olarak aynı gelmiyor, değil mi?
Tobias Reich


3

Diğer yanıtların da işaret ettiği gibi, UNIX sistemlerinde sayılar 1/5/15 dakikalık periyotlar üzerinden CPU yük ortalamalarını temsil eder . Ancak Linux'ta (ve dolayısıyla Android'de), temsil ettiği şey farklı bir şeydir.

1993'e dayanan bir çekirdek yamasından sonra ( konu hakkında derinlemesine harika bir makale ), Linux'ta ortalama yük sayıları artık tam olarak CPU'yu temsil etmiyoryük: hesaplama yalnızca CPU'ya bağlı süreçleri değil, aynı zamanda kesintisiz bekleme durumundaki süreçleri de hesaba katıyor - asıl amaç G / Ç'ye bağlı süreçleri bu şekilde hesaba katmaktı, sadece CPU yükünden daha fazla bir "sistem yükü" temsil etmekti . Sorun, 1993'ten beri Linux çekirdeğinde kesintisiz durum kullanımının artması ve artık tipik olarak G / Ç bağlantılı bir süreci temsil etmemesidir. Sorun, bazı Linux geliştiricileri tarafından, uygulamalarında sinyalleri barındırmaktan kaçınmak için kolay bir bekleme olarak kesintisiz beklemeleri kullanarak daha da kötüleşiyor. Sonuç olarak, Linux'ta (ve Android) gerçek yükü nesnel olarak temsil etmeyen çarpık yüksek yük ortalama sayıları görebiliriz. Düşük CPU kullanımıyla çelişen mantıksız yüksek yük ortalamaları hakkında Android kullanıcı raporları var. Örneğin, Eski Android telefonum (2 CPU çekirdekli) normalde sistem ve CPU'lar boştayken ortalama ~ 12 yük gösteriyordu. Dolayısıyla, Linux'taki (Android) ortalama yük sayıları, güvenilir bir performans ölçütü olarak ortaya çıkmaz.


2

1 dakika, 5 dakika ve 15 dakika üzerindeki CPU yükünü gösteren "ortalama yük" hakkında daha fazla bilgi

Linux, Mac ve diğer Unix benzeri sistemler "ortalama yük" sayılarını gösterir. Bu sayılar, sisteminizin CPU'su, diski ve diğer kaynaklarının ne kadar meşgul olduğunu size söyler. İlk başta kendilerini açıklayıcı değiller ama onlara aşina olmak çok kolay.

WIKI: example, one can interpret a load average of "1.73 0.60 7.98" on a single-CPU system as:

during the last minute, the system was overloaded by 73% on average (1.73 runnable processes, so that 0.73 processes had to wait for a turn for a single CPU system on average).
during the last 5 minutes, the CPU was idling 40% of the time on average.
during the last 15 minutes, the system was overloaded 698% on average (7.98 runnable processes, so that 6.98 processes had to wait for a turn for a single CPU system on average) if dual core mean: 798% - 200% = 598%. 

Muhtemelen birden fazla CPU'lu veya çok çekirdekli CPU'lu bir sisteminiz var. Yük ortalama sayıları böyle bir sistemde biraz farklı çalışır. Örneğin, tek CPU'lu bir sistemde yük ortalamanız 2 ise, bu, sisteminizin yüzde 100 aşırı yüklenmiş olduğu anlamına gelir - tüm süre boyunca, bir işlem CPU'yu kullanırken diğer bir işlem beklerken. İki CPU'lu bir sistemde, bu tam bir kullanım olacaktır - iki farklı işlem tüm zaman boyunca iki farklı CPU kullanıyordu. Dört CPU'lu bir sistemde, bu yarı kullanım olacaktır - iki işlem iki CPU kullanırken iki CPU boşta oturuyordu.

Ortalama yük sayısını anlamak için, sisteminizin kaç CPU'ya sahip olduğunu bilmeniz gerekir. 6,03'lük bir yük ortalaması, tek bir CPU'ya sahip bir sistemin büyük ölçüde aşırı yüklendiğini gösterir, ancak 8 CPU'lu bir bilgisayarda iyi olur.

daha fazla bilgi: Bağlantı


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.