[llvm] [MCP] Move dependencies if they block copy propagation (PR #105562)
Gábor Spaits via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 26 12:15:02 PDT 2024
spaits wrote:
Here are the updated results. I used this cmake command now:
```bash
cmake -DCMAKE_C_COMPILER=/home/spaits/repo/spare-llvm/llvm-project/build/bin/clang -DCMAKE_CXX_FLAGS='-lstdc++ -lrt -lm -lpthread' -DTEST_SUITE_SUBDIRS=CTMark .. -GNinja
```
My clang was compiled in release mode.
This time I have run the benchmarks four times for the baseline and four times for my changes and merged them with compare.py.
Here are the results. Now the baseline is on the left.
Compile time:
```
Metric: compile_time
/home/spaits/repo/llvm-test-suite/build/../utils/compare.py:206: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`
name0 = names[0]
Program compile_time
lhs rhs diff
kimwitu++/kc 36.90 41.08 11.3%
mafft/pairlocalalign 22.59 24.13 6.8%
consumer-typeset/consumer-typeset 27.19 28.21 3.8%
tramp3d-v4/tramp3d-v4 35.39 35.97 1.6%
Bullet/bullet 84.59 85.60 1.2%
lencod/lencod 43.72 43.72 0.0%
7zip/7zip-benchmark 178.00 175.89 -1.2%
ClamAV/clamscan 45.49 44.81 -1.5%
sqlite3/sqlite3 14.66 14.25 -2.8%
SPASS/SPASS 40.12 38.79 -3.3%
Geomean difference 1.5%
compile_time
l/r lhs rhs diff
count 10.000000 10.00000 10.000000
mean 52.864370 53.24520 0.015967
std 47.796605 47.02377 0.045956
min 14.659300 14.25310 -0.033186
25% 29.238775 30.15100 -0.014311
50% 38.510750 39.93680 0.006018
75% 45.049625 44.53395 0.032314
max 177.996800 175.89140 0.113380
```
Execution time:
```
Metric: exec_time
/home/spaits/repo/llvm-test-suite/build/../utils/compare.py:206: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`
name0 = names[0]
Program exec_time
lhs rhs diff
kimwitu++/kc 0.00 0.01 163.3%
tramp3d-v4/tramp3d-v4 0.06 0.06 5.3%
lencod/lencod 1.74 1.82 4.6%
SPASS/SPASS 3.39 3.48 2.7%
Bullet/bullet 1.56 1.59 2.1%
7zip/7zip-benchmark 4.71 4.77 1.4%
ClamAV/clamscan 0.05 0.05 1.2%
mafft/pairlocalalign 8.40 8.33 -0.8%
sqlite3/sqlite3 1.00 0.99 -1.2%
consumer-typeset/consumer-typeset 0.05 0.05 -2.1%
Geomean difference 11.6%
exec_time
l/r lhs rhs diff
count 10.000000 10.000000 10.000000
mean 2.094720 2.114030 0.176381
std 2.722439 2.714371 0.512490
min 0.003000 0.007900 -0.021413
25% 0.053225 0.054475 -0.003368
50% 1.279450 1.289500 0.017292
75% 2.975650 3.064350 0.041438
max 8.396700 8.326000 1.633333
```
Text section size:
```
Metric: size..text
/home/spaits/repo/llvm-test-suite/build/../utils/compare.py:206: FutureWarning: Series.__getitem__ treating keys as positions is deprecated. In a future version, integer keys will always be treated as labels (consistent with DataFrame behavior). To access a value by position, use `ser.iloc[pos]`
name0 = names[0]
Program size..text
lhs rhs diff
mafft/pairlocalalign 452119.00 452103.00 -0.0%
kimwitu++/kc 403971.00 403955.00 -0.0%
lencod/lencod 763725.00 763693.00 -0.0%
tramp3d-v4/tramp3d-v4 884131.00 884083.00 -0.0%
Bullet/bullet 726622.00 726558.00 -0.0%
consumer-typeset/consumer-typeset 442577.00 442529.00 -0.0%
7zip/7zip-benchmark 907121.00 906913.00 -0.0%
ClamAV/clamscan 540338.00 540178.00 -0.0%
sqlite3/sqlite3 490639.00 490447.00 -0.0%
SPASS/SPASS 505890.00 505586.00 -0.1%
Geomean difference -0.0%
size..text
l/r lhs rhs diff
count 10.000000 10.000000 10.000000
mean 611713.300000 611604.500000 -0.000189
std 190314.056507 190310.634149 0.000190
min 403971.000000 403955.000000 -0.000601
25% 461749.000000 461689.000000 -0.000279
50% 523114.000000 522882.000000 -0.000098
75% 754449.250000 754409.250000 -0.000045
max 907121.000000 906913.000000 -0.000035
```
https://github.com/llvm/llvm-project/pull/105562
More information about the llvm-commits
mailing list