https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110015

            Bug ID: 110015
           Summary: openjpeg is slower when built with gcc13 compared to
                    clang16
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hubicka at gcc dot gnu.org
  Target Milestone: ---

I tried to reproduce openjpeg benchmarks from Phoronix
https://www.phoronix.com/review/gcc13-clang16-raptorlake/5

On zen3 hardware I get 42607ms for clang build and 45702ms for gcc build that
is a 7% difference (Phoronix reports 10% on RaptorLake)

perf of clang build:
  88.64%  opj_t1_cblk_encode_processor
   6.68%  opj_dwt_encode_and_deinterleave_v
   1.30%  opj_dwt_encode_and_deinterleave_h_one_row

opj_t1_cblk_encode_processor is huge with no obvious hot spots.

perf of gcc build:

  70.36% opj_t1_cblk_encode_processor                                           
  16.12% opj_t1_enc_refpass.lto_priv.0                                          
   3.88% opj_dwt_encode_and_deinterleave_v                                      
   2.46% pj_dwt_fetch_cols_vertical_pass                                        
   2.35% opj_mqc_byteout                                                        

So we apparently inline less even at -O3

Reply via email to