1075 Commits

Author SHA1 Message Date
Alex Coyte
a97cdba8cc rose merges: why not dedupe transient engines?
We avoid merging different transient engines as it may force us to run heavier
engines and no stream state is consumed either way. However, there should be
no harm in just removing duplicate instances of a transient engine.
2017-09-18 13:22:56 +10:00
Alex Coyte
2a492273b5 remove !LBR constraints from merge passes
we have either converted candidates to castles already or we have converted them
back in the hope of merging them with other holders
2017-09-18 13:22:56 +10:00
Matthew Barr
b259283d6b cmake: set isystem flag for older cmake 2017-08-21 11:27:20 +10:00
Matthew Barr
96f57a9c2e icc: disable more warnings 2017-08-21 11:27:03 +10:00
Matthew Barr
d9030805de cmake: use abi-version on older gcc 2017-08-21 11:25:21 +10:00
Alex Coyte
4e9b0ad3fd rework mergeLeftfixesVariableLag() 2017-08-21 11:25:21 +10:00
Justin Viiret
164e5a929f fdr_compile: faster scoring code 2017-08-21 11:25:21 +10:00
Justin Viiret
3ff70d5568 insertion_ordered_{map,set}: add new containers
These are associative map/set structures that are iterable in insertion
order.
2017-08-21 11:25:21 +10:00
Alex Coyte
72973ccb47 violet: don't bother swapping holders if unable to trim graph 2017-08-21 11:25:21 +10:00
Alex Coyte
34ed4a6991 violet: maintain a reference to all the known implementable graphs 2017-08-21 11:25:12 +10:00
Alex Coyte
c693c44646 violet: do not remove more states from holders if dfa has been built 2017-08-21 11:25:12 +10:00
Wang, Xiang W
a645201675 UE-3147: ensure the same squash behavior for literals shared between different literal matchers 2017-08-21 11:25:03 +10:00
Justin Viiret
ba1df6412b groupByFragment: make fewer string copies 2017-08-21 11:24:52 +10:00
Justin Viiret
8eb55d4242 rose_build_exclusive: clean up use of vertex indices 2017-08-21 11:24:52 +10:00
Justin Viiret
d55e8fdf94 limex_compile: reduce state id lookups 2017-08-21 11:24:52 +10:00
Justin Viiret
58004f15f0 limex_compile: turn tugs into a bitset 2017-08-21 11:24:52 +10:00
Justin Viiret
1f2eb5a093 rose_build_lookaround: use vector in trimLiterals 2017-08-21 11:24:52 +10:00
Justin Viiret
4889a492e4 rose: more hash member funcs for rose types 2017-08-21 11:24:52 +10:00
Justin Viiret
09938d532f rose: return a vector from findEdgesByLiteral 2017-08-21 11:24:52 +10:00
Justin Viiret
927501175c rose_build_long_lit: refactor to do less dupe work
Also some performance improvements.
2017-08-21 11:24:52 +10:00
Alex Coyte
15784954e8 dynamic compression: add HS_CDECL to implementation 2017-08-21 11:24:52 +10:00
Alex Coyte
37033ef9bb Provide RoseResources to roseQuality.
RoseResources is an alternative to manually digging through the bytecode.
2017-08-21 11:24:52 +10:00
Alex Coyte
778addadc5 mangle fdr conf parts of scratch as well 2017-08-21 11:23:54 +10:00
Alex Coyte
ffc2d578b1 roseQuality() no longer needs to be part of rose's API. 2017-08-21 11:23:41 +10:00
Alex Coyte
41783fe912 more comments on hwlm/fdr's start parameter 2017-08-21 11:23:41 +10:00
Matthew Barr
56ec2dfc4a Remove out of date debug output 2017-08-21 11:23:41 +10:00
Alex Coyte
a847b4307a add dynamic stream compression to fat runtime 2017-08-21 11:23:41 +10:00
Matthew Barr
d33dcc0534 Remove unwanted move constructor 2017-08-21 11:20:22 +10:00
Matthew Barr
b8753e3daf clean up loops and add AVX-512 2017-08-21 11:20:22 +10:00
Matthew Barr
9d5a00bde1 Open input path once using file descriptor 2017-08-21 11:20:22 +10:00
Matthew Barr
7bcb58dea0 Catch by reference not value 2017-08-21 11:20:20 +10:00
Matthew Barr
30f93634b8 use string equality operator 2017-08-21 11:19:20 +10:00
Matthew Barr
c7f3150141 restore formatting flags after use 2017-08-21 11:19:20 +10:00
Matthew Barr
3d58ce83bd hsbench: use a memstream instead of a temp file 2017-08-21 11:19:20 +10:00
Alex Coyte
d878e8cdf3 add dynamic compression to the public api 2017-08-21 11:19:20 +10:00
Alex Coyte
e099d85524 CMake: put the stream compress files in the correct part 2017-08-21 11:19:11 +10:00
Alex Coyte
7b17f0eed7 dev reference documentation for stream compression 2017-08-21 11:19:11 +10:00
Hong, Yang A
205a5bc98f multibit compression support 2017-08-21 11:19:11 +10:00
Alex Coyte
5f6291529f hsbench: add stream compress functionality 2017-08-21 11:19:11 +10:00
Alex Coyte
952f0aad21 support dynamic stream compression 2017-08-21 11:18:54 +10:00
Alex Coyte
d9e2c3daca make ComponentRepeat::vacuous_everywhere() more accurate 2017-08-21 11:18:54 +10:00
Alex Coyte
1f3cfdccef mergeCastle: merge common repeats from the castles 2017-08-21 11:18:54 +10:00
Alex Coyte
f8544505ce mergeLeftfixesVariableLag: update comments, debugging support 2017-08-21 11:18:54 +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
Justin Viiret
14cf5c3684 small_vector: require boost >= 1.61
We use the small_vector constructors introduced in Boost 1.61 (trac bug
11866, github commit b436c91). If the Boost version is too old, we fall
back to using std::vector.
2017-08-21 11:18:43 +10:00
Matthew Barr
2a044427c8 cmake: another convenience lib for compile side 2017-08-21 11:18:43 +10:00
Alex Coyte
68c8845d15 Do equivalency removal before violet's implementablity check.
This is helpful as removing/restoring literals may introduce redundancy in the
graphs. Also improve the implementation by caching known good holders.
2017-08-21 11:18:30 +10:00
Alex Coyte
aa6025012b Ensure max width of repeat before transforming graph. 2017-08-21 11:18:30 +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