xref: /aosp_15_r20/external/eigen/bench/README.txt (revision bf2c37156dfe67e5dfebd6d394bad8b2ab5804d4)
1*bf2c3715SXin Li
2*bf2c3715SXin LiThis folder contains a couple of benchmark utities and Eigen benchmarks.
3*bf2c3715SXin Li
4*bf2c3715SXin Li****************************
5*bf2c3715SXin Li* bench_multi_compilers.sh *
6*bf2c3715SXin Li****************************
7*bf2c3715SXin Li
8*bf2c3715SXin LiThis script allows to run a benchmark on a set of different compilers/compiler options.
9*bf2c3715SXin LiIt takes two arguments:
10*bf2c3715SXin Li - a file defining the list of the compilers with their options
11*bf2c3715SXin Li - the .cpp file of the benchmark
12*bf2c3715SXin Li
13*bf2c3715SXin LiExamples:
14*bf2c3715SXin Li
15*bf2c3715SXin Li$ ./bench_multi_compilers.sh basicbench.cxxlist basicbenchmark.cpp
16*bf2c3715SXin Li
17*bf2c3715SXin Li    g++-4.1 -O3 -DNDEBUG -finline-limit=10000
18*bf2c3715SXin Li    3d-3x3   /   4d-4x4   /   Xd-4x4   /   Xd-20x20   /
19*bf2c3715SXin Li    0.271102   0.131416   0.422322   0.198633
20*bf2c3715SXin Li    0.201658   0.102436   0.397566   0.207282
21*bf2c3715SXin Li
22*bf2c3715SXin Li    g++-4.2 -O3 -DNDEBUG -finline-limit=10000
23*bf2c3715SXin Li    3d-3x3   /   4d-4x4   /   Xd-4x4   /   Xd-20x20   /
24*bf2c3715SXin Li    0.107805   0.0890579   0.30265   0.161843
25*bf2c3715SXin Li    0.127157   0.0712581   0.278341   0.191029
26*bf2c3715SXin Li
27*bf2c3715SXin Li    g++-4.3 -O3 -DNDEBUG -finline-limit=10000
28*bf2c3715SXin Li    3d-3x3   /   4d-4x4   /   Xd-4x4   /   Xd-20x20   /
29*bf2c3715SXin Li    0.134318   0.105291   0.3704   0.180966
30*bf2c3715SXin Li    0.137703   0.0732472   0.31225   0.202204
31*bf2c3715SXin Li
32*bf2c3715SXin Li    icpc -fast -DNDEBUG -fno-exceptions -no-inline-max-size
33*bf2c3715SXin Li    3d-3x3   /   4d-4x4   /   Xd-4x4   /   Xd-20x20   /
34*bf2c3715SXin Li    0.226145   0.0941319   0.371873   0.159433
35*bf2c3715SXin Li    0.109302   0.0837538   0.328102   0.173891
36*bf2c3715SXin Li
37*bf2c3715SXin Li
38*bf2c3715SXin Li$ ./bench_multi_compilers.sh ompbench.cxxlist ompbenchmark.cpp
39*bf2c3715SXin Li
40*bf2c3715SXin Li    g++-4.2 -O3 -DNDEBUG -finline-limit=10000 -fopenmp
41*bf2c3715SXin Li    double, fixed-size 4x4: 0.00165105s  0.0778739s
42*bf2c3715SXin Li    double, 32x32: 0.0654769s 0.075289s  => x0.869674 (2)
43*bf2c3715SXin Li    double, 128x128: 0.054148s 0.0419669s  => x1.29025 (2)
44*bf2c3715SXin Li    double, 512x512: 0.913799s 0.428533s  => x2.13239 (2)
45*bf2c3715SXin Li    double, 1024x1024: 14.5972s 9.3542s  => x1.5605 (2)
46*bf2c3715SXin Li
47*bf2c3715SXin Li    icpc -fast -DNDEBUG -fno-exceptions -no-inline-max-size -openmp
48*bf2c3715SXin Li    double, fixed-size 4x4: 0.000589848s  0.019949s
49*bf2c3715SXin Li    double, 32x32: 0.0682781s 0.0449722s  => x1.51823 (2)
50*bf2c3715SXin Li    double, 128x128: 0.0547509s 0.0435519s  => x1.25714 (2)
51*bf2c3715SXin Li    double, 512x512: 0.829436s 0.424438s  => x1.9542 (2)
52*bf2c3715SXin Li    double, 1024x1024: 14.5243s 10.7735s  => x1.34815 (2)
53*bf2c3715SXin Li
54*bf2c3715SXin Li
55*bf2c3715SXin Li
56