BitMagic release v7.2.0
Release Notes: BitMagic 7.2.0
-
Continued effort to provide more optimized version for ARM CPU.
Optimized bm::bvector<> bit-vector left-right shifting for better ARM performance.
As a low level function this functionality impacts multiple scenarious related to
costruction or update of sorted compressed containers. -
Lots of focus on improving compressed container serialization (compression rate).
New serialization format takes advantage of Binary Interpolated Coding which results in
significant reduction in size of serialized BLOBs.
For more detail please visit updated use case for compression of dictionaries here:
http://bitmagic.io/star-search.html
- The main focus of this release was to improve memory compact container for strings.
bm::str_sparse_vector<> while it is called "sparse vector" this container demonstrates
excellent compression performance on dense vectors (20 to 30% improvements on different cases).
- Performance improvements for bm::str_sparse_vector<>::const_iterator
(up to 2x times faster now) - bm::str_sparse_vector<>::const_iterator can now iterate on substrings
- new methods for bm::sparse_vector_scanner<>
bm::sparse_vector_scanner<>::find_eq_str_prefix(..) - prefix search
bm::sparse_vector_scanner<>::find_eq_str(..) scan the vector,
return bit-vector resultset of matching indexes - new example on how to use compressed vector functionality
(substring iterators, scanner)
https://github.com/tlk00/BitMagic/tree/master/samples/strsvsample06 - new algorithm for bit-transposed dictionary remapping, it is now based on
character frequency analysis and substitution similar to Huffman coding - fixed bug in bm::str_sparse_vector<>::back_insert_iterator related to processing
of NULL-able vectors
Release notes:
http://bitmagic.io/bm-7.2.0.html