RFR (XS): 8157560: Reserve space for allocation prefetch only in builds that support allocation prefetching
zoltan.majo at oracle.com
Tue May 24 10:13:53 UTC 2016
thank you for the feedback!
On 05/24/2016 10:59 AM, Edward Nevill wrote:
> Hi Zoltán,
> On Mon, 2016-05-23 at 13:00 +0200, Zoltán Majó wrote:
>> 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.
> On certain architectures (eg aarch64) prefetch will not cause faults. On
> these allocating the extra space is redundant.
yes, that is true. As far as I'm aware, faulting instructions are
currently generated only on SPARC (with the combination
> Is it possible to have this predicated on a pd_ variable (eg
> AllocateExtraTLAB which can be true for those arches that require it and
> false for those that don't) rather than having it just conditionalised
> on COMPILER2.
I agree. Making the allocation of the reserved region dependent on a
more precise condition is certainly a good idea. But maybe we don't need
to introduce a new flag for that.
An appropriate condition would probably be:
if (Complevel_highest_tier == CompLevel_full_optimization &&
AllocatePrefetchStyle == 3 && AllocatePrefetchInstr == 1)
What do you (and others) think?
> All the best,
More information about the hotspot-compiler-dev