1. A computer implemented method for use by a transaction program for managing memory access to a shared memory location for transaction data of a first thread, the shared memory location being accessible by the first thread and a second thread, the method comprising: executing at a computing system a string of instructions to complete a transaction of the first thread, beginning with one instruction of the string of instructions; determining at the computing system whether the one instruction is part of an active atomic instruction group (AIG) of instructions associated with the transaction of the first thread; locating a cache structure and a transaction table which together provide for entries in an active mode for the AIG, the locating in response to determining that the one instruction is part of an active AIG, an entry including an old data state stored in the cache structure and control information stored in the transaction table, and all storage locations inspected or modified by instructions of the active AIG remain pending until the computing system indicates that the storage locations should be committed; and executing at the computing system a next instruction under a normal execution mode in response to determining that the one instruction is not part of an active AIG.