URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID13
Нить номер: 765
[ Назад ]

Исходное сообщение
"Оптимизация сервера"

Отправлено doctor , 13-Ноя-11 15:37 
Добрый день Уважаемые форумчани.

Есть приложение с закрытым исходным кодом написанное на C в далёких 90-ых, программа прослушивает и обрабатывает сокеты с заданным количеством тактов в секунду.

Проблема в том что нужно добиться стабильное и высокое количество тактов, пускай это 1000 тактов в секунду. На деле программа выдаёт очень нестабильное значение которое колеблется от 200 до 1000 тактов. При дебаге проложения задержек не выявлено, приложение считывает сокеты(recvfrom) и спит 1мс(nanosleep). Если собрать rt ядро - приложение выдаст эти 1000 тактов, но высокой ценой.

Явно какой-нибудь компонент ядра мешает. Возник вопрос - как получить более подробный отчёт, где возможно будет определить причину задержки.


Содержание

Сообщения в этом обсуждении
"Оптимизация сервера"
Отправлено anonymous , 19-Ноя-11 10:33 
>[оверквотинг удален]
> Есть приложение с закрытым исходным кодом написанное на C в далёких 90-ых,
> программа прослушивает и обрабатывает сокеты с заданным количеством тактов в секунду.
> Проблема в том что нужно добиться стабильное и высокое количество тактов, пускай
> это 1000 тактов в секунду. На деле программа выдаёт очень нестабильное
> значение которое колеблется от 200 до 1000 тактов. При дебаге проложения
> задержек не выявлено, приложение считывает сокеты(recvfrom) и спит 1мс(nanosleep). Если
> собрать rt ядро - приложение выдаст эти 1000 тактов, но высокой
> ценой.
> Явно какой-нибудь компонент ядра мешает. Возник вопрос - как получить более подробный
> отчёт, где возможно будет определить причину задержки.

strace пробовали?