Background
Current Cilk: achieve atomicity using lock
problems such as priority inversion, deadlock,
etc.
Nontrivial to code
Transactional memory
Software TM: overhead -> slow
Hardware TM