This is an archive of the discontinued LLVM Phabricator instance.

test-suite: add avx512 tests with miscellaneous intrinsics
ClosedPublic

Authored by itaraban on Sep 4 2018, 5:25 AM.

Details

Summary

Here is another bunch of avx512 tests. In each test we do miscellaneous operations(shuffles, compress, shifts and etc) and also check result.

Diff Detail

Repository
rL LLVM

Event Timeline

itaraban created this revision.Sep 4 2018, 5:25 AM

What is the long term plan with all of these? Are you intending to have full intrinsic coverage?

Also, I'm not very familiar with altering the test suite - what checks that a test machine has the cpu features to run particular ISAs? e.g. you seem to have AVX512F/AVX512DQ//AVX512BW tests in one file - so I guess this can't be tested on KNL?

Now I have only these tests(this patch and https://reviews.llvm.org/D51599), maybe later we'll add tests for new AVX512 instructions.

Currently tests are enabled only for skx(using cmake - CMakeLists.txt) and for machines with AVX512F instructions (using makefile - Makefile )
Later we can divide tests into groups and enable some tests on different architecture. Test-suite supports feature and architecture detection - https://reviews.llvm.org/rL321142 and https://reviews.llvm.org/rT321143

Maybe rename the test folder SingleSource/UnitTests/Vector/AVX512F to make it clear?

Some tests contain AVX512BW(For example, _mm512_shuffle_epi8) instructions.
I can add HAVE_X86_AVX512BW_INSTRUCTIONS to Makefile.

Some tests contain AVX512BW(For example, _mm512_shuffle_epi8) instructions.
I can add HAVE_X86_AVX512BW_INSTRUCTIONS to Makefile.

In which case I'd much prefer that you split tests and put those files under SingleSource/UnitTests/Vector/AVX512BW - do you need to split by VL as well?

@itaraban Are you still looking at these tests?

@itaraban Are you still looking at these tests?

Sorry, I will remake patch after - https://reviews.llvm.org/D55603

itaraban updated this revision to Diff 178235.Dec 14 2018, 8:13 AM

After commiting D55603, added changes:

  • separated tests into AVX512F, AVX512BWVL and AVX512DQ directories
  • moved main util header to Vector directory
RKSimon accepted this revision.Dec 15 2018, 4:44 AM

LGTM - @craig.topper what's the long term plan to ensure that we have full test coverage for intrinsics?

This revision is now accepted and ready to land.Dec 15 2018, 4:44 AM
This revision was automatically updated to reflect the committed changes.
test-suite/trunk/SingleSource/UnitTests/Vector/AVX512F/insert.c