desihub / gpu_specter

Scratch work for porting spectroperfectionism extractions to GPUs
BSD 3-Clause "New" or "Revised" License
2 stars 3 forks source link

First patch sometimes has zero flux or zero ivar #51

Closed dmargala closed 3 years ago

dmargala commented 3 years ago

Example:

20200315/00055672/frame-b4-00055672.fits

Fiber index: 126 image

dmargala commented 3 years ago

Last week, I performed a bisection analysis to identify the source of the zero values in the flux array. The initial deconvolved flux values are the solution to the linear equation with icov and the weighted pixel vector. I found intermittent cases where this solution is non-zero originally but contained zeros after the batched eigenvalue decomposition during the next step in the extraction. This was a red flag because the deconvolved flux is not an input to that step.

It turns out that there was a device pointer allocation bug in my implementation of the batched eigenvalue wrapper in cupy that has already been reported and fixed (https://github.com/cupy/cupy/issues/4440).

I have not been able to reproduce this issue since upgrading to a version of cupy that includes this bugfix.