-
Bug
-
Resolution: Fixed
-
P2
-
25
-
b14
In JDK-8345655 we refactored the memory reservation code to be more maintainable and easier to follow. When doing this one of the code paths changed to always pass in `os::vm_page_size()` where it previously had used a page size provided by the caller.
Even if the alignment for `ReservedSpace`s created this way show that they should be aligned to support large pages the page size member for the `ReservedSpace` does not convey that we want large pages for the space. In G1 when using `G1PageBaseVirtualSpace` we use the above mentioned page size as the alignment for the reservation. This leads to the reservations (made using the API) not being THP eligible.
This is only an issue when the system is configured with the THP mode of `madvise`. If the mode is `always`, we will get THP eligible reservations. So a fairly simple workaround for this issue (given you have access to configuring your system) is to configure the THP mode to always.
Even if the alignment for `ReservedSpace`s created this way show that they should be aligned to support large pages the page size member for the `ReservedSpace` does not convey that we want large pages for the space. In G1 when using `G1PageBaseVirtualSpace` we use the above mentioned page size as the alignment for the reservation. This leads to the reservations (made using the API) not being THP eligible.
This is only an issue when the system is configured with the THP mode of `madvise`. If the mode is `always`, we will get THP eligible reservations. So a fairly simple workaround for this issue (given you have access to configuring your system) is to configure the THP mode to always.
- caused by
-
JDK-8345655 Move reservation code out of ReservedSpace
-
- Resolved
-
- relates to
-
JDK-8366980 TestTransparentHugePagesHeap.java fails when run with -UseCompressedOops
-
- New
-
-
JDK-8366716 Move SmapsParser from runtime/os/TestTracePageSizes.java into testlib
-
- Open
-
-
JDK-8346005 Parallel: Incorrect page size calculation with UseLargePages
-
- Open
-
- links to
-
Commit(master) openjdk/jdk/a03302d4
-
Review(master) openjdk/jdk/27051
(1 links to)