By: Jon Masters (jcm.delete@this.jonmasters.org), April 1, 2021 10:56 am
Room: Moderated Discussions
Linus Torvalds (torvalds.delete@this.linux-foundation.org) on March 31, 2021 12:00 pm wrote:
> Linus Torvalds (torvalds.delete@this.linux-foundation.org) on March 31, 2021 11:54 am wrote:
> >
> > In reality, TSX is disabled pretty much everywhere either due
> > to outright CPU bugs, or due to all the side channel leaks.
>
> Btw, I would like to say that I was really hopeful about transactional memory.
> I'd have absolutely loved for it to be useful. So my negative comments about
> it are about how disappointed I've been with the reality of it.
>
> Maybe ARM can magically make it useful and work well. But let's just
> say that I doubt they have the magic pixie dust to make it work.
>
> For example, I see no sign that the ARM 'tstart' instruction has a success predictor
> behind it. And once again - without a hardware predictor, you can make up benchmarks
> that show how well it works, but real life will bite you in the arse.
While I expect some will choose to disable TME for all the reasons Linus cited, I think there's a benefit to building the hardware. If you build the tracking needed for transactions it helps with both TSO compatibility and through-barrier speculation. IOW you might as well build most of what ends up being there, and maybe you expose it or maybe you don't.
> Linus Torvalds (torvalds.delete@this.linux-foundation.org) on March 31, 2021 11:54 am wrote:
> >
> > In reality, TSX is disabled pretty much everywhere either due
> > to outright CPU bugs, or due to all the side channel leaks.
>
> Btw, I would like to say that I was really hopeful about transactional memory.
> I'd have absolutely loved for it to be useful. So my negative comments about
> it are about how disappointed I've been with the reality of it.
>
> Maybe ARM can magically make it useful and work well. But let's just
> say that I doubt they have the magic pixie dust to make it work.
>
> For example, I see no sign that the ARM 'tstart' instruction has a success predictor
> behind it. And once again - without a hardware predictor, you can make up benchmarks
> that show how well it works, but real life will bite you in the arse.
While I expect some will choose to disable TME for all the reasons Linus cited, I think there's a benefit to building the hardware. If you build the tracking needed for transactions it helps with both TSO compatibility and through-barrier speculation. IOW you might as well build most of what ends up being there, and maybe you expose it or maybe you don't.