Right now, there are some trace log messages that indicate if a klass, method, or field have been archived or not on the AOT Cache.
Example of a rejected method:
[trace][aot,resolve] reverted method CP entry [ 44]: java/lang/annotation/ElementType [Ljava/lang/annotation/ElementType;.clone:()Ljava/lang/Object;
Example of a cached method:
[trace][aot,resolve] archived method CP entry [ 72]: java/lang/annotation/ElementType java/lang/annotation/ElementType.$values:()[Ljava/lang/annotation/ElementType; => java/lang/annotation/ElementType *** static
But those messages are not very clarifying on why that happens. Sometimes, they can even be misleading, as they are also printed even if the method was not resolved at all during training (which we used to filter before [1]).
Improve the log messages to give indications on why entries are rejected from the cache. This way, developers can work on improving their code base and get those methods included.
[1] https://github.com/openjdk/jdk/blob/9e843f56ec0e4126e8256dff44f47c56e5282d20/src/hotspot/share/oops/cpCache.cpp#L479
Example of a rejected method:
[trace][aot,resolve] reverted method CP entry [ 44]: java/lang/annotation/ElementType [Ljava/lang/annotation/ElementType;.clone:()Ljava/lang/Object;
Example of a cached method:
[trace][aot,resolve] archived method CP entry [ 72]: java/lang/annotation/ElementType java/lang/annotation/ElementType.$values:()[Ljava/lang/annotation/ElementType; => java/lang/annotation/ElementType *** static
But those messages are not very clarifying on why that happens. Sometimes, they can even be misleading, as they are also printed even if the method was not resolved at all during training (which we used to filter before [1]).
Improve the log messages to give indications on why entries are rejected from the cache. This way, developers can work on improving their code base and get those methods included.
[1] https://github.com/openjdk/jdk/blob/9e843f56ec0e4126e8256dff44f47c56e5282d20/src/hotspot/share/oops/cpCache.cpp#L479
- links to
-
Review(master)
openjdk/jdk/29690