Vectorcamp
2231f7c024
compile fixes for vsc port
2021-10-14 13:53:55 +03:00
Konstantinos Margaritis
e35b88f2c8
use STL make_unique, remove wrapper header, breaks C++17 compilation
2021-10-12 11:51:34 +03:00
Konstantinos Margaritis
556206f138
replace push_back by emplace_back where possible
2021-10-12 11:51:33 +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
27bd09454f
use correct function names for AVX512, fix build failure
2021-02-15 13:54:19 +02:00
Chang, Harry
56cb107005
AVX512VBMI Fat Teddy.
2021-01-25 14:13:13 +02:00
Konstantinos Margaritis
87413fbff0
optimize get_conf_stride_1()
2021-01-25 12:13:35 +02:00
Konstantinos Margaritis
4686ac47b6
replace andn() by explicit bitops and group loads/stores, gives ~1% gain
2021-01-25 12:13:35 +02:00
Konstantinos Margaritis
b62247a36e
borrow cache prefetching tricks from the Marvell port, seem to improve performance by 5-28%
2021-01-25 12:13:35 +02:00
Konstantinos Margaritis
39945b7775
clear zones array
2020-12-03 19:30:50 +02:00
Konstantinos Margaritis
17ab42d891
small optimization that was for some reason failing in ARM, should be faster anyway
2020-11-24 17:59:42 +02:00
Konstantinos Margaritis
5333467249
fix names, use own intrinsic instead of explicit _mm* ones
2020-09-23 11:51:21 +03:00
Konstantinos Margaritis
9f3ad89ed6
move andn helper function to bitutils.h
2020-09-22 12:17:27 +03:00
Chang, Harry
e665e959a0
Revert to AVX2 Fat Teddy instead of AVX512 reinforced Fat Teddy.
2020-05-25 13:47:53 +00:00
Chang, Harry
43204dda48
AVX512VBMI Teddy.
2020-05-25 13:47:53 +00:00
Hong, Yang A
23e5f06594
add new Literal API for pure literal expressions:
...
Design compile time api hs_compile_lit() and hs_compile_lit_multi()
to handle pure literal pattern sets. Corresponding option --literal-on
is added for hyperscan testing suites. Extended parameters and part of
flags are not supported for this api.
2019-08-13 14:51:38 +08:00
Mostafa Nazari
92edc37c1f
BUGFIX: fix Numerical result out of range error
...
Fix Error errno=34, fix Numerical result out of range error
issue: https://github.com/intel/hyperscan/issues/155
2019-08-13 14:49:24 +08:00
Hong, Yang A
f68723a606
literal matching: separate path for pure literal patterns
2019-01-21 09:59:22 +08:00
Matthew Barr
5fc2c803a2
teddy: alignment decl should match defn
...
Spotted by coverity. #174512
2017-09-18 13:29:34 +10:00
Justin Viiret
85c8822dd1
fdr_compile: simplify lambda use
...
This was failing to compile on MSVC.
2017-09-18 13:29:33 +10:00
Justin Viiret
36136f1003
fdr_compile: don't do string copies in isSuffix
2017-09-18 13:26:05 +10:00
Justin Viiret
164e5a929f
fdr_compile: faster scoring code
2017-08-21 11:25:21 +10:00
Alex Coyte
41783fe912
more comments on hwlm/fdr's start parameter
2017-08-21 11:23:41 +10:00
Chang, Harry
404f739811
Compile dump of teddy's nibble masks and reinforcement table in fdr_dump.cpp
2017-08-21 11:18:43 +10:00
Chang, Harry
72d21a9acf
Refactored building reinforcement table at compile time and updated comments.
2017-08-21 11:14:59 +10:00
Chang, Harry
2b1d3383aa
replace "_avx2" with "_fat".
2017-08-21 11:14:59 +10:00
Chang, Harry
8da2d13baa
AVX512 Reinforced FAT teddy.
2017-08-21 11:14:59 +10:00
Justin Viiret
9cf66b6ac9
util: switch from Boost to std::unordered set/map
...
This commit replaces the ue2::unordered_{set,map} types with their STL
versions, with some new hashing utilities in util/hash.h. The new types
ue2_unordered_set<T> and ue2_unordered_map<Key, T> default to using the
ue2_hasher.
The header util/ue2_containers.h has been removed, and the flat_set/map
containers moved to util/flat_containers.h.
2017-08-21 11:14:55 +10:00
Wang, Xiang W
252eb820c4
ue-3145: make parents of included literals exclusive
2017-08-21 11:12:36 +10:00
Wang, Xiang W
86c5f7feb1
FDR: Squash buckets of included literals in FDR confirm
...
- Change the compile of literal matchers to two passes.
- Reverse the bucket assignment in FDR, bucket with longer literals has
smaller bucket id.
- Squash the buckets of included literals and jump to the the program of
included literals directly from parent literal program without going
through FDR confirm for included iterals.
2017-08-21 11:12:36 +10:00
Chang, Harry
d2b5523dd8
fix typo "ones_u32a" => "ones_u32"
2017-08-21 11:12:36 +10:00
Chang, Harry
68e08d8e18
AVX512 reinforced teddy.
2017-08-21 11:12:36 +10:00
Wang, Xiang W
67a8f43355
literal matchers: change context passed to callback to scratch
2017-08-21 11:12:36 +10:00
Wang, Xiang W
815be3fa2b
flood detection: debug output fix
2017-08-21 11:12:36 +10:00
Wang, Xiang W
ebb1b0006b
remove start argument in literal matcher callbacks
2017-08-21 11:12:36 +10:00
Chang, Harry
35a42061f6
patch for invalid reading 1 byte in Reinforced Teddy, abandon fetching the first reinforced byte.
2017-08-21 11:12:26 +10:00
Justin Viiret
cbcc46444b
fdr/teddy: dump confirm lit load
2017-08-21 11:10:11 +10:00
Justin Viiret
e4788aae1a
fdr/teddy: store and dump number of strings
2017-08-21 11:10:11 +10:00
Justin Viiret
a17ef3e48a
fdr_dump: dump FDRConfirm structures for fdr
2017-08-21 11:10:11 +10:00
Chang, Harry
dbd3f66e87
Reinforced Teddy with 1-byte approach, based on "shift-or" and AVX2.
2017-08-21 11:10:11 +10:00
Justin Viiret
cc4a5cc36f
teddy_compile: style fixes, whitespace
2017-08-21 11:10:01 +10:00
Justin Viiret
84a09d35d6
teddy_compile: use faster small containers
2017-08-21 11:10:01 +10:00
Justin Viiret
64db576b9e
fdr_confirm_compile: literals are now < 8 bytes
2017-08-21 10:39:00 +10:00
Justin Viiret
d94bf2fd62
fdr_confirm_compile: wrap comment
2017-08-21 10:39:00 +10:00
Justin Viiret
2b9b2ca911
fdr/teddy: remove padding from structures
2017-08-21 10:39:00 +10:00
Justin Viiret
71bd1c8dfe
teddy: clean up compile to match fdr style
2017-08-21 10:39:00 +10:00
Justin Viiret
e9d85f7b51
fdr_confirm: renumber FDR_LIT_FLAG_NOREPEAT
2017-08-21 10:39:00 +10:00
Justin Viiret
b126cbf556
fdr/teddy: simplify computing of confirm base
2017-08-21 10:39:00 +10:00