SAD部屋 - Benchmarks/Himeno Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

!姫野ベンチ

!!Fortran UP(himenobmtxp.f90)
||!Processor        ||!Compiler              ||!XS ||!S ||!M ||!L ||!XL ||!Options ||
||Ryzen    7950X||GNU Fortran 12.2||18145.3770||20457.8926||19264.7109||18094.1094||17485.9512||-O3
||Ryzen    5950X||GNU Fortran 12.2||14827.0234||15945.7383||14431.9834||12887.9463||12090.9092||-O3
||Ryzen    3700X||GNU Fortran 12.2||12227.7285||11261.2461||11462.8809||11226.6641||10721.0010||-O3
||Ryzen TR 2950X||GNU Fortran 12.2||10971.0537||8558.20312||8850.04102||7841.91650||7293.68408||-O3
'''2022/10/05測定'''

!!C static alloc UP(himenobmtxp_static.c)
||!Processor        ||!Compiler              ||!XS ||!S ||!M ||!L ||!XL ||!Options ||
||Ryzen    7950X||clang 14.0.5||11086.209668||10680.318582||9444.810884||6725.461331||5457.461597||-O3 -mcmodel=medium

'''2023/02/04~dd測定'''

!!C dynamic alloc UP(himenobmtxp_alloc.c)
||!Processor        ||!Compiler              ||!XS ||!S ||!M ||!L ||!XL ||!Options ||
||Ryzen    7950X||clang 14.0.5||7848.503495||7900.648442||7565.199723||4296.576030||1749.298771||-O3 -mcmodel=medium
'''2023/02/04~測定'''

!!Fortran OpenMP(himenobmtxp_omp.f90)
||!Processor        ||!Compiler              ||!XS ||!S ||!M ||!L ||!XL ||!Options ||
'''2023/mm/dd測定'''

||Processor        ||Ways|| MHz||Architecture   ||Compiler                  ||XS       ||S        ||M        ||L        ||XL       ||Options
||Xeon X5550       ||  2 ||2667||AMD64-FreeBSD8 ||GNU Fortran 4.5.1 20100506||3874.3845||7833.4702||7518.5513||6616.7612||5510.0771||-O3
||Xeon X5482       ||  2 ||3200||i386-Darwin9   ||GNU Fortran 4.5.0 20100114||3460.2549||3869.0618||3075.3809||2776.5073||no memory||-O3
||Xeon E5462       ||  2 ||2800||i386-Darwin9   ||GNU Fortran 4.5.0 20100114||2821.7212||2857.2898||2437.5750||2208.3286||no memory||-O3
||Xeon  5160       ||  2 ||3000||i386-Darwin9   ||GNU Fortran 4.5.0 20100114||2164.6001||1748.8965||1538.7083||swaping  ||no memory||-O3
||PowerPC G5       ||  2 ||2500||PowerPC-Darwin8||GNU Fortran 4.5.0 20100114||616.30756||621.87097||632.66132||466.56357||no memory||-O3

!!雑感
* C dynamic allocがC staticに対して性能が出てないのは、添字計算マクロの効率もしくは配列次元が定数畳み込み出来ていないためか?
** 原理的には、配列次元の定数畳み込みを除けば同じところまでは行けるはず…
* CとFortranの比較で、性能が出ていないのは配列アクセスのコード生成効率か局所参照性の違いか?