<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body><div><div style="font-family: Calibri,sans-serif; font-size: 11pt;">It would be good if all names contain "GC" maybe even have a Common prefix. (and a Common thread group in Java land, but that is I guess a different Topic)<br><br>-- <br>http://bernd.eckenfels.net</div></div><div dir="ltr"><hr><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Von: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;"><a href="mailto:erik.helin@oracle.com">Erik Helin</a></span><br><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Gesendet: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;">05.03.2015 11:41</span><br><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">An: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;"><a href="mailto:bengt.rutisson@oracle.com">Bengt Rutisson</a></span><br><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Cc: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;"><a href="mailto:hotspot-gc-dev@openjdk.java.net">hotspot-gc-dev@openjdk.java.net</a></span><br><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Betreff: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;">Re: RFR: 8073545 - Use shorter and more descriptive names for GCworker threads</span><br><br></div>On 2015-03-04, Bengt Rutisson wrote:<br>> <br>> Hi David and everyone,<br>> <br>> I don't have strong opinions on this, but here's what I'd suggest:<br>> <br>> "CMSTask"<br>> "CMSMain"<br>> "G1ConcRefine#%d"<br>> "G1MarkTask"<br>> "G1ConcMark"<br>> "StringDedup"<br>> "ParGCTask"<br>> "GCParTask"<br>> <br><br>These names looks good to me.<br><br>Thanks,<br>Erik<br><br>> <br>> On 2015-03-04 15:11, David Lindholm wrote:<br>> >Hi Jesper,<br>> ><br>> >On 2015-03-04 14:52, Jesper Wilhelmsson wrote:<br>> >>Hi David,<br>> >><br>> >>Thanks for fixing this!<br>> >><br>> >>A couple of questions:<br>> >><br>> >>- set_name("G1 Concurrent Refinement Thread#%d", worker_id);<br>> >>+ set_name("G1 ConRefine#%d", worker_id);<br>> >><br>> >>Is there any refinement threads that are not concurrent? If not, could<br>> >>we just call this "G1 Refine#%d" to simplify it slightly and remove an<br>> >>implementation detail that doesn't need to be exposed? This would also<br>> >>leave room for three digit numbers in case we have lots of these threads<br>> >>on some systems.<br>> ><br>> >I discussed this with Bengt, and his input was that Concurrent Refinement<br>> >is a well known concept in G1. I have no real opinion here, I'm fine with<br>> >both suggestions.<br>> ><br>> >>- _parallel_workers = new FlexibleWorkGang("G1 Parallel Marking<br>> >>Threads",<br>> >>+ _parallel_workers = new FlexibleWorkGang("G1 Markers",<br>> >><br>> >>Markers is cute, but could be misunderstood. Can we call it "G1 Mark<br>> >>Threads" instead?<br>> ><br>> >No, it is too long, the three last character with thread number won't fit<br>> >(#xx).<br>> ><br>> >>- set_name("G1 Main Concurrent Mark GC Thread");<br>> >>+ set_name("G1 Main Marker");<br>> >><br>> >>Again, "Marker" could be misunderstood. I don't have a good replacement<br>> >>though.<br>> ><br>> >I'm open for suggestions, but I think "G1 Main Marker" works.<br>> ><br>> >>- set_name("GC task thread#%d (ParallelGC)", which);<br>> >>+ set_name("ParGC Thread#%d", which);<br>> >><br>> >>I don't have a good suggestion for how to make this one character<br>> >>shorter, but currently there is only room for two digit numbers. Maybe<br>> >>just "GC Thread#%d". I don't think these threads will exist at the same<br>> >>time as any other GC threads anyway.<br>> ><br>> >With your suggestion these threads would be called the same thing as the<br>> >threads in sharedHeap. I think it is nice to quickly be able to see that<br>> >these threads indeed belongs to the ParallelGC.<br>> ><br>> >>- set_name("Gang worker#%d (%s)", id, gang->name());<br>> >>+ set_name("%s#%d", gang->name(), id);<br>> >><br>> >>Is there any limitation on the length of the name()? If it's too long<br>> >>the number won't show. Can we add an assert to make sure it isn't too<br>> >>long?<br>> ><br>> >I have gone through our current GangWorkers, and they fit. If you want I<br>> >can add an assert for <= 12 characters. OTOH it is not the end of the<br>> >world if we don't see the whole number in the debugger.<br>> ><br>> ><br>> >Thanks,<br>> >David<br>> ><br>> >><br>> >>Thanks,<br>> >>/Jesper<br>> >><br>> >><br>> >>David Lindholm skrev den 4/3/15 13:48:<br>> >>>Hi,<br>> >>><br>> >>>Please review this small fix which changes the names of the GC threads<br>> >>>to be<br>> >>>shorter and more descriptive. There is a limit on 16 characters<br>> >>>including the<br>> >>>terminating null byte for this name, since pthread_set_name_np() is<br>> >>>used. This<br>> >>>change will make it easier to debug, as these names shows up in the<br>> >>>debugger.<br>> >>><br>> >>>Webrev: http://cr.openjdk.java.net/~brutisso/8073545/webrev.00/<br>> >>>Bug: https://bugs.openjdk.java.net/browse/JDK-8073545<br>> >>><br>> >>>Testing: Passed JPRT.<br>> >>><br>> >>><br>> >>>Regards,<br>> >>>David<br>> ><br>> <br></body></html>