Abstract
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 from the STL with these because it is a dynamically resizable vector implementation that has been suggested to be an acceptable 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.
Original language | English |
---|---|
Title of host publication | Proceedings of the 2010 Annual Conference of the South African Institute of Computer Scientists and Information Technologists (SAICSIT 2010, Bela Bela (Warm Baths), South Africa, October 11-13, 2010) |
Publisher | Association for Computing Machinery, Inc |
Pages | 242-250 |
ISBN (Print) | 978-1-60558-950-3 |
DOIs | |
Publication status | Published - 2010 |