itsy_bitsy
Bit containers, sequences, and views for everyone. 🕷️ (by ThePhD)
BitLib
Provides a bit-vector, an optimized replacement of the infamous std::vector<:b:ool>. In addition to the bit-vector, the library also provides implementations of STL algorithms tailored for bit-vectors. (by bkille)
itsy_bitsy | BitLib | |
---|---|---|
4 | 2 | |
120 | 65 | |
- | - | |
4.1 | 7.6 | |
almost 2 years ago | 5 months ago | |
C++ | C++ | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
itsy_bitsy
Posts with mentions or reviews of itsy_bitsy.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-11-07.
-
Bit-vector manipulations in standard C++
No benchmarks though. I saw itsy_bitsy, but other than find and sorting (neither of which I've ever needed), it's not really that much faster than std::bitset.
-
An optimized replacement of the infamous std::vector<🅱️ool>
Another library, to possibly compare against, is: itsy.bitsy.
-
What std::bitset could have been
Are patches you mentioned related to this library https://github.com/ThePhD/itsy_bitsy ?
-
[Suggestion] How to manage a (moderately) large number of bitvectors?
This might do what you need https://github.com/ThePhD/itsy_bitsy . I think it has bitwise ops like bitset but is a dynamic bit vector with decent perf.
BitLib
Posts with mentions or reviews of BitLib.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-05.
-
A simple problem that isn't
Interesting article! If anyone is wondering more about bit iterators and algorithms, an well tuned implementation that supports BMI2 intrinsics is available and documented at bit (and its lecture), and bit-algorithms, along with its dynamic bitset from bitlib.
-
An optimized replacement of the infamous std::vector<🅱️ool>
I've seen too many scientific software packages write their own bitarray/bitvector classes, so I wrote a C++ library for bitvectors and related algorithms, BitLib, to hopefully alleviate that issue. BitLib has a number of advantages, namely:
What are some alternatives?
When comparing itsy_bitsy and BitLib you can also consider the following projects:
bitvec - A crate for managing memory bit by bit
monolish - monolish: MONOlithic LInear equation Solvers for Highly-parallel architecture
better_bitset - A better `std::bitset` that supports scanning for bits optimally
BitArray - C bit array structs and methods
ac_types - Algorithmic C Datatypes
bit-algorithms - An exploratory implementation of bit overloads of the C++ standard algorithms
bitset2 - std::bitset with constexpr implementations plus additional features.
Elements C++ GUI library - Elements C++ GUI library
bit - The Bit Library
CRoaring - Roaring bitmaps in C (and C++), with SIMD (AVX2, AVX-512 and NEON) optimizations: used by Apache Doris, ClickHouse, and StarRocks