CentOS 6,5 шип

Я разработал приложение на C. Я запускаю это приложение на «Red Hat Enterprise Linux Server версии 5.8 (Tikanga)», и все выглядит хорошо, но когда мы разворачиваем это приложение на «CentOS версии 6.5 (Final)», оно начинает создавать проблемы. Он занимает больше памяти chache и через 30-45 минут запускает всплеск, и весь процессор показывает 100% загрузки процессора в течение 1-2 секунд.

Я погуглил эту проблему и обнаружил, что Высокая загрузка процессора при использовании Cent OS 6.3

Так как один процесс в моем приложении использует 10 usleep. Он потребляет менее 3% процессорного времени в RedHat, однако в CentOS он занимает довольно высокий уровень — около 90%. После прочтения ссылки, когда я меняю режим сна с 10 usleep на 1000 usleep или 1 us, тогда это занимает 40% CPU.

Мне нужно знать, что ядро ​​CentOS 6.5 использует высокоскоростные таймеры или нет, или мне нужно установить любую конфигурацию при компиляции ядра.

0

Решение

Во-первых, вы сравниваете яблоки и апельсины: CentOS 6 соответствует RHEL 6. Весьма вероятно, что ваш код будет работать в RHEL 6.5 так же, как в CentOS 6.5, и в CentOS 5.8 так же, как и в RHEL 5.8. Ошибочно описывать проблему как разницу между RHEL и CentOS.

Во-вторых, если ваша загрузка ЦП сильно зависит от нескольких вызовов usleep () (выполняемых, по-видимому, очень много раз), то ваш код имеет недостатки, и вы должны это исправить. Создание собственного ядра для маскировки проблемы было бы довольно отсталым. Тем не менее, если цель состоит скорее в том, чтобы перейти на CentOS, чем перейти на (несколько) более современную среду, то переключитесь на CentOS 5 вместо CentOS 6.

0

Другие решения


По вопросам рекламы ammmcru@yandex.ru
Adblock
detector