Closed jmert closed 4 years ago
Merging #12 into master will decrease coverage by
1.43%
. The diff coverage is97.87%
.
@@ Coverage Diff @@
## master #12 +/- ##
==========================================
- Coverage 96.91% 95.47% -1.44%
==========================================
Files 9 9
Lines 259 243 -16
==========================================
- Hits 251 232 -19
- Misses 8 11 +3
Impacted Files | Coverage Δ | |
---|---|---|
src/calculation.jl | 95.65% <97.87%> (-0.54%) |
:arrow_down: |
src/scalar.jl | 83.33% <0.00%> (-16.67%) |
:arrow_down: |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 9d910fc...944c0d9. Read the comment docs.
The drop in coverage seems to be due to Julia's coverage tracking. If I run the coverage locally with julia --inline=no
, everything is still tested.
This originally started as a couple of simple changes to realign the code with the mathematical documentation, but as I explored the typed/LLVM IR, I found various ways to improve it for higher performance.
The major improvements are:
m
s so that the loop overl
isn't written out twice. This vastly decreases the generated code length.Using the new benchmark script from (#11), the comparison to master gives:
Every case improves in performance (except the scalar-input to scalar-output case) by roughly 2–4×.