George Wort
|
418851a26e
|
Remove possibly undefined behaviour from Noodle.
Change-Id: I9a7997cea6a48927cb02b00c5dba5009bbf83850
|
2021-07-26 00:10:54 +03:00 |
|
George Wort
|
f99c380167
|
Remove first check from scanDouble Noodle.
Change-Id: I00eabb3cb06ef6a2060df52c26fa8591907a2711
|
2021-07-26 00:10:54 +03:00 |
|
apostolos
|
4326aecfda
|
Supervector test fixes
|
2021-07-26 00:10:54 +03:00 |
|
apostolos
|
a98a114568
|
SuperVector AVX512 implementations
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
56b124b9a1
|
really fix lshift for avx2
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
6ad1e70c36
|
fix truffle SIMD for S>16 as well
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
46c37ece4b
|
add AVX2 specializations
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
65d911c976
|
lots of fixes to AVX2 implementation
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
517d2aa633
|
convert print helper functions to class methods
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
9c2c6fdcfc
|
fix last failing Shufti/Truffle tests
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
3021db0a17
|
fix arm SuperVector implementation
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
0576c5e8b1
|
fix rtruffle, was failing Lbr and a few ReverseTruffle tests
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
d1097e713d
|
fix x86 debug alignr
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
848a583599
|
move firstMatch, lastMatch to own header in util
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
e31dd448b4
|
minor fixes
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
69378e7eee
|
compilation fixes for debug mode
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
a5cce2670e
|
fix arm implementation of alignr()
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
736da56850
|
harmonise syntax of x86 SuperVector impl.cpp like arm, fix alignr, define printv_* functions when on debug mode only
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
f6edd100c4
|
style fixes
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
a6bbe55574
|
removed obsolete file
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
6348a2f222
|
rename supervector class header, use dup_*() functions names instead of set1_*(), minor fixes
|
2021-07-26 00:10:54 +03:00 |
|
apostolos
|
885a4da0c8
|
Truffle simd vectorized
|
2021-07-26 00:10:54 +03:00 |
|
George Wort
|
b190e9d364
|
Fix error in initial noodle double final call.
Change-Id: Ie044988f183b47e0b2f1eed3b4bd23de75c3117d
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
1c0d9f399f
|
nits
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
0fbd90c511
|
fix typo
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
f7ae729930
|
fix unit tests, and resp. ARM SuperVector methods based on those unit tests, add print functions for SuperVector
|
2021-07-26 00:10:54 +03:00 |
|
George Wort
|
530b33a309
|
Add SVE2 support for noodle
Change-Id: Iacb7d1f164bdd0ba50e2e13d26fe548cf9b45a6a
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
655c2eb87f
|
add missing ARM SuperVector methods, some tests still fail, WIP
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
38600b717e
|
rename arm impl.hpp to impl.cpp, add operator|() to SuperVector class
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
b33b7a3ee4
|
refactor shufti algorithm to use SuperVector class, WIP
|
2021-07-26 00:10:54 +03:00 |
|
George Wort
|
27b1bea462
|
Add SVE, SVE2, and SVE2_BITPERM as targets
Change-Id: I5231e2eb0a31708a16c853dc83ea48db32e0b0a5
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
cc26212560
|
add more functions, move defines here, enable inlining of template specializations only when running optimized code
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
74e460d89b
|
fix compilation on C++
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
492874db43
|
simplify function
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
c4685b14a6
|
move definitions elsewhere
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
faae8819f3
|
move SuperVector versions of noodleEngine scan functions to _simd.hpp file
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
d232a50d72
|
add arm support for the new SuperVector class
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
6e804d8b16
|
simplify scanSingleMain() and scanDoubleMain()
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
0ccf9280ff
|
delete separate implementations
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
73199585dd
|
add C++ template SIMD library (WIP)
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
dc519e22fc
|
add generic SIMD implementation
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
80a6b55bd4
|
convert to C++
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
61f68f9d3b
|
revert to push_back()
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
8d9dd3c286
|
add global definitions for CHUNKSIZE/VECTORSIZE, define HAVE_AVX512* only when BUILD_AVX512 is also enabled
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
c15018286a
|
fix typo
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
7c6e47c95b
|
replace push_back by emplace_back where possible
|
2021-07-26 00:10:54 +03:00 |
|
Konstantinos Margaritis
|
8d464477ad
|
minor optimizations
|
2021-03-16 17:47:00 +02:00 |
|
Konstantinos Margaritis
|
40531ad6e5
|
prefetch works best when addresses are 64-byte aligned
|
2021-03-12 10:10:53 +02:00 |
|
Konstantinos Margaritis
|
53a3e33204
|
Revert "replace long macro and switch statement with function pointer array and branchless execution"
This reverts commit cc9dfed249 .
|
2021-02-26 16:40:58 +02:00 |
|
Konstantinos Margaritis
|
cc9dfed249
|
replace long macro and switch statement with function pointer array and branchless execution
|
2021-02-26 16:39:24 +02:00 |
|