Skip to content

Commit

Permalink
add performance regression README.md and performance.csv
Browse files Browse the repository at this point in the history
  • Loading branch information
eobermuhlner committed Oct 7, 2019
1 parent 7d04fce commit 7c264a7
Show file tree
Hide file tree
Showing 11 changed files with 485 additions and 0 deletions.
35 changes: 35 additions & 0 deletions regression/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Performance Regression

The same performance measurements for the interesting mathematical functions
in `BigDecimalMath` can be executed with different releases of `big-math`.

This allows to compare the performance regression over all releases.

## Run with gradle

To run the performance measurements execute the following command (change version number as desired):
```console
./gradlew :regression.v1_0_0:run
```

The special version string `v_current` may be used to measure the performance of the current checkout.
```console
./gradlew :regression.v_current:run
```


## Measured performance

The committed `performance.csv` files in each regression project where created
by running on a PC with the following specs:

```
Caption DeviceID MaxClockSpeed Name NumberOfCores Status
Intel64 Family 6 Model 78 Stepping 3 CPU0 2592 Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz 2 OK
```

Note: the CPU specs where printed with the following command:

```console
wmic cpu get caption, deviceid, name, numberofcores, maxclockspeed, status
```
45 changes: 45 additions & 0 deletions regression/v1_0_0/performance.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
Name , Average [ns], Median [ns], Min [ns], Max [ns]
log(0.1) , 2851, 2729, 2560, 6493
log(0.2) , 2968, 2847, 2681, 4659
log(0.3) , 2839, 2725, 2560, 4427
log(0.4) , 2901, 2794, 2633, 4662
log(0.5) , 14, 13, 13, 96
log(0.6) , 2905, 2795, 2633, 4445
log(0.7) , 3066, 2944, 2767, 5182
log(0.8) , 2925, 2826, 2670, 4416
log(0.9) , 2828, 2719, 2552, 4786
log(1) , 0, 0, 0, 0
log(2) , 123, 107, 106, 1069
log(10) , 8, 8, 8, 66
log(100) , 18, 15, 12, 643
log2(2) , 141, 127, 125, 775
log10(2) , 138, 123, 122, 1207
exp(2) , 1202, 1155, 1082, 2231
sqrt(2) , 42, 43, 27, 185
sqrt(9) , 284, 264, 253, 1406
pow(2;3) , 0, 0, 0, 13
pow(2;0.1) , 1302, 1244, 1161, 2375
root(2;3) , 255, 248, 204, 1015
sin(2) , 948, 899, 837, 3591
sin(100) , 2053, 1969, 1847, 3441
cos(2) , 1071, 1020, 956, 2598
cos(100) , 2181, 2098, 1989, 3294
tan(2) , 2132, 2019, 1888, 3719
cot(2) , 2123, 2023, 1921, 4129
asin(0.1) , 2532, 2428, 2298, 4195
asin(0.8) , 45946, 45745, 43876, 76187
acos(0.1) , 2730, 2625, 2475, 4447
atan(0.1) , 3972, 3847, 3632, 6191
acot(0.1) , 4197, 3972, 3731, 8120
sinh(2) , 893, 857, 796, 2099
cosh(2) , 1008, 950, 884, 2411
tanh(2) , 2123, 2039, 1929, 3467
asinh(0.1) , 3027, 2922, 2750, 4714
acosh(2) , 3011, 2903, 2736, 4462
atanh(0.1) , 3114, 2995, 2822, 5238
acoth(2) , 232, 211, 209, 1043
coth(2) , , , ,
BigFloat.add , 0, 0, 0, 294
BigFloat.subtract , 0, 0, 0, 33
BigFloat.multiply , 0, 0, 0, 33
BigFloat.divide , 1, 1, 1, 68
45 changes: 45 additions & 0 deletions regression/v1_1_0/performance.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
Name , Average [ns], Median [ns], Min [ns], Max [ns]
log(0.1) , 2819, 2737, 2572, 8583
log(0.2) , 2993, 2866, 2690, 4783
log(0.3) , 2863, 2730, 2579, 19415
log(0.4) , 2943, 2827, 2643, 4576
log(0.5) , 16, 13, 13, 510
log(0.6) , 2911, 2812, 2648, 4882
log(0.7) , 4849, 3888, 2781, 91475
log(0.8) , 3090, 2925, 2678, 8845
log(0.9) , 3552, 2979, 2569, 68554
log(1) , 0, 0, 0, 1
log(2) , 129, 118, 107, 781
log(10) , 9, 8, 8, 50
log(100) , 17, 19, 12, 278
log2(2) , 211, 150, 125, 23191
log10(2) , 167, 150, 126, 3455
exp(2) , 1962, 1344, 1122, 50953
sqrt(2) , 48, 44, 27, 800
sqrt(9) , 345, 284, 254, 7552
pow(2;3) , 0, 0, 0, 2
pow(2;0.1) , 1379, 1273, 1160, 2952
root(2;3) , 243, 217, 197, 1102
sin(2) , 1035, 909, 833, 20022
sin(100) , 3653, 2859, 1816, 55301
cos(2) , 1303, 1125, 955, 11453
cos(100) , 2763, 2198, 1983, 24744
tan(2) , 2125, 2012, 1886, 3935
cot(2) , 2139, 2014, 1870, 4120
asin(0.1) , 2511, 2425, 2300, 3832
asin(0.8) , 45871, 45289, 43606, 74509
acos(0.1) , 2699, 2615, 2475, 4112
atan(0.1) , 4028, 3839, 3588, 37858
acot(0.1) , 4044, 3927, 3727, 5914
sinh(2) , 883, 854, 792, 2081
cosh(2) , 983, 944, 879, 2063
tanh(2) , 2095, 2021, 1895, 3753
asinh(0.1) , 3003, 2906, 2744, 5408
acosh(2) , 3003, 2889, 2725, 4683
atanh(0.1) , 3085, 2982, 2814, 4796
acoth(2) , 229, 211, 209, 996
coth(2) , 2124, 2035, 1921, 3434
BigFloat.add , 0, 0, 0, 6
BigFloat.subtract , 0, 0, 0, 185
BigFloat.multiply , 0, 0, 0, 18
BigFloat.divide , 1, 1, 0, 83
45 changes: 45 additions & 0 deletions regression/v1_2_0/performance.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
Name , Average [ns], Median [ns], Min [ns], Max [ns]
log(0.1) , 2880, 2752, 2586, 26853
log(0.2) , 2972, 2878, 2705, 4742
log(0.3) , 2864, 2762, 2588, 4877
log(0.4) , 2934, 2820, 2657, 4561
log(0.5) , 9, 10, 6, 68
log(0.6) , 2924, 2821, 2668, 4326
log(0.7) , 3089, 2985, 2810, 4799
log(0.8) , 2954, 2868, 2708, 4307
log(0.9) , 2834, 2747, 2589, 4466
log(1) , 0, 0, 0, 0
log(2) , 112, 100, 99, 1139
log(10) , 2, 2, 2, 19
log(100) , 8, 8, 5, 69
log2(2) , 235, 223, 203, 830
log10(2) , 118, 107, 107, 956
exp(2) , 1265, 1209, 1127, 2497
sqrt(2) , 24, 21, 21, 641
sqrt(9) , 1, 1, 0, 54
pow(2;3) , 0, 0, 0, 33
pow(2;0.1) , 1298, 1246, 1161, 4550
root(2;3) , 244, 211, 199, 4012
sin(2) , 944, 905, 842, 2009
sin(100) , 2051, 1983, 1848, 3276
cos(2) , 1072, 1032, 969, 2205
cos(100) , 2248, 2114, 2000, 15977
tan(2) , 2139, 2049, 1929, 3889
cot(2) , 2107, 2041, 1918, 3422
asin(0.1) , 2526, 2443, 2311, 3926
asin(0.8) , 45338, 45136, 43325, 55270
acos(0.1) , 2700, 2615, 2467, 4296
atan(0.1) , 3962, 3836, 3614, 6323
acot(0.1) , 4054, 3923, 3668, 6482
sinh(2) , 894, 856, 795, 1993
cosh(2) , 985, 948, 882, 1948
tanh(2) , 2110, 2035, 1913, 3330
asinh(0.1) , 2994, 2891, 2729, 4815
acosh(2) , 2969, 2867, 2700, 4459
atanh(0.1) , 3076, 2980, 2803, 4529
acoth(2) , 231, 212, 203, 1025
coth(2) , 2111, 2033, 1912, 3543
BigFloat.add , 0, 0, 0, 24
BigFloat.subtract , 0, 0, 0, 1
BigFloat.multiply , 0, 0, 0, 19
BigFloat.divide , 1, 1, 0, 192
45 changes: 45 additions & 0 deletions regression/v1_2_1/performance.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
Name , Average [ns], Median [ns], Min [ns], Max [ns]
log(0.1) , 2844, 2731, 2558, 16554
log(0.2) , 2970, 2874, 2695, 4520
log(0.3) , 2862, 2745, 2576, 4680
log(0.4) , 2905, 2817, 2651, 4333
log(0.5) , 11, 10, 9, 101
log(0.6) , 2909, 2824, 2654, 4329
log(0.7) , 3067, 2970, 2797, 4560
log(0.8) , 2955, 2865, 2690, 4404
log(0.9) , 2825, 2738, 2589, 4260
log(1) , 0, 0, 0, 0
log(2) , 106, 98, 98, 738
log(10) , 2, 2, 2, 85
log(100) , 8, 8, 4, 86
log2(2) , 224, 210, 200, 894
log10(2) , 117, 108, 105, 731
exp(2) , 1267, 1206, 1119, 2249
sqrt(2) , 34, 34, 21, 739
sqrt(9) , 0, 0, 0, 260
pow(2;3) , 0, 0, 0, 4
pow(2;0.1) , 1299, 1245, 1155, 2373
root(2;3) , 235, 210, 202, 1031
sin(2) , 940, 902, 839, 2164
sin(100) , 2057, 1984, 1843, 3347
cos(2) , 1074, 1031, 959, 2237
cos(100) , 3307, 2220, 1999, 53957
tan(2) , 2181, 2044, 1929, 8582
cot(2) , 2129, 2043, 1931, 3478
asin(0.1) , 2527, 2446, 2305, 3982
asin(0.8) , 50451, 45893, 43235, 122759
acos(0.1) , 2851, 2654, 2470, 46583
atan(0.1) , 4284, 3941, 3593, 35323
acot(0.1) , 4306, 4004, 3689, 26212
sinh(2) , 963, 870, 794, 25386
cosh(2) , 997, 951, 881, 2201
tanh(2) , 2207, 2054, 1924, 29004
asinh(0.1) , 3289, 3033, 2732, 16406
acosh(2) , 3177, 2953, 2726, 22098
atanh(0.1) , 3231, 3034, 2831, 36768
acoth(2) , 236, 219, 203, 1159
coth(2) , 2364, 2085, 1934, 28647
BigFloat.add , 0, 1, 0, 42
BigFloat.subtract , 0, 0, 0, 39
BigFloat.multiply , 0, 0, 0, 34
BigFloat.divide , 0, 1, 0, 6
Loading

0 comments on commit 7c264a7

Please sign in to comment.