Performance of C++ bit-vector implementations

Vreda Pieterse, Derrick G. Kourie, Loek Cleophas, Bruce W. Watson
2010 Proceedings of the 2010 Annual Research Conference of the South African Institute of Computer Scientists and Information Technologists on - SAICSIT '10  
This paper describes an experimental study to compare the performance of various dynamically resizable bit-vector implementations for the C++ programming language. We compare the std::vector from the Standard Template Library (STL), boost::dynamic_bitset from Boost, Qt::QBitArray from QT Software, and BitMagic's bm::bvector<> with one another. We also compare std::vector from the STL with these because it is a dynamically resizable vector implementation that has been suggested to be an
more » ... e alternative for std::vector. We describe the test data and the methods that were applied to measure memory use and processing time. This lays a foundation for comparing other parts of the different C++ libraries. The results are presented and discussed in terms of the differences in the implementations of these data structures. Although the results reported in this article is specific to the mentioned C++ libraries, the techniques used to measure and compare the performance of the different libraries go beyond C++ bit-vectors and may be used more generally.
doi:10.1145/1899503.1899530 dblp:conf/saicsit/PieterseKCW10 fatcat:mf7dp7abl5gllhiluk6em5xk7a