1929 Commits

Author SHA1 Message Date
Ion Gaztañaga 83bc287240 Add dual segmentation to swap_ranges and transform 2026-07-20 23:49:58 +02:00
Ion Gaztañaga 351b6cd58a Move MyFatInt into bench_utils.hpp 2026-07-20 17:15:27 +02:00
Ion Gaztañaga b980c5a773 Add new 17 and 27 groups and reorder tests lexicographically inside each group 2026-07-20 17:10:25 +02:00
Ion Gaztañaga f5933b8bb7 Use BOOST_LIKELY/UNLIKELY in several algorithms 2026-07-20 00:50:39 +02:00
Ion Gaztañaga 90bcbda065 Disable BENCH_ON long benchmark macro to avoid stalling runners 2026-07-20 00:50:06 +02:00
Ion Gaztañaga 11aa12b0e5 Add more test cases for segmented outputs and reorder algorithms 2026-07-20 00:49:08 +02:00
Ion Gaztañaga d2e22918d0 Avoid defining ELEMENT_SIZES twice 2026-07-20 00:38:15 +02:00
Ion Gaztañaga 980d7cf0f1 Use potentially more efficient _tzcnt_u64 and _lzcnt_u64 for MSVC x64 when available, although it will have little impacto in hub, which is memory-bounded. 2026-07-18 01:08:31 +02:00
Ion Gaztañaga 53fdd3c76d Take the comparison value by const reference 2026-07-16 00:41:09 +02:00
Ion Gaztañaga 4edcf2ae9f Use default allocator (void) for benchmarks. 2026-07-16 00:22:22 +02:00
Ion Gaztañaga 84446d0bff Pass arguments for the fixed-size loop by value instead of reference. 2026-07-16 00:21:37 +02:00
Ion Gaztañaga e7212a20a5 Optimize segmented_partition_copy for random-access iterators using fixed size iterations when both output ranges have enough room 2026-07-16 00:21:01 +02:00
Ion Gaztañaga 3f60aa86d1 Implement fixed size (32) boundless iteration for random access iterators 2026-07-16 00:01:54 +02:00
Ion Gaztañaga cafc8e3f92 Refactor code to help maintainance 2026-07-15 23:59:58 +02:00
Ion Gaztañaga c122829b05 Fix incomplete std::input_iterator_tag error. 2026-07-14 01:35:51 +02:00
Ion Gaztañaga 6636c82ca9 Optimized partition_copy 2026-07-14 01:15:43 +02:00
Ion Gaztañaga e9d98f6d10 Added overaligned support for monotonic_buffer_resource 2026-07-13 00:28:09 +02:00
Ion Gaztañaga 4cbffe3b44 Remove BOOST_CONTAINER_DISABLE_MULTI_SEGMENTED_ALGO 2026-07-12 21:28:19 +02:00
Ion Gaztañaga 792e2a4bde Optimized monotonic_buffer_resouce for zero-sized allocations. It should not return null, but does not consume storage if the current buffer position fulfills the requested alignment. 2026-07-12 02:10:21 +02:00
Ion Gaztañaga 3f69b6f47f Correctly handle zero-sized allocations in polymorphic memory resources. 2026-07-10 15:17:20 +02:00
Ion Gaztañaga 9bf2ace3ec Optimize segmented algos with specialized random-access iterator shorcuts using fixed length iterations. 2026-07-08 00:21:24 +02:00
Ion Gaztañaga f74270de43 Documented deduction guides boost-1.92.0.beta1 2026-07-06 01:24:49 +02:00
Ion Gaztañaga 453ce17cab Implement optimization for random access iterators in segmented_copy_if: a 32 bit fixed loop is implemented in case there is room for non-checked stores with a final loop 2026-07-06 01:08:27 +02:00
Ion Gaztañaga 82eb27fd48 Rename segmented iterator names to identify they are the segmented destination ones. 2026-07-06 00:39:27 +02:00
Ion Gaztañaga b925aa7590 Fix missing BOOST_CONTAINER_SEGMENTED_AUTO_UNROLL definitiion when BOOST_CONTAINER_SEGMENTED_DISABLE_PRAGMA_UNROLL is active 2026-07-06 00:38:55 +02:00
Ion Gaztañaga e66ac973f6 Add BOOST_CONTAINER_FORCEINLINE to basic iterator operations 2026-07-06 00:25:19 +02:00
Ion Gaztañaga 362d1fa9ef Add BOOST_CONTAINER_AUTO_UNROLL 2026-07-06 00:23:37 +02:00
Ion Gaztañaga deaa5535e8 Erased all code under BOOST_CONTAINER_SEGMENTED_LOOP_UNROLLING and unconditionally activate BOOST_CONTAINER_SEGMENTED_ENABLE_DUAL_RA_OPTIMIZATION code 2026-07-04 12:29:21 +02:00
Ion Gaztañaga beb17e224c Optimize segmented_copy_if algorithm when the second range is segmented 2026-07-04 12:28:04 +02:00
Ion Gaztañaga f047a33615 Rollback to Ubuntu 24.04 on clang on arm as b2 uses the wrong toolset 2026-07-01 18:59:16 +02:00
Ion Gaztañaga 472b0fe2ce Fix unsupported std values and ARM clang runner 2026-07-01 10:25:57 +02:00
Ion Gaztañaga 6a79ede98e Added C++26 to runner 2026-07-01 00:37:15 +02:00
Ion Gaztañaga 1629ff8e2a Implemented P1518 for all containers. 2026-06-30 13:34:41 +02:00
Ion Gaztañaga 93b7d05a12 Move element_ to bench_utils.hpp 2026-06-30 00:26:29 +02:00
Ion Gaztañaga 04a3229f66 Fix Doxybook generated hub documentation issues reported by Joaquin M. Lopez. 2026-06-30 00:25:48 +02:00
Ion Gaztañaga 105ed3ccb6 Minor indenting fix 2026-06-30 00:25:07 +02:00
Ion Gaztañaga 075b4f7a30 Unify common bench types into the bench_utils.hpp header 2026-06-25 00:40:51 +02:00
Ion Gaztañaga 7b78262e6b vector optimizations and disabled false GCC warning 2026-06-24 09:22:53 +02:00
Ion Gaztañaga 97c7295f3c Use boost containers instead of std and avoid printing the first 1.0 column, add geomeans per sub-bench 2026-06-23 10:43:34 +02:00
Ion Gaztañaga 2a726a8264 Refactored vector bench. Better output , more robust benchmarking (cloberring, minimal timing). 2026-06-23 00:40:09 +02:00
Ion Gaztañaga c774d39b79 Divide bench_vectors.cpp into several smaller benchmarks. 2026-06-21 21:07:55 +02:00
Ion Gaztañaga 3020328a47 Specialized "prot_reallocate_map_and_nodes" for single_ended 2026-06-21 13:41:01 +02:00
Ion Gaztañaga 4f4c0ed15a Make file style (specially comments) more similar to other containers. 2026-06-21 13:11:56 +02:00
Ion Gaztañaga e77969feda Refactor hub bench into a more generia bench_node_cont.hpp so that we can also test other node based containers like list 2026-06-21 13:10:03 +02:00
Ion Gaztañaga 2c6d4ee341 Insert barriers so that memset/memcpy writes under NONTRIVIAL_ELEMENT are not optimized away by the compiler. 2026-06-19 14:22:50 +02:00
Ion Gaztañaga 0ce8aeb803 Fix BSD shell inside the VM to be bash 2026-06-19 09:09:39 +02:00
Ion Gaztañaga 5ec2426596 Fixed unused variable warning 2026-06-19 00:27:28 +02:00
Ion Gaztañaga 2e4185b6aa Remove "run" deprecation and "Node.js 20" warnings 2026-06-18 23:46:09 +02:00
Ion Gaztañaga 387d5a54ef Add BOOST_IF_CONSTEXPR to constant condition 2026-06-18 20:03:10 +02:00
Ion Gaztañaga d41012163e Fix test failure of default_init with advanced optimizers like GCC-16, since operator new ends the lifetime of the previous value. 2026-06-18 18:59:11 +02:00