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).
|New iPhones drive record Apple results||40|
|MSI's X99S MPower motherboard reviewed||1|
|Join us Wednesday evening for a TR Podcast live stream||3|
|First-person parkour zombie-fest Dying Light is out now||22|
|Unreal Engine 4 demo blurs line between rendered and reality||61|
|EVGA unleashes four new ambidextrous gaming mice||5|
|Cloud surge, Surface sales buoy Microsoft's quarterly results||57|
|Details leak out on AMD's first Zen-based desktop CPUs||129|
|Some 840 EVOs still vulnerable to read speed slowdowns||82|