A method of updating a display unit remotely located from a computing device. comprising: (a) copying, by a copy module executing on the computing device, display information from a buffer of the computing device to generate a display update, the display information generated by an application executing on the computing device (510, 610); (b) calculating, by an accumulator module executing on the computing device, a size of the display update (520, 620); (c) determining, by determining means in the computing device, that the display size exceeds a threshold; (d) determining, by a driver executing on the computing device, an amount of available bandwidth of a network connecting the computing device and the display unit; (e) calculating, by the driver, a time period required to communicate the display update from the computing device to the display unit, the calculated time period being based in part on the determined amount of available bandwidth (580, 640); the method being characterized in that it comprises: (f) selecting lossy compression to compress the generated display update, the selection being responsive to an amount of change in the display update exceeding a threshold, the amount of change being a running count; (g) applying, by a compressor module executing on the computing device, upon said selecting lossy compression, a lossy compression algorithm to create a lossy compressed display update; (h) transmitting, by a computing device agent executing on the computing device, the lossy compressed display update to the remote display unit; (i) triggering, by a timer module executing on the computing device, the copy module to copy the display information from the buffer after the calculated time period elapses; and (j) repeating steps (b) to (i) after the calculated time period elapses. (a) copying, by a copy module executing on the computing device, display information from a buffer of the computing device to generate a display update, the display information generated by an application executing on the computing device (510, 610); (b) calculating, by an accumulator module executing on the computing device, a size of the display update (520, 620); (c) determining, by determining means in the computing device, that the display size exceeds a threshold; (d) determining, by a driver executing on the computing device, an amount of available bandwidth of a network connecting the computing device and the display unit; (e) calculating, by the driver, a time period required to communicate the display update from the computing device to the display unit, the calculated time period being based in part on the determined amount of available bandwidth (580, 640); (f) selecting lossy compression to compress the generated display update, the selection being responsive to an amount of change in the display update exceeding a threshold, the amount of change being a running count; (g) applying, by a compressor module executing on the computing device, upon said selecting lossy compression, a lossy compression algorithm to create a lossy compressed display update; (h) transmitting, by a computing device agent executing on the computing device, the lossy compressed display update to the remote display unit; (i) triggering, by a timer module executing on the computing device, the copy module to copy the display information from the buffer after the calculated time period elapses; and (j) repeating steps (b) to (i) after the calculated time period elapses.