[SERVER-82176] Implement effective dynamic bitset for the boolean simplifier Created: 13/Oct/23 Updated: 12/Dec/23 Resolved: 12/Dec/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.3.0-rc0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Alexander Ignatyev | Assignee: | Alexander Ignatyev |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Sprint: | QO 2023-10-30, QO 2023-11-13, QO 2023-11-27, QO 2023-12-11, QO 2023-12-25 | ||||||||
| Participants: | |||||||||
| Description |
|
boost::dynamic_bitset<> demonstrate poor performance on bit operation since it uses internally an std::vector and allocates on any operation that produces a new bitset, such as bitwise and. std::vector<> does not allocate on bit operations and, according to our benchmarks, is about 100 times faster that boost::dynamic_bitset<>. Unfortunately, its size must be specified in compile time and, therefore, is not suitable for our purposes. We need to implement a new dynamic bitset which is:
|
| Comments |
| Comment by Githook User [ 12/Dec/23 ] |
|
Author: {'name': 'Alexander Ignatyev', 'email': 'alexander.ignatyev@mongodb.com', 'username': 'aligusnet'}Message: GitOrigin-RevId: 136fbd7e898a8ddb7723011dab5b6185a54deea6 |
| Comment by Githook User [ 11/Dec/23 ] |
|
Author: {'name': 'Alexander Ignatyev', 'email': 'alexander.ignatyev@mongodb.com', 'username': 'aligusnet'}Message: There is no need in a separate implementation of Minterm class, BitsetTerm can do everything required from Minterm. GitOrigin-RevId: b82b37ad919245cf3cfb49d62d3003ab766ed4f6 |
| Comment by Githook User [ 07/Dec/23 ] |
|
Author: {'name': 'Alexander Ignatyev', 'email': 'alexander.ignatyev@mongodb.com', 'username': 'aligusnet'}Message: GitOrigin-RevId: 386bd87c47c11be16e0caaa47b579fd3835aa0e4 |
| Comment by Githook User [ 06/Dec/23 ] |
|
Author: {'name': 'Alexander Ignatyev', 'email': 'alexander.ignatyev@mongodb.com', 'username': 'aligusnet'}Message: GitOrigin-RevId: 64ba074c84125e844924db74ed46bf6d932bcb0c |
| Comment by Githook User [ 01/Dec/23 ] |
|
Author: {'name': 'Alexander Ignatyev', 'email': 'alexander.ignatyev@mongodb.com', 'username': 'aligusnet'}Message: |