1. A method for efficiently allocating register file entries included in a register file to a thread group, the method comprising: receiving a request to allocate a number of register file entries to the thread group; determining a required number of mapping table entries included in a register file mapping table (RFMT) based on the request, wherein each mapping table entry included in the RFMT is associated with a different plurality of register file entries included in the register file; parsing the RFMT to locate an available mapping table entry in the RFMT for each of the required mapping table entries; and for each available mapping table entry, associating with a register file pointer an address that corresponds to a first register file entry in the plurality of register file entries associated with the available mapping table entry.