Charles Schlosser
2b954be663
fix typo in sse packetmath
2023-04-18 18:17:41 +00:00
Rasmus Munk Larsen
25685c90ad
Fix incorrect packet type for unsigned int version of pfirst() in MSVC workaround in PacketMath.h.
2023-04-18 17:46:23 +00:00
Pedro Gonnet
17b5b4de58
Add Packet4ui, Packet8ui, and Packet4ul to the SSE/AVX PacketMath.h headers
2023-04-17 23:33:59 +00:00
Rasmus Munk Larsen
df1049ddf4
Small packet math cleanup.
2023-04-04 16:14:32 +00:00
Rasmus Munk Larsen
c730290fa0
Use the correct truncating intrinsic for double->int casting.
2023-04-03 13:56:41 -07:00
Rasmus Munk Larsen
b8b8a26145
Add more missing vectorized casts for int on x86, and remove redundant unit tests
2023-03-24 16:02:00 +00:00
Rasmus Munk Larsen
09945f2cc1
Optimize casting for x86_64.
2023-03-21 18:24:16 +00:00
Rasmus Munk Larsen
d6235d76db
Clean up generic packetmath specializations for various backends with the help of a macro.
2023-03-10 22:02:23 +00:00
Rasmus Munk Larsen
ce62177b5b
Vectorize atanh & add a missing definition and unit test for atan.
2023-02-21 03:14:05 +00:00
Charles Schlosser
049a144798
Add typed logicals
2023-02-18 01:23:47 +00:00
Sean McBride
d70b4864d9
issue #2581 : review and cleanup of compiler version checks
2023-01-17 18:58:34 +00:00
Charles Schlosser
82b152dbe7
Add signbit function
2022-11-04 00:31:20 +00:00
Rasmus Munk Larsen
c475228b28
Vectorize atan() for double.
2022-10-01 01:49:30 +00:00
Rasmus Munk Larsen
7b2901e2aa
Add vectorized integer division for int32 with AVX512, AVX or SSE.
2022-09-21 00:27:23 +00:00
Rasmus Munk Larsen
f913a40678
Revert "Add AVX int32_t pdiv"
...
This reverts commit ea84e7ad63
2022-09-16 22:48:08 +00:00
Charles Schlosser
ea84e7ad63
Add AVX int32_t pdiv
2022-09-16 17:06:29 +00:00
Rasmus Munk Larsen
bd393e15c3
Vectorize acos, asin, and atan for float.
2022-08-29 19:49:33 +00:00
Charles Schlosser
e5af9f87f2
Vectorize pow for integer base / exponent types
2022-08-29 19:23:54 +00:00
Rasmus Munk Larsen
7064ed1345
Specialize psign<Packet8i> for AVX2, don't vectorize psign<bool>.
2022-08-26 17:02:37 +00:00
Rasmus Munk Larsen
6aad0f821b
Fix psign for unsigned integer types, such as bool.
2022-08-22 20:19:35 +00:00
Rasmus Munk Larsen
97e0784dc6
Vectorize the sign operator in Eigen.
2022-08-09 19:54:57 +00:00
aaraujom
d49ede4dc4
Add AVX512 s/dgemm optimizations for compute kernel (2nd try)
2022-05-28 02:00:21 +00:00
Eisuke Kawashima
ac5c83a3f5
unset executable flag
2022-05-22 22:47:43 +09:00
Antonio Sánchez
9b9496ad98
Revert "Add AVX512 optimizations for matrix multiply"
...
This reverts commit 25db0b4a82
2022-05-13 18:50:33 +00:00
aaraujom
25db0b4a82
Add AVX512 optimizations for matrix multiply
2022-05-12 23:41:19 +00:00
Sean McBride
f1b9692d63
Removed EIGEN_UNUSED decorations from many functions that are in fact used
2022-03-03 20:19:33 +00:00
Rasmus Munk Larsen
8b875dbef1
Changes to fast SQRT/RSQRT
2022-02-23 17:32:21 +00:00
Ramil Sattarov
f9b7564faa
E2K: initial support of LCC MCST compiler for the Elbrus 2000 CPU architecture
2022-02-23 17:07:34 +00:00
Rasmus Munk Larsen
979fdd58a4
Add generic fast psqrt and prsqrt impls and make them correct for 0, +Inf, NaN, and negative arguments.
2022-02-05 00:20:13 +00:00
Antonio Sánchez
4bffbe84f9
Restrict GCC<6.3 maxpd workaround to only gcc.
2022-02-04 22:47:34 +00:00
Rasmus Munk Larsen
8f2c6f0aa6
Make preciprocal IEEE compliant w.r.t. 1/0 and 1/inf.
2022-01-26 20:38:05 +00:00
Rasmus Munk Larsen
51311ec651
Remove inline assembly for FMA (AVX) and add remaining extensions as packet ops: pmsub, pnmadd, and pnmsub.
2022-01-26 04:25:41 +00:00
Rasmus Munk Larsen
ea2c02060c
Add reciprocal packet op and fast specializations for float with SSE, AVX, and AVX512.
2022-01-21 23:49:18 +00:00
Kolja Brix
8d81a2339c
Reduce usage of reserved names
2022-01-10 20:53:29 +00:00
Rasmus Munk Larsen
96dc37a03b
Some fixes/cleanups for numeric_limits & fix for related bug in psqrt
2022-01-07 01:10:17 +00:00
Erik Schultheis
dee6428a71
fixed clang warnings about alignment change and floating point precision
2021-12-18 17:18:16 +00:00
Erik Schultheis
cc11e240ac
Some further cleanup
2021-12-06 18:01:15 +00:00
Erik Schultheis
ec2fd0f7ed
Require recent GCC and MSCV and removed EIGEN_HAS_CXX14 and some other feature test macros
2021-12-01 00:48:34 +00:00
Ilya Tokar
e1cb6369b0
Add AVX vector path to float2half/half2float
...
Makes e. g. matrix multiplication 2x faster:
name old cpu/op new cpu/op delta
BM_convers 181ms ± 1% 62ms ± 9% -65.82% (p=0.016 n=4+5)
Tested on all possible input values (not adding tests, since they
take a long time).
2021-10-28 13:59:01 -04:00
sciencewhiz
4b6036e276
fix various typos
2021-09-22 16:15:06 +00:00
Antonio Sanchez
3c724c44cf
Fix strict aliasing bug causing product_small failure.
...
Packet loading is skipped due to aliasing violation, leading to nullopt matrix
multiplication.
Fixes #2327 .
2021-09-17 21:09:34 +00:00
Rasmus Munk Larsen
d7d0bf832d
Issue an error in case of direct inclusion of internal headers.
2021-09-10 19:12:26 +00:00
Jakub Lichman
dc5b1f7d75
AVX512 and AVX2 support for Packet16i and Packet8i added
2021-08-25 19:38:23 +00:00
Rasmus Munk Larsen
9312a5bf5c
Implement a generic vectorized version of Smith's algorithms for complex division.
2021-07-01 23:31:12 +00:00
Rasmus Munk Larsen
52a5f98212
Get rid of code duplication for conj_helper. For packets where LhsType=RhsType a single generic implementation suffices. For scalars, the generic implementation of pconj automatically forwards to numext::conj, so much of the existing specialization can be avoided. For mixed types we still need specializations.
2021-06-24 15:47:48 -07:00
guoqiangqi
3d9051ea84
Changing the storage of the SSE complex packets to that of the wrapper. This should fix #2242 .
2021-05-10 23:53:16 +00:00
Christoph Hertzberg
722ca0b665
Revert addition of unused paddsub<Packet2cf>. This fixes #2242
2021-05-06 18:36:47 +02:00
Christoph Hertzberg
9357feedc7
Avoid using uninitialized inputs and if available, use slightly more efficient movsd instruction for pset1<Packet2cf>.
2021-04-13 01:36:59 +02:00
David Tellenbach
eb71e5db98
Fix another warning on missing commas
2021-03-17 03:07:04 +01:00
David Tellenbach
9fb7062440
Silence warning on comma at end of enumerator list
2021-03-17 01:46:52 +01:00