print('setting interpolation size Jd...', Jd) print('Fourier transform...') time_pre = time.clock() # Preprocessing NUFFT if (gpu == True): time_1 = time.clock() NufftObj = NUFFT_hsa() time_2 = time.clock() # mem_usage = memory_usage((NufftObj.plan,(om, Nd, Kd, Jd))) # print(mem_usage) NufftObj.plan(om, Nd, Kd, Jd) time_3 = time.clock() # NufftObj.offload('cuda') # for GPU computation NufftObj.offload('ocl') # for multi-CPU computation time_4 = time.clock() dtype = np.complex64 time_5 = time.clock() print("send image to device") NufftObj.x_Nd = NufftObj.thr.to_device(image.astype(dtype)) print("copy image to gx") time_6 = time.clock() gx = NufftObj.thr.copy_array(NufftObj.x_Nd) time_7 = time.clock() print('total:', time_7 - time_1, '/Decl obj: ', time_2 - time_1, '/plan: ', \ time_3 - time_2, '/offload: ', time_4 - time_3, '/to_device: ', time_6 - time_5, '\copy_array: ', time_7 - time_6) else: NufftObj = NUFFT_cpu() # mem_usage = memory_usage((NufftObj.plan,(om, Nd, Kd, Jd)))
print('setting interpolation size Jd...', Jd) print('Fourier transform...') time_pre = time.clock() # Preprocessing NUFFT if (gpu): time_1 = time.clock() NufftObj = NUFFT_hsa() time_2 = time.clock() # mem_usage = memory_usage((NufftObj.plan,(om, Nd, Kd, Jd))) # print(mem_usage) NufftObj.plan(om, Nd, Kd, Jd) time_3 = time.clock() # NufftObj.offload('cuda') # for GPU computation NufftObj.offload('cuda') # for multi-CPU computation time_4 = time.clock() dtype = np.complex64 time_5 = time.clock() print("send image to device") NufftObj.x_Nd = NufftObj.thr.to_device(image.astype(dtype)) print("copy image to gx") time_6 = time.clock() gx = NufftObj.thr.copy_array(NufftObj.x_Nd) time_7 = time.clock() print('total: {}/Decl Obj: {}/plan: {}/offload: {}' '/to_device: {}/copy_array: {}'.format( time_7 - time_1, time_2 - time_1, time_3 - time_2,