Ion Gaztañaga
|
a0b8a366e2
|
Add flag to disable bidirectional iterator algorithms
|
2026-05-07 16:44:18 +02:00 |
|
Ion Gaztañaga
|
8dece7ac31
|
Optimize segmented partition
|
2026-05-07 16:43:44 +02:00 |
|
Ion Gaztañaga
|
22438f626e
|
Handle BENCH_ON define to trigger the long run
|
2026-05-06 18:05:00 +02:00 |
|
Ion Gaztañaga
|
5e09015223
|
Limit code alignement for GCC >= 9
|
2026-05-06 16:15:29 +02:00 |
|
Ion Gaztañaga
|
b6f0114405
|
Protect BOOST_CONTAINER_UNROLL_PRAGMA for GCC >= 15 because a bug in the middle-end can trigger un-ignorable warnings when the loop can't be unrolled
|
2026-05-06 16:14:20 +02:00 |
|
Ion Gaztañaga
|
7dfd0cafb9
|
Add align-functions=64", "align-loops=32 for GCC to make benchmarks more independent of code alignment.
|
2026-05-06 13:00:12 +02:00 |
|
Ion Gaztañaga
|
2085b112e2
|
Add BOOST_CONTAINER_SEGMENTED_UNROLL to segmented algorithms
|
2026-05-06 12:59:45 +02:00 |
|
Ion Gaztañaga
|
c075bafd70
|
Added BOOST_CONTAINER_UNROLL and BOOST_CONTAINER_SEGMENTED_UNROLL
|
2026-05-06 12:50:03 +02:00 |
|
Ion Gaztañaga
|
017debc400
|
Use 128 block size for tests
|
2026-05-06 00:03:04 +02:00 |
|
Ion Gaztañaga
|
82f8370e0c
|
Selective forceinline
|
2026-05-06 00:02:30 +02:00 |
|
Ion Gaztañaga
|
b6a5bdb102
|
Use segmented_find_if to take advantage of potential unrolling
|
2026-05-05 16:33:22 +02:00 |
|
Ion Gaztañaga
|
2e0809bea0
|
Fix sorted_until_rec bug when BOOST_CONTAINER_SEGMENTED_LOOP_UNROLLING is activated
|
2026-05-05 16:31:22 +02:00 |
|
Ion Gaztañaga
|
562707ff8b
|
Take advantage of random access iterators in the source range to avoid bounds checking on segmented iterators
|
2026-05-05 14:08:52 +02:00 |
|
Ion Gaztañaga
|
ce2bbf6f67
|
Reduce number of overloads an simplify implementation
|
2026-05-05 12:10:51 +02:00 |
|
Ion Gaztañaga
|
10e6e52b5d
|
Use forceinline in for_each
|
2026-05-05 10:19:56 +02:00 |
|
Ion Gaztañaga
|
48a6bf4c85
|
Add BOOST_CONTAINER_SEGMENTED_COUNT_BRANCHLESS option
|
2026-05-05 10:19:30 +02:00 |
|
Ion Gaztañaga
|
adefd94a9d
|
Add missing BOOST_RESTRICT
|
2026-05-05 00:54:34 +02:00 |
|
Ion Gaztañaga
|
aff6cc2343
|
Use BOOST_RESTRICT to improve aliasing analysis
|
2026-05-05 00:40:19 +02:00 |
|
Ion Gaztañaga
|
2ab08aafe7
|
Activate again MyInt benchs
|
2026-05-05 00:02:17 +02:00 |
|
Ion Gaztañaga
|
2558a77272
|
Optimized "partition" using the same strategy as segmented_reverse for bidirectional iterators (taking advantage of disjoint ranges)
|
2026-05-05 00:01:32 +02:00 |
|
Ion Gaztañaga
|
73c3c897ca
|
Avoid references to avoid aliasing slowdowns
|
2026-05-05 00:00:24 +02:00 |
|
Ion Gaztañaga
|
cff30de4c9
|
Simplify segmented_mismatch_iter2_bounded
|
2026-05-04 23:58:44 +02:00 |
|
Ion Gaztañaga
|
dd1308fd0e
|
Reimplemented to avoid aliasing issues.
|
2026-05-04 16:03:32 +02:00 |
|
Ion Gaztañaga
|
0454dfe325
|
Selective forceinline
|
2026-05-04 16:03:12 +02:00 |
|
Ion Gaztañaga
|
d1812c25b4
|
Use goto for consistency
|
2026-05-04 13:22:15 +02:00 |
|
Ion Gaztañaga
|
49e0c9e0bb
|
Use BOOST_RESTRICT to avoid suboptimal aliasing.
|
2026-05-04 12:30:17 +02:00 |
|
Ion Gaztañaga
|
54144ad54a
|
Add forceinline in selected places
|
2026-05-04 11:02:46 +02:00 |
|
Ion Gaztañaga
|
daed6adf4f
|
Improved formatting of code under BOOST_CONTAINER_SEGMENTED_LOOP_UNROLLING
|
2026-05-04 10:45:09 +02:00 |
|
Ion Gaztañaga
|
7597ba7662
|
Implement BOOST_CONTAINER_BENCH_SEGMENTED_GROUP macro to select a sub-group of benchmarks depending on the number of used ranges (1-3).
|
2026-05-04 10:44:35 +02:00 |
|
Ion Gaztañaga
|
54ac25252c
|
Use forceinline in selected places
|
2026-05-04 10:43:50 +02:00 |
|
Ion Gaztañaga
|
c451e3f2f9
|
Add segmente input and output testing to more algorithms
|
2026-05-03 23:23:42 +02:00 |
|
Ion Gaztañaga
|
e85fe7a449
|
Implement segmented input and output management
|
2026-05-03 23:23:08 +02:00 |
|
Ion Gaztañaga
|
8bd6381871
|
Protect output iterator segmentation with BOOST_CONTAINER_DISABLE_MULTI_SEGMENTED_ALGO
|
2026-05-03 22:34:13 +02:00 |
|
Ion Gaztañaga
|
02086c39d7
|
Write direct implementation
|
2026-05-03 22:21:13 +02:00 |
|
Ion Gaztañaga
|
456ffb906b
|
Remove BOOST_CONTAINER_SEGMENTED_ENABLE_DUAL_RA_OPTIMIZATION
|
2026-05-03 22:20:53 +02:00 |
|
Ion Gaztañaga
|
9d38794a18
|
Add more segmented input/output combinations to the test
|
2026-05-02 01:05:24 +02:00 |
|
Ion Gaztañaga
|
215b14a762
|
Reimplement segmented_merge so that all iterator (input1, input2, output) can be segmented
|
2026-05-02 01:05:02 +02:00 |
|
Ion Gaztañaga
|
1b8ba217a6
|
Reimplement segmented_copy_n so that we can take advantage of source and destination segmentetion
|
2026-05-02 00:34:22 +02:00 |
|
Ion Gaztañaga
|
8921f4194d
|
Remove forceinline
|
2026-05-02 00:32:05 +02:00 |
|
Ion Gaztañaga
|
cd6a77ae20
|
Use sent_filter utility
|
2026-05-02 00:31:41 +02:00 |
|
Ion Gaztañaga
|
30352d2651
|
Add segtrio and sent_filter utilities
|
2026-05-02 00:30:45 +02:00 |
|
Ion Gaztañaga
|
70bfb493be
|
remove forceinline
|
2026-05-02 00:30:18 +02:00 |
|
Ion Gaztañaga
|
c15bfc6c39
|
Put bench_remove_if just after bench_remove.
|
2026-04-29 00:45:44 +02:00 |
|
Ion Gaztañaga
|
6539476422
|
Alternative dual random-access iterator dispatching to avoid demoting iterators, removed make_wrapped_iterator usage.
|
2026-04-29 00:45:22 +02:00 |
|
Ion Gaztañaga
|
f7990bd034
|
Reimplemented segmented_is_sorted_until to simplify and speed it up. The new implementation does an early check and there is no longer need to pass a boolean validity flag for the previous iterator.
|
2026-04-27 01:16:55 +02:00 |
|
Ion Gaztañaga
|
216e6b7f01
|
Implement deepest_local_iterator_impl::get
|
2026-04-27 01:07:52 +02:00 |
|
Ion Gaztañaga
|
8a8aff2e9d
|
Fix compilation error when BOOST_CONTAINER_SEGMENTED_LOOP_UNROLLING is activated
|
2026-04-27 01:07:23 +02:00 |
|
Ion Gaztañaga
|
ed68c8ea15
|
Simplify segment loop exit conditions.
|
2026-04-26 23:56:45 +02:00 |
|
Ion Gaztañaga
|
ff744ecf2f
|
Apply dual random access optimization to several algorithms
|
2026-04-26 00:41:41 +02:00 |
|
Ion Gaztañaga
|
aee0821aa4
|
forceinline Inline wrap
|
2026-04-26 00:41:13 +02:00 |
|