I have adapted the NUFFT from (Prof. J. Fessler's toolbox)[http://web.eecs.umich.edu/~fessler/code/) to allow parfor acceleration - but it seems that with the current parameters of the NUFFT this doesn't actually speed up the calculation, so I have removed it from being the default behaviour.
Benchmarking the NUFFT as it is currently implemented, it takes around 12s to apply to the example data at 1 mm resolution, and around 70s for the 600 um data. This could clearly be made faster by using the GPU implementation of the NUFFT which is already available - but requires suitable hardware, and when I briefly had access to a suitable graphics card I found that I ran out of memory for the matrix size I was trying to use. The way forward here is probably to get a really good graphics card and then see what matrix size it can cope with :)
I have adapted the NUFFT from (Prof. J. Fessler's toolbox)[http://web.eecs.umich.edu/~fessler/code/) to allow parfor acceleration - but it seems that with the current parameters of the NUFFT this doesn't actually speed up the calculation, so I have removed it from being the default behaviour.
Benchmarking the NUFFT as it is currently implemented, it takes around 12s to apply to the example data at 1 mm resolution, and around 70s for the 600 um data. This could clearly be made faster by using the GPU implementation of the NUFFT which is already available - but requires suitable hardware, and when I briefly had access to a suitable graphics card I found that I ran out of memory for the matrix size I was trying to use. The way forward here is probably to get a really good graphics card and then see what matrix size it can cope with :)