JDK-8253765 : C2: Control randomization in StressLCM and StressGCM
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 16
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-09-29
  • Updated: 2023-08-23
  • Resolved: 2020-10-12
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 16
16 b20Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
StressLCM and StressGCM use a global random number generator, which makes it difficult to repeat a certain execution (for example, for debugging purposes) in the face of concurrent method compilations. They could instead use the compilation-local random generator (Compile::random()) introduced in JDK-8252219 for StressIGVN, which introduces more variability (as it initializes the seed differently in each run) while making stress runs repeatable.

Note that this would affect the default behavior of StressLCM and StressGCM, as Compile::random() is initialized differently in each run by default (unless StressSeed is used).
Comments
Changeset: 05459df0 Author: Roberto CastaƱeda Lozano <roberto.castaneda.lozano@oracle.com> Committer: Tobias Hartmann <thartmann@openjdk.org> Date: 2020-10-12 11:40:50 +0000 URL: https://git.openjdk.java.net/jdk/commit/05459df0
12-10-2020