A wireless mobile device, comprising: a graphic processing unit, GPU; a memory; and a system memory management unit, MMU, coupled to the memory, and the GPU, and the system MMU comprising: a plurality of physical context banks, each physical context bank comprising multiple hardware registers; a hardware controller configured to: lookup, within a stream match table of the system MMU, a stream identification of an access stream of content issued by the execution thread of the GPU to determine whether a context bank associated with the access stream of content is stored within one of the plurality of physical context banks; evict a selected one of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks, by saving the content of the physical context bank into the memory; restore, independent of GPU software instructions, the context bank associated with the access stream of content issued by an execution thread of the GPU from the memory into the evicted physical context bank of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks; and switch to the physical context bank associated with the access stream issued by the execution thread of the GPU. a graphic processing unit, GPU; a memory; and a system memory management unit, MMU, coupled to the memory, and the GPU, and the system MMU comprising: a plurality of physical context banks, each physical context bank comprising multiple hardware registers; a hardware controller configured to: lookup, within a stream match table of the system MMU, a stream identification of an access stream of content issued by the execution thread of the GPU to determine whether a context bank associated with the access stream of content is stored within one of the plurality of physical context banks; evict a selected one of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks, by saving the content of the physical context bank into the memory; restore, independent of GPU software instructions, the context bank associated with the access stream of content issued by an execution thread of the GPU from the memory into the evicted physical context bank of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks; and switch to the physical context bank associated with the access stream issued by the execution thread of the GPU. a plurality of physical context banks, each physical context bank comprising multiple hardware registers; a hardware controller configured to: lookup, within a stream match table of the system MMU, a stream identification of an access stream of content issued by the execution thread of the GPU to determine whether a context bank associated with the access stream of content is stored within one of the plurality of physical context banks; evict a selected one of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks, by saving the content of the physical context bank into the memory; restore, independent of GPU software instructions, the context bank associated with the access stream of content issued by an execution thread of the GPU from the memory into the evicted physical context bank of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks; and switch to the physical context bank associated with the access stream issued by the execution thread of the GPU. lookup, within a stream match table of the system MMU, a stream identification of an access stream of content issued by the execution thread of the GPU to determine whether a context bank associated with the access stream of content is stored within one of the plurality of physical context banks; evict a selected one of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks, by saving the content of the physical context bank into the memory; restore, independent of GPU software instructions, the context bank associated with the access stream of content issued by an execution thread of the GPU from the memory into the evicted physical context bank of the plurality of physical context banks when the context bank associated with the access stream of content is not stored within one of the plurality of physical context banks; and switch to the physical context bank associated with the access stream issued by the execution thread of the GPU.