Making the Fast Case Common and the Uncommon Case Simple in Unbounded Transnational Memory. Qi Zhu CSE 340, Spring 2008 University of Connecticut Paper Source: ISCA’07, San Diego, CA. Motivation.
CSE 340, Spring 2008
University of Connecticut
Paper Source: ISCA’07, San Diego, CA
1. Permissions-only Cache
2. OneTM: OneTM Serialized and OneTM Concurrent
allocate/deallocate, maintain, and concurrently manipulate complex linked-based structures(UTM’s xstate, VTM’s XADT, and PTM’s Transaction Access Vectors) and the corresponding cached version of these structures.
Serialized implementation simply stalls all other threads in an application when one of the threads needs to execute an overflowed transactions. At the same time, overflowed transactions still support an explicit abort operation because overflowed transactions continue to log.
Located at a fixed address in virtual memory known to all threads
Per-thread architected register, saved/restored on context switches
The system uses this metadata to track the read and write set of the single overflowed transaction; other threads then check the metadata to detect conflicts.
OTID is used to differentiate between stale and current metadata. The OTID of the active overflowed is also stored in the STSW( see table before).
When a transaction transitions to overflowed mode, it increments the OTID in the STSW. Instead of explicitly clearing the metadata bits when it completes, the overflowed transaction simply clears the overflowed bit in the STSW as before.
‘O’ state indicates a single non-exclusive read-only dirty owner
simulated machine configuration