2d convolve performance improvements

changed the shared memory loading access pattern in 2d convolve
kernel for cuda and opencl backends

Made improvements w.r.t issue #212. More perf improvements coming soon for convolve, hence not closing issue yet.