linear memory vs arrays

Is there a rule of thumb for when it’s
better to use linear memory and when to use
arrays?

What comes to my mind is 3D arrays since
tex3D() can be used for automatic interpolation
while you would have to perform 8 lookups
and interpolate by hand.

Are there any other uses where one is
preferable over the other?

Assuming that both are bound to a texture for a lookup,
are there circumstances where one is faster than the other
or they both go through the same driver path?