Kowert, Hood, Munyon, Rankin & Goetzel, P.C.
Instruction-level context switch in SIMD processor
Techniques are disclosed relating to context switching in a SIMD processor. In some embodiments, an apparatus includes pipeline circuitry configured to execute graphics instructions included in threads of a group of single-instruction multiple-data (SIMD) threads in a thread group. In some embodiments, context switch circuitry is configured to atomically: save, for the SIMD group, a program counter and information that indicates whether threads in the SIMD group are active using one or more context switch registers, set all threads to an active state for the SIMD group, and branch to handler code for the SIMD group. In some embodiments, the pipeline circuitry is configured to execute the handler code to save context information for the SIMD group and subsequently execute threads of another thread group. Disclosed techniques may allow instruction-level context switching even when some SIMD threads are non-active.
Apple Inc.
G G G G G G G G G G G
G06F G06F G06F G06F G06F G06F G06F G06F G06F G06F G06F
inventional inventional inventional inventional inventional inventional inventional inventional inventional inventional inventional
Jeffrey T. Brian K. Terence M. Anjana Jeffrey A. Benjiman L.
Brady Reynolds Potter Rajendran Lohman Goodman