JuliaImages / ImageFiltering.jl

Julia implementations of multidimensional array convolution and nonlinear stencil operations
Other
99 stars 51 forks source link

Use SnoopPrecompile for precompilation #255

Closed timholy closed 1 year ago

timholy commented 1 year ago

This updates us to the latest options in precompilation. On my machine, the initial invocation of

img = rand(Float32, 100, 100)
@time @eval imfilter(img, KernelFactors.gaussian((1.5f0, 1.5f0)));

drops (on Julia nightly) from 0.78s to 0.007s, a 100x improvement.

closes https://github.com/JuliaImages/ImageQualityIndexes.jl/issues/53

codecov[bot] commented 1 year ago

Codecov Report

Base: 78.62% // Head: 89.74% // Increases project coverage by +11.12% :tada:

Coverage data is based on head (811262c) compared to base (826df52). Patch coverage: 13.33% of modified lines in pull request are covered.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #255 +/- ## =========================================== + Coverage 78.62% 89.74% +11.12% =========================================== Files 12 13 +1 Lines 1062 1697 +635 =========================================== + Hits 835 1523 +688 + Misses 227 174 -53 ``` | [Impacted Files](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages) | Coverage Δ | | |---|---|---| | [src/kernelfactors.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL2tlcm5lbGZhY3RvcnMuamw=) | `89.26% <0.00%> (+13.81%)` | :arrow_up: | | [src/precompile.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL3ByZWNvbXBpbGUuamw=) | `0.00% <0.00%> (ø)` | | | [src/borderarray.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL2JvcmRlcmFycmF5Lmps) | `90.32% <25.00%> (+10.66%)` | :arrow_up: | | [src/ImageFiltering.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL0ltYWdlRmlsdGVyaW5nLmps) | `63.15% <50.00%> (-1.13%)` | :arrow_down: | | [src/imfilter.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL2ltZmlsdGVyLmps) | `91.38% <100.00%> (+9.21%)` | :arrow_up: | | [src/kernel.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL2tlcm5lbC5qbA==) | `94.24% <0.00%> (-3.51%)` | :arrow_down: | | [src/models.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL21vZGVscy5qbA==) | `100.00% <0.00%> (ø)` | | | [src/extrema.jl](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages#diff-c3JjL2V4dHJlbWEuamw=) | `100.00% <0.00%> (+5.55%)` | :arrow_up: | | ... and [8 more](https://codecov.io/gh/JuliaImages/ImageFiltering.jl/pull/255/diff?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages) | | Help us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=JuliaImages)

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.