A graphics processing unit comprising: a thread scheduler ; at least two streaming multiprocessors , including a first streaming multiprocessor comprising a first set of processing clusters and a second streaming multiprocessor comprising a second set of processing clusters; and logic, at least partially comprising hardware logic, configured to: power on the first set of processing clusters; dispatch a workload to the first set of processing clusters; detect a full operating state of the first set of processing clusters, and in response to the detection of a full operating state of the first set of processing clusters, to: power on the second set of processing clusters, wherein each streaming multiprocessor further comprises a state accumulator to accumulate state information relating to the workload executing on the corresponding set of processing clusters, wherein the logic is further configured to: transmit the state information from the first set of processing clusters to the second set of processing clusters, detect when a capacity utilization parameter of the first set of processing clusters and the second set of processing clusters falls below a threshold, and in response, to: power off the second set of processing clusters; and dispatch the workload to the first set of processing clusters. a thread scheduler ; at least two streaming multiprocessors , including a first streaming multiprocessor comprising a first set of processing clusters and a second streaming multiprocessor comprising a second set of processing clusters; and logic, at least partially comprising hardware logic, configured to: power on the first set of processing clusters; dispatch a workload to the first set of processing clusters; detect a full operating state of the first set of processing clusters, and in response to the detection of a full operating state of the first set of processing clusters, to: power on the second set of processing clusters, wherein each streaming multiprocessor further comprises a state accumulator to accumulate state information relating to the workload executing on the corresponding set of processing clusters, wherein the logic is further configured to: transmit the state information from the first set of processing clusters to the second set of processing clusters, detect when a capacity utilization parameter of the first set of processing clusters and the second set of processing clusters falls below a threshold, and in response, to: power off the second set of processing clusters; and dispatch the workload to the first set of processing clusters. power on the first set of processing clusters; dispatch a workload to the first set of processing clusters; detect a full operating state of the first set of processing clusters, and in response to the detection of a full operating state of the first set of processing clusters, to: power on the second set of processing clusters, transmit the state information from the first set of processing clusters to the second set of processing clusters, detect when a capacity utilization parameter of the first set of processing clusters and the second set of processing clusters falls below a threshold, and in response, to: power off the second set of processing clusters; and dispatch the workload to the first set of processing clusters. power off the second set of processing clusters; and dispatch the workload to the first set of processing clusters. <EOS>