消除CI性能测试中的噪音:CodSpeed Macro Runners的突破

在持续集成环境中建立性能关卡,防止部署重大性能倒退,一直是许多软件团队的长期目标。然而,在托管的CI运行器中进行测量尤其具有挑战性,主要是因为虚拟化层中的噪声干扰。本文探讨了使用各种基准测试套件测量此噪声,结果表明GitHub Actions托管运行器的变异系数为2.66%,导致高达45%的误报率。为了解决这个问题,CodSpeed推出了Macro Runners,它在云中的裸机实例上运行,并具有额外的稳定性配置。结果显示,Macro Runners的平均方差为0.56%,误报率降低到0.04%。这使得能够使用更精细的性能关卡,从而在不给贡献者带来过多误报的情况下捕捉到更细微的性能倒退。
阅读更多