| Crates.io | intel-tsx-rtm |
| lib.rs | intel-tsx-rtm |
| version | 0.1.0 |
| created_at | 2018-01-29 08:54:42.927996+00 |
| updated_at | 2018-02-08 20:01:27.185977+00 |
| description | Provides intrinsics for Rust to use Intel's TSX RTM, a hardware transactional memory extension for some Skylake CPUs. |
| homepage | https://github.com/lemonrock/intel-tsx-rtm |
| repository | https://github.com/lemonrock/intel-tsx-rtm.git |
| max_upload_size | |
| id | 48759 |
| size | 36,710 |
This crates provides a simple set of wrappers around Intel's TSX RTM instructions and associated intrinsics. It needs a C compiler to create a small shim. This is important because Rust's compiler does not like code with multiple returns. It does not depend on your compiler having the necessary headers (<immintrin.h>), and so can work with older compilers and other Operating Systems.
It uses third-party self-modifying code (Andi Kleen's tsx-tools) to provide runtime detection of CPUs without TSX and fallback to non-hardware paths.
The license for this project is MIT.