Texture binding

Once a texture has been bound can it be written to and the new value used immediately, or does it become read-only and for the new value to take effect the texture must be unbound, the new value written to the texture and then rebound?

If you’re writing to global memory that’s bound as linear texture, the new values are not guaranteed to be visible to texture lookups from other threads until the kernel is completed (i.e. the texture cache isn’t fully coherent). In other words, you need to double buffer your arrays.