-
Notifications
You must be signed in to change notification settings - Fork 326
Closed
Labels
Description
Without (after removal of pragmas)
INLINE pragmas in FromJSON.hs
and ToJSON.hs
Second line ais nother clean build with aeson, criterion, statistics and aeson-benchmarks:
It seems that INLINE pragmas slowdown the downstream package compilation as well?
stack build aeson 69.23s user 2.65s system 99% cpu 1:12.35 total
stack build 313.90s user 12.86s system 100% cpu 5:26.45 total
benchmarking generic/direct/twitter100
time 405.4 μs (402.9 μs .. 407.9 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 405.0 μs (402.6 μs .. 407.8 μs)
std dev 8.039 μs (6.568 μs .. 10.82 μs)
variance introduced by outliers: 12% (moderately inflated)
benchmarking manual/direct/twitter100
time 387.0 μs (383.2 μs .. 391.5 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 385.2 μs (383.0 μs .. 387.6 μs)
std dev 8.185 μs (7.162 μs .. 9.457 μs)
variance introduced by outliers: 14% (moderately inflated)
benchmarking th/direct/twitter100
time 406.7 μs (402.7 μs .. 409.9 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 404.4 μs (401.7 μs .. 407.7 μs)
std dev 9.895 μs (8.084 μs .. 12.91 μs)
variance introduced by outliers: 16% (moderately inflated)
With:
stack build aeson 179.39s user 4.51s system 97% cpu 3:09.30 total
stack build 567.26s user 16.09s system 100% cpu 9:41.51 total
benchmarking generic/direct/twitter100
time 399.7 μs (395.2 μs .. 405.4 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 400.3 μs (397.5 μs .. 403.5 μs)
std dev 9.911 μs (7.580 μs .. 12.47 μs)
variance introduced by outliers: 17% (moderately inflated)
benchmarking manual/direct/twitter100
time 385.4 μs (383.1 μs .. 387.9 μs)
1.000 R² (0.999 R² .. 1.000 R²)
mean 386.9 μs (384.4 μs .. 390.0 μs)
std dev 9.782 μs (7.519 μs .. 15.14 μs)
variance introduced by outliers: 18% (moderately inflated)
benchmarking th/direct/twitter100
time 404.5 μs (400.5 μs .. 407.8 μs)
0.999 R² (0.999 R² .. 1.000 R²)
mean 402.1 μs (399.1 μs .. 406.3 μs)
std dev 12.35 μs (9.032 μs .. 18.06 μs)
variance introduced by outliers: 24% (moderately inflated)