TMO, 서버의 RAM을 절약하는 Facebook 메커니즘

페이스북 엔지니어들이 공개한 보고를 통해 기술도입 TMO (투명한 메모리 오프로딩) 작년, 서버의 RAM을 크게 절약할 수 있습니다. NVMe SSD와 같은 저렴한 드라이브에서 작동하는 데 필요하지 않은 보조 데이터를 이동합니다.

페이스북 TMO는 각 서버의 RAM을 20%에서 32%까지 절약하는 것으로 추정합니다. 이 솔루션은 애플리케이션이 격리된 컨테이너에서 실행되는 인프라에서 사용하도록 설계되었습니다. TMO의 커널 측 구성 요소 그들은 이미 Linux 커널에 포함되어 있습니다.

Linux 커널 측에서 작업 기술의 PSI 하위 시스템에서 제공 (압력 스톨 정보), 버전 4.20부터 제공.

PSI 다양한 메모리 부족 드라이버에서 이미 사용됨 다양한 리소스(CPU, 메모리, I/O)에 대한 대기 시간에 대한 정보를 분석할 수 있습니다. PSI를 통해 사용자 공간 프로세서는 시스템 로드 및 속도 저하 패턴을 보다 정확하게 평가할 수 있으므로 성능에 눈에 띄는 영향을 미치기 전에 이상이 감지될 수 있습니다.

사용자 공간에서 Senpai 구성 요소는 TMO를 실행합니다., PSI에서 수신한 데이터를 기반으로 cgroup2를 통해 애플리케이션 컨테이너의 메모리 제한을 동적으로 조정합니다.

Senpai는 자원 부족의 시작 징후를 분석합니다. PSI를 통해 느린 메모리 액세스에 대한 애플리케이션의 민감도를 평가하고 필요한 최소 메모리 크기를 결정하려고 시도합니다. 작업에 필요한 데이터가 RAM에 남아 있는 컨테이너의 경우 파일 캐시에 있거나 현재 직접 사용되지 않는 관련 데이터는 스왑 파티션으로 강제 제거됩니다.

TMO(Transparent Memory Offload)는 이기종 데이터 센터 환경을 위한 메타의 솔루션입니다. CPU, 메모리 및 I/O의 리소스 부족으로 인해 손실된 작업을 실시간으로 측정하는 새로운 Linux 커널 메커니즘을 도입합니다. 이 정보에 따라 애플리케이션에 대한 사전 지식 없이 TMO는 압축 메모리 또는 SSD와 같은 이기종 장치로 오프로드할 메모리 양을 자동으로 조정합니다. 이것은 장치의 성능 특성과 느린 메모리 액세스에 대한 응용 프로그램의 민감도를 기반으로 합니다.

따라서, TMO의 본질은 메모리 소비 측면에서 "엄격한 식단"으로 프로세스를 유지하는 것입니다., 사용하지 않는 메모리 페이지를 스왑 파티션으로 강제 이동합니다. 이 파티션을 제거해도 성능에 큰 영향을 미치지 않습니다(예: 초기화 중에만 사용되는 코드가 있는 페이지 및 디스크에 캐시된 일회성 데이터). 메모리 부족에 대한 응답으로 스왑 파티션에 정보를 플러시하는 것과 달리 TMO는 예측 예측을 기반으로 데이터를 플러시합니다.

5분 이내에 메모리 페이지에 대한 액세스가 없는 경우를 선호도 기준 중 하나로 사용합니다. 이러한 페이지를 콜드 페이지라고 하며 평균적으로 응용 프로그램 메모리의 약 35%를 차지합니다(응용 프로그램 유형에 따라 19%에서 65%까지 다양함).

기본 설정은 메모리의 익명 페이지(응용 프로그램에서 할당한 메모리) 및 파일 캐싱에 사용된 메모리(커널에서 할당함)와 관련된 활동을 고려합니다. 일부 응용 프로그램에서는 익명 메모리가 주요 소비이지만 다른 응용 프로그램에서는 파일 캐시도 매우 중요합니다.

메모리를 캐시로 플러시할 때 불균형을 방지하기 위해 TMO는 파일 캐시와 관련된 익명 페이지 및 페이지를 비례적으로 플러시하는 새로운 페이징 알고리즘을 사용합니다.

자주 사용하지 않는 페이지를 느린 메모리로 푸시해도 성능에는 큰 영향을 미치지 않지만 하드웨어 비용을 크게 줄일 수 있습니다. 데이터는 SSD 또는 RAM의 압축된 스왑 공간으로 전송됩니다. 10바이트의 데이터를 저장하는 비용으로 NVMe SSD를 사용하는 것은 RAM에서 압축을 사용하는 것보다 최대 XNUMX배 저렴합니다.

마지막으로, 그것에 대해 더 알고 싶다면 자세한 내용을 참조하십시오. 다음 링크에서.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   이었다는

    일반 앱이 있는 일반 컴퓨터에서 사용할 수 있나요?