]>
git.ipfire.org Git - thirdparty/vectorscan.git/log
Apostolos Tapsas [Wed, 24 Nov 2021 15:03:49 +0000 (15:03 +0000)]
*fix palignr implementation for VSX Release mode
*add unit test for palignr
*enable unit test building for Release mode
Apostolos Tapsas [Wed, 24 Nov 2021 12:11:21 +0000 (12:11 +0000)]
Removed accidentaly included header file
Apostolos Tapsas [Wed, 24 Nov 2021 11:18:18 +0000 (11:18 +0000)]
found and solved very hard to track bug of intrinsic function palignr, that manifested only in Release builds and not Debug builds in a particular number of tests
Apostolos Tapsas [Tue, 16 Nov 2021 15:24:22 +0000 (15:24 +0000)]
WIP:tracking last bugs in failing tests for release build
Apostolos Tapsas [Sat, 13 Nov 2021 19:36:46 +0000 (19:36 +0000)]
vermicelli and match implementations for ppc64el added
apostolos [Sat, 13 Nov 2021 16:58:22 +0000 (18:58 +0200)]
resolving conficts after merging
Konstantinos Margaritis [Fri, 12 Nov 2021 21:06:46 +0000 (23:06 +0200)]
Merge pull request #78 from VectorCamp/feature/refactor-vermicelli
Feature/refactor vermicelli
apostolos [Wed, 10 Nov 2021 13:12:25 +0000 (15:12 +0200)]
SuperVector opandnot test enriched
apostolos [Wed, 10 Nov 2021 07:01:28 +0000 (09:01 +0200)]
test for load m128 from u64a function added
Konstantinos Margaritis [Mon, 8 Nov 2021 19:45:36 +0000 (19:45 +0000)]
add len parameter to arm matchers as well
Konstantinos Margaritis [Mon, 8 Nov 2021 19:45:21 +0000 (19:45 +0000)]
split vermicelli block implementations per arch
Apostolos Tapsas [Mon, 8 Nov 2021 14:22:58 +0000 (14:22 +0000)]
simd_utils functions fixed
Apostolos Tapsas [Fri, 5 Nov 2021 13:34:48 +0000 (13:34 +0000)]
SuperVector constructors as well as andnot implementation fixed
Konstantinos Margaritis [Fri, 5 Nov 2021 12:30:22 +0000 (14:30 +0200)]
add len parameter and mask, fixes corner cases on AVX512
Konstantinos Margaritis [Tue, 2 Nov 2021 20:30:53 +0000 (22:30 +0200)]
remove vermicelli.h and replace it with vermicelli.hpp
Konstantinos Margaritis [Tue, 2 Nov 2021 20:30:21 +0000 (22:30 +0200)]
refactor vermicelliDoubleMaskedExec()
Konstantinos Margaritis [Mon, 1 Nov 2021 16:40:17 +0000 (16:40 +0000)]
add vermicelli.hpp to includes
Konstantinos Margaritis [Mon, 1 Nov 2021 16:40:01 +0000 (16:40 +0000)]
remove vermicelli_sse.h
Konstantinos Margaritis [Mon, 1 Nov 2021 16:31:38 +0000 (16:31 +0000)]
fix arm matchers
Konstantinos Margaritis [Mon, 1 Nov 2021 14:51:18 +0000 (16:51 +0200)]
complete refactoring and unification of Vermicelli functions
Konstantinos Margaritis [Mon, 1 Nov 2021 14:50:38 +0000 (16:50 +0200)]
remove unneeded header
Konstantinos Margaritis [Wed, 27 Oct 2021 09:32:54 +0000 (12:32 +0300)]
add new include file
Konstantinos Margaritis [Wed, 27 Oct 2021 09:32:03 +0000 (12:32 +0300)]
renamed matcher functions, added new ones for Vermicelli
Konstantinos Margaritis [Wed, 27 Oct 2021 09:31:04 +0000 (12:31 +0300)]
nits
Konstantinos Margaritis [Wed, 27 Oct 2021 09:30:42 +0000 (12:30 +0300)]
move casemask helper functions to separate header
Konstantinos Margaritis [Wed, 27 Oct 2021 09:29:59 +0000 (12:29 +0300)]
add to CMake
Konstantinos Margaritis [Wed, 27 Oct 2021 09:29:39 +0000 (12:29 +0300)]
added refactored vermicelli_simd.cpp implementation
Konstantinos Margaritis [Mon, 1 Nov 2021 12:48:17 +0000 (14:48 +0200)]
add Vermicelli/RVermicelli to microbenchmark utility
Konstantinos Margaritis [Tue, 19 Oct 2021 18:23:13 +0000 (18:23 +0000)]
add arm vector types in union, avoid -flax-conversions, fix castings
Konstantinos Margaritis [Mon, 1 Nov 2021 14:51:18 +0000 (16:51 +0200)]
complete refactoring and unification of Vermicelli functions
Konstantinos Margaritis [Mon, 1 Nov 2021 14:50:38 +0000 (16:50 +0200)]
remove unneeded header
apostolos [Mon, 1 Nov 2021 08:05:25 +0000 (10:05 +0200)]
prints commants and formating fixes
Konstantinos Margaritis [Wed, 27 Oct 2021 09:32:54 +0000 (12:32 +0300)]
add new include file
Konstantinos Margaritis [Wed, 27 Oct 2021 09:32:03 +0000 (12:32 +0300)]
renamed matcher functions, added new ones for Vermicelli
Konstantinos Margaritis [Wed, 27 Oct 2021 09:31:04 +0000 (12:31 +0300)]
nits
Konstantinos Margaritis [Wed, 27 Oct 2021 09:30:42 +0000 (12:30 +0300)]
move casemask helper functions to separate header
Konstantinos Margaritis [Wed, 27 Oct 2021 09:29:59 +0000 (12:29 +0300)]
add to CMake
Konstantinos Margaritis [Wed, 27 Oct 2021 09:29:39 +0000 (12:29 +0300)]
added refactored vermicelli_simd.cpp implementation
apostolos [Tue, 26 Oct 2021 08:55:02 +0000 (11:55 +0300)]
nits
apostolos [Tue, 26 Oct 2021 08:48:33 +0000 (11:48 +0300)]
Special case for Shuffle test added as well as comments for respectives implementations
Apostolos Tapsas [Sun, 24 Oct 2021 16:52:12 +0000 (16:52 +0000)]
Shuffle simd and SuperVector implementetions as well as their test realy fixed
Apostolos Tapsas [Fri, 22 Oct 2021 11:55:39 +0000 (11:55 +0000)]
SuperVector shuffle implementation and test function optimized
apostolos [Fri, 22 Oct 2021 09:38:16 +0000 (12:38 +0300)]
print functions missing keywords replaced
apostolos [Fri, 22 Oct 2021 09:36:07 +0000 (12:36 +0300)]
print functions keyword renamed
apostolos [Fri, 22 Oct 2021 08:17:43 +0000 (11:17 +0300)]
test for movemask and shuffle cases added
Apostolos Tapsas [Fri, 22 Oct 2021 07:05:55 +0000 (07:05 +0000)]
expand128 bugs fixed
apostolos [Fri, 22 Oct 2021 06:46:04 +0000 (09:46 +0300)]
expand128 implementation was changed to be like arm's
Apostolos Tapsas [Thu, 21 Oct 2021 13:34:02 +0000 (13:34 +0000)]
WIP: simd & bitutils files finctions fixes
Apostolos Tapsas [Mon, 18 Oct 2021 12:26:38 +0000 (12:26 +0000)]
SuperVector operators fixes and simd_utils low/high64 functions implementations added
Apostolos Tapsas [Fri, 15 Oct 2021 14:07:17 +0000 (14:07 +0000)]
SuperVector vsh* implementations
apostolos [Thu, 14 Oct 2021 13:26:59 +0000 (16:26 +0300)]
match file for ARCH_PPC64EL added
apostolos [Thu, 14 Oct 2021 13:01:21 +0000 (16:01 +0300)]
trufle and shufle implementations for ARCH_PPC64EL
apostolos [Thu, 14 Oct 2021 12:56:13 +0000 (15:56 +0300)]
blockSigleMask implementations for ARCH_PPC64 added
apostolos [Thu, 14 Oct 2021 12:08:23 +0000 (15:08 +0300)]
Supervector vsh* added
Apostolos Tapsas [Thu, 14 Oct 2021 10:33:10 +0000 (10:33 +0000)]
WIP: Power VSX support almost completed
Vectorcamp [Wed, 6 Oct 2021 10:23:46 +0000 (06:23 -0400)]
compile fixes for vsc port
apostolos [Mon, 27 Sep 2021 12:14:07 +0000 (15:14 +0300)]
update powerpc simd util file functions
apostolos [Fri, 24 Sep 2021 10:01:14 +0000 (13:01 +0300)]
implementations for powerpc64el architecture
Vectorcamp [Thu, 23 Sep 2021 14:07:27 +0000 (10:07 -0400)]
ppc64el arcitecture added in CMakelists file
Vectorcamp [Thu, 23 Sep 2021 13:28:37 +0000 (09:28 -0400)]
test commit from VM and CMakelists add power support
Konstantinos Margaritis [Mon, 25 Jan 2021 22:44:38 +0000 (00:44 +0200)]
add initial ppc64el support
(cherry picked from commit
63e26a4b2880eda7b6ac7b49271d83ba3e6143c4 )
(cherry picked from commit
c214ba253327114c16d0724f75c998ab00d44919 )
Konstantinos Margaritis [Tue, 12 Oct 2021 10:33:40 +0000 (10:33 +0000)]
link benchmarks against static lib only as some symbols are not exposed in the shared lib
Konstantinos Margaritis [Tue, 12 Oct 2021 07:55:33 +0000 (10:55 +0300)]
Add missing copyright info from tampered files
Konstantinos Margaritis [Tue, 12 Oct 2021 05:50:45 +0000 (08:50 +0300)]
bump version
Konstantinos Margaritis [Mon, 11 Oct 2021 11:28:42 +0000 (14:28 +0300)]
fix multiple/undefined symbols when using fat runtimes
Konstantinos Margaritis [Fri, 8 Oct 2021 22:12:43 +0000 (22:12 +0000)]
add arm truffle block function
Konstantinos Margaritis [Fri, 8 Oct 2021 22:12:24 +0000 (22:12 +0000)]
add simd_onebit_masks as static in arm simd_utils.h as well
Konstantinos Margaritis [Fri, 8 Oct 2021 21:36:21 +0000 (00:36 +0300)]
simplify truffle and provide arch-specific block functions
Konstantinos Margaritis [Fri, 8 Oct 2021 21:35:59 +0000 (00:35 +0300)]
simplify shufti and provide arch-specific block functions
Konstantinos Margaritis [Fri, 8 Oct 2021 21:35:04 +0000 (00:35 +0300)]
rearrange method declarations
Konstantinos Margaritis [Fri, 8 Oct 2021 21:34:35 +0000 (00:34 +0300)]
remove simd_utils.c
Konstantinos Margaritis [Fri, 8 Oct 2021 21:31:13 +0000 (00:31 +0300)]
add x86 vsh* implementations
Konstantinos Margaritis [Fri, 8 Oct 2021 21:29:33 +0000 (00:29 +0300)]
use movemask
Konstantinos Margaritis [Fri, 8 Oct 2021 21:29:08 +0000 (00:29 +0300)]
add header define to avoid double inclusion
Konstantinos Margaritis [Fri, 8 Oct 2021 21:28:22 +0000 (00:28 +0300)]
do not include the Supervector impl.cpp files in fat runtime
Konstantinos Margaritis [Fri, 8 Oct 2021 21:25:29 +0000 (00:25 +0300)]
atm, do not built benchmark tool for fat runtime, as the function names are modified, need to rethink this
Konstantinos Margaritis [Sun, 3 Oct 2021 10:51:31 +0000 (10:51 +0000)]
Improve benchmarks
Konstantinos Margaritis [Sun, 3 Oct 2021 10:51:03 +0000 (10:51 +0000)]
optimize and simplify Shufti and Truffle to work with a single block method instead
Konstantinos Margaritis [Sun, 3 Oct 2021 10:49:38 +0000 (10:49 +0000)]
no need to convert to size_t
Konstantinos Margaritis [Sun, 3 Oct 2021 10:49:09 +0000 (10:49 +0000)]
remove asserts, as they are not needed
Konstantinos Margaritis [Sun, 3 Oct 2021 10:47:53 +0000 (10:47 +0000)]
firstMatch/lastMatch are now arch-dependent, emulating movemask on non-Intel is very costly, the alternative is almost twice as fast on Arm
Konstantinos Margaritis [Sun, 3 Oct 2021 10:46:47 +0000 (10:46 +0000)]
fix for new pshufb
Konstantinos Margaritis [Sun, 3 Oct 2021 10:43:13 +0000 (10:43 +0000)]
Changes/Additions to SuperVector class * added ==,!=,>=,>,<=,< operators * reworked shift operators to be more uniform and orthogonal, like Arm ISA * Added Unroller class to allow handling of multiple cases but avoid code duplication * pshufb method can now emulate Intel or not (avoids one instruction).
Konstantinos Margaritis [Mon, 20 Sep 2021 20:52:31 +0000 (23:52 +0300)]
initial SSE/AVX2 implementation
Duncan Bellamy [Mon, 27 Sep 2021 08:37:00 +0000 (09:37 +0100)]
remove adding CMAKE_CXX_IMPLICIT_LINK_LIBRARIES to PRIVATE_LIBS
as on alpine linux this add gcc_s which is a shared library
on alpine:
Libs.private: -lstdc++ -lm -lssp_nonshared -lgcc_s -lgcc -lc -lgcc_s -lgcc
apostolos [Wed, 22 Sep 2021 09:05:28 +0000 (12:05 +0300)]
Unify benchmarks, more accurate measurements
Konstantinos Margaritis [Wed, 22 Sep 2021 08:21:37 +0000 (11:21 +0300)]
Unify benchmarks, more accurate measurements
(cherry picked from commit
f50d7656bc78c54ec25916b6c8e655c188d79a13 )
apostolos [Thu, 16 Sep 2021 14:23:10 +0000 (17:23 +0300)]
benchmarks functions replaced with lambdas
apostolos [Wed, 15 Sep 2021 10:03:25 +0000 (13:03 +0300)]
raw pointers replaced with smart pointers
apostolos [Tue, 14 Sep 2021 13:35:33 +0000 (16:35 +0300)]
nit
apostolos [Tue, 14 Sep 2021 13:01:32 +0000 (16:01 +0300)]
nit
apostolos [Tue, 14 Sep 2021 12:32:26 +0000 (15:32 +0300)]
fix benchmarks outputs
apostolos [Mon, 13 Sep 2021 17:25:46 +0000 (20:25 +0300)]
bandwidth output fixes
apostolos [Mon, 13 Sep 2021 07:09:13 +0000 (10:09 +0300)]
size outup for case with match fixed
apostolos [Thu, 9 Sep 2021 09:06:02 +0000 (12:06 +0300)]
nits
apostolos [Thu, 9 Sep 2021 09:02:33 +0000 (12:02 +0300)]
size output fixed
apostolos [Tue, 7 Sep 2021 08:41:19 +0000 (11:41 +0300)]
nits
apostolos [Tue, 7 Sep 2021 08:01:10 +0000 (11:01 +0300)]
benchmarks output fixes
Konstantinos Margaritis [Thu, 2 Sep 2021 12:35:23 +0000 (15:35 +0300)]
add missing header
Konstantinos Margaritis [Thu, 2 Sep 2021 12:34:55 +0000 (15:34 +0300)]
remove confusing OPTIMISE flag