A processor, comprising: a first logic to execute an instruction stream out-of-order, the instruction stream divided into a plurality of strands, the instruction stream and contents within each strand ordered by program order PO, wherein each strand includes a series of instructions ordered by PO that are data dependent upon each other; a second logic to identify an oldest undispatched instruction in the instruction stream and record its associated PO as an executed instruction pointer; characterized in that the processor further comprises: a third logic to identify a most recently committed store instruction in the instruction stream and record its associated PO as a store commitment pointer; a fourth logic to determine a search pointer with PO less than the execution instruction pointer; a fifth logic to identify a first set of store instructions in a store buffer, each store instruction with PO less than the search pointer and eligible for commitment; a sixth logic to evaluate whether the first set of store instructions is larger than a number of read ports of the store buffer; and a seventh logic to write, in parallel, the first set of store instructions to a store requirement queue when the first set of store instruction is evaluated to be less than or equal to the number of read ports of the store buffer, wherein the search pointer is to be adjusted to reference another set of store instructions when the first set of store instructions is evaluated to be larger than the number of read ports of the store buffer. a first logic to execute an instruction stream out-of-order, the instruction stream divided into a plurality of strands, the instruction stream and contents within each strand ordered by program order PO, wherein each strand includes a series of instructions ordered by PO that are data dependent upon each other; a second logic to identify an oldest undispatched instruction in the instruction stream and record its associated PO as an executed instruction pointer; characterized in that the processor further comprises: a third logic to identify a most recently committed store instruction in the instruction stream and record its associated PO as a store commitment pointer; a fourth logic to determine a search pointer with PO less than the execution instruction pointer; a fifth logic to identify a first set of store instructions in a store buffer, each store instruction with PO less than the search pointer and eligible for commitment; a sixth logic to evaluate whether the first set of store instructions is larger than a number of read ports of the store buffer; and a seventh logic to write, in parallel, the first set of store instructions to a store requirement queue when the first set of store instruction is evaluated to be less than or equal to the number of read ports of the store buffer, wherein the search pointer is to be adjusted to reference another set of store instructions when the first set of store instructions is evaluated to be larger than the number of read ports of the store buffer. a third logic to identify a most recently committed store instruction in the instruction stream and record its associated PO as a store commitment pointer; a fourth logic to determine a search pointer with PO less than the execution instruction pointer; a fifth logic to identify a first set of store instructions in a store buffer, each store instruction with PO less than the search pointer and eligible for commitment; a sixth logic to evaluate whether the first set of store instructions is larger than a number of read ports of the store buffer; and a seventh logic to write, in parallel, the first set of store instructions to a store requirement queue when the first set of store instruction is evaluated to be less than or equal to the number of read ports of the store buffer, wherein the search pointer is to be adjusted to reference another set of store instructions when the first set of store instructions is evaluated to be larger than the number of read ports of the store buffer.