Archive fixed catalog subsets and captured events, manifests, reproducible commands, raw timing and regression logs, and device resource evidence. Document distribution-dependent tile reduction gains and independent indexed producer throughput. Update the GPU plan and renderer design while retaining the production atomic path. Preserve historical measurement metadata and exclude generated Python bytecode.
16 lines
1.1 KiB
Python
16 lines
1.1 KiB
Python
#!/usr/bin/env python3
|
|
from run import run
|
|
from pathlib import Path
|
|
import re
|
|
base=Path(__file__).resolve().parent
|
|
for label,binary in [('cpu','build/Release/schwarzschild_sky'),('hip','build/Release/schwarzschild_sky_hip')]:
|
|
run('schwarzschild_'+label,[binary,'--catalog',str(base/'ordinary.csv'),
|
|
'--lens-map-input','output/lens/schwarzschild_galactic_center_R100_45deg_16_4_4k_.grlens',
|
|
'--exposure','1e13','--psf-fwhm-pixels','2.7','--psf-moffat-beta','4.5',
|
|
'--psf-relative-tail','1e-8','--psf-min-y','0','--max-cache-psf-flux','1e8','--hdr-output',
|
|
'--output','/tmp/gr-psf-replay-schwarzschild-'+label+'.png'],60)
|
|
texts=[(base/('schwarzschild_'+label+'.log')).read_text() for label in ['cpu','hip']]
|
|
pattern=r'PSF splats: cached (\d+), cached wing-clipped (\d+), direct fallbacks (\d+), discarded below min-Y (\d+)'
|
|
assert re.search(pattern,texts[0]).groups()==re.search(pattern,texts[1]).groups()
|
|
run('schwarzschild_hdr',['python3','scripts/fits_floatdiff.py','/tmp/gr-psf-replay-schwarzschild-cpu_HDR.fits','/tmp/gr-psf-replay-schwarzschild-hip_HDR.fits'],60)
|