RFR (XS): 8157560: Reserve space for allocation prefetch only in builds that support allocation prefetching
zoltan.majo at oracle.com
Mon May 23 11:00:22 UTC 2016
please review the path for 8157560.
Problem: Every thread-local allocation buffer (TLAB) contains a reserved
area to accommodate allocation prefetches (i.e., to make sure that
instructions performing allocation prefetch do not cause faults). The
reserved area is at the end of the TLAB.
Currently, all the reserved area is created in all builds, even though
only the C2 compiler generates allocation prefetches. As a result, in
builds without C2, some heap space is wasted at the end of each TLAB.
Creating the reserved area also causes problems for internal testing of
the AllocatePrefetchLines/AllocateInstancePrefetchLines command-line flags.
Solution: Create the reserved area only in C2-enabled builds. Re-enable
testing of the AllocatePrefetchLines/AllocateInstancePrefetchLines flags.
- pre-PIT RBT in progress;
- internal tests -- all pass.
I plan to push the fix directly into hs as testing of
AllocatePrefetchLines/AllocateInstancePrefetchLines is disabled only in hs.
More information about the hotspot-compiler-dev