Stack walking performance issue
coleen.phillimore at oracle.com
coleen.phillimore at oracle.com
Tue Mar 19 15:00:27 UTC 2019
Hi, Thanks for the diagnosis yesterday. With concurrent class unloading
in 13, you also need to trigger_cleanup at some GC point.
The triggering and/or cleanup of this table was put in
SystemDictionary::do_unloading() for convenience, but really belongs
somewhere after the weak references are cleared (maybe need a count of
references cleared and their own weak OopStorage), especially if the
stack walk API is used a lot.
thanks,
Coleen
On 3/18/19 5:53 PM, Aleksey Shipilev wrote:
> On 3/18/19 10:32 PM, Amir Hadadi wrote:
>> If anyone is willing to build an Open JDK with this fix I can give it a spin.
> I think you'd want to build the OpenJDK on your target system, that would avoid compatibility woes
> (for example, glibc and other library dependencies). Short example:
>
> $ hg clone http://hg.openjdk.java.net/jdk-updates/jdk11u zgc-jdk11u
> $ cd zgc-jdk11u
> $ ./configure # this might fail the first time, install dependencies, etc
> $ make images
> <should complete fine>
>
> Add call to ResolvedMethodTable::unlink() to ZHeap::mark_end. You'd probably need to include
> prims/resolvedMethodTable.hpp too.
>
> $ make images
> $ build/linux-x86_64-normal-server-release/images/jdk/bin/java
>
> -Aleksey
>
More information about the zgc-dev
mailing list