Closed sjperkins closed 9 years ago
This is not a priority at present. Input data is not the main consumer of GPU memory.
Having said that, UVW coordinates vary by baseline and time. This is a 2D input. Representing parts of this matrix in shared memory can be expensive. On the other hand, we'd have to tradeoff three/six registers for floats/doubles to store the UVW coordinates.
Discussions with Oleg suggest that there may be issue with HDR imaging here and that its not worth implementing.
Agreed. We did discuss briefly cartesian gridding - also bad for HDR imaging - but extremely useful otherwise. Maybe we can revisit that in due course?
Jon was suggesting compressing the channel and time dimensions by having a regular (u,v) grid. As I understand it, the time and frequency parameters are derived from the grid coordinates.
While grid coordinate system are ubiquitous, we also wondered whether an elliptical coordinate system would be a better way of compressing said data.
The reasons why this may not be viable could be due to small deviations off the track, however, we can't see why this is also not an issue with a grid coordinate system.
The advantages here are that we don't have to specify the full coordinate for a (u,v,w) data point. Instead we can specifiy a (u0,v0,w0) and the derive the other coordinates on the track using deltas.
However, at the moment, the amount of input data required by the GPU appears neglible. The most significant consumer of GPU data are arrays utilised for temporary results, jones matrices in particular.