Fields

hardware None
os None

Parameters

Fields

NameValue

Parameters

NameValue
git_commit commit 46e88169284aadb06fafcbe18ff440ff0fdebfa3
Author: Connector Switch <c8ef@outlook.com>
Date: Mon Oct 20 19:37:33 2025 +0800

[libcxx] Optimize std::generate for segmented iterators (#163006)

Part of #102817.

This patch attempts to optimize the performance of `std::generate` for
segmented iterators. Below are the benchmark numbers from
`libcxx\test\benchmarks\algorithms\modifying\generate.bench.cpp`. Test
cases that use segmented iterators have also been added.

- before

```
std::generate(deque<int>)/32 194 ns 193 ns 3733333
std::generate(deque<int>)/50 276 ns 276 ns 2488889
std::generate(deque<int>)/1024 5096 ns 5022 ns 112000
std::generate(deque<int>)/8192 40806 ns 40806 ns 17231
```

- after

```
std::generate(deque<int>)/32 106 ns 105 ns 6400000
std::generate(deque<int>)/50 139 ns 138 ns 4977778
std::generate(deque<int>)/1024 2713 ns 2699 ns 248889
std::generate(deque<int>)/8192 18983 ns 19252 ns 37333
```

---------

Co-authored-by: A. Jiang <de34@live.cn>
Filter

ldionne-old-macbook-results test results

Run Order Start Time Duration
Current 556536 2025-12-16T16:40:01 0:00:00
Previous 556531 2025-12-16T16:40:01 0:00:00
Baseline 485288 2025-12-16T16:40:01 0:00:00


Tests Summary

Status Group # # (B)
Performance Regressions 4 0
Performance Improvements 3 0
Added Tests 0 16
Unchanged Tests 73 64
Total Tests 80

Performance Regressions - execution_time Δ Previous Current σ Δ (B) σ (B)
727_cppcheck_r 2.58% 24.587 25.222 - 0.00% -
753_ns3_r 1.73% 10.079 10.254 - 0.00% -
710_omnetpp_r 1.51% 8.284 8.409 - 0.00% -
750_sealcrypto_r 1.07% 18.491 18.689 - 0.00% -

Performance Improvements - execution_time Δ Previous Current σ Δ (B) σ (B)
731_astcenc_r -2.89% 10.356 10.057 - 0.00% -
737_gmsh_r -2.12% 13.193 12.913 - 0.00% -
735_gem5_r -1.13% 13.703 13.549 - 0.00% -

Added Tests - execution_time
706_stockfish_r
707_ntest_r
709_cactus_r
710_omnetpp_r
721_gcc_r
723_llvm_r
727_cppcheck_r
729_abc_r
731_astcenc_r
735_gem5_r
736_ocio_r
737_gmsh_r
748_flightdm_r
750_sealcrypto_r
753_ns3_r
766_femflow_r


Report Time: 0.08s
Name Current %
706_stockfish_r 21.639 -
707_ntest_r 16.599 -
709_cactus_r 19.941 -
710_omnetpp_r 8.409 1.51%
721_gcc_r 12.961 -
723_llvm_r 11.495 -
727_cppcheck_r 25.222 2.58%
729_abc_r 18.746 -
731_astcenc_r 10.057 -2.89%
735_gem5_r 13.549 -1.13%
736_ocio_r 16.261 -
737_gmsh_r 12.913 -2.12%
748_flightdm_r 8.887 -
750_sealcrypto_r 18.689 1.07%
753_ns3_r 10.254 1.73%
766_femflow_r 12.787 -
Geometric Mean 14.171 -