Как найти длину очереди процессора в Linux

Я буду честен, идея вашего подхода на самом деле выглядит довольно вменяемой для меня. Начнем с того, что я, вероятно, использовал бы concat intsead из foldl1 (++) и отбросил бы несколько паренов, чтобы заставить нас:

f x y = concat <[110]gt; sequence [getEnv x, return "-", getEnv y]

Это действительно не кажется мне таким уж плохим. Но если бы я действительно хотел продвинуться дальше, вот некоторые мысли, которые у меня были бы. Во-первых, я бы вспомнил функцию intercalate.

f x y = intercalate "-" <[111]gt; sequence [getEnv x, getEnv y]

Есть удобное сокращение для применения функции к каждому элементу списка; mapM f = sequence . map f. Итак:

f x y = intercalate "-" <[112]gt; mapM getEnv [x,y]

Я бы остановился на этом; это выглядит довольно чистым и ремонтопригодным для меня.

7
задан 13 January 2009 в 22:57
поделиться

3 ответа

sar -q сообщат длина очереди, длина списка задач и три средних числа загрузки.

Пример:

matli@tornado:~$ sar -q 1 0
Linux 2.6.27-9-generic (tornado)    01/13/2009  _i686_

11:38:32 PM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
11:38:33 PM         0       305      1.26      0.95      0.54
11:38:34 PM         4       305      1.26      0.95      0.54
11:38:35 PM         1       306      1.26      0.95      0.54
11:38:36 PM         1       306      1.26      0.95      0.54
^C
8
ответ дан 6 December 2019 в 12:56
поделиться

vmstat

procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 2  0 256368  53764  75980 220564    2   28    60    54  774 1343 15  4 78  2

Первый столбец (r) является очередью выполнения - 2 на моей машине прямо сейчас

Править: Удивленный нет способа просто получить число

Быстрый 'n' грязный способ получить число (мог бы варьироваться немного на различных машинах):

  vmstat|tail -1|cut -d" " -f2
5
ответ дан 6 December 2019 в 12:56
поделиться

uptime даст Вам недавнее среднее число загрузки, которое является приблизительно средним количеством активных процессов. uptime сообщает среднее число загрузки по последнему 1, 5, и 15 минут. Это - измерение на систему, не на ЦП.

Не уверенный, какова длина очереди процессора в Windows, надо надеяться, это достаточно близко к этому?

2
ответ дан 6 December 2019 в 12:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: