[Openmp-commits] [PATCH] D71988: [OpenMP][WIP] Make the kmp_depend_info type fit in 128 bits.
Jonas Hahnfeld via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Tue Dec 31 02:33:27 PST 2019
Hahnfeld added a comment.
In D71988#1799064 <https://reviews.llvm.org/D71988#1799064>, @jdoerfert wrote:
> > I would expect that some versioning is needed..
>
> Versioning is fine with me. Versioning the runtime would be even preferable.
When would you expect bumps of the version? As an example `libc++` and `libstdc++` have versions, but they're not frequently bumped (once in a decade or less?) because rebuilding all your applications can be very much work. That is why I think stable interfaces for runtime libraries are very convenient whenever possible.
>> If this really brings a benefit, we need new entry functions and update the compiler(s).
>
> We go to great lengths to align to cache lines in some structs, e.g., `kmp_depnode`, but we are literally wasting space and alignment for others. Even if we do not adopt this, we should start to adopt some best practices.
There's a difference though: `kmp_depend_info_t` is passed by the compiler and evaluated once by the runtime library. If I recall correctly, all information is stored in internal structures afterwards (the mentioned `kmp_depnode` being one of them). Thus I wonder if this change brings a measurable improvement when reading the data once is not on the critical path. Breaking the ABI on the benefit of saving a few bytes on the stack seems a bit overkill just for the sake of doing it.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D71988/new/
https://reviews.llvm.org/D71988
More information about the Openmp-commits
mailing list