Перейти к содержимому
Калькуляторы

загрузка CPU и скорость работы скриптов

Коллеги,

 

Подскажите, плз, что-то сам не соображу. Спросил на опеннете, но пока помочь не смогли.

 

Есть некий перл-скрипт, запускающийся из шелл-врапера, задача которого анализировать принадлежность трафика заданным подсетям и генерировать .sql файлы, для последующего импорта в БД. Скрипт крутится на линукс-боксе P4 3GHz (HT включен) и гиг оперативки, ядро 2.6.22-smp.

 

 

Когда скрипт не работает, загрузки нет совсем:

top - 14:55:23 up 24 days, 16:07,  2 users,  load average: 0.29, 0.77, 0.85
Tasks:  68 total,   1 running,  67 sleeping,   0 stopped,   0 zombie
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.3%us,  0.0%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    906184k total,   875832k used,    30352k free,    98976k buffers
Swap:  1048568k total,       52k used,  1048516k free,   616412k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
    1 root      15   0  2036  656  564 S    0  0.1   0:00.83 init

Когда работает один инстанс скрипта, загрузка системы выглядит след. образом:

top - 14:54:05 up 24 days, 16:05,  2 users,  load average: 1.01, 1.00, 0.92
Tasks:  71 total,   2 running,  69 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.6%us,  0.0%sy,  0.0%ni, 98.1%id,  0.0%wa,  0.6%hi,  0.6%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,100.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    906184k total,   880312k used,    25872k free,    98940k buffers
Swap:  1048568k total,       52k used,  1048516k free,   617392k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
9763 root      26   1 11244 6148 2756 R  100  0.7   0:08.64 summary_ipcad.p
    1 root      15   0  2036  656  564 S    0  0.1   0:00.83 init

Как видно, система (проц) загружен на 50%. Причем загружено только одно ядро.

Логично предположить, что запустив второй инстанс скрипта, система загрузиться полностью и станет работать более эффективно (соседнее ядро проца не будет простаивать). Почти так и происходит:

top - 14:58:39 up 24 days, 16:10,  2 users,  load average: 0.94, 0.69, 0.78
Tasks:  73 total,   4 running,  69 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.6%us,  0.6%sy, 98.2%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.6%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,100.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    906184k total,   884116k used,    22068k free,    97360k buffers
Swap:  1048568k total,       52k used,  1048516k free,   623988k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
10054 root      26   1 10980 5932 2756 R  100  0.7   0:07.69 summary_ipcad.p
10081 root      26   1 14288 6324 2816 R  100  0.7   0:06.29 summary_ipcad.p

Но эффективность мало того, что не вырастает, она уменьшается в несколько раз! Вместо 60 секунд, которые в среднем работал один инстанс, обрабатывая один файл, два инстанса работают дольше 300 секунд!

 

Объясните, плз, в чем ошибка в моей логике? Или может где-то что-то надо подкрутить?

 

Заранее спасибо!

Изменено пользователем Alexander

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

дык там же фейковое ядро, этот проц ведь не двухядерный и не может брать на себя все функции нормального ядра

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ээ.. тогда боюсь спросить, какой смысл в HT? :)

 

PS уже объяснили разницу, похоже, Вы правы. спасибо!

Изменено пользователем Alexander

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.