Files
GR-raytracing/benchmarks/psf_event_sink_reference.md
T

71 lines
3.4 KiB
Markdown

# PSF event-sink image references
Run date: 2026-09-04
Purpose: fixed pixel-comparison references before replacing the sink consumer
with HIP. The renderer used the default CPU `PSF_EVENT_SINK=1` path. There
was no adaptive refinement. The catalog is the repository test catalog, not
an all-sky tile snapshot. This is not a performance benchmark.
Environment:
- Git `HEAD`: `ab56e23` (worktree contains the uncommitted event-sink change)
- Build: `BUILD_TYPE=Release`, `ENABLE_HDR=1`, `ENABLE_PNG=1`, OpenMP
- Host worker setting: `OMP_NUM_THREADS=16`
- Images: 640 x 360 px; Moffat FWHM 2.7 px, beta 4.5
- Observer: radius 30, inward speed 0; ICRS look direction RA 1 deg, Dec 1 deg
The explicit `1e300` magnification cap is the practical command-line spelling
of the normal unlimited default. `--draw-mesh` and `--psf-direct` are absent,
therefore disabled. All refinement thresholds are included even though level
zero prevents refinement, so later default changes cannot affect this run.
## Minkowski
Build:
```bash
make -B SPACETIME=minkowski ENABLE_HDR=1 PSF_EVENT_SINK=1 backend
```
Render:
```bash
OMP_NUM_THREADS=16 build/Release/minkowski_sky --catalog assets/sky_grid_5deg.csv --output tests/data/psf_event_sink_reference/minkowski_ra1_dec1_640x360.png --hdr-output --width 640 --height 360 --fov-deg 30 --look-ra-deg 1 --look-dec-deg 1 --exposure 0.1 --observer-radius 30 --observer-inward-speed 0 --psf-fwhm-pixels 2.7 --psf-moffat-beta 4.5 --max-magnification 1e300 --max-cache-psf-flux 1 --psf-relative-tail 1e-8 --psf-min-y 0 --coarse-cell-pixels 16 --refine-max-level 0 --refine-angle-abs-deg 0.001 --refine-angle-rel 0.1 --refine-jacobian-min 1e-3 --refine-min-edge-pixels 0.5 --refine-min-area-pixels2 0.25 --catalog-load-workers 4
```
Result: 35 images from 5,654 catalog stars; 35 cached, 0 wing-clipped, 0 direct
fallback, 0 min-Y discarded.
Versioned reference outputs:
- `tests/data/psf_event_sink_reference/minkowski_ra1_dec1_640x360.png`
- `tests/data/psf_event_sink_reference/minkowski_ra1_dec1_640x360_HDR.fits`
## Analytic Schwarzschild
This reference uses a 60 deg horizontal field of view. At radius 30, the
former 30 deg framing mostly contained the shadow and high-order images inside
the Einstein ring, without enough field to test the first-image star field.
Build:
```bash
make -B SPACETIME=schwarzschild ENABLE_HDR=1 PSF_EVENT_SINK=1 backend
```
Render:
```bash
OMP_NUM_THREADS=16 build/Release/schwarzschild_sky --catalog assets/sky_grid_5deg.csv --output tests/data/psf_event_sink_reference/schwarzschild_ra1_dec1_fov60_640x360.png --hdr-output --width 640 --height 360 --fov-deg 60 --look-ra-deg 1 --look-dec-deg 1 --exposure 0.1 --observer-radius 30 --observer-inward-speed 0 --psf-fwhm-pixels 2.7 --psf-moffat-beta 4.5 --max-magnification 1e300 --max-cache-psf-flux 1 --psf-relative-tail 1e-8 --psf-min-y 0 --coarse-cell-pixels 16 --refine-max-level 0 --refine-angle-abs-deg 0.001 --refine-angle-rel 0.1 --refine-jacobian-min 1e-3 --refine-min-edge-pixels 0.5 --refine-min-area-pixels2 0.25 --catalog-load-workers 4
```
Result: 5,206 images from 5,654 catalog stars; 5,206 cached, 0 wing-clipped,
0 direct fallback, 0 min-Y discarded. This is a visual regression reference,
not a performance result.
Versioned reference outputs:
- `tests/data/psf_event_sink_reference/schwarzschild_ra1_dec1_fov60_640x360.png`
- `tests/data/psf_event_sink_reference/schwarzschild_ra1_dec1_fov60_640x360_HDR.fits`