Rhaas/avx512

Merged
#17 · Created  · Last updated

Merged pull request

Vectors: use __AVX512ER__ instead of __knl__

aa3ad44·Author: ·Closed by: ·2019-02-22

Description

  • Vectors: Add helper function for floating point comparison

  • Vectors: Allow disabling AVX512 instructions

  • Vectors: Provide missing function vec_store_partial_prepare_fixed

  • Vectors: Implement kpown

  • Vectors: Correct function name

  • Vectors: Improve efficiency of logical operations on AVX512

  • Vectors: Clean up mask handling

  • Vectors: Improve efficiency of masked moves and stores

  • Vectors: Correct error in AVX512 sqrt implementation

    sqrt(0) led to nan.

  • Vectors: Insert some empty lines to make code more readable

  • Vectors: Add operator<<(ostream&, ...) for C++ vector type

  • Vectors: Add partial aligned store operations for C++ vector class

  • Vectors: Add C++ class for boolean vectors (i.e. mask vectors)

  • Vectors: Use "void" for unused template type

  • Vectors: Add namespace end comments

  • Vectors: Correct return type of any()

  • Vectors: Small change to masked store operations

  • Vectors: Implement masked load operations

  • Vectors: Add function to convert store masks to boolean vectors

  • Vectors: Implement a few missing k4pown functions

This pull request mostly add better support for the AVX512 instructions found in KNL and modern Intel Xeon / Core iN CPUs.

There is one bugfix commit “Correct error in AVX512 sqrt implemention” which is important for those architectures (eg to compute sqrt(detg)).

0 attachments

0 comments

Loading commits...