1. A computer method, wherein the operations comprise carrying out operations in a multiprocessor system, the operations comprising: allocating at least one identification number to a thread executing speculatively; maintaining directory based speculation control responsive to the identification number; counting instances of use of the identification number being active in the multiprocessor system; and preventing the identification number from being allocated to a new thread until the counting indicates no instances of use of that ID being active in the system.