Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果优化非常简单,没有去优化,JVM能否对JIT编译的代码执行自适应优化_Java_Optimization_Jvm - Fatal编程技术网

Java 如果优化非常简单,没有去优化,JVM能否对JIT编译的代码执行自适应优化

Java 如果优化非常简单,没有去优化,JVM能否对JIT编译的代码执行自适应优化,java,optimization,jvm,Java,Optimization,Jvm,我还在研制高性能的盗版雷管。我不知道JVM是否可以对JIT编译的代码执行自适应优化,如果优化非常简单,没有优化。我担心,由于采用了大量的方法和先进的全程序优化技术,去优化会导致很多滞后现象。如果在分层模式下运行,JVM会经历不同级别的优化,将客户机和服务器JIT结合起来。如果禁用分层并坚持使用服务器层,那么发生的deopt情况就会减少 然而,deopt编译可能有很多原因,比如第一次在动态调度调用站点看到新的子类时抛出异常。deopts发生的原因是JIT代码做出了一些假设,这些假设被违反了 为了完

我还在研制高性能的盗版雷管。我不知道JVM是否可以对JIT编译的代码执行自适应优化,如果优化非常简单,没有优化。我担心,由于采用了大量的方法和先进的全程序优化技术,去优化会导致很多滞后现象。

如果在分层模式下运行,JVM会经历不同级别的优化,将客户机和服务器JIT结合起来。如果禁用分层并坚持使用服务器层,那么发生的deopt情况就会减少

然而,deopt编译可能有很多原因,比如第一次在动态调度调用站点看到新的子类时抛出异常。deopts发生的原因是JIT代码做出了一些假设,这些假设被违反了

为了完全避免deopts,您需要执行代码,使其遵循您在运行时可能遇到的所有e路径,然后这些路径才会变热。实际上,这几乎是不可能的。您必须将您的对象通过管道并抛出所有可能看到的异常,以启动JIT

如果您想要高性能,最好尝试减少程序产生的垃圾量,因为这是最常见的延迟形式


大多数高性能Java服务器的工作方式是在启动时应用一组事务预热,以预热JIT并尽可能减少垃圾产生。

请清楚地说明您正在做什么以及您面临的问题。如果有代码,请显示代码,并使用一些证据日志等演示问题。。