çok çekirdekli işlemcide üst komut


45

Freescale IMX6 dört işlemci kullanıyorum. topKomutun 4 çekirdeğin hepsinde mi yoksa tek bir çekirdeğin CPU kullanımını mı listelediğini bilmek istiyorum . Bir uygulamanın CPU kullanımının 4 çekirdekli ve tek çekirdekli aynı olduğunu görüyorum. Uygulama tarafından CPU kullanımının tek bir çekirdekte artacağını ve 4 çekirdekte azaltacağını tahmin ediyordum, ancak değişmedi.


5
üst çalışırken 1'e basmayı deneyin
Dani_l

Lütfen detaylandırır mısınız? Ne olursa olsun, 1'e basarsam. Çünkü 2 gündür bu tutarsız sonucu alıyorum.
user3818847

1
Bu hangi uygulama? Uygulamanızın neden varsa, birden fazla çekirdek kullanması gerektiğini düşünüyorsunuz? Dışarıda tek bir CPU / çekirdekte çalışan ve kimsenin onları paralelleştirmek için zaman ayırmaya zorlamadığı birçok uygulama var.
Anthon

2
Hayır. eğer birden fazla çekirdek% 100'ün üzerinde birikir. Her bir çekirdekte hiper
diş

1
Bunun için kullanmayı seviyorum htop.
Richard,

Yanıtlar:


66

Burada ne sorduğundan tamamen emin değilim. Evet, topCPU kullanımını varsayılan olarak tek bir CPU yüzdesi olarak gösterir. Bu yüzden> 100 olan yüzdelere sahip olabilirsiniz. 4 çekirdekli bir sistemde,% 400'e kadar CPU kullanımı görebilirsiniz.

Bu davranışı çalışırken I(( Shift+ ive "Irix modu" arasında geçiş yapar) tuşuna basarak değiştirebilirsiniz top. Bu, kullanılan mevcut CPU gücünün özelliğini göstermesine neden olacaktır. Açıklandığı gibi man top:

    1. %CPU  --  CPU Usage
       The task's share of the elapsed CPU time since the last screen
       update, expressed as a percentage of total  CPU  time.   In  a
       true  SMP environment, if 'Irix mode' is Off, top will operate
       in 'Solaris mode' where a task's cpu usage will be divided  by
       the  total  number  of  CPUs.  You toggle 'Irix/Solaris' modes
       with the 'I' interactive command.

Alternatif olarak, 1CPU başına CPU kullanımının bir dağılımını gösterecek olan tuşuna basabilirsiniz :

top - 13:12:58 up 21:11, 17 users,  load average: 0.69, 0.50, 0.43
Tasks: 248 total,   3 running, 244 sleeping,   0 stopped,   1 zombie
%Cpu0  : 33.3 us, 33.3 sy,  0.0 ni, 33.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  : 16.7 us,  0.0 sy,  0.0 ni, 83.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu2  : 60.0 us,  0.0 sy,  0.0 ni, 40.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu3  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:   8186416 total,  6267232 used,  1919184 free,   298832 buffers
KiB Swap:  8191996 total,        0 used,  8191996 free,  2833308 cached

1
hyperthread ile / proc / cpuinfo olarak% 800'e kadar görebildiğinize inanıyorum her bir
ipucunu

@Dani_l evet, "çekirdeğin" fiziksel veya sanal olup olmadığı önemli değil, "CPU" olarak kabul edilir top. Gösterdiğim çıktı, her biri 2. bir mantıksal çekirdeğe sahip, iki çekirdekli tek bir fiziksel işlemciye sahip olan dizüstü bilgisayarımdan geliyor. Sonuçta top4 çekirdek görüyoruz.
terdon

Nitpicking için üzgünüm, benim günlük işimde kaynakları ayırırken soketler, çekirdekler ve iplikler arasında ayrım yapmak zorundayız. Sanırım alışkanlık sıkışmış.
Dani_l

9

üst çalışırken '1' düğmesini tıklamanız yeterli


5
Bu cevap yıllardır yorumlarda ... lütfen yeni bir şey ekleyin.
yeti

0

topBasmak zorunda kalmadan ayrı CPU'ları hemen görüntülemeyi açmak 1istiyorsanız, bu -1seçeneği kullanabilirsiniz .

Örneğin:

top -1

...
%Cpu0  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  :  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu2  : 44.7 us, 55.3 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu3  : 46.7 us, 53.3 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
...     
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.