Java在Windows和Linux上的编译性能差距

电脑配置:

联想Yoga14s ryzen 4800h处理器,16G内存
Windows10 21h1系统是主机,Linux是ubuntu20虚拟机(分配4核8线程2G内存)


Java版本

Windows和Linux都是Oracle jdk1.8.191

编译的项目

https://gitee.com/y_project/RuoYi-Vue
命令 mvn clean compile

编译结果:

多次编译误差很小很小(图左Linux,右Windows)

Maven编译结果图
可以看到,性能差距非常明显,粗略计算,win上的编译时间是Linux的2.5倍

用公司电脑再次测试
戴尔台式 i5-10500 win10
在这里插入图片描述
将近4.6秒
这个成绩出乎意料,貌似CPU种类不同也会影响编译性能,4800h和i5-10500在参数上单核性能是相差不大的(R20单核跑分472和467),L3缓存 i5 12M 4800h是8M(不知道是否有关)

在公司电脑上装了Debian虚拟机,速度是3.1秒左右,大概就比我在笔记本上的虚拟机快了0.1秒,还是比较符合cpu参数的。

结果显而易见,不知道是win10对AMD搞了负优化还是win版jdk对AMD搞了负优化。结合我对其他的编程语言,比如python和Golang的编译测试,也是Linux虚拟机更快,但是没Java这么离谱。我个人更倾向于是win10负优化太严重

另外我还尝试了公司的一个Java项目,win上编译时间是30秒,Linux上是10秒。

------20220821更新--------------
借来了一个m1 pro14测试性能
在这里插入图片描述
基本在2.7和2.8徘徊
在Java开发上,mac m1性能比现在的主流x86芯片性能其实快不了多少。如果你用的Linux,换个12代Intel或者Ryzen 5000系列 性能还会反超m1 m2。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值