Dividing GPU streaming multiprocessors between concurrent workloads to enable predictable co-location of tasks.