摘要 |
A system and method of allocating registers in a register array to multiple workloads is disclosed. The method identifies an incoming workload as belonging to a first process group or a second process group, and allocates one or more target registers from the register array to the incoming workload. The register array is logically divided to a first ring and a second ring such that the first ring and the second ring have at least one register in common. The first process group is allocated registers in the first ring and the second process group is allocated registers in the second ring. Target registers in the first ring are allocated in order of sequentially decreasing register addresses and target registers in the second ring are allocated in order of sequentially increasing register addresses. Also disclosed are methods and systems for allocation of registers in an array of general purpose registers, methods and systems for allocation of registers to processes including shader processes in graphics processing units.
|