根据 Benchmark 测试结果,相同软硬件条件下,毕昇编译器 2.1.0 比 GCC 9.3.0 性能提升 24.3%,使用毕昇编译器可以进一步提升应用性能。
毕昇编译器当前最新版本为 2.1.0,于 2021 年 12 月 30 日发布。当前版本 2.1.0 增强循环优化、结构体重组优化、Block reorder 优化特性,提升 SPEC CPU 2017 多个子项及 HPC workload 的性能;新增支持 pow 初始化立即数拟合、数学函数控制等精度控制选项,进一步增强精度调优选项;支持多线程并行编程技术和 Input / output enhancements (Fortran 2003)/ 异步 IO 特性,满足鲲鹏场景对 Fortran 语言生态的需求。
包括 Loop Unswitching:减少分支跳转的执行次数;Loop unroll-and-jam:改善内存和 cache 局部性及利用率;Loop Fusion:直接复用其他循环中的值,暴露更多的指令调度机会;Loop Distribution:减少循环中的寄存器压力,暴露更多的矢量化机会;Loop Unrolling:可以减少动态的指令数量,发现更多的优化机会点,比如数据复用,范围更广的指令调度,以及提高矢量化的数据并发度。
毕昇编译器开发团队基于毕昇编译器 2.1.0 版本进行性能评测,SPEC CPU® 2017 测试报告显示毕昇编译器 2.1.0 综合得分达到了 399 分,GCC 9.3.0 综合得分为 321 分。在相同软硬件环境下,毕昇编译器的性能比 GCC 高 24.3%。
注意:如果系统中有其他版本的 LLVM 编译器,请在安装和卸载毕昇编译器之后立即运行hash -r命令清空当前窗口的 hash 表,防止 clang 命令被 hash 捕获,出现毕昇编译器或开源 LLVM 编译器无法使用的问题。
IT之家了解到,毕昇编译器使用方式和 LLVM 基本一致,新增优化选项及特性使用请参考毕昇编译器产品页(原文链接)的文档。
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。