I would assume that STM
- produces more elegant code however
- it is much slower than reasonable use of locks. It can be so much slower that it's slow than writing single threaded code without locks.
Note: STM relocking can get into a situation like a deadlock where it never obtains all the locks it needs.
You are likely to find than STM is too immature to provide performance advantages.