Publications

Detailed Information

Hugepage를 활용한 성능 향상 : Enhancing Performance with Hugepage: Effective Strategies for Resource Utilization
자원 활용을 위한 효과적인 전략

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors

손예준

Advisor
염헌영
Issue Date
2023
Publisher
서울대학교 대학원
Keywords
HugepageTHPMemoryPagePagefaultTLBTLB missMemory fragmentation
Description
학위논문(석사) -- 서울대학교대학원 : 공과대학 컴퓨터공학부, 2023. 8. 염헌영.
Abstract
최근 몇 년 동안 Big data, artificial intelligence, machine learning 및 cloud computing과 같은 기술의 성장으로인해 data의 양이 기하급수적으로 방대해졌고, 이러한 대용량의 데이터들이 오고가는 워크로드들로 인해 machine에 탑재해야할 memory의 크기가 대폭 증가하었다. Memory의 크기가 커짐에 따라 메모리를 구성하는 page의 개수 또한 증가하여 TLB(Translation Lookaside Buffer)에서는 TLB miss가, page table에서는 page fault의 발생빈도가 늘어 virtual memory address를 physical memory address로 translate시킬 때 발생하는 overhead가 증가하였다.

이와같이 발생하는 overhead를 줄이기 위해 대용량의 data를 관리하는데 있어 HugePage는 유용하게 사용된다. HugePage를 사용하면 page size가 2MB가 되어 default page size인 4KB보다 512배 더 큰 영역을 다루게 된다는 장점이 있다. Page size가 커짐에 따라 한 번의 page 접근으로 기존에 접근 할 수 있었던 data 보다 많은 양의 data에 접근하게 되므로 자연스럽게 TLB miss와 page fault를 감소시켜 memory에 접근 횟수를 줄일 수 있다. 이러한 결과로 작업수행시간 또한 감소하여 system의 성능이 전반적으로 향상되는 것을 볼 있으나, 무분별한 HugePage의 사용은 memory 낭비가 초래되며 Memory Fragmentation과 같은 overhead로 memory 성능을 감소시킨다는 문제가 있다.

본 논문에서는 system 전반에 걸쳐 HugePage를 적용할 경우 필요 이상으로 소모되는 memory usage를 막고자 두 가지 방법으로 HugePage의 효율성을 높여보았다. 첫번째는 memory address tracking tool인 DAMON(Data Access Monitoring) Framework를 활용하여 workload들의 memory access pattern을 분석한 후, 많은 양의 memory access가 확인되는 부분을 찾아 HugePage를 적용하여 memory usage의 효율을 높였다. 두번째는 workload를 분석하여 작은양의 data가 반복적으로, 그리고 높은 빈도로 접근하는것이 확인 될 경우 HugePage를 적용하여 locality 효과를 기대하였다.
In recent years, the rapid growth of technologies such as big data, artificial intelligence, machine learning, and cloud computing has led to an exponential increase in the volume of data. The size of memory required to handle these large datasets has consequently increased significantly. With the increase in memory size, the number of pages in memory also increases, resulting in higher occurrences of TLB (Translation Lookaside Buffer) misses and page faults during the translation of virtual memory addresses to physical memory addresses, which leads to increased overhead.

To mitigate this overhead associated with the movement of large volumes of data, HugePages are often utilized. By using HugePages, the page size becomes 2MB, which is 512 times larger than the default page size of 4KB. With a larger page size, a single page access can retrieve a greater amount of data compared to the traditional page size, naturally reducing TLB misses and page faults and minimizing the number of memory accesses. As a result, the overall system performance improves, and the execution time of tasks decreases. However, indiscriminate use of HugePages can lead to memory wastage and introduce issues such as memory fragmentation, which can degrade memory performance.

This paper proposes two approaches to enhance the efficiency of HugePages and prevent unnecessary memory usage throughout the system. Firstly, the authors utilize a memory address tracking tool called the DAMON (Data Access Monitoring) Framework to analyze the memory access patterns of workloads. By identifying sections with a high volume of memory accesses, HugePages are selectively applied to improve memory usage efficiency. Secondly, by analyzing workloads, if it is observed that small amounts of data are accessed repeatedly and with high frequency, HugePages are applied to exploit the locality effect.
Language
kor
URI
https://hdl.handle.net/10371/196495

https://dcollection.snu.ac.kr/common/orgView/000000177997
Files in This Item:
Appears in Collections:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share