Dynamic Large Pages
Dave Hansen
IBM Linux Technology Center
Dynamic Large Pages Dave Hansen IBM Linux Technology Center Why - - PowerPoint PPT Presentation
Dynamic Large Pages Dave Hansen IBM Linux Technology Center Why Large Pages? Fewer objects to manage Fit more objects in CPU caches Per-page operations become cheaper Per-page structures become smaller Any cache miss is
IBM Linux Technology Center
The Linux Foundation Confidential 2
The Linux Foundation Confidential 3
The Linux Foundation Confidential 4
The Linux Foundation Confidential 5
replacement
The Linux Foundation Confidential 7
* Gigantic Page size Base page size option
The Linux Foundation Confidential 8
The Linux Foundation Confidential 9
The Linux Foundation Confidential 10
The Linux Foundation Confidential 11
The Linux Foundation Confidential 12
The Linux Foundation Confidential 13
The Linux Foundation Confidential 14
The Linux Foundation Confidential 15
04/09/09 1 Click to add title
Dynamic Large Pages
Dave Hansen
IBM Linux Technology Center
04/09/09 2
The Linux Foundation Confidential 2 The Linux Foundation Confidential 2Why Large Pages?
“smaller”
expensive
It costs the same number of cpu cycles more or less to do a large page minor fault or a small page one. But, the benefits of a large page fault are much higher. smaller in terms of percentage. A fixed N-byte object becomes relatively much smaller when the M-byte page it represents gets larger 'expensive' in terms of performance. CPUs are bottlenecked on memory bandwidth and caches are continuing to increase in their importance.
04/09/09 3
The Linux Foundation Confidential 3 The Linux Foundation Confidential 3“Old” Workloads
There are classic workloads that have used large pages not necessarily the ones where they best fit
04/09/09 4
The Linux Foundation Confidential 4 The Linux Foundation Confidential 404/09/09 5
The Linux Foundation Confidential 5 The Linux Foundation Confidential 5replacement
COW usage used to give random app behavior. Now we can at least guarantee that parents will keep their huge pages and children have an
04/09/09 7
The Linux Foundation Confidential 7 The Linux Foundation Confidential 7* Gigantic Page size Base page size option
just an indicator of why we need hstates so badly
04/09/09 8
The Linux Foundation Confidential 8 The Linux Foundation Confidential 8allocation and other huge pages
just an indicator of why we need hstates so badly
04/09/09 9
The Linux Foundation Confidential 9 The Linux Foundation Confidential 9approach can possibly work
04/09/09 10
The Linux Foundation Confidential 10 The Linux Foundation Confidential 1004/09/09 11
The Linux Foundation Confidential 11 The Linux Foundation Confidential 11placement decisions
04/09/09 12
The Linux Foundation Confidential 12 The Linux Foundation Confidential 12Temporal locality – Tendency to re-reference memory – Sparse accesses imply low temporal locality – Use-once (e.g. STREAM) has low locality – Tree elimination solves have higher locality
– Tendency to reference nearby memory – Random access low locality – Cache blocking, higher spacial locality
04/09/09 13
The Linux Foundation Confidential 13 The Linux Foundation Confidential 13malloc()/shmget()
04/09/09 14
The Linux Foundation Confidential 14 The Linux Foundation Confidential 14reclamation
Hotplug
04/09/09 15
The Linux Foundation Confidential 15 The Linux Foundation Confidential 15