The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Facebook предложил новый механизм управления памятью slab для ядра Linux

23.04.2020 10:47

Роман Гущин (Roman Gushchin) из компании Facebook опубликовал в списке рассылки разработчиков ядра Linux набор патчей с реализацией нового контроллера распределения памяти slab (slab memory controller). Новый контроллер примечателен переносом учёта slab с уровня страниц памяти на уровень объектов ядра, что даёт возможность совместно использовать slab-страницы в разных cgroup, вместо выделения отдельных кэшей slab для каждой cgroup.

Предложенный подход позволяет повысить эффективность использования slab, на 30-45% сократить размер используемой для slab памяти и значительно уменьшить общее потребление памяти ядром. За счёт сокращения числа неперемещаемых slab также наблюдается положительный эффект в области снижения фрагментации памяти. Новый контроллер памяти заметно упрощает код для учёта slab и не требует применения усложнённых алгоритмов динамического создания и удаления slab-кэшей для каждой cgroup. Все cgroup для памяти в новой реализации используют общий набор кэшей slab, а время жизни кэшей slab больше не привязано к времени жизни установленных через cgroup ограничений на использование памяти.

Реализованный в новом контроллере slab более точный учёт ресурсов теоретически должен больше нагружать CPU, но на практике различия оказались несущественными. В частности, новый контроллер slab уже несколько месяцев используется на рабочих серверах Facebook, обрабатывающих разные виды нагрузки, и заметных регрессий пока не выявлено. При этом наблюдается существенное снижение расхода памяти - на некоторых хостах удалось сэкономить до 1ГБ памяти, но данный показатель сильно зависит от характера нагрузки, общего размера ОЗУ, числа CPU и особенностей работы с памятью. Ранее проведённые тесты показали снижение расхода памяти на 650-700 МБ (42% от slab-памяти) на web-фронтэнде, 750-800 МБ (35%) на сервере с кэшем СУБД и 700 МБ (36%) на DNS-сервере.

  1. Главная ссылка к новости (https://lkml.org/lkml/2020/4/2...)
  2. OpenNews: Ядро Linux не может мягко обрабатывать ситуации с нехваткой памяти
  3. OpenNews: Проект по реализации системы дедупликации памяти для ядра Linux
  4. OpenNews: Повышение безопасности Linux-ядра через использование страниц памяти, доступных только для чтения
  5. OpenNews: Google опубликовал новый вариант системы распределения памяти TCMalloc
  6. OpenNews: Чипы памяти DDR4 остаются уязвимы для атак RowHammer, несмотря на добавленную защиту
Лицензия: CC-BY
Тип: К сведению
Короткая ссылка: https://opennet.ru/52790-linux
Ключевые слова: linux, kernel, slab, memory, cgroup
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (109) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.40, Аноним (40), 14:26, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +17 +/
    Роман Гущин, к слову, раньше пилил в Яндексе ядерный планировщик процессов smart (https://github.com/yandex/smart) для уменьшения latency. В апстрим, правда, не попало и особой распространенности не получило. Рад за Романа, что он продолжает работать в этой области.
     
     
  • 2.56, Аноним (56), 18:04, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –9 +/
    Вот есть люди что для работы выбирают исключительно корпорации зла. Интересно это как-то связано с паттерном злобный гений из фильмов или это просто стереотип и случайность.
     
     
  • 3.58, Аноним (58), 18:17, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +16 +/
    Хорошая зарплата.
     
     
  • 4.71, Аноним (71), 19:39, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Продажные секретутки по клавиатуре
     
  • 3.77, Licha Morada (ok), 20:39, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Нет. У них печеньки.

    Корпорации зла, злы не сами по себе, а потому что эффективно доставляют прибыль, иногда с неким ущербом пользователям, клиентам и обществу. Некоторые из них пускают часть своей прибыли на печеньки, что делает их привлекательными работодателями. Трудно винить талантливого разработчика, что он соблазнился на печеньки.

     
     
  • 4.101, Аноним (101), 09:04, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    То есть продавать данные пользователей это добро! Крут ты батенька, просто до изнемождения крут.
    "... а давай Шарик мы тебя продадим..." Матроскин, Трое из Простаквашино.
     
     
  • 5.103, 1 (??), 09:30, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Продавать что-то - это почти всегда добро.
    А пользователи же сами согласились.
     
  • 4.107, Аноним (40), 11:19, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если компания наносит своим клиентам только ущерб, у нее клиентов не будет (зачем покупать услуги, от которых тебе становится хуже, чем если бы ты не их не покупал?). Правильнее было бы сказать "приносит своим клиентам недостаточно по их мнению пользы".
     
  • 3.97, www2 (??), 07:30, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну, для начала стоит учесть, что злобные решения в этой корпорации зла он не при... большой текст свёрнут, показать
     
  • 3.106, Аноним (40), 11:16, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Как-то так получается, что маленьким "корпорациям добра" ковыряния в ядерных планировщиках процессов и менеджерах памяти обычно нафиг не упали (хотя, конечно, бывают редкие исключения), потому, если хочегь работать именно в этой области, приходится работать на крупные "корпорации зла".
     
  • 2.72, Аноним (71), 19:40, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Правильно сделал, что ушёл из этой гадости в другую гадость.
     

  • 1.1, GNU сектант (?), 11:16, 23/04/2020 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –16 +/
     
     
  • 2.3, имя_ (?), 11:21, 23/04/2020 Скрыто модератором
  • +17 +/
     
     
  • 3.7, Alen (??), 11:47, 23/04/2020 Скрыто модератором
  • +/
     
     
  • 4.15, имя_ (?), 12:18, 23/04/2020 Скрыто модератором
  • +/
     
  • 3.10, Аноним (10), 11:55, 23/04/2020 Скрыто модератором
  • +/
     
     
  • 4.12, Аноним (12), 12:01, 23/04/2020 Скрыто модератором
  • +/
     
     
  • 5.14, имя_ (?), 12:17, 23/04/2020 Скрыто модератором
  • –2 +/
     
  • 2.11, Аноним (12), 11:57, 23/04/2020 Скрыто модератором
  • +2 +/
     
     
  • 3.13, имя_ (?), 12:14, 23/04/2020 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (8)

  • 1.2, Аноним (2), 11:20, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Интересно, может ли оно положительно влиять на десктоп? А то:
    > удалось сэкономить до 1ГБ памяти
    > но данный показатель сильно зависит от характера нагрузки, общего размера ОЗУ, числа CPU и особенностей работы с памятью

    похоже, что тестировалось на серваках 64 ядра/64 гига.

     
     
  • 2.6, Аноним (6), 11:42, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +15 +/
    >Интересно, может ли оно положительно влиять на десктоп?

    ты надеялся, что в фейсбуке будут пилить что-то для линукс-десктопа? Это запилено для серверов, на которых крутится куча cgroups, читай - контейнеров.

     
  • 2.27, Аноним (27), 13:16, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это в принципе ортогонально десктопам независимо от объема памяти, если только ты не используешь какой-нибудь qubes os
     
     
  • 3.32, Crazy Alex (ok), 13:37, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В кубах виртуальные машины же. Впрочем, считать группы и контейнеры механизмом безопасности несерьёзно в любом случае. Защита от случайного выстрела в ногу, способ улучшения управляемости и подобное - да, но не защита от целенаправленной атаки из контейнера, которая, впрчем, только самым убогим хостерам нужна.
     
  • 3.94, mikhailnov (ok), 00:57, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    GNOME же собрался systemd (cgroups) использовать
     
  • 2.67, виндотролль (ok), 19:26, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    если десктоп юзает cgroups активно, то может
     

  • 1.4, Аноним (4), 11:24, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    >совместно использовать slab-страницы в разных cgroup, вместо выделения отдельных кэшей slab для каждой cgroup

    А не приведёт ли это к новым каналам утечки чувствительных данных?

     
     
  • 2.5, A.Stahl (ok), 11:27, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Предлагаю этим вопросом обеспокоиться тем кто обрабатывает чувствительные данные.
     
     
  • 3.47, YetAnotherOnanym (ok), 15:37, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Да ты просто рождён быть ведущим разработчиком ядра Линукс!
     
  • 2.8, Анан (?), 11:48, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Приведёт и не раз
     
  • 2.9, анон45 (?), 11:53, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Линус скажет, не боись!
     
     
  • 3.38, Аноним (38), 14:00, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Линус еще и покажет.
     
  • 2.46, Доброжелательный Аноним (?), 15:31, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > А не приведёт ли это к новым каналам утечки чувствительных данных?

    А давайте ещё раз попробуем, может в этот раз не приведёт. Тем более что Meltdown и охапку вариаций Spectre уже все позабыли, кроме отдельных зануд. В добрый путь!

    /me погладил системник под управлением OpenBSD

     
     
  • 3.54, Системник под управлением OpenBSD (?), 17:29, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Не делай так больше!
     
     
  • 4.86, OpenBSD (?), 22:25, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Цыц! ОН тут главный
     

  • 1.16, Аноним (16), 12:21, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    А в абсолютных процентах на сколько снижается потребление? Из статьи не понятно. Если на серваках 128 Гб, то 650-700 МБ - это меньше процента. И стоит это того тогда, если CPU начинает больше потреблять?
     
     
  • 2.35, Crazy Alex (ok), 13:49, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я так понял, что не начинает больше потреблять, хотя казалось, что будет. Классический случай, кстати - угадайки в сложных системах не работпют, измерять надо.

    Впрочнм, ждём сторонних тестов

     

  • 1.17, Коровавирус (?), 12:21, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    О теперь по-русски: что означает существительное slab?
     
     
  • 2.18, имя_ (?), 12:24, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    https://en.wikipedia.org/wiki/Slab_allocation
     
     
  • 3.51, Палочка Коха (?), 16:25, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Я просила по-русски
     
     
  • 4.61, Sw00p aka Jerom (?), 18:58, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://ru.wikipedia.org/wiki/Slab
    https://www.ibm.com/developerworks/ru/library/l-linux-slab-allocator/
     
     
  • 5.114, Палочка Коха (?), 14:18, 04/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да, блджад, там ещё больше заморских слов не то, что без перевода, даже без транслитерации.
     
     
  • 6.115, Sw00p aka Jerom (?), 20:32, 04/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Да, блджад, там ещё больше заморских слов не то, что без перевода,
    > даже без транслитерации.

    а вы переиначьте :)

     
  • 4.63, IRASoldier_registered (ok), 19:06, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Гугл в помощь, если после вуза по инглишу все еще такие затыки.
     
  • 4.80, Аноним (80), 20:49, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://ru.wikipedia.org/wiki/Slab
     
  • 2.22, GNU сектант (?), 12:37, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    slab [s:leb] - (рус) жоппа
     
     
  • 3.44, PnD (??), 15:14, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Во-первых, "[slæb]". Во-вторых, вы себе льстите.
    (Я подозреваю, в связи с массовым переходом на диванную работу число плоских жо́п существенно сократится. Хотя х.з.)
     
  • 2.23, Аноним (23), 12:40, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –4 +/
    https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%8F

    иными словами при работе ФБ скоро комп будет греться настолько, что сможет плавить металл.

     
     
  • 3.30, Аноним (38), 13:27, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Да еще неизвестно какую дополнительную "работу" по сбору данных они будут делать нагружая процессор.
     
     
  • 4.34, Crazy Alex (ok), 13:45, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Открой патч и посмотри
     
     
  • 5.37, Аноним (38), 13:59, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –6 +/
    Звучит как зареверсь процессор и проверь что никакого мелтдауна и спектра нет. Да и какая гарантия что ФБ не добавит что-то потом?
     
     
  • 6.43, Crazy Alex (ok), 15:05, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А потом, по-твоему, никто ревьюить новые изменения не будет, или как? И чего ради именно фейсбук выделять? В ядро коммитит туча людей и контор, и как-то много лет уже все живы.
     
  • 2.52, Палочка Коха (?), 16:30, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Роман Гущин из компании Книга Лиц опубликовал в списке рассылки разработчиков ядра Линукс набор патчей с реализацией нового контроллера распределения памяти брусками (приказчик брусков памяти). Новый контроллер примечателен переносом учёта брусков с уровня страниц памяти на уровень объектов ядра, что даёт возможность совместно использовать брусков в разных мутных группах, вместо выделения отдельных схронов брусков для каждой группы.

    Предложенный подход позволяет повысить эффективность использования брусков, на 30-45% сократить размер используемой для бруска памяти и значительно уменьшить общее потребление памяти ядром. За счёт сокращения числа неперемещаемых брусок также наблюдается положительный эффект в области снижения фрагментации памяти. Новый контроллер памяти заметно упрощает код для учёта брусков и не требует применения усложнённых алгоритмов динамического создания и удаления заначек брусков для каждой мутной группы. Все мутные группы для памяти в новой реализации используют общий набор заначек брусков, а время жизни заначек больше не привязано к времени жизни установленных через мутные группы ограничений на использование памяти.

     
     
  • 3.66, YetAnotherOnanym (ok), 19:19, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +8 +/
    > набор патчей с реализацией нового контроллера

    Набор лоскутов с воплощением нового управителя же!

     
     
  • 4.78, Какаянахренразница (ok), 20:41, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    >> набор патчей с реализацией нового контроллера
    > Набор лоскутов с воплощением нового управителя же!

    Гуртовщика :D

     
  • 3.76, Какаянахренразница (ok), 20:37, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +10 +/
    > из компании

    из ватаги

    > фрагментации

    дробления

    > эффективность

    плодотворность

    > алгоритмов

    способов

    > динамического

    зело ветренного

     
     
  • 4.100, Аноним (100), 08:18, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> алгоритмов
    > способов

    Алгорифмов. Марков любил говорить "алгорифм".

     
     
  • 5.116, Мимокрокодил (?), 15:12, 22/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Аль-Хорезми просто офигевает с фефектоф фикции этих греков.
     
  • 2.53, Аноним (100), 17:00, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > О теперь по-русски: что означает существительное slab?

    То и означает, сляб. В просторечии, "большой необработанный кусок".

     
     
  • 3.85, Коровавирус (?), 22:16, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Модератор, не тупи. "Чурка" - это большой необработанный кусок дерева, а не ты.
     
     
  • 4.99, Аноним (100), 08:15, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну почти. Чурак в деревообработке это грубая заготовка (не обязательно круглого сечения, даже не всегда определённой длины) и для одного изделия. У сляба все размеры нормированы, из одного в конечном итоге может быть произведён мешок вилок. Память так же куском резервируется, а позже сляб "нарезается" при аллокации данных.
     
     
  • 5.108, Коровавирус (?), 12:22, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Анании, не тупи!
     
     
  • 6.109, Аноним (100), 12:27, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    По-умолчанию считаю собеседников вменяемыми, но если ты особенный, при случае обязательно тебя заострю.
     

  • 1.19, netricks (ok), 12:34, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    А не нарушает ли это самой идеи cgroups?
     
     
  • 2.21, Аноним (38), 12:37, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Нарушает только Тссс....
     
  • 2.39, Аноним (40), 14:22, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Не больше, чем сама идея виртуальной памяти
     

  • 1.20, Аноним (38), 12:36, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Просто ФБ пытается протащить свой зонд на уровень объектов ядра. Это все не просто так раньше было сделано на уровне страниц памяти.
     
     
  • 2.24, Crazy Alex (ok), 12:51, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Что ты курил?
     
  • 2.41, Аноним (41), 14:31, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем это фейсбуку? ФБ вставляет зонд прямо в мозг анонимуса и тот совершенно бесплатно и добровольно всё про себя и свои мысли-хотелки рассказывает сам.
     
  • 2.64, IRASoldier_registered (ok), 19:07, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Переставай пользоваться компьютером, у тебя от этого явно усиливается зондофобия.
     
  • 2.70, Аноним (70), 19:34, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    5G-лучи! коронавируса не существует!
     

  • 1.25, Crazy Alex (ok), 12:52, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Я смотрю, тут некоторые принципиально отказываются верить, что фейсбук мог предложить полезное изменение. Ну что сказать - вера и здравый смысл несовместимы.
     
     
  • 2.26, someone (??), 12:56, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Я смотрю, тут некоторые принципиально отказываются верить
    > Ну что сказать - вера и здравый смысл несовместимы.

    Поэтому и отказываются верить.

     
     
  • 3.29, Crazy Alex (ok), 13:27, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Здравый смысл подсказывает, что Фейсбук - здоровенная контора с кучей денег и сложной инфраструктурой, крутящейся на линуксе. Логично, что у них есть и мотивация для для оптимизаций, и специалисты, и ресурсы.
     
     
  • 4.102, Аноним (101), 09:21, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Здравый смысл говорит что это всё понты. ФБ внедрить/инжектировать пытается то, что ей приказали. Поскольку у МЦ очень маленький головной мозг(анацифал), то им он и сообразить не может что, ну может быть лучше или дешевле, написать свою ОС. Не смотря на гораздо меньшие масштабы, на несколько порядков, я знаю по крайней мере пару Российских организаций ( не контор), которые для своих нужд в бизнесе написали свои собственные ОС, не на базе Линуха или БСД.  
     
  • 2.28, Аноним (38), 13:25, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Т.е. ты просто веришь Фейсбуку  и головой не пользуешься? Так и запишем.
     
     
  • 3.31, Crazy Alex (ok), 13:31, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Есть код, есть кернел тим - всё это не вопрос веры. Из общих соображений изменения выглядят логичными. Рефлекторно реагировать на источник вместо того чтобы посмотреть самим либо положиться на хорошо работающие много лет кернельные процессы приёма патчей - дурь.
     
  • 3.33, Crazy Alex (ok), 13:39, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну сформулировал я кривовато, было б к чему цепляться. Вера в данном случае выражается в реакции на автопилоте "ай злобный фейсбук". Я хоть код глянул.
     
  • 3.42, Annoynymous (ok), 14:32, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Т.е. ты просто веришь Фейсбуку  и головой не пользуешься? Так и запишем.

    Т.е. ты просто не веришь Фейсбуку  и головой не пользуешься? Так и запишем.

     

  • 1.36, Аноним (36), 13:58, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    новость в 2 словах:
    раньше у каждого контейнера была отдельная slab-память, сейчас - общая, что очень упрощает всю подсистему
     
     
  • 2.59, КО (?), 18:33, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >раньше у каждого контейнера была отдельная  ̶s̶l̶a̶b̶-память, сейчас - общая, что очень упрощает всю подсистему

    Со стороны это выглядит так, учитывая, что это память заготовок под используемые объекты. Другими словами у разных контейнеров в результате будут данные в одной странице. Ну и возможность читать освобожденные, но не обнуленные перед этим фрагменты памяти друг друга.

     

  • 1.45, Аноним (12), 15:19, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > 3.13, имя_ (?), 12:14, 23/04/2020 Скрыто модератором
    > Что за ноут?

    Xiaomi 12.5", 4GB RAM, intel mobile, 256GB SSD.
    С момента покупки работал не более 6 часов на 3-х вёдрах. На 5-х - 8 часов + 20% остатка. Это моя основная раб-машина.

    Был ещё хромобук, в дуалбуте с GalliumOS, после 13-и часов тестирования я тоже увидел 20% остатка и ушёл спать. Ведро - 3.х. Но у него есть проблема - 2ГБ ОЗУ. Мне этого для работы не хватит ни как.

     
  • 1.48, КО (?), 16:01, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Хорошо, мордокнигу упоминать было обязательно?
     
     
  • 2.50, Аноним (50), 16:10, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    у тебя проблемы с этим?
     
     
  • 3.65, Аноним (65), 19:09, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У неё больно морда страшная и система блокировок аккаунтов ни за что тоже
     
     
  • 4.68, Аноним (70), 19:31, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    и что? новость не о fb
     
  • 2.57, Аноним (56), 18:05, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Пусть все знают своих героев и мотают на ус. Может кто-то так любит Фейсбук что сразу поставит эту штуковину себе на прод.
     
     
  • 3.79, Аноним (79), 20:48, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну zstd очень годный, то приходилось lz4 юзать (а до того вообще один lzo был) и он не обеспечивал нормальных результатов. Так что есть польза, что не говорите. Лучше бы правда с зависаниями по исчерпании памяти боролись, вместо oomd, но линукс исправить это конечно сложнее, чем поменять один из используемых в нём алгоритмов или аллокаторов и подпереть костылями.
     
  • 2.60, anonymous (??), 18:51, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну а на чьи деньги это делалось?
     
  • 2.62, Аноним (62), 19:00, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сам автор патча и упомянул:

    We've been using the new slab
    controller in Facebook production for several months with different
    workloads and haven't seen any noticeable regressions. What we've seen
    were memory savings in order of 1 GB per host (it varied heavily depending
    on the actual workload, size of RAM, number of CPUs, memory pressure, etc).

    Успешное тестирование на всей инфраструктуре ФБ - куда более серьезный аргумент в пользу патча, чем бенчмарки на локалхосте.

     
     
  • 3.69, Аноним (70), 19:32, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > *что угодно* на локалхосте

    ты сейчас сделал больно 99% местных икспертов, за что ты так?

     
     
  • 4.74, Аноним (74), 19:51, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ускорение чего угодно не стоит таких дыр в безопасности.
     
     
  • 5.104, www2 (??), 10:04, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Какие-такие дыры в безопасности? Вы так говорите, как будто раздельные slab были внутри пользовательских процессов, а не внутри ядра. Ядро само от себя структуры данных защитить не может, поэтому это изменение никаких дополнительных рисков безопасности, кроме добавления нового кода, не несёт.
     
  • 3.73, Аноним (74), 19:49, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Думаешь они станут сами у себя данные воровать? А вот поставит этот патч фанатик ФБ вот тебе база данных ФБ и увеличилась раз. А сэкономленную оперативу можно использовать для обработки новых данных. Сплошной профит.
     
  • 2.83, Аноним (12), 21:21, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Роман Гущин (Roman Gushchin) из компании Facebook

    Наверное таки обязательно. Ибо это та контора, которая оплатила работу специалиста.

    Интересное собеседование у них было. Наверное самое сложное из тех, на которые я попадал. Я завалился на алгоритмах.
    В принципе, я не очень-то хотел у них работать после просмотра видео их манагера прод-инженеров. Там рассказывалось, что из-за зверского on-call rotation люди просто ужодят и говорят: "Это не моя работа". К тому времени, я уже 4 месяца в сиске отмотал, и понимал что на он-кал - никакого здоровья не хватит.

     
     
  • 3.105, anonymous (??), 10:48, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я вот эту неделю OnCall. За всю неделю была всего одна заявка и решилась за два часа. Команды очень разные, и ты сам выбираешь себе команду.
     
     
  • 4.110, Аноним (12), 09:39, 25/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А я(тот аноним выше) - давно в разработку ушёл. Так поспокойнее.
     
     
  • 5.111, anonymous (??), 10:59, 25/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Как PE, я 90% технической работы посвещаю проектированию и разработке. А на предыдущей работе был SWE Lead, но это быстро наскучило без доступа к управлению железом :)
     

  • 1.84, бублички (?), 21:53, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    и рад бы этот пач попробовать, да своё ядро не собирал примерно с версии 2.6 - не было нужды да и нет столько свободного времени. ох и разрослось оно с тех пор. но любопытство раздирает
     
     
  • 2.89, Аноним (79), 23:07, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Это не страшно, давай научу:

    zcat /proc/config.gz > /usr/src/linux/.config
    cd /usr/src/linux/
    make clean
    make oldconfig
    make -j$(($(nproc)+1)) menuconfig
    make -j$(($(nproc)+1)) && make INSTALL_MOD_STRIP=1 -j$(($(nproc)+1)) modules_install

    Работы на 1 секунду.

     
     
  • 3.91, бублички (?), 23:51, 23/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    а в make menuconfig ты всю жизнь слепо next -> save нажимаешь? понимаю, вот такой неслыханныой опыт у тебя по части сборки собственного ядра. что и говорить, за эту секунду ты многому научился
     
     
  • 4.93, Аноним (79), 00:01, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > а в make menuconfig ты всю жизнь слепо next -> save нажимаешь?
    > понимаю, вот такой неслыханныой опыт у тебя по части сборки собственного
    > ядра. что и говорить, за эту секунду ты многому научился

    Так там уже всё настроено, при обновлении тебя спросят в oldconfig -- вот там уже надо нажимать ? и думать.

    >вот такой неслыханныой опыт

    а то ж, не у каждого 15+ лет сборки ведра под разные конфиги в бэкграунде.

     
     
  • 5.95, бублички (?), 03:34, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > а то ж, не у каждого 15+ лет сборки ведра под разные конфиги в бэкграунде.

    то-есть это вот и была воплощённая квинтэссенция твоего 15-летнего опыта? вот в этих 6 строках, добрую половину из которых можно было уложить в одну строчку, а-то и целиком автоматизировать (вместо запуска в бэкграунд)? ты либо необычайно скромен, либо ещё скорее всего просто-напросто врёшь про 15 лет

     
     
  • 6.96, Аноним (79), 03:45, 24/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >вместо запуска в бэкграунд

    Что, простите? Мы тут компиляем ядро ващет.

    >а-то и целиком автоматизировать

    Это ещё зачем? У нас же цель была ручками собрать ядро, алло?

    >добрую половину из которых можно было уложить в одну строчку

    Я тут однострочник пишу что ли? И интересно каких, ничего лишнего не наблюдаю. Разве что можно ещё добавить mount и cp, потому что ядро мы не скопировали (и команды для initrams, но это лишнее). Или это ты увидел -j$(($(nproc)+1)) и испугался? Ну, бывает.

     

  • 1.87, Аноним (16), 22:28, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Т.е. на типовом компе домохозяйки с запущенным браузером с открытыми 200 вкладками размер используемой памяти не сократится?
     
  • 1.88, Аноним (88), 22:42, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    На десктопе cgroup не используется -> размер используемой памяти не сократится. Но при этом:
    > Реализованный в новом контроллере slab более точный учёт ресурсов
    > теоретически должен больше нагружать CPU

    и:
    > на практике различия оказались несущественными

    Т.е. различия есть. Критерий "оказались несущественными" - относительный. Одно дело серваки facebook, а другое карманный девайс.

     
  • 1.90, steils (ok), 23:33, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    OMG! Почта автора — guro@fb.com

    А вообще-то странная новость. Ну предложили патчи, здорово. Принимать такіе большіе наборы патчей въ ядро могутъ мѣсяцами, а это всего лишь третья итерація. Когда примутъ въ master, тогда это будетъ важно. Могутъ и не принять въ итогѣ.

     
  • 1.92, Аноним (92), 23:59, 23/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Опять докеры и контейнеры?
     
     
  • 2.112, And (??), 16:21, 27/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Возникло впечатление, что наоборот. Что это про повыключать все ограничения и разграничения, т.к. так проще.
    Было - раздельно по cgroups.
    Стало - общее.

    Но профан в теме, но ключевые слова настораживают. При таком наборе слов настораживает. :)  :))

     

  • 1.98, Аноним (98), 08:08, 24/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Пакеты для убунту 20.04 есть?
     
  • 1.113, arisu (ok), 10:55, 28/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    цгрупы не нужны, а, следовательно, и этот супераллокатор тоже.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру