Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

use -flto=thin for clang-cl on Windows #131035

Closed
Labels
OS-windowsbuildThe build process and cross-buildperformancePerformance or resource usagetype-featureA feature request or enhancement
@chris-eibl

Description

@chris-eibl

This started off as a build time analysis (#130090 (comment)), but since I now have the infrastructure, I tried-flto=thin, too:

  • faster in building 520.6 vs 651.2 seconds
  • is neutral on the pyperformance benchmarks
  • would bring us in sync with Linux, because thereCONFIGURE_CFLAGS_NODIST andCONFIGURE_LDFLAGS_NOLTO both use-flto=thin when I configure for clang in WSL Ubuntu-24.04. See also the discussion why not to use full-flto inRevert to default fullLTO on Clang #130048
Benchmarkclang.pgo.20.1.0-rc2clang.pgo.thin.20.1.0-rc2
Geometric mean(ref)1.00x faster
Detailed pybenchmark results

Benchmarkclang.pgo.20.1.0-rc2clang.pgo.thin.20.1.0-rc2
float95.0 ms89.7 ms: 1.06x faster
json_loads29.8 us28.6 us: 1.04x faster
mdp2.86 sec2.77 sec: 1.03x faster
html5lib68.3 ms66.2 ms: 1.03x faster
async_tree_none_tg330 ms320 ms: 1.03x faster
pyflate518 ms505 ms: 1.03x faster
sqlite_synth3.21 us3.13 us: 1.03x faster
pidigits228 ms223 ms: 1.02x faster
bench_mp_pool168 ms165 ms: 1.02x faster
async_tree_eager_io742 ms727 ms: 1.02x faster
generators34.5 ms33.8 ms: 1.02x faster
comprehensions18.3 us17.9 us: 1.02x faster
async_tree_cpu_io_mixed641 ms629 ms: 1.02x faster
scimark_sparse_mat_mult4.51 ms4.43 ms: 1.02x faster
async_tree_memoization425 ms417 ms: 1.02x faster
sympy_expand538 ms529 ms: 1.02x faster
unpack_sequence57.0 ns56.0 ns: 1.02x faster
regex_dna209 ms205 ms: 1.02x faster
async_generators465 ms458 ms: 1.02x faster
scimark_sor140 ms137 ms: 1.02x faster
sympy_str319 ms314 ms: 1.02x faster
async_tree_io_tg751 ms740 ms: 1.01x faster
regex_effbot3.14 ms3.10 ms: 1.01x faster
async_tree_eager_tg272 ms268 ms: 1.01x faster
pickle_dict27.3 us27.0 us: 1.01x faster
async_tree_eager_memoization_tg363 ms359 ms: 1.01x faster
sympy_integrate22.5 ms22.2 ms: 1.01x faster
sympy_sum181 ms179 ms: 1.01x faster
2to3390 ms386 ms: 1.01x faster
hexiom6.68 ms6.61 ms: 1.01x faster
docutils3.03 sec3.00 sec: 1.01x faster
sqlglot_normalize121 ms120 ms: 1.01x faster
async_tree_memoization_tg392 ms389 ms: 1.01x faster
async_tree_cpu_io_mixed_tg614 ms609 ms: 1.01x faster
tomli_loads2.20 sec2.18 sec: 1.01x faster
spectral_norm102 ms101 ms: 1.01x faster
python_startup_no_site34.4 ms34.2 ms: 1.01x faster
genshi_text24.6 ms24.5 ms: 1.01x faster
dulwich_log119 ms118 ms: 1.00x faster
go128 ms128 ms: 1.00x faster
deltablue3.62 ms3.63 ms: 1.00x slower
unpickle_pure_python247 us248 us: 1.00x slower
xml_etree_generate107 ms107 ms: 1.01x slower
django_template39.2 ms39.4 ms: 1.01x slower
coroutines24.8 ms25.0 ms: 1.01x slower
mako13.3 ms13.5 ms: 1.01x slower
unpickle15.9 us16.1 us: 1.01x slower
nbody119 ms121 ms: 1.01x slower
fannkuch465 ms472 ms: 1.01x slower
crypto_pyaes81.3 ms82.6 ms: 1.02x slower
json_dumps11.5 ms11.7 ms: 1.02x slower
deepcopy285 us291 us: 1.02x slower
pprint_safe_repr858 ms876 ms: 1.02x slower
xml_etree_iterparse136 ms139 ms: 1.02x slower
gc_traversal5.03 ms5.14 ms: 1.02x slower
meteor_contest115 ms117 ms: 1.02x slower
deepcopy_memo33.8 us34.7 us: 1.03x slower
richards_super51.1 ms52.6 ms: 1.03x slower
scimark_fft327 ms337 ms: 1.03x slower
richards44.9 ms46.3 ms: 1.03x slower
pickle_list4.83 us4.99 us: 1.03x slower
deepcopy_reduce2.93 us3.03 us: 1.03x slower
pprint_pformat1.74 sec1.80 sec: 1.03x slower
logging_simple10.9 us11.4 us: 1.05x slower
logging_format12.1 us12.6 us: 1.05x slower
xml_etree_parse197 ms208 ms: 1.05x slower
Geometric mean(ref)1.00x faster

pgo_clang_20.1.0-rc2pgo_clang_thin_20.1.0-rc2
pginstr297.2219.3
pgo70.069.0
kill1.20.5
pgupd282.8231.7
total time651.2520.6
Details pginstrument

pgo_clang_20.1.0-rc2pgo_clang_thin_20.1.0-rc2
_freeze_module38.540.0
python314141.581.3
pyexpat52.73.9
_elementtree51.85.3
sqlite346.042.4
liblzma18.216.5
_decimal12.47.7
_testcapi8.37.1
_bz27.04.9
_ctypes6.97.5
_testlimitedcapi4.94.3
_wmi4.53.0
_overlapped4.53.2
_asyncio4.05.2
_lzma3.81.8
_ssl3.75.5
_ctypes_test3.73.4
_multiprocessing3.52.7
_sqlite33.42.8
venvwlauncher3.32.7
_zoneinfo3.13.4
unicodedata2.73.0
pyshellext2.72.6
pyw2.72.7
py2.62.5
_socket2.43.7
_testinternalcapi2.42.2
_tkinter2.24.1
_testclinic2.01.9
_hashlib1.83.1
select1.82.2
venvlauncher1.81.7
winsound1.73.3
_uuid1.63.2
_queue1.62.3
_testembed1.51.5
_testbuffer1.41.3
pythonw1.11.1
_testconsole1.11.1
_testmultiphase1.01.0
_testsinglephase1.01.0
python1.00.9
_testclinic_limited0.90.9
_testimportmultiple0.90.9
python30.50.5
total465.8303.3

Details pgupdate

pgo_clang_20.1.0-rc2pgo_clang_thin_20.1.0-rc2
_freeze_module38.039.5
python314141.995.4
sqlite344.442.9
liblzma17.316.5
_decimal11.28.7
_testcapi8.67.3
_ctypes8.07.2
_bz27.85.5
_ssl5.25.6
_testlimitedcapi5.04.2
pyexpat4.63.6
_asyncio4.54.6
_socket4.33.5
_tkinter4.04.2
_ctypes_test3.73.4
_overlapped3.53.7
_elementtree3.54.5
_wmi3.53.1
_zoneinfo3.23.2
_lzma3.21.9
unicodedata3.23.0
_sqlite33.12.7
_hashlib3.13.3
venvwlauncher3.13.0
_multiprocessing2.82.6
pyshellext2.72.6
pyw2.62.6
_uuid2.62.8
py2.62.7
_testinternalcapi2.42.2
_testclinic2.01.9
_queue1.92.2
winsound1.83.0
venvlauncher1.71.5
select1.62.0
_testembed1.51.4
_testbuffer1.41.3
_testconsole1.11.0
pythonw1.11.1
_testmultiphase1.01.1
_testsinglephase1.01.0
python1.00.9
_testclinic_limited0.90.9
_testimportmultiple0.90.9
python30.50.5
total372.9316.8

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    OS-windowsbuildThe build process and cross-buildperformancePerformance or resource usagetype-featureA feature request or enhancement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


      [8]ページ先頭

      ©2009-2025 Movatter.jp