In computing devices, graphics processing units (GPUs) can supplement the central processing unit (CPU) by providing electronic circuitry that can perform mathematical operations rapidly. To do this, GPUs utilize extensive parallelism and many concurrent threads. The capabilities of GPUs make them useful to accelerate the processing of visual media and parallel computing tasks. For instance, a GPU can be used for video encoding/decoding, graphics rendering in two and three-dimensional games, and other general purpose computing applications. If the complexities involved in virtualizing GPUs can be overcome, virtualization technologies can be applied to graphics processing units on many different types of computing platforms.