Skip to content

Initial implementation of single-precision AVX2 instructions.

Chris Cantwell requested to merge ccantwel/nektar:feature/avx2-float into master

Issue/feature addressed

Implements AVX2 instructions for floats as well as for Scalars. Also turn on avx2 on one CI system.

Proposed solution

Implement the instruction sets for floats in avx2.

Implementation

As above

Tests

Will now run CI system with avx2 turned on and so existing tests will act as a test. We have also added a UnitTest under UnitTests/SIMD which runs through float operations.

Notes

Note we have disabled all over vectorisation for now until they are also supporting floats (i.e. avx512, sse2, sve).

Checklist

  • Functions and classes, or changes to them, are documented.
  • User guide/documentation is updated.
  • Changelog is updated.
  • Suitable tests added for new functionality.
  • Newly added files are correctly formatted.
  • License added to any new files.
  • No extraneous files have been added (e.g. compiler output or test data files).
Edited by Spencer Sherwin

Merge request reports