在我的公司中,我们正在为不同版本的Debian构建程序。我们在ESXI上将Jenkins构建链与虚拟机一起使用。
程序与GCC一起编译。根据一些测试,我们发现Stretch / Buster上的编译时间比Wheezy / Jessie上的编译时间慢50%。
例如,一个简单的Hello World程序:
jessie
------
real 0m0.099s
user 0m0.076s
sys 0m0.012s
buster
------
real 0m0,201s
user 0m0,168s
sys 0m0,032s
对于小型程序而言,它并不重要,但对于大型项目而言,时差确实是可见的(即使使用-O3 falgs也是如此):
jessie
------
real 0m29.996s
user 0m26.636s
sys 0m1.688s
buster
------
real 0m59,051s
user 0m53,226s
sys 0m5,164s
我们最大的项目在Jessie上需要25分钟,而在Stretch上则需要45分钟。
请注意,这是在两个不同的虚拟机上但在同一物理机上完成的。 CPU型号为:Intel®Core™i7-4770 CPU @ 3.40GHz。
我认为原因之一可能是应用于内核的崩溃和幽灵补丁。但是我不知道是否一时启用了此补丁。
您是否知道这种性能差异的可能原因?我如何检查呢?以及如何解决它。
关于。