TMO, Facebook механизъм, който спестява RAM на сървъри

Инженерите на Facebook разкриха, чрез доклад, въвеждането на технологията TMO (Прозрачно разтоварване на паметта) миналата година, което позволява значително да се спести RAM на сървърите чрез преместване на вторични данни, които не са необходими за работа на по-евтини устройства като NVMe SSD.

Facebook изчислява, че TMO спестява между 20% и 32% от RAM на всеки сървър. Решението е предназначено за използване в инфраструктури, където приложенията работят в изолирани контейнери. Компонентите от страна на ядрото на TMO те вече са включени в ядрото на Linux.

От страна на ядрото на Linux, операцията на технологията се осигурява от подсистемата PSI (Информация за спиране на налягането), предоставена от версия 4.20.

PSI вече се използва в различни драйвери за липса на памет и позволява да се анализира информация за времето на изчакване за различни ресурси (CPU, памет, I/O). С PSI процесорите за потребителско пространство могат по-точно да оценят натоварването на системата и моделите на забавяне, което позволява да се открият аномалии, преди те да имат забележимо въздействие върху производителността.

В потребителското пространство компонентът Senpai изпълнява TMO, който динамично регулира ограничението на паметта за контейнерите на приложения чрез cgroup2 въз основа на данни, получени от PSI.

Сенпай анализира признаците на началото на недостиг на ресурси чрез PSI, оценява чувствителността на приложенията към бавен достъп до паметта и се опитва да определи минималния размер на необходимата памет за контейнер, в който данните, необходими за заданието, остават в RAM и свързаните с тях данни, които са били във файловия кеш или в момента не се използват директно, се изхвърлят към swap дяла.

Transparent Memory Offload (TMO) е решението на Meta за хетерогенни среди на центрове за данни. Той въвежда нов механизъм на ядрото на Linux, който измерва загубата на работа поради недостиг на ресурси в процесора, паметта и I/O в реално време. Водени от тази информация и без предварителни познания за приложението, TMO автоматично настройва размера на паметта за разтоварване на хетерогенно устройство, като компресирана памет или SSD. Той прави това въз основа на характеристиките на производителността на устройството и чувствителността на приложението към по-бавни достъпи до паметта.

Следователно, същността на TMO е да поддържа процесите на "строга диета" по отношение на консумацията на памет, принуждавайки неизползваните страници от паметта да бъдат преместени в swap дяла, чието премахване не влияе забележимо на производителността (например страници с код, използван само по време на инициализация и еднократни данни, кеширани на диска). За разлика от изтриването на информация към суап дяла в отговор на ниска памет, TMO изтрива данни въз основа на прогнозно предвиждане.

Липсата на достъп до страница с памет в рамките на 5 минути се използва като един от критериите за предпочитание. Тези страници се наричат ​​студени страници и средно съставляват около 35% от паметта на приложението (в зависимост от типа на приложението има вариация от 19% до 65%).

Предпочитанието взема предвид дейността, свързана с анонимни страници памет (памет, разпределена от приложението) и памет, използвана за кеширане на файлове (разпределена от ядрото). В някои приложения анонимната памет е основната консумация, но в други кешът на файловете също е много важен.

За да избегне дисбаланса при прочистване на паметта в кеша, TMO използва нов алгоритъм за пейджинг, който промива анонимни страници и страници, свързани с кеша на файловете, пропорционално.

Избутването на рядко използвани страници към по-бавна памет не оказва огромно влияние върху производителността, но може значително да намали разходите за хардуер. Данните се изпращат до SSD или компресирано пространство за размяна в RAM. С цената на съхранение на един байт данни, използването на NVMe SSD е до 10 пъти по-евтино от използването на компресия в RAM.

И накрая, ако имате интерес да научите повече за него, можете да се консултирате с подробностите В следващия линк.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   елиан каза той

    може ли това да се използва на нормални компютри с нормални приложения?