有没有人尝试过使用Excelsior JET将编译为本机的java应用程序与在普通java运行时即时运行的相同应用程序进行基准测试?我能找到的唯一基准测试是托管在Excelsior的网站上的,并且是针对单个应用程序的;我希望看到一些独立的结果。
我的应用程序的CPU和内存使用率都很高(它正在训练机器学习模型)。我不期望使用Jet会提高性能,但我可能需要在没有java运行时的环境中运行(因此需要编译为本机),我需要知道性能是否会差得多。
我知道Excelsior有一个评估。可用的,但我希望节省时间下载,配置,测试等…
发布于 2013-04-25 23:48:32
我用Excelsior JET做一个免费的游戏。在我的测试中,这款游戏的运行速度并不快或慢,但帧速率与Excelsior JET的一致性要比与Oracle的VM一致得多。我们游戏的初创阶段使用JET要好得多。JVM需要一段时间来预热和加载所有类,但是使用JET它可以立即运行。
如果你使用大量线程,Excelsior JET的内存消耗可能会更高-因为默认情况下,Excelsior JET使用较大的固定线程堆栈大小。但这是可以配置的-所以这不是问题。
通过电子邮件提供的支持也非常好。你可以与工程师交谈,而不是与支持人员交谈。如果你碰巧发现了一个bug,修复通常只需要一天的时间。我还想指出的是,我收到了一些奇怪的、不可重现的崩溃报告,这些报告来自使用JET早期版本(>2年左右)的用户。当前版本(7.6和现在的8.0)都是坚如磐石的。我们在一万台机器上没有看到任何崩溃。
简而言之:我可以推荐Excelsior JET,性能(在我们的例子中)与JVM一样好。
发布于 2016-10-20 01:42:45
我刚刚安装了Excelsior Jet1164位的评估版本,包括维护包3,看看我用Java编写的自定义国际象棋引擎是否获得了任何性能(elo-score +/- 2100)。不幸的是,它的速度几乎减半(每秒45万个节点,而不是英特尔Q9550上的1m )。我猜这是64位版本的Excelsior没有优化的结果。
我的国际象棋引擎使用位板(64位长)作为其棋盘表示,并执行许多按位操作。此外,它还执行大量的数组查找。
内存消耗大致相同。
https://stackoverflow.com/questions/11542909
复制相似问题