Atomic bitset/bitvector with size determined at runtime.
This header-only library encodes a bitvector class with size fixed at runtime. Atomic operations allow for concurrent access and modification of the bitset. Such a structure can help with coordinating parallel processing of a given fixed set of entities and has the advantage of only requiring O(1) bit per entry. The atomic_bv_t class is a straightforward extension of ConcurrentBitSet from Facebook’s folly C++ library. It wraps the atomic type with a class that allows them to be copied, and these wrapped atomic types are then used to build a vector size of which is determined at runtime.
This header-only library encodes a bitvector class with size fixed at runtime. Atomic operations allow for concurrent access and modification of the bitset. Such a structure can help with coordinating parallel processing of a given fixed set of entities and has the advantage of only requiring O(1) bit per entry. The atomic_bv_t class is a straightforward extension of ConcurrentBitSet from Facebook’s folly C++ library. It wraps the atomic type with a class that allows them to be copied, and these wrapped atomic types are then used to build a vector size of which is determined at runtime.
To install libatomicbitvector, run the following command in macOS terminal (Applications->Utilities->Terminal)
sudo port install libatomicbitvector
To see what files were installed by libatomicbitvector, run:
port contents libatomicbitvector
To later upgrade libatomicbitvector, run:
sudo port selfupdate && sudo port upgrade libatomicbitvector
Reporting an issue on MacPorts Trac
The MacPorts Project uses a system called Trac to file tickets to report bugs and enhancement requests.
Though anyone may search Trac for tickets, you must have a GitHub account in order to login to Trac to create tickets.