Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Solaris - процессы, потоки, CPU / 16 сообщений из 16, страница 1 из 1
07.07.2008, 19:11:08
    #35416101
yallow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Привет,

есть один мультипотоковый процесс и 16 CPU, на которых эти потоки работают.
Коллега уперся и говорит, что процесс работает только на одном CPU из 16.

Кто-нибудь знает команду которая бы доказала обратное. То есть показала загрузку каждого CPU только для одного этого процесса ..

Спасибо.
...
Рейтинг: 0 / 0
07.07.2008, 20:43:38
    #35416231
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Ну так можна посмеотреть
Код: plaintext
prstat, mpstat, cputrack 
если вы имеете ввиду LWP под мнгопотоковым процессом.
...
Рейтинг: 0 / 0
08.07.2008, 13:35:21
    #35417522
yallow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Да, спасибо, но какая из этих команд может показать, что LWP одного процесса работают на разных CPU?
...
Рейтинг: 0 / 0
08.07.2008, 14:01:01
    #35417607
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
А какая версия Solaris?

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...
...
Рейтинг: 0 / 0
08.07.2008, 16:02:15
    #35418061
yallow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
10
...
Рейтинг: 0 / 0
08.07.2008, 16:30:03
    #35418167
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Косвенно можно получить, использовав скрипт threaded.d из DTraceToolkit

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...
...
Рейтинг: 0 / 0
08.07.2008, 17:04:20
    #35418324
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Или вот я сам родил :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
#pragma D option quiet

sched:::on-cpu
/pid == $1/
{
        printf("CPU: %3d LWP: %3d\n", cpu, curlwpsinfo->pr_lwpid);
}

Соответственно, запускать так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
# dtrace -s cpus.d 1457
CPU:   0 LWP:   1
CPU:   0 LWP:   1
CPU:   0 LWP:  13
CPU:   0 LWP:  13
CPU:   1 LWP:  12
CPU:   1 LWP:  12
CPU:   1 LWP:   1
CPU:   1 LWP:   1
CPU:   0 LWP:   1
CPU:   1 LWP:   1

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...
...
Рейтинг: 0 / 0
08.07.2008, 17:40:31
    #35418409
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Или вот так - для каждого процессора распределение сколько раз какой LWP на ём работал (в этой системе 2 процессора и 15-тредовый процесс 1457 (LGWR оракловский), предполагается не более 1000 тредов в процессе:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
sched:::on-cpu
/pid == $1/
{
        @[cpu] = lquantize(curlwpsinfo->pr_lwpid, 0, 1000, 1);
}

bash-3.00# dtrace -s cpus.d 1457
dtrace: script 'cpus.d' matched 3 probes
^C

        1
           value  ------------- Distribution ------------- count
               0 |                                         0
               1 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@         91
               2 |                                         0
               3 |                                         0
               4 |                                         0
               5 |                                         0
               6 |                                         0
               7 |@                                        4
               8 |                                         0
               9 |                                         0
              10 |@@                                       6
              11 |                                         0
              12 |@@                                       6
              13 |                                         0
              14 |                                         0
              15 |@@                                       6
              16 |                                         0

        0
           value  ------------- Distribution ------------- count
               0 |                                         0
               1 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@            71
               2 |                                         0
               3 |                                         0
               4 |                                         0
               5 |                                         0
               6 |                                         0
               7 |@                                        2
               8 |@@                                       6
               9 |@@                                       6
              10 |                                         0
              11 |                                         0
              12 |                                         0
              13 |@@@                                      8
              14 |@@                                       6
              15 |                                         0

При желании можно развернуть распределение (для каждого LWP выводить список процессоров, на котором тот запускался и количество раз). Можно считать время, проведённое каждым LWP на каждом процессоре. DTrace рулит!

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...
...
Рейтинг: 0 / 0
08.07.2008, 17:42:18
    #35418412
yallow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Спасибо!!!
...
Рейтинг: 0 / 0
08.07.2008, 17:49:18
    #35418441
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
yallowСпасибо!!!

А кто прав-то в этом споре оказался?
...
Рейтинг: 0 / 0
08.07.2008, 18:54:04
    #35418655
yallow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Scott TigerИли вот я сам родил :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
#pragma D option quiet

sched:::on-cpu
/pid == $1/
{
        printf("CPU: %3d LWP: %3d\n", cpu, curlwpsinfo->pr_lwpid);
}


dtrace: failed to compile script cpus2.d: line 3: probe description sched:::on-cpu does not match any probes
странно а на моем 1-процовом сработало...
...
Рейтинг: 0 / 0
08.07.2008, 21:48:39
    #35418874
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
yallow Scott TigerИли вот я сам родил :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
#pragma D option quiet

sched:::on-cpu
/pid == $1/
{
        printf("CPU: %3d LWP: %3d\n", cpu, curlwpsinfo->pr_lwpid);
}


dtrace: failed to compile script cpus2.d: line 3: probe description sched:::on-cpu does not match any probes
странно а на моем 1-процовом сработало...

Забавно. Покажи uname -a
...
Рейтинг: 0 / 0
08.07.2008, 22:03:04
    #35418895
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
И ещё покажи вывод dtrace -l (будет много, закинь аттачем).

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...
...
Рейтинг: 0 / 0
08.07.2008, 22:09:53
    #35418901
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Ты под рутом запускаешь? А то см. http://docs.sun.com/app/docs/doc/817-6223/chp-sec?a=view

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...
...
Рейтинг: 0 / 0
08.07.2008, 22:20:06
    #35418916
Scott Tiger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Scott TigerТы под рутом запускаешь? А то см. http://docs.sun.com/app/docs/doc/817-6223/chp-sec?a=view

Есть рыба-пила и есть рыба-молот. Вот только не понятно, что они там строят...

Во, я проверил, по ходу - оно (во всяком случае, воспроизвелась твоя проблема под не-рутом на 120011-14). Тебе нужна привилегия dtrace_kernel, как её выдавать написано по ссылке выше.

Согласен, сообщение об ошибке не слишком информативное...
...
Рейтинг: 0 / 0
15.07.2008, 13:57:36
    #35431147
yallow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Solaris - процессы, потоки, CPU
Спасибо за помощь!!!
Я уже разобрался и все коллеге доказал. =)
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Solaris - процессы, потоки, CPU / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]