Commit Graph
2804 Commits
Author SHA1 Message Date
joaquintides f3f01e33f4 fined-tuned gc dimensions 2023-12-26 18:01:36 +01:00
joaquintides c861b082b3 re-strengthened atomic_integral (insert-visit sync) 2023-12-26 10:01:16 +01:00
joaquintides 1418b96fb2 capped size_ctrl.ml in update_size_ctrl 2023-12-25 13:02:57 +01:00
joaquintides a68b92d1cd * relaxed atomic_integral
* re-enabled gc
* optimized mco calculation
* added heuristic to *reduce* mco at insertion time
* fixed signedness bug at update_size_ctrl
2023-12-25 12:48:04 +01:00
joaquintides 71fb7636c5 prevented gc overcall, temporarily disabled gc 2023-12-20 19:02:49 +01:00
joaquintides 5808607c4f reverted 2023-12-19 12:42:11 +01:00
joaquintides e91f743530 temporarily restricted gc to one designated thread 2023-12-19 12:22:11 +01:00
joaquintides 13d6cc0a33 reduced insertion contention zone 2023-12-19 11:34:35 +01:00
joaquintides 4cd3cd5ac2 used pointers rather than positions in the garbage collector 2023-12-18 13:38:57 +01:00
joaquintides b55a13c6b6 simplified erasure 2023-12-18 13:25:14 +01:00
joaquintides 35138450c8 desynced size control 2023-12-16 11:55:23 +01:00
joaquintides ca7120d928 removed prior experiments and optimized insertion via two-step counter 2023-12-14 12:36:04 +01:00
joaquintides b866bba144 removed counter-based protection on insertion 2023-12-13 13:51:05 +01:00
joaquintides 6869f099a5 disabled insertion synchronization 2023-12-13 13:43:09 +01:00
joaquintides aaf553581f disabled size control 2023-12-13 13:35:10 +01:00
joaquintides 116d2807f4 temporarily disabled garbage collection 2023-12-13 12:44:24 +01:00
joaquintides 567cfe4988 reverted 2023-12-12 16:47:59 +01:00
joaquintides c346a513f0 temporarily removed size control 2023-12-12 16:34:27 +01:00
joaquintides 64614f1670 optimized non-visiting insertion 2023-12-12 13:35:48 +01:00
joaquintides 8ac326b39f synchronized construct_and_emplace 2023-12-12 10:32:00 +01:00
joaquintides 5c21fa6d81 implemented group_synchronized_shared mode for insertion 2023-12-11 20:56:30 +01:00
joaquintides b8d9605107 fine-tuned memory order for metadata manipulation 2023-12-11 19:43:05 +01:00
joaquintides b087f9fb53 strengthened memory order for metadata manipulation 2023-12-11 18:54:10 +01:00
joaquintides 901d652fd7 implemented garbage collection 2023-12-11 17:37:35 +01:00
joaquintides 0f2a2a0b0f added latch-free erasure 2023-12-05 12:20:40 +01:00
joaquintides 86856f7e6b made epoch mechanism oversubscription free 2023-12-04 14:05:36 +01:00
joaquintides 8bd1bcf5de gotten rid of wait_for_epochs in insertion 2023-12-04 11:26:35 +01:00
joaquintides d6a8a4462c reverted to epoch array of size 128 and to non-relaxed wait_for_epochs 2023-12-03 19:51:26 +01:00
joaquintides 7e495f4598 relaxed operation overlooked in prior commit 2023-12-03 13:08:52 +01:00
joaquintides 68b38901e7 relaxed wait_for_epochs 2023-12-03 13:03:39 +01:00
joaquintides 821a2bfb45 made epoch array smaller 2023-12-03 09:45:09 +01:00
joaquintides 5af735827f optimized epoch waiting 2023-12-02 20:52:20 +01:00
joaquintides 49ff2a63ea made insertion and constant visitation (but *not* erasure) optionally latch-free 2023-12-02 19:50:36 +01:00
joaquintides f493603f5c [skip ci] editorial boost-1.84.0 2023-12-01 12:22:48 +01:00
Peter Dimov 74ca1b0e74 Update test/CMakeLists.txt 2023-11-30 17:54:53 +02:00
Peter Dimov 7b16324869 Regenerate CMakeLists.txt 2023-11-30 17:40:41 +02:00
joaquintides 6680e86b38 [skip ci] typo 2023-11-25 09:49:24 +01:00
joaquintides 3e76b1cf68 [skip ci] beautified some badges 2023-11-19 18:45:21 +01:00
joaquintides 22f29718e4 changed drone badges 2023-11-19 09:48:38 +01:00
joaquintides f7c7f8fdd2 [skip ci] added Drone badges 2023-11-18 11:30:47 +01:00
joaquintidesandChristian Mazakas 7fd94b9df7 Fix/bucket iterator indirection operator (#220 rewrite) (#221)
* Add tests for member of pointer operator for bucket iterators

* Fix erroneous conversion from node* to value_type* in bucket iterators

Originally caughy by vslashg  from PR https://github.com/boostorg/unordered/pull/220

* Update change log

* Update GHA config to use containers in C++20 builds for clang-14 as it's incompatible with libstdc++-13

* fixed Python installation problem

* tried variation of former fix

* tried another variation of former fix

* tried yet another variation

* editorial

---------

Co-authored-by: Christian Mazakas <christian.mazakas@gmail.com>
2023-11-17 08:51:40 +01:00
joaquintides 1c0e54ee3e updated boost::unordered_[multi]set and boost::unordered_(flat|node)_map benchmarks boost-1.84.0.beta1 2023-11-06 18:20:36 +01:00
joaquintides 329022b23c removed unnecesary picture tags README.md 2023-10-31 09:38:53 +01:00
joaquintides 47f5be3a3f typo 2023-10-31 08:59:21 +01:00
joaquintides de2ac0ce33 revamped README.md 2023-10-29 18:46:51 +01:00
joaquintides 42df4f2749 removed lifting of swap and ==/!= operations 2023-10-22 20:16:05 +02:00
joaquintides dbe93c765c asserted allocator equality on unordered_node_(map|set)::merge and updated docs 2023-10-21 12:35:59 +02:00
joaquintides ea4fc5e66d fine-tuned element prefetching in unprotected_bulk_visit 2023-10-18 18:20:22 +02:00
Peter Dimov 0e19223e5b Replace uses of boost::enable_if_t in deduction guides with std::enable_if_t 2023-10-12 13:13:56 +03:00
joaquintides 8ee48fe909 Feature/bulk visit (#217) 2023-10-11 12:50:28 +02:00