현대의 온칩 임베디드 시스템(SoC)은 보통 가상 메모리를 지원하기 위해 입력/출력(I/O) 메모리 관리 장치(MMU)를 수용한다. 번역 조회 버퍼(Translation Look-Aside Buffer, TLB)에서 미스가 발생하면 페이지 테이블 워크(page-table walk)가 수행되며, 잦은 페이지 테이블 워크는 메모리 시스템 성능을 크게 저하시킬 수 있다. TLB 활용도를 향상시키기 위해 최근 다수의 TLB 병합(TLB coalescing) 기법이 보고되었다. 이러한 TLB 병합 기법은 연속적인 메모리 할당을 활용하며, 연속적인 가상-물리 주소 매핑을 단일 TLB 엔트리로 효율적으로 병합할 수 있다. 따라서 TLB 병합 기법은 TLB 엔트리를 효율적으로 활용하고 페이지 테이블 워크를 줄이며 메모리 시스템 성능을 향상시킬 수 있다. 그러나 기존의 페이지 테이블은 여전히 페이지 단위로 구성되어 있으며 불필요한 페이지 정보가 포함되어 있다. 그 결과 운영체제가 페이지 테이블에서 블록 수준의 연속성을 효과적으로 표현하기 어렵고, TLB 병합 하드웨어가 해당 연속성을 활용하기도 어렵다. 본 연구에서는 메모리 시스템 성능을 향상시키기 위해 페이지 테이블에서 범위 압축(range compression) 기법을 제안한다. 제안된 페이지 테이블 엔트리에서는 중복된 페이지 속성을 제거하고 다중 블록 매핑을 추가한다. 대역폭이 높은 메모리 집약형 모바일 워크로드를 고려하여 성능 실험을 수행하였다. 그 결과, 제안된 방식은 전통적인 방식 및 기준(reference) TLB 병합 기법들에 비해 유의미하게 더 나은 성능을 보일 수 있음을 확인하였다.
*본 초록은 AI를 통해 원문을 번역한 내용입니다. 정확한 내용은 하기 원문에서 확인해주세요.