2020 ACM/IEEE 47th Annual International Symposium on Computer Architecture (ISCA) 2020
DOI: 10.1109/isca45697.2020.00079
|View full text |Cite
|
Sign up to set email alerts
|

Perforated Page: Supporting Fragmented Memory Allocation for Large Pages

Abstract: The availability of large pages has dramatically improved the efficiency of address translation for applications that use large contiguous regions of memory. However, large pages can be difficult to allocate due to fragmented memory, non-movable pages, or the need to split a large page into regular pages when part of the large page is forced to have a different permission status from the rest of the page. Furthermore, they can also be expensive due to memory bloating caused by sparse accesses to application da… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
8
0

Year Published

2020
2020
2024
2024

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 19 publications
(9 citation statements)
references
References 37 publications
(28 reference statements)
0
8
0
Order By: Relevance
“…Zhu et al [15] generalize the processes of using huge pages, and optimize the lifecycle of huge pages. Part et al [16] allow holes in huge page, providing the flexibility in memory management with huge pages.…”
Section: Paging and Virtual Memorymentioning
confidence: 99%
See 2 more Smart Citations
“…Zhu et al [15] generalize the processes of using huge pages, and optimize the lifecycle of huge pages. Part et al [16] allow holes in huge page, providing the flexibility in memory management with huge pages.…”
Section: Paging and Virtual Memorymentioning
confidence: 99%
“…If an allocated address range is smaller than the huge page size, the rest of the page cannot be utilized and gets wasted. This so-called memory bloat can significantly decrease memory utilization on the systems with huge pages [12][13][14][15][16][17]. The increased page size can negatively affect program performance as well.…”
Section: Paging and Virtual Memorymentioning
confidence: 99%
See 1 more Smart Citation
“…Large pages have been proposed to reduce the costs of number of page faults to be handled [16,20,24,25] and sometimes to increase the reach of the TLBs [28]. Large pages are beneficial when addresses are allocated over contiguous ranges, but many new applications allocate small objects [12], and have required additional support for efficiencies [26]. Our approach here works across different workloads and moves much of the memory management overhead away from inline processes.…”
Section: Paging Optimizationmentioning
confidence: 99%
“…Bloating occurs when the larger pages do not match the application's sparse allocation/deallocation pattern. As a result, many large pages end up with unused holes [32], [38], but still need to be fully allocated in physical memory, thereby wasting physical memory. Variability occurs when a large enough region of contiguous and aligned physical memory region cannot be immediately found and the operating system must compact and relocate pages to create it [32], [36].…”
Section: B Background: Traditional Page Table Trees and Large Data Pa...mentioning
confidence: 99%