Alexander Опубликовано 28 сентября, 2008 (изменено) · Жалоба Коллеги, Подскажите, плз, что-то сам не соображу. Спросил на опеннете, но пока помочь не смогли. Есть некий перл-скрипт, запускающийся из шелл-врапера, задача которого анализировать принадлежность трафика заданным подсетям и генерировать .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 секунд! Объясните, плз, в чем ошибка в моей логике? Или может где-то что-то надо подкрутить? Заранее спасибо! Изменено 28 сентября, 2008 пользователем Alexander Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
martini Опубликовано 28 сентября, 2008 · Жалоба дык там же фейковое ядро, этот проц ведь не двухядерный и не может брать на себя все функции нормального ядра Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Alexander Опубликовано 28 сентября, 2008 (изменено) · Жалоба ээ.. тогда боюсь спросить, какой смысл в HT? :) PS уже объяснили разницу, похоже, Вы правы. спасибо! Изменено 28 сентября, 2008 пользователем Alexander Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...