Not logged in. Login

AVX-512 Support for Parabix

AVX-512 support for Parabix involves several elements.

Processor Detection

Processor detection is the activity of determining the specific capabilities of the current machine executing code. It is particularly important for dynamically compiled code as in the Parabix framework.

  • Implement AVX-512BW processor detection logic.

IDISA Builder for AVX512

  • Create an AVX512BW_Builder as a subclass of IDISA_Builder with BlockWidth = 512, and develop efficient implementations of critical Parabix operations
    • hsimd_packh and hsimd_packl for field width 16, 8, 4, and 2 in order to support efficient transposition
    • hsimd_signmask
    • bitblock_add_with_carry
    • bitblock_indexed_advance
  • Evaluate icgrep performance with AVX-512BW instructions vs. AVX2 and SSE2.
  • If time permits, investigate the efficient implementation of other operations.
    • simd_popcount
    • simd_pext
    • simd_pdep
Updated Mon Jan. 29 2018, 07:39 by cameron.