‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Monday, February 24, 2020 10:20 AM, Bill Schmidt <wschm...@linux.ibm.com> wrote:
> So, I can answer a small amount of this, but I will say that overall, design > or implementation documentation seems to be between lacking and nonexistent. > > This has to do with "#pragma omp simd" and providing the rules for vectorizing > functions into calls to libmvec. I tend to agree that it is a bit more like > API than ABI, but we are just fitting into existing frameworks and using the > same nomenclature. > > The ABI that Bert has produced for us is available at > https://sourceware.org/glibc/wiki/HomePage?action=AttachFile&do=view&target=powerarchvectfuncabi.html. > > It is based on a similar document for x86. I believe this is the most up-to- > date version: > https://software.intel.com/sites/default/files/managed/b4/c8/Intel-Vector-Function-ABI.pdf > > There's been ongoing work in the same area for AArch64, with the most recent > version available here, I believe: > https://developer.arm.com/docs/101129/latest > > I am not certain of the completion status of the AArch64 implementation. > The libmvec implementation for Intel has been around for a long time. > > Hope that at least starts to help, > Bill Additionally, here is GLIBC's introduction of libmvec: https://sourceware.org/glibc/wiki/libmvec Bert.