Closed adrhill closed 2 years ago
Merging #73 (8a259f2) into master (a41fdbc) will decrease coverage by
1.26%
. The diff coverage is100.00%
.
@@ Coverage Diff @@
## master #73 +/- ##
==========================================
- Coverage 98.49% 97.22% -1.27%
==========================================
Files 14 14
Lines 265 252 -13
==========================================
- Hits 261 245 -16
- Misses 4 7 +3
Impacted Files | Coverage Δ | |
---|---|---|
src/DitherPunk.jl | 100.00% <ø> (ø) |
|
src/compat.jl | 0.00% <ø> (-66.67%) |
:arrow_down: |
src/error_diffusion.jl | 100.00% <100.00%> (ø) |
|
src/utils.jl | 88.88% <100.00%> (-11.12%) |
: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 a41fdbc...8a259f2. Read the comment docs.
Benchmarks also look pretty great locally:
ID time ratio memory ratio
–––––––––––––––––––––––––––––––––––––––––– –––––––––––––––––––––––––– ––––––––––––
["error diffusion", "binary inplace"] 0.19 (5%) :whitecheckmark: 1.00 (1%)
["error diffusion", "binary new"] 0.17 (5%) :whitecheckmark: 1.00 (1%)
["error diffusion", "color inplace"] 0.91 (5%) :whitecheckmark: 1.00 (1%)
["error diffusion", "per-channel inplace"] 0.33 (5%) :whitecheckmark: 1.00 (1%)
["error diffusion", "per-channel new"] 0.33 (5%) :whitecheckmark: 1.00 (1%)
Second run:
ID time ratio memory ratio
–––––––––––––––––––––––––––––––––––––––––– –––––––––––––––––––––––––– ––––––––––––
["error diffusion", "binary inplace"] 0.24 (5%) :whitecheckmark: 1.00 (1%)
["error diffusion", "binary new"] 0.23 (5%) :whitecheckmark: 1.00 (1%)
["error diffusion", "per-channel inplace"] 0.32 (5%) :whitecheckmark: 1.00 (1%)
["error diffusion", "per-channel new"] 0.32 (5%) :whitecheckmark: 1.00 (1%)
@johnnychen94 Looks like the performance increase came from bounds checks being skipped due to the @boundscheck
annotation in the inner loop and the outer loop using @inbounds
. :/
Closes #49.