VMSTM
VMSTM is a software implementation of transactional memory.
It has the following features:
- Allows execution of transaction code block without code instrumentation.
- Performs dynamic identification of shared accesses.
- Allows different handling of shared and non-shared accesses.
- Can be based on any commit-time STM algorithm. Currently based on TL2.
- Can be executed on any Windows NT
VMSTM Software Package
Current VMSTM software package includes the following STM implementations:
- VM-STM module : implementation of TL2 based on OS paging and exception machanism.
- TL2-STM module : implementation of TL2 with code instrumentation.
- TL2-PAGE-STM module : same as previous but with page-granularity for the TM buffer.
- HSTM (Hybrid STM) module : implementation of TL2 by software simulation of the VMF hardware element (look at DITM article)
In addition to the STM modules the package includes a framework for benchmarking the algorithms.