-
assigned issue to
Support the vectorization of integral complex numbers
Issue #21
resolved
Description
In order to achieve maximum performance on all platforms the Blaze library provides support for the vectorization of single and double precision complex numbers. However, it is currently missing the support for the vectorization of integral complex numbers:
blaze::DynamicVector< complex<float> > a, b, c;
c = a + b; // Fully vectorized, achieves maximum performance
blaze::DynamicVector< complex<int> > x, y, z;
z = x + y; // Not vectorized, only achieves scalar performance
Since there are also use cases for integral complex numbers, Blaze should provide full vectorization for all kinds of integral complex numbers.
Tasks
- provide support for the vectorization of integral complex numbers with SSE, AVX(2), and AVX512 (aka MIC)
- provide a full documentation of the vectorization
- ensure compatibility with all existing vector and matrix classes
- ensure compatibility with all existing vector and matrix expressions
- guarantee maximum performance of the vectorization
- ensure correctness for all supported compilers and platforms
Comments (3)
-
reporter -
reporter - changed status to open
-
reporter - changed status to resolved
The feature has been implemented, tested, optimized and documented as required. It is immediately available via cloning the Blaze repository and will be officially released in Blaze 2.5.
- Log in to comment