US Patent:
20130124838, May 16, 2013
Inventors:
Lacky V. SHAH - Los Altos Hills CA, US
Gregory Scott Palmer - Cedar Park TX, US
Gernot Schaufler - Mountain View CA, US
Samuel H. Duncan - Arlington MA, US
Philip Browning Johnson - Campbell CA, US
Shirish Gadre - Fremont CA, US
Robert Ohannessian - Austin TX, US
Nicholas Wang - Saratoga CA, US
Christopher Lamb - San Jose CA, US
Philip Alexander Cuadra - Mountain View CA, US
Timothy John Purcell - Provo UT, US
International Classification:
G06F 9/38
Abstract:
One embodiment of the present invention sets forth a technique instruction level and compute thread array granularity execution preemption. Preempting at the instruction level does not require any draining of the processing pipeline. No new instructions are issued and the context state is unloaded from the processing pipeline. When preemption is performed at a compute thread array boundary, the amount of context state to be stored is reduced because execution units within the processing pipeline complete execution of in-flight instructions and become idle. If, the amount of time needed to complete execution of the in-flight instructions exceeds a threshold, then the preemption may dynamically change to be performed at the instruction level instead of at compute thread array granularity.