Vc::currentImplementationSupported() fails
Matthias Kretz
[please enable javascript to see the address]
Tue May 2 13:30:55 CEST 2017
On Sonntag, 30. April 2017 09:49:35 CEST Kay F. Jahnke wrote:
> Hi group!
>
> I added a call to Vc::currentImplementationSupported() at the beginning
> of my main(), but it doesn't seem to detect when a compile for an
> unsupported implementation is run.
>
> My system has AVX2, so I tried compiling (with g++ and clang++) with
> -mavx512f, and alternatively, with -march=knl. In both cases, I ended up
> with an 'illegal instruction-core dumped' instead of the graceful 'sorry
> not supported' message I was anticipating. Am I missing something or is
> there maybe a bug?
>
> My build is from source with a checkout as per today.
master branch I guess? I think you're seeing this because AVX512 is not
implemented on master. Can you try compiling for AVX2 and running on an older
system? That should give you your expected error message.
The reason you see a SIGILL, even though Vc 1.x doesn't support AVX512 yet, is
that the compiler can now produce instructions for the extended ISA by
itself...
Cheers,
Matthias
BTW, development on master is in maintenance mode at this point. Work for
upcoming Vc 2.0 is going on in mkretz/datapar, which is an implementation of
the papers to the C++ committee.
--
──────────────────────────────────────────────────────────────────────────
Dr. Matthias Kretz https://kretzfamily.de
GSI Helmholtzzentrum für Schwerionenforschung https://gsi.de
SIMD easy and portable https://github.com/VcDevel/Vc
──────────────────────────────────────────────────────────────────────────
More information about the Vc
mailing list