cmpxchg16 / tsx.me

Benchmark Intel TSX (Transactional Synchronization Extension) Hardware Transactional Memory on my sandbox

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Benchmarks for TSX (Hardware Transactional Memory) vs STM (Software Transactional Memory) vs lock-free vs Naive lock (std::mutex/spinlock)


Implementations:
----------------
1. Queue
2. Stack
3. Counter

Note: the TSX implementation based on the tbb::speculative_spin_mutex. The mutex fallback to spin lock in case of no TSX support.


Environment:
------------
Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz 16GB RAM
Intel(R) Xeon(R) CPU E3-1270 V2 @ 3.50GHz 32GB RAM
Ubuntu 14.04
Boost 1.55
TBB 4.2
g++ 4.8.2

Author: 
-------
Uri Shamay (shamayuri@gmail.com)

About

Benchmark Intel TSX (Transactional Synchronization Extension) Hardware Transactional Memory on my sandbox


Languages

Language:C++ 98.5%Language:C 1.5%