연구 영역
기본 정보
논문·특허
과제
구성원
Article|
·
인용수 7
·2022
MaPHeA: A Framework for Lightweight Memory Hierarchy-aware Profile-guided Heap Allocation
Deok-Jae Oh, Yaebin Moon, Do Kyu Ham, Tae Jun Ham, Yongjun Park, Jae W. Lee, Jung Ho Ahn, Eojin Lee
IF 2 (2022) ACM Transactions on Embedded Computing Systems
초록

하드웨어 성능 모니터링 유닛(Performance Monitoring Units, PMU)은 현대 마이크로프로세서의 표준 기능으로, 풍부한 마이크로아키텍처 이벤트 샘플러의 집합을 제공한다. 최근 다수의 프로파일 기반 최적화(profile-guided optimization, PGO) 프레임워크는 기존의 계측(instrumentation) 기반 프레임워크에 비해 훨씬 낮은 프로파일링 오버헤드를 제공하는 방식으로 이를 활용해 왔다. 그러나 기존의 PGO 프레임워크는 주로 바이너리의 배치(layout)를 최적화하는 데 집중하며, 메모리 계층(memory hierarchy)에 걸친 데이터 접근 행태에 대해 PMU가 제공하는 풍부한 정보를 간과한다. 따라서 본 연구에서는 MaPHeA를 제안한다. MaPHeA는 경량의 “M emory hierarchy- a ware P rofile-guided He ap A llocation” 프레임워크로, HPC와 임베디드 시스템 모두에 적용 가능하다. MaPHeA는 매우 낮은 프로파일링 오버헤드로, 그리고 추가적인 사용자 개입 없이 애플리케이션 성능을 향상시키기 위해 동적으로 할당된 힙(heap) 객체의 최적화된 할당을 안내하고 적용한다. MaPHeA의 효과를 입증하기 위해, 이를 떠오르는 DRAM-NVM 이기종 메모리 시스템(HMS)에서 힙 객체 할당 최적화, 선택적 huge-page(대형 페이지) 활용, 그리고 시간적 지역성(temporal locality)이 낮은 객체에 대한 캐시 가능성(cacheability) 제어에 적용한다. HMS에서 MaPHeA는 자주 접근되는 힙 객체를 fast DRAM 영역에 식별·배치함으로써, DRAM을 느린 NVM의 하드웨어 관리 캐시로 사용하는 기본 설정에 비해 메모리 집약적 그래프 처리(graph-processing) 및 Redis 워크로드의 성능을 평균 56.0% 향상시킨다. 또한 MaPHeA는 TLB 미스가 빈번하게 발생하게 하는 큰 힙 객체를 식별하여 huge page에 할당함으로써, Linux의 transparent huge-page 구현에 비해 Redis의 읽기 및 업데이트 작업 성능을 10.6% 향상시킨다. 더 나아가 시간적 지역성이 낮아 캐시 오염(cache pollution)을 유발하는 객체들을 구별하고, 이에 대해 write-combining을 적용함으로써, MaPHeA는 캐시 가능성 제어가 없는 시스템에 비해 STREAM 및 RADIX 워크로드의 성능을 평균 20.0% 향상시킨다.

*본 초록은 AI를 통해 원문을 번역한 내용입니다. 정확한 내용은 하기 원문에서 확인해주세요.

키워드
Computer scienceHeap (data structure)Memory hierarchyDramProfiling (computer programming)Operating systemCacheLocalityEmbedded systemOverlay
타입
Article
IF / 인용수
2 / 7
게재 연도
2022