Ivy Bridge isn't yet out the door, but Intel is already talking about more enhancements coming in Haswell. The next-generation chip will bring a new microarchitecture and, according to this blog post, a set of Transactional Synchronization Extensions dubbed TSX. The instructions are designed to simplify programming for developers working on multithreaded applications, which must lock sections of memory to ensure that data being manipulated by one thread isn't modified by another. Intel's James Reinders explains:
These extensions can help achieve the performance of fine-grain locking while using coarser grain locks. These extensions can also allow locks around critical sections while avoiding unnecessary serializations. If multiple threads execute critical sections protected by the same lock but they do not perform any conflicting operations on each other’s data, then the threads can execute concurrently and without serialization. Even though the software uses lock acquisition operations on a common lock, the hardware is allowed to recognize this, elide the lock, and execute the critical sections on the two threads without requiring any communication through the lock if such communication was dynamically unnecessary.
Reinders goes into more detail in a subsequent blog post. I'm not a programmer, but it looks like Haswell is capable of determining when it's safe for incoming threads to ignore the locks imposed by other threads. This should allow more threads to be executed in parallel, at least for applications relying on coarse locking techniques. Coarse locking is easier to implement than fine-grained locks, Intel says.
Applications will have to be modified to take advantage of TSX. Two options are available: developers who want to retain compatibility with non-TSX hardware can use the Hardware Lock Elision instruction set, while those who want more flexibility can use the Restricted Transactional Memory instruction set. The latter requires an alternate code path for hardware that doesn't support TSX instructions. If you want more information on TSX, check out chapter 8 of Intel's programming reference (PDF).
|1. GKey13 - $650||2. JohnC - $600||3. davidbowser - $501|
|4. cmpxchg - $500||5. DeadOfKnight - $400||6. danny e. - $375|
|7. the - $360||8. Ryszard - $351||9. rbattle - $350|
|10. Ryu Connor - $350|
|Here's the not-so-live video version of The TR Podcast 164||16|
|Here's what's cooking in Damage Labs||34|
|Deal of the week: An IPS ultra-wide for $420, plus cheap SSDs and more||29|
|Microsoft's quarterly revenue up 25% on strong Surface, Xbox sales||23|
|Assassin's Creed Unity PC requires 6GB of RAM, GTX 680||236|
|Join us as we attempt to live stream The TR Podcast tonight||13|
|Civ: Beyond Earth with Mantle aims to end multi-GPU microstuttering||75|
|CPU startup claims to achieve 3x IPC gains with VISC architecture||62|
|I just found this AMAZING trick! Call of Duty takes up 0GB if you just don't buy it!||+122|