code: def _deconv_rl_gpu_conv(data_g, h_g, Niter=10):
      
  
      # set up some gpu buffers
      u_g = OCLArray.empty(data_g.shape, np.float32)
  
      u_g.copy_buffer(data_g)
  
      tmp_g = OCLArray.empty(data_g.shape, np.float32)
      tmp2_g = OCLArray.empty(data_g.shape, np.float32)
  
  
      # fix this
      hflip_g = OCLArray.from_array((h_g.get()[::-1, ::-1]).copy())
  
  
  
      for i in range(Niter):
          convolve(u_g, h_g,
                   res_g=tmp_g)
  
          _divide_inplace(data_g, tmp_g)
  
          # return data_g, tmp_g
  
          convolve(tmp_g, hflip_g,
                   res_g=tmp2_g)
  
  
  
          _multiply_inplace(u_g, tmp2_g)
  
      return u_g
docs: using convolve