intel吧 关注:744,847贴子:2,996,357

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
            回复
              背后的真正原因有二:
              一、必须强调工艺仍然有用,且必须要“先进”工艺处于领先。
              二、继续强化IPC的重要性,目前IPC已推到神化的地位了!


              IP属地:四川来自Android客户端8楼2022-08-31 12:33
              收起回复
                首先明确一点,各微架构的优化旗标肯定是来自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
                  回复
                    自己不不优化,推icc,怪不得别人。intel高层是不怎么样,但工程师不是傻子,别人改代码还会看不出?


                    IP属地:河北来自Android客户端11楼2022-08-31 12:50
                    收起回复
                      可惜gcc的源码树让人根本没有想读的欲望,上个月刚编译过gcc13


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


                        IP属地:广东来自iPhone客户端13楼2022-08-31 13:24
                        回复
                          AMD作弊又不是一次两次,不用奇怪。


                          IP属地:广东14楼2022-08-31 13:28
                          收起回复
                            icx万岁什么gcc臭弟弟,狗都不用


                            IP属地:上海来自Android客户端16楼2022-08-31 16:02
                            回复
                              自己不优化,等于“劣化”,学到了


                              IP属地:上海来自Android客户端17楼2022-08-31 16:29
                              收起回复