我已经知道在Openj9中有一个“动态AOT”,其中Openjdk9有一个AOT编译器(jaotc)来将字节代码编译成共享库。
但是Openj9没有像jaotc这样的程序,它使用“共享类”来存储JITed代码,其他JVM将使用这些代码来加快它们的启动时间。
我有以下问题:
如果有任何建议,我们将不胜感激。谢谢!
发布于 2017-09-21 15:19:59
您是正确的,要在OpenJ9上启用AOT,必须启用-Xshareclasses选项。
使用选项-Xshareclasses:verboseAOT。您应该看到输出消息,如下所示:
Stored AOT code for ROMMethod 0x000000000FFAE2C8 in shared cache.在随后的运行中,您将看到如下消息:
Found AOT code for ROMMethod 0x000000001003C178 in shared cache. 如果希望在java程序的后续运行中持久化和重用AOTed代码,请使用-Xshareclasses:persistent运行(在启用-Xshareclasses时,“持久性”子选项在-Xshareclasses平台上是默认的)。使用此选项,将在磁盘上创建缓存,该缓存将在操作系统重新启动后继续存在。您还可以为您的共享类缓存(name=subparameter)提供一个名称,以区分不同应用程序的共享缓存。
请允许我指出以下文件:
我还将打开一个github问题,以检查是否有更多关于AOT的文档可用或可以创建。
https://stackoverflow.com/questions/46343352
复制相似问题