By: Anon (no.delete@this.spam.com), April 7, 2021 10:06 am
Room: Moderated Discussions
sr (nobody.delete@this.nowhere.com) on April 7, 2021 9:42 am wrote:
> But there it is. Locking is nearly impossible to get right.
>
> Transactional memory isn't all about performance. It's locking done by hardware. Transactional
> memory is damn useful even when done with software when it offers only fraction of performance
> of properly tuned locking scheme - you still get memory ordering done right and won't
> have to melt your brains debugging complex locking algorithms.
Current HTM does not make things easier neither more debugabble, quite the opposite.
Due to the fallback the locking still there, now there are two paths to write, two paths to debug.
> But there it is. Locking is nearly impossible to get right.
>
> Transactional memory isn't all about performance. It's locking done by hardware. Transactional
> memory is damn useful even when done with software when it offers only fraction of performance
> of properly tuned locking scheme - you still get memory ordering done right and won't
> have to melt your brains debugging complex locking algorithms.
Current HTM does not make things easier neither more debugabble, quite the opposite.
Due to the fallback the locking still there, now there are two paths to write, two paths to debug.