메타, 리눅스용 압축 메모리 CRAM 공개…ZRAM 대비 최대 452배
메타의 그레고리 프라이스 팀이 개념을 정립한 CRAM은 읽기 전용 최악 조건에서 초당 4억 8900만 건을 처리해 ZRAM의 110만 건을 크게 앞선다.
메타가 리눅스용 압축 메모리 모델 CRAM을 선보였다. CRAM은 압축된 데이터를 스왑 계층 기능이 아니라 메모리 안에 그대로 유지하는 방식으로 동작한다. 개념은 메타의 그레고리 프라이스와 그의 팀이 정립했다.
성능 수치는 읽기 전용 조건에서 두드러진다. CRAM은 읽기 전용 사례에서 ZRAM 대비 최대 452배의 성능을 낸다. 최악의 읽기 전용 조건에서 CRAM은 초당 4억 8900만 건의 연산을 처리했고, ZRAM은 초당 110만 건에 그쳤다.
쓰기가 섞이는 조건에서도 격차는 유지된다. 쓰기 비중을 20%로 두면 CRAM은 테스트한 최악의 조건에서 ZRAM보다 5.4배 빠르다.
구조적으로도 차이가 있다. CRAM은 블록 장치인 척하지 않고 자체적인 프라이빗 NUMA 노드를 사용한다.
할당 관리 중에는 '치킨 비트'(Chicken Bit) 메커니즘이 리눅스가 CRAM을 사용하지 못하도록 막아 연쇄 장애를 방지한다.
한눈에 보기
CRAM은 ZRAM보다 얼마나 빠른가?
읽기 전용 사례에서 최대 452배 빠르다. 최악의 읽기 전용 조건에서는 CRAM이 초당 4억 8900만 건, ZRAM이 초당 110만 건을 처리했다. 쓰기 20% 조건에서는 최악의 테스트 사례에서 5.4배 빠르다.
CRAM은 누가 만들었나?
메타의 그레고리 프라이스와 그의 팀이 개념을 정립했다.
CRAM은 스왑 계층인가?
아니다. 압축된 데이터를 메모리에 유지하는 방식이며, 블록 장치를 가장하는 대신 프라이빗 NUMA 노드를 사용한다.