GalSim-developers / JAX-GalSim

JAX port of GalSim, for parallelized, GPU accelerated, and differentiable galaxy image simulations.
Other
25 stars 3 forks source link

perf: faster kval for Lanczos interpolated images via cached splines #101

Closed beckermr closed 2 months ago

beckermr commented 2 months ago

This PR implements faster kval computations for Lanczos kernels via a spline interpolant.

codspeed-hq[bot] commented 2 months ago

CodSpeed Performance Report

Merging #101 will degrade performances by 21.38%

Comparing faster-interp (be95a0a) with main (ec2153e)

Summary

⚡ 6 improvements ❌ 1 regressions ✅ 4 untouched benchmarks

:warning: Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

Benchmark main faster-interp Change
test_benchmarks_lanczos_interp[kval-conserve_dc-compile] 5,028.7 ms 129.5 ms ×39
test_benchmarks_lanczos_interp[kval-conserve_dc-run] 42,142 µs 340.6 µs ×120
test_benchmarks_lanczos_interp[kval-no_conserve_dc-compile] 491.5 ms 129.4 ms ×3.8
test_benchmarks_lanczos_interp[kval-no_conserve_dc-run] 4,143.6 µs 443.8 µs ×9.3
test_benchmarks_lanczos_interp[xval-conserve_dc-run] 975 µs 778.3 µs +25.28%
test_benchmarks_lanczos_interp[xval-no_conserve_dc-run] 731.1 µs 929.9 µs -21.38%
test_benchmarks_metacal[run] 1,345.3 ms 212.4 ms ×6.3