RFR: 8255756: Disabling logging does unnecessary work

Ioi Lam iklam at openjdk.java.net
Thu Nov 5 00:17:55 UTC 2020


On Mon, 2 Nov 2020 12:43:42 GMT, Claes Redestad <redestad at openjdk.org> wrote:

> When disabling UL outputs - for example when shutting down the JVM - we are doing some unnecessary work:
> 
> - we always disable all outputs in bulk, but the routine searches up outputs one by one in the LogTagSet output lists - instead we could just drop all nodes in these lists in one quick pass.
> - when finalizing for a JVM shutdown, it's unnecessary to update decorators
> 
> While not technically startup this gets rid of some noise on JVM exit (~45k instructions) that show up when using full JVM executions as a proxy for startup testing (or when running many shortlived JVMs back-to-back).

Changes requested by iklam (Reviewer).

src/hotspot/share/logging/logOutputList.cpp line 72:

> 70: 
> 71: void LogOutputList::clear() {
> 72:   // Grab the linked list

I am not quite sure how the LogOutputList is synchronized. I think you will probably need to call `wait_until_no_readers()` here.

-------------

PR: https://git.openjdk.java.net/jdk/pull/1005


More information about the hotspot-runtime-dev mailing list