apostolos
|
6f88ecac44
|
Supervector test fixes
|
2021-10-12 11:51:34 +03:00 |
|
apostolos
|
ae6bc52076
|
SuperVector AVX512 implementations
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
7ae636dfe9
|
really fix lshift for avx2
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
d04b899c29
|
fix truffle SIMD for S>16 as well
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
b42b187712
|
add AVX2 specializations
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
dede600637
|
lots of fixes to AVX2 implementation
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
c45e72775f
|
convert print helper functions to class methods
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
d453a612dc
|
fix last failing Shufti/Truffle tests
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
ec3f108d71
|
fix arm SuperVector implementation
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
0ed10082b1
|
fix rtruffle, was failing Lbr and a few ReverseTruffle tests
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
f425951b49
|
fix x86 debug alignr
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
845e533b66
|
move firstMatch, lastMatch to own header in util
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
41ff0962c4
|
minor fixes
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
6d8f3b9ff8
|
compilation fixes for debug mode
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
d7b247a949
|
fix arm implementation of alignr()
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
28b2949396
|
harmonise syntax of x86 SuperVector impl.cpp like arm, fix alignr, define printv_* functions when on debug mode only
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
9de3065e68
|
style fixes
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
e0a45a354d
|
removed obsolete file
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
2753dbb3b0
|
rename supervector class header, use dup_*() functions names instead of set1_*(), minor fixes
|
2021-10-12 11:51:34 +03:00 |
|
apostolos
|
1ce5e17ce9
|
Truffle simd vectorized
|
2021-10-12 11:51:34 +03:00 |
|
George Wort
|
d1009e8830
|
Fix error in initial noodle double final call.
Change-Id: Ie044988f183b47e0b2f1eed3b4bd23de75c3117d
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
8b09ecfe48
|
nits
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
cceb599fc9
|
fix typo
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
e49fa3a97a
|
fix unit tests, and resp. ARM SuperVector methods based on those unit tests, add print functions for SuperVector
|
2021-10-12 11:51:34 +03:00 |
|
George Wort
|
d6df8116a5
|
Add SVE2 support for noodle
Change-Id: Iacb7d1f164bdd0ba50e2e13d26fe548cf9b45a6a
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
acca824dea
|
add missing ARM SuperVector methods, some tests still fail, WIP
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
6fbd18183a
|
rename arm impl.hpp to impl.cpp, add operator|() to SuperVector class
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
23b075cbd4
|
refactor shufti algorithm to use SuperVector class, WIP
|
2021-10-12 11:51:34 +03:00 |
|
George Wort
|
3ee7b75ee0
|
Add SVE, SVE2, and SVE2_BITPERM as targets
Change-Id: I5231e2eb0a31708a16c853dc83ea48db32e0b0a5
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
6526df81e4
|
add more functions, move defines here, enable inlining of template specializations only when running optimized code
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
d8b5eb5d17
|
fix compilation on C++
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
273b9683ac
|
simplify function
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
e215157a21
|
move definitions elsewhere
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
05c7c8e576
|
move SuperVector versions of noodleEngine scan functions to _simd.hpp file
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
6e63aafbea
|
add arm support for the new SuperVector class
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
c6406bebde
|
simplify scanSingleMain() and scanDoubleMain()
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
f77837130d
|
delete separate implementations
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
e6c1fa04ce
|
add C++ template SIMD library (WIP)
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
ede2b18564
|
add generic SIMD implementation
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
7a9a2dd0dc
|
convert to C++
|
2021-10-12 11:51:34 +03:00 |
|
Konstantinos Margaritis
|
2805ff038a
|
revert to push_back()
|
2021-10-12 11:51:33 +03:00 |
|
Konstantinos Margaritis
|
52661f35e8
|
add global definitions for CHUNKSIZE/VECTORSIZE, define HAVE_AVX512* only when BUILD_AVX512 is also enabled
|
2021-10-12 11:51:33 +03:00 |
|
Konstantinos Margaritis
|
831091db9e
|
fix typo
|
2021-10-12 11:51:33 +03:00 |
|
Konstantinos Margaritis
|
556206f138
|
replace push_back by emplace_back where possible
|
2021-10-12 11:51:33 +03:00 |
|
Konstantinos Margaritis
|
ec5531a6b1
|
minor optimizations
|
2021-10-12 11:50:32 +03:00 |
|
Konstantinos Margaritis
|
d3ff893871
|
prefetch works best when addresses are 64-byte aligned
|
2021-10-12 11:50:32 +03:00 |
|
Konstantinos Margaritis
|
521f233cfd
|
Revert "replace long macro and switch statement with function pointer array and branchless execution"
This reverts commit cc9dfed2494d709aac79051c29adb0a563903ba9.
|
2021-10-12 11:50:32 +03:00 |
|
Konstantinos Margaritis
|
92916e311f
|
replace long macro and switch statement with function pointer array and branchless execution
|
2021-10-12 11:50:32 +03:00 |
|
Konstantinos Margaritis
|
58cface115
|
optimise case handling
|
2021-10-12 11:50:32 +03:00 |
|
Konstantinos Margaritis
|
e3e101b412
|
simplify and make scanSingle*()/scanDouble*() more uniform
|
2021-10-12 11:50:32 +03:00 |
|