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).
|Intel unveils purpose-built Neural Network Processor for deep learning||12|
|Razer's Blade Stealth and Core V2 step to the cutting edge||9|
|Wear Something Gaudy Day Shortbread||12|
|Astro Gaming A20 rockets to 5.8 GHz for clearer connections||0|
|Asus teases ROG Strix X370I mobo for spiffy Mini-ITX Ryzen builds||11|
|NZXT's H700i, H400i, and H200i cases have their heads in the clouds||15|
|ASRock X299E-ITX/ac stuffs Core i9s into mini-ITX systems||29|
|Surface Book 2 flies higher with eighth-gen Core and Pascal||32|
|Rumor: Samsung 970 and 980 NVMe SSDs could be on the way||43|
|Ubiquiti released updates for UniFi devices this morning. Updates take a few minutes. Tell everyone to grab a cup of coffee.||+16|