Martin Tillenius
Division of Scientific Computing
Department of Information Technology
Uppsala University
In parallel software, when several processors update the same shared
variable, such updates must be atomic or data may get corrupted. A
classical way to achieve atomicity is to introduce a lock that must
be held before writing to the variable. A different approach is to
perform the update from within an atomic transaction.
We have had the opportunity to evaluate a unique prototype system that implements atomic transactions in hardware, which we have used to investigate if performance can be gained by replacing locks by transactions.