1. A computer system for optimizing the grouping of instructions in a microprocessor, the computer system comprising: a server having a processor, the processor configured to perform a method comprising: receiving a first clump having a plurality of instructions from a streaming buffer; pre-decoding each of the plurality of instructions in the first clump for a select information and sending the plurality of instructions to an instruction queue; storing one or more of the plurality of instructions in a local register and storing an initial grouping information for each of the plurality of instructions in a local register, wherein the initial grouping information is based on the select information, wherein the initial grouping information for each of the plurality of instructions is based on worst case grouping scenario; based on receiving an indication from the instruction queue that one or more of the plurality of instructions is ready to be dispatched from the instruction queue, determining if an additional pre-decode information is available; based on determining that the additional pre-decode information is not available, grouping the one or more of the plurality of instructions that are ready to be dispatched from the instruction queue into a dispatch group based on the initial grouping information stored in the local register; based on determining that the additional pre-decode information is available, updating the initial group information stored in the local register based on the additional pre-decode information and grouping the one or more of the plurality of instructions that are ready to be dispatched from the instruction queue into the dispatch group based on the updated grouping information stored in the local register; and dispatching the dispatch group to an issue unit.