JDK-8078438 : Interpreter should support conditional card marks (UseCondCardMark) on x86 and aarch64
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 8,9
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2015-04-22
  • Updated: 2020-08-19
  • Resolved: 2015-06-19
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 9
9 b72Fixed
Related Reports
Blocks :  
Duplicate :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
JDK-8076987 enabled UseCondCardMark for C1; interpreter should also follow suit for the same reason:
"warm" interpreted code can inadvertently ruin the performance for C1/C2-compiled code.
Comments
noreg-other comments: when pushing this change I forgot to hg add the test originally enclosed. It will be added as part of JDK-8078438.
19-06-2015

Updated webrev: http://cr.openjdk.java.net/~shade/8078438/webrev.03/ Testing: * builds fine on Linux x86_64 * eyeballing generated code on x86_64, still the same: http://cr.openjdk.java.net/~shade/8078438/perf.txt * JPRT fastdebug on all platforms * hotspot jtreg with -XX:-UseCondCardMark on all platforms * hotspot jtreg with -XX:+UseCondCardMark on all platforms
06-05-2015

It does not seem a good idea to commit this before JDK-8079315 is fixed, as this widens the possibility for failure. Marked as blocker.
06-05-2015

See the extended discussion on hotspot-gc-dev: http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2015-April/013105.html It would seem this will require more work to make UseCondCardMark code correct.
01-05-2015

The interpreter code in question affects card marking, which is GC. The GC group is currently reviewing this change on the thread and has provided good comments. This isn't a runtime change.
29-04-2015

Coleen: It's not clear to me why this RFE was moved to the GC team. Are we expected to take some action here?
29-04-2015

I moved this to the gc category and reset it so GC bug triage sees it.
28-04-2015

Updated webrev (merged JDK-8078609, plus a sanity test): http://cr.openjdk.java.net/~shade/8078438/webrev.02/
24-04-2015

Performance assessment shows the intended improvements: http://cr.openjdk.java.net/~shade/8078438/perf.txt
23-04-2015

Updated webrev: http://cr.openjdk.java.net/~shade/8078438/webrev.01/
23-04-2015

Initial webrev: http://cr.openjdk.java.net/~shade/8078438/webrev.00/
22-04-2015