На сервере у одного клиента, раздаюшего видео, возникла проблема: на 5 гигабитах начинаются провалы трафика. На сервере 6 SSD, два Xeon E5 и 128 GB памяти
( Read more... )
Максим, я не вижу 1-го пункта: запустил perf top/record и посмотрел что же ядро все-таки делает. Получилось интересно, конечно, но вы тыкались вслепую, мне кажется.
>а она организована не в HugeTables, А приложение умеет HugePages? Какого размера была PageTable? Вообще память нужна приложению или только кеш линуксовый? Проблема обычно когда очень МНОГО (тысячи) процессов шарят много памяти.
>Поскольку на уже загруженном сервере HugeTables никак не включались Если вся память занята, а занята она кешем, то занимать уже нечего, можно сборсить кеш линуксовый, появится свободная и из нее возможно удастся выделить непрерывные куски физической по 2Mb. Сейчас идет переход на анонимные HugePages и автоматическое выделение дефраграментацию оперативки, возможно мешает дефрагментатор, оно отключается.
Я красненькое смотрю утилитой для ноутов, powertop она показывает какие модули ядра надрачивают какие прерывания.
анонимные, прозрачные. Раньше hugepages надо было заранее выделять и эта память изъята из свободной, а так как она может использоваться только приложениями которым нужна и которые умеют такую память, и если они ее не заняли, значит пропала. Смотреть cat /proc/meminfo |grep Page там видно сколько страниц huge, сколько занято. Потом появилась transparent_hugepage, приложения запрашивают huge, система создает на лету hugepages, но так как нужны непрерывные куски по 2mb, дефрагментатор постоянно обмолачивает озу и объединяет свободные куски.
отключается echo never > /sys/kernel/mm/transparent_hugepage/enabled defrag тоже отключается там-же где-то
PageTable это таблица соответствия физическая память <-> виртуальная память. Чем она больше, тем хуже, она может быть довольно большой, я видел 16Гиг, т.е. просрали 16гиг и еще таскаем в процессор постоянно. Но еще раз скажу про количество процессов и sharе memory, т.е. обычно это типа оракл, 3тыс. процессов шарящих 100гиг.
Еще возможно проблема и с numa, что за линукс, что за ядро?
Comments 7
Reply
24.58% beam.smp [.] 0x00000000000ab230
19.94% beam.smp [.] process_main
3.06% [kernel] [k] __copy_user_nocache
2.24% [kernel] [k] tcp_sendmsg
1.81% [kernel] [k] copy_user_enhanced_fast_string
Как это интерпретировать?
Reply
Reply
Но я тебя понял, попробую посмотреть.
Reply
А приложение умеет HugePages? Какого размера была PageTable? Вообще память нужна приложению или только кеш линуксовый? Проблема обычно когда очень МНОГО (тысячи) процессов шарят много памяти.
>Поскольку на уже загруженном сервере HugeTables никак не включались
Если вся память занята, а занята она кешем, то занимать уже нечего, можно сборсить кеш линуксовый, появится свободная и из нее возможно удастся выделить непрерывные куски физической по 2Mb.
Сейчас идет переход на анонимные HugePages и автоматическое выделение дефраграментацию оперативки, возможно мешает дефрагментатор, оно отключается.
Я красненькое смотрю утилитой для ноутов, powertop она показывает какие модули ядра надрачивают какие прерывания.
Reply
А что такое анонимные Hugr Pages?
Насчёт powertop спасибо, попробую
Reply
Раньше hugepages надо было заранее выделять и эта память изъята из свободной, а так как она может использоваться только приложениями которым нужна и которые умеют такую память, и если они ее не заняли, значит пропала. Смотреть cat /proc/meminfo |grep Page там видно сколько страниц huge, сколько занято. Потом появилась transparent_hugepage, приложения запрашивают huge, система создает на лету hugepages, но так как нужны непрерывные куски по 2mb, дефрагментатор постоянно обмолачивает озу и объединяет свободные куски.
отключается
echo never > /sys/kernel/mm/transparent_hugepage/enabled
defrag тоже отключается там-же где-то
PageTable это таблица соответствия физическая память <-> виртуальная память. Чем она больше, тем хуже, она может быть довольно большой, я видел 16Гиг, т.е. просрали 16гиг и еще таскаем в процессор постоянно. Но еще раз скажу про количество процессов и sharе memory, т.е. обычно это типа оракл, 3тыс. процессов шарящих 100гиг.
Еще возможно проблема и с numa, что за линукс, что за ядро?
Reply
Leave a comment