intel吧 关注:745,382贴子:3,008,930
  • 10回复贴,共1

SPEC2017再出波澜,gcc疑似根据微架构旗标劣化Golden Cove。

取消只看楼主收藏回复

一楼空


IP属地:海南1楼2022-08-31 11:32回复
    今天突发奇想,想试试微架构旗标对Golden Cove有什么影响,结果发现了惊天大秘密。首先今天的主角是gcc12.2.1,操作系统是Clear Linux
    测试条件,3.5GHz锁频
    内存DDR4 3600 C16 60ns
    ring自动
    编译选项为-g -O3 -lmimalloc,基础选项不变,-march选项的旗标改变,分别为针对所有支持AVX2的x86处理器的通用优化旗标-march=core-avx2,针对Skylake架构的优化旗标-march=skylake,针对本机处理器优化的旗标-march=native,以及针对AMD Zen3架构优化的旗标-march=znver3


    IP属地:海南2楼2022-08-31 11:37
    回复

      结果如图所示,针对Alder Lake架构的优化旗标取得了最低分。7.27
      针对Zen3架构的优化取得了最高得分,达到了7.4。而针对所有支持AVX2的处理器的通用优化旗标则是7.36。
      很明显,以通用优化为界,gcc针对skylake旗标和Alder Lake旗标做了负优化,针对Zen3做了正优化。要知道,Golden Cove和Zen3微架构上天壤之别。这很难不让人浮想联翩
      是intel自己的GCC工程师不行?
      还是AMD修改了gcc,使得其针对GDC出现负优化?
      其实很明显能看出,intel对开源编译器不再热衷,而是专心投入OneAPI。虽然7.4和7.27只差了接近2%,但是我反复很多次都是这个差距,说明这不是误差。


      IP属地:海南3楼2022-08-31 11:43
      回复
        1.8%的差距虽然小,但是很膈应人,为什么Golden Cove使用Zen3的优化能跑更高的分数?
        使用开源编译器跑SPEC究竟还有多少可信度?
        @nanriyuuka @古明地恋👀 @衣钵临世 @九方航空

        图中是结果文件。


        IP属地:海南4楼2022-08-31 11:49
        回复
          根据子项分析,最大的差距出现在525.x264。12.9 vs 11.4,差距达到13%,已经不能忽略了。


          IP属地:海南5楼2022-08-31 11:51
          回复
            小核心更新,Gracemont提升更明显一些,在Znver 3的加持下,3.4G的频率来到了5.88分,1.73/G,提升为2.1%。

            相比我之前的测试,小核提升最大还是在525,其他项目有增有减


            IP属地:海南6楼2022-08-31 12:24
            回复
              首先明确一点,各微架构的优化旗标肯定是来自vendor不错,而在同一个架构上,这些旗标出现不同的效果,能说明很多问题。
              -march=znver3跑分最高,可以很明显看出AMD在开源编译器上投入不小。针对自家架构的优化成熟,而且部分优化甚至能惠及到intel这边。当然自家的肯定是最惠及。
              native的跑分不仅低于znver3,还低于通用架构优化和skylake的旗标,只能说明,GDC在开源编译器上的优化,intel根本就没好好做。针对架构优化了还能比通用优化差,只能说优化了个寂寞。
              其实可以很明显看出来了,intel在编译优化上的资源是优先倾斜给OneAPI的,gcc,LLVM这些基本不管了。而AMD则尽力做好gcc的优化。直接体现出了都开native,AMD优势巨大。编译器能优化得更好。
              同指令集都这样了。跨指令集是什么样我已经不想多说了。希望intel推广OneAPI取得巨大成功吧。


              IP属地:海南9楼2022-08-31 12:41
              收起回复
                晚点小核也跑一下别的选项,skylake,core-avx2


                IP属地:海南10楼2022-08-31 12:43
                回复
                  可惜gcc的源码树让人根本没有想读的欲望,上个月刚编译过gcc13


                  IP属地:海南来自iPhone客户端12楼2022-08-31 13:23
                  回复
                    后面从源码里看看各家后端的一些优化实现


                    IP属地:海南来自iPhone客户端13楼2022-08-31 13:24
                    回复
                      结合雷丘的测试,要想提高SPEC 的成绩,还是直接用znver3优化旗标,提升比内存从3200 C22超到4000 C15要强。


                      IP属地:海南18楼2022-09-01 11:03
                      回复