在 2023/11/19 上午2:25, Xi Ruoyao 写道:
On Fri, 2023-11-17 at 10:21 +0800, chenglulu wrote:
Pushed to r14-5545.

在 2023/11/16 下午4:44, Jiahao Xu 写道:
Based on SPEC2017 performance evaluation results, it's better to make them equal
to the cost of unaligned store/load so as to avoid odd alignment peeling.

gcc/ChangeLog:

        * config/loongarch/loongarch.cc
        (loongarch_builtin_vectorization_cost): Adjust.
/* snip */

+      case vector_load:
+      case vector_store:
         case unaligned_load:
         case unaligned_store:
        return 2;
It seems penalizing the vectorizing and causes:

FAIL: gcc.target/loongarch/vector/lasx/lasx-xvstelm.c  -mlasx  
scan-assembler-times xvstelm.w 8

Maybe we can make unaligned_load and unaligned_store cost 1 too instead
of increasing vector_load and vector_store?

If make the cost of unaligned_load and unaligned_store cost 1 too, it will result in a 1.5% overall performance decrease in SPEC CPU 2017 fprate on 3A6000. Therefore, I don't think it's a good idea. The lasx-xvstelm.c file tests whether the vec_extract operation and fst can be combined into xvstelm.I think it would be better to add a compilation option, such as "-fno-vect-cost-model," to make it unaffected by the cost model.

Reply via email to