Valinor: 빠르고 에너지 효율적이며 프로그래밍 가능한 물리 메모리 할당을 위한 아키텍처 지원
요약
Valinor는 물리 메모리 할당 오버헤드를 줄이기 위해 설계된 새로운 아키텍처 지원 시스템입니다. 기존 방식은 작은 페이지 폴트 발생 시 긴 할당 단계와 높은 에너지 소비를 유발했습니다. Valinor는 프로그래밍 가능한 하드웨어 할당 엔진을 도입하여 소프트웨어의 유연성과 하드웨어 수준의 성능을 결합합니다.
핵심 포인트
- 프로그래밍 가능한 메모리 할당 아키텍처 제시
- 할당 속도 17배 가속 및 에너지 소비 최대 8% 감소
- 소프트웨어 유연성과 하드웨어 성능 결합
물리 메모리 할당은 필요할 때 가상 주소와 물리 주소 간의 매핑을 설정합니다. 현재 시스템에서는, 작은 페이지 폴트(minor page fault)가 커널로 트랩되어 파이프라인 플러시(pipeline flushes), 정지(stalls), 그리고 수만 사이클에 달하는 긴 할당 단계 시퀀스를 유발하며 이는 상당한 비용을 초래합니다. 이러한 오버헤드는 서버리스 함수나 마이크로서비스와 같이 수명이 짧은 워크로드에서 점점 더 중요해지고 있으며, 여기서 작은 폴트는 런타임의 최대 54%와 시스템 에너지의 최대 40%를 차지할 수 있습니다. 이전 하드웨어 할당 제안들은 트랩과 컨텍스트 스위치를 피했지만, 유용한 배치 최적화(placement optimizations)를 희생하거나 새로운 정책 또는 변화하는 하드웨어 조건에 적응할 수 없는 고정 기능 로직에 의존했습니다. 우리는 소프트웨어의 유연성과 하드웨어 수준의 성능을 결합한 하드웨어-OS 협력 메모리 할당 기판인 Valinor를 제시합니다. Valinor는 컴팩트한 OS 제공 할당 라이브러리를 고정된 하드웨어 속도에 근접하게 실행하는 프로그래밍 가능한 하드웨어 할당 엔진을 도입합니다. 이는 단명 객체 할당자(short-lived object allocators), 무결성 메커니즘, 그리고 하드웨어 텔레메트리 기반 배치 등 다양한 정책을 지원합니다. 우리는 Linux를 실행하는 BOOM RISC-V 소프트 코어와 전체 시스템 시뮬레이터에 Valinor를 구현했습니다. 실제 하드웨어에서 Valinor는 할당 속도를 17배 가속하고, 종단 간 성능(end-to-end performance)을 16% 향상시키며, 에너지 소비를 최대 8%까지 줄입니다. 전체 시스템 시뮬레이션은 프로그래밍 가능한 할당 엔진과 여섯 가지 할당 라이브러리를 추가로 평가하여, Valinor가 프로그래밍 가능성을 희생하지 않으면서 하드웨어 수준의 성능을 제공함을 보여줍니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AR의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기