JuliaImages / ImageReconstruction.jl

MIT License
8 stars 6 forks source link

Add threading for radon #15

Open roflmaostc opened 1 year ago

roflmaostc commented 1 year ago

Hi,

just a little improvement but worth it:

julia> x = randn((512,512));

julia> b = -256:255
-256:255

julia> a = range(0, π, 100);

# master
julia> @time radon(x, a, b);
  0.394537 seconds (2 allocations: 400.047 KiB)

julia> @time radon(x, a, b);
  0.393676 seconds (2 allocations: 400.047 KiB)

# this PR
julia> @time radon(x, a, b);
  0.126976 seconds (163.83 k allocations: 17.340 MiB, 59.36% compilation time)

julia> @time radon(x, a, b);
  0.053204 seconds (120 allocations: 8.993 MiB)

julia> Threads.nthreads()
12