Very high load: история одного тюнинга

Oct 19, 2014 14:12

На сервере у одного клиента, раздаюшего видео, возникла проблема: на 5 гигабитах начинаются провалы трафика. На сервере 6 SSD, два Xeon E5 и 128 GB памяти ( Read more... )

flussonic, highload, эрливидео

Leave a comment

Comments 7

mkevac October 19 2014, 10:51:48 UTC
Максим, я не вижу 1-го пункта: запустил perf top/record и посмотрел что же ядро все-таки делает. Получилось интересно, конечно, но вы тыкались вслепую, мне кажется.

Reply

levgem October 19 2014, 11:02:20 UTC
Запустил perf top, там сверху красным горит:

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

mkevac October 19 2014, 11:18:24 UTC
Так было именно в тот момент когда был всплеск?

Reply

levgem October 19 2014, 11:20:36 UTC
нет, но сейчас всё равно существенная загрузка процессора линуксом. При этом то, что я вижу в htop и в perf top, никак не бьется =(

Но я тебя понял, попробую посмотреть.

Reply


kranov October 19 2014, 14:03:00 UTC
>а она организована не в HugeTables,
А приложение умеет HugePages? Какого размера была PageTable? Вообще память нужна приложению или только кеш линуксовый? Проблема обычно когда очень МНОГО (тысячи) процессов шарят много памяти.

>Поскольку на уже загруженном сервере HugeTables никак не включались
Если вся память занята, а занята она кешем, то занимать уже нечего, можно сборсить кеш линуксовый, появится свободная и из нее возможно удастся выделить непрерывные куски физической по 2Mb.
Сейчас идет переход на анонимные HugePages и автоматическое выделение дефраграментацию оперативки, возможно мешает дефрагментатор, оно отключается.

Я красненькое смотрю утилитой для ноутов, powertop она показывает какие модули ядра надрачивают какие прерывания.

Reply

levgem October 19 2014, 14:09:37 UTC
Возможно, эрланг не умеет huge pages. Памяти много не нужно, гигабайт 10-12

А что такое анонимные Hugr Pages?

Насчёт powertop спасибо, попробую

Reply

kranov October 19 2014, 14:23:04 UTC
анонимные, прозрачные.
Раньше 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

Up