我在 Spec cpu2006 基准测试中将 gcc 和 llvm-gcc 与 hmmer 和 mcf 上的 -O3 选项进行了比较。令人惊讶的是,我发现 gcc 在这两种情况下都击败了 llvm-gcc。是因为-O3有不同的含义吗?我应该如何建立实验以获得公平的比较?
顺便说一句,我通过仅更改 makefile 中的 cc 进行了实验。
谢谢,
博
您似乎对 gcc 在基准测试中击败 llvm 感到惊讶。Phoronix在这个领域举办了一系列有趣的基准测试。例如,看一下:
(很多可爱的颜色。)
据,直到...为止我应该如何建立实验以获得公平的比较?继续,想必您应该比较最快的运行时间、最快的编译时间、最低的内存占用、每瓦最多的操作以及 CPU 数量的可扩展性(您付钱并选择),以获得每个编译器的最快配置与最快配置其他人的。
首先,您至少需要确定每个程序的可变性 - 对于平台上单个程序的每次运行,变量的可重复性如何。 (是的,可信的基准测试需要您的彻底。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)