By: Foo_ (foo.delete@this.nomail.com), March 31, 2021 5:58 am
Room: Moderated Discussions
Andrey (andrey.semashev.delete@this.gmail.com) on March 31, 2021 5:27 am wrote:
> Foo_ (foo.delete@this.nomail.com) on March 31, 2021 1:16 am wrote:
> > Ganon (anon.delete@this.gmail.com) on March 30, 2021 5:22 pm wrote:
> > >
> > > Other than the some initial bugs and possible side channel issues
> > > (which are not a relevant security threat in many contexts); has Intel
> > > failed with HTM/TLE? Many commercial databases are making active use of it;
> > > it greatly simplifies the writing of scalable concurrent data structures.
> >
> > Which "commercial databases" are making active use of it, and for which kind of benefit?
> >
> > Also, how would it "simplify the writing of scalable concurrent data structures" since you still
> > need to write (and optimize) the non-HTM/TLE codepath for all CPUs that don't support it?
>
> You obviously have to write non-transactional path, and it will have its pitfalls, but the point
> is that you could have better best-case and average performance with TSX. For example, where
> you would traditionally lock the whole data structure, the transactional path could succeed
> without locking and with multiple threads working on the data structure in parallel.
Theoretically you "could" and "would". But what about concretely? Are there non-micro-benchmarks showcasing the improvements brought by TSX?
> Foo_ (foo.delete@this.nomail.com) on March 31, 2021 1:16 am wrote:
> > Ganon (anon.delete@this.gmail.com) on March 30, 2021 5:22 pm wrote:
> > >
> > > Other than the some initial bugs and possible side channel issues
> > > (which are not a relevant security threat in many contexts); has Intel
> > > failed with HTM/TLE? Many commercial databases are making active use of it;
> > > it greatly simplifies the writing of scalable concurrent data structures.
> >
> > Which "commercial databases" are making active use of it, and for which kind of benefit?
> >
> > Also, how would it "simplify the writing of scalable concurrent data structures" since you still
> > need to write (and optimize) the non-HTM/TLE codepath for all CPUs that don't support it?
>
> You obviously have to write non-transactional path, and it will have its pitfalls, but the point
> is that you could have better best-case and average performance with TSX. For example, where
> you would traditionally lock the whole data structure, the transactional path could succeed
> without locking and with multiple threads working on the data structure in parallel.
Theoretically you "could" and "would". But what about concretely? Are there non-micro-benchmarks showcasing the improvements brought by TSX?