Use the same buffer for input and output - allows multiple kernel calls to stage your computations (eg. so you can see where your mouse pointer is now)