加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala 2.10编译器在SBT中首次使用后需要长10倍

发布时间:2020-12-16 08:54:56 所属栏目:安全 来源:网络整理
导读:我正在将一些代码从2.9.1更新到2.10.0(我尝试使用相同结果的2.10.1),在两种情况下都使用SBT 0.12.1. 当我在命令行上运行sbt clean compile时,它们都会在大约250秒后完成. 但是,当我以交互方式运行sbt,并反复输入clean然后编译时,我的2.9编译变得更快,但我的2
我正在将一些代码从2.9.1更新到2.10.0(我尝试使用相同结果的2.10.1),在两种情况下都使用SBT 0.12.1.

当我在命令行上运行sbt clean compile时,它们都会在大约250秒后完成.

但是,当我以交互方式运行sbt,并反复输入clean然后编译时,我的2.9编译变得更快,但我的2.10编译速度慢了10倍.

如果我使用768m的堆大小,则在第3次编译时2.10内存不足.堆大小为4g,每次都可以编译,但在第一次迭代后总是慢10倍.

[success] Total time: 258 s,completed Mar 14,2013 10:44:34 AM
[success] Total time: 2048 s,2013 11:23:03 AM
[success] Total time: 2049 s,2013 11:58:42 AM
[success] Total time: 2047 s,2013 12:43:19 PM

我调试的最佳方法是找出发生了什么?

解决方法

谢谢你对 CodeCache link的反义词.我最初解雇了它,因为使用它建议的-XX:UseCodeCacheFlushing选项没有改进,但我只是尝试使用-XX:ReservedCodeCacheSize = 2g并且解决了这个问题.

有谁知道为什么-XX:UseCodeCacheFlushing没有帮助,或者所有代码缓存java选项的一些推荐值?

为了好玩,以下是使用-XX生成的编译时间:HeapDumpOnOutOfMemoryError -server -XX:ReservedCodeCacheSize = 2g -Xmx4g -Xss4M -XX:MaxPermSize = 512M -XX:DoEscapeAnalysis -XX:UseCompressedOops -XX:CMSClassUnloadingEnabled -XX:UseCodeCacheFlushing

2.10.1 (interactive,repeating clean/compile)
    194 s
    149 s
    95 s
    87 s
    84 s
2.9.1 (interactive,repeating clean/compile)
    187 s
    129 s
    83 s
    77 s
    74 s
2.10.1 (batch sbt clean compile)
    195 s
2.9.1 (batch sbt clean compile)
    177 s

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读