aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Tools/scripts
Commit message (Collapse)AuthorAge
* GH-132554: Add stats for GET_ITER (GH-132592)Mark Shannon7 days
| | | | | | | * Add stats for GET_ITER * Look for common iterable types, not iterator types * Add stats for self iter and fix naming in summary
* gh-100239: more refined specialisation stats for BINARY_OP/SUBSCR (#132068)Irit Katriel2025-04-04
|
* gh-130599: use static constants str-to-int conversion (gh-130714)Neil Schemenauer2025-03-03
| | | | | | Avoid a data race in free-threaded builds due to mutating global arrays at runtime. Instead, compute the constants with an external Python script and then define them as static global constant arrays. These constants are used by `long_from_non_binary_base()`.
* GH-129715: Remove _DYNAMIC_EXIT (GH-129716)Brandt Bucher2025-02-07
|
* GH-128842: Collect JIT memory stats (GH-128941)Diego Russo2025-02-02
|
* Revert "GH-128914: Remove conditional stack effects from `bytecodes.c` and ↵Sam Gross2025-01-23
| | | | | | | the code generators (GH-128918)" (GH-129202) The commit introduced a ~2.5-3% regression in the free threading build. This reverts commit ab61d3f4303d14a413bc9ae6557c730ffdf7579e.
* GH-128914: Remove conditional stack effects from `bytecodes.c` and the code ↵Mark Shannon2025-01-20
| | | | generators (GH-128918)
* GH-126491: GC: Mark objects reachable from roots before doing cycle ↵Mark Shannon2024-12-02
| | | | | | | | | | | | | collection (GH-127110) * Mark almost all reachable objects before doing collection phase * Add stats for objects marked * Visit new frames before each increment * Update docs * Clearer calculation of work to do.
* summarize: Fix typo in stats (#127450)alm2024-11-30
|
* Revert "GH-126491: GC: Mark objects reachable from roots before doing cycle ↵Hugo van Kemenade2024-11-19
| | | | collection (GH-126502)" (#126983)
* GH-126491: GC: Mark objects reachable from roots before doing cycle ↵Mark Shannon2024-11-18
| | | | | | | | | | | | | | | | collection (GH-126502) * Mark almost all reachable objects before doing collection phase * Add stats for objects marked * Visit new frames before each increment * Remove lazy dict tracking * Update docs * Clearer calculation of work to do.
* GH-124284: Add stats for refcount operations on immortal objects (GH-124288)Mark Shannon2024-09-23
|
* gh-115178: Add Counts of UOp Pairs to pystats (GH-115181)Jeff Glass2024-04-16
|
* GH-115776: Embed the values array into the object, for "normal" Python ↵Mark Shannon2024-04-02
| | | | objects. (GH-116115)
* Fix broken format in error for bad input in summarize_stats.py (#117375)Guido van Rossum2024-03-29
| | | When you pass the script a non-existent input file, you get a TypeError instead of the intended ValueError.
* gh-116996: Add pystats about _Py_uop_analyse_and_optimize (GH-116997)Michael Droettboom2024-03-22
|
* gh-116879: Add new optimizer pystats to tables (GH-116880)Michael Droettboom2024-03-16
|
* gh-116576: Fix `Tools/scripts/sortperf.py` sorting the same list (#116577)Nikita Sobolev2024-03-11
|
* gh-115168: Add pystats counter for invalidated executors (GH-115169)Michael Droettboom2024-02-26
|
* Tier 2 cleanups and tweaks (#115534)Guido van Rossum2024-02-20
| | | | | | | | | * Rename `_testinternalcapi.get_{uop,counter}_optimizer` to `new_*_optimizer` * Use `_PyUOpName()` instead of` _PyOpcode_uop_name[]` * Add `target` to executor iterator items -- `list(ex)` now returns `(opcode, oparg, target, operand)` quadruples * Add executor methods `get_opcode()` and `get_oparg()` to get `vmdata.opcode`, `vmdata.oparg` * Define a helper for printing uops, and unify various places where they are printed * Add a hack to summarize_stats.py to fix legacy uop names (e.g. `POP_TOP` -> `_POP_TOP`) * Define helpers in `test_opt.py` for accessing the set or list of opnames of an executor
* gh-108303: Move `Lib/test/sortperf.py` to `Tools/scripts` (#114687)Nikita Sobolev2024-02-18
|
* gh-115362: Add documentation to pystats output (#115365)Michael Droettboom2024-02-16
|
* GH-113710: Fix updating of dict version tag and add watched dict stats ↵Mark Shannon2024-02-12
| | | | (GH-115221)
* gh-114312: Collect stats for unlikely events (GH-114493)Michael Droettboom2024-01-25
|
* GH-114448: Don't sort summarize_stats.py histograms by amount of change ↵Michael Droettboom2024-01-22
| | | | (GH-114449)
* gh-58032: Do not use argparse.FileType in module CLIs and scripts (GH-113649)Serhiy Storchaka2024-01-10
| | | | | Open and close files manually. It prevents from leaking files, preliminary creation of output files, and accidental closing of stdin and stdout.
* gh-112320: Implement on-trace confidence tracking for branches (#112321)Guido van Rossum2023-12-12
| | | We track the confidence as a scaled int.
* gh-111277: In summarize_stats.py, don't fail fast on invalid ratios (#111278)Michael Droettboom2023-10-30
|
* gh-109329: Count tier2 opcode misses (#110561)Michael Droettboom2023-10-30
| | | This keeps a separate 'miss' counter for each micro-opcode, incremented whenever a guard uop takes a deoptimization side exit.
* GH-111213: Fix a few broken stats (GH-111216)Mark Shannon2023-10-26
|
* gh-110019: Refactor summarize_stats (GH-110398)Michael Droettboom2023-10-24
|
* gh-109329: Add stat for "trace too short" (GH-110402)Michael Droettboom2023-10-05
|
* GH-109329: Add tier 2 stats (GH-109913)Michael Droettboom2023-10-04
|
* gh-110152: regrtest handles cross compilation and HOSTRUNNER (#110156)Victor Stinner2023-09-30
| | | | | | | | * _add_python_opts() now handles cross compilation and HOSTRUNNER. * display_header() now tells if Python is cross-compiled, display HOSTRUNNER, and get the host platform. * Remove Tools/scripts/run_tests.py script. * Remove "make hostrunnertest": use "make buildbottest" or "make test" instead.
* gh-109566: regrtest reexecutes the process (#109909)Victor Stinner2023-09-26
| | | | | | | | | | | | | When --fast-ci or --slow-ci option is used, regrtest now replaces the current process with a new process to add "-u -W default -bb -E" options to Python. Changes: * PCbuild/rt.bat and Tools/scripts/run_tests.py no longer need to add "-u -W default -bb -E" options to Python: it's now done by regrtest. * Fix Tools/scripts/run_tests.py: flush stdout before replacing the process. Previously, buffered messages were lost.
* gh-109566, regrtest: Add --fast-ci and --slow-ci options (#109570)Victor Stinner2023-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add --fast-ci and --slow-ci options to libregrtest: * --fast-ci uses a default timeout of 10 minutes and "-u all,-cpu" (skip slowest tests). * --slow-ci uses a default timeout of 20 minues and "-u all" (run all tests). * regrtest header now lists test resources. * Makefile changes: * "make test", "make hostrunnertest" and "make coverage-report" now use --fast-ci option and TESTTIMEOUT variable. * "make buildbottest" now uses "--slow-ci". Remove options which became redundant with "--slow-ci". * "make testall" and "make testuniversal" now use --slow-ci option and TESTTIMEOUT variable. * "make testall" now uses "find -exec rm ..." instead of "find ... -print|xargs rm ...", same as "make clean". * GitHub Actions workflow: * Ubuntu and Address Sanitizer jobs now use "make test". Remove options which became redundant with "--fast-ci". * Windows jobs now use --fast-ci option. * Use -j0 to detect the number of CPUs. * Set Makefile TESTTIMEOUT default to an empty string, since --slow-ci and --fast-ci use different default timeout. It's now accepted to pass "--timeout=" to regrtest: treated as not timeout. * Tools/scripts/run_tests.py now uses --fast-ci option. * Tools/buildbot/test.bat now uses --slow-ci option. Remove --timeout=1200 option, redundant with --slow-ci.
* GH-109373: Store metadata required for pystats comparison in the JSON ↵Michael Droettboom2023-09-15
| | | | (GH-109374)
* GH-109330: Dump and compare stats using opcode names, not numbers (GH-109335)Michael Droettboom2023-09-12
|
* gh-109136: Fix summarize_stats.py tool (#109137)Michael Droettboom2023-09-08
|
* gh-105481: generate op IDs from bytecode.c instead of hard coding them in ↵Irit Katriel2023-08-16
| | | | opcode.py (#107971)
* Add some GC stats to Py_STATS (GH-107581)Mark Shannon2023-08-04
|
* gh-104780: Remove 2to3 program and lib2to3 module (#104781)Victor Stinner2023-05-23
| | | | | | | | | * Remove the Tools/scripts/2to3 script. * Remove the Lib/test/test_lib2to3/ directory. * Doc/tools/extensions/pyspecific.py: remove the "2to3fixer" object type. * Makefile and PC/layout/main.py no longer compile lib2to3 grammar files. * Update Makefile for 2to3 removal.
* gh-87729: improve hit rate of LOAD_SUPER_ATTR specialization (#104270)Carl Meyer2023-05-11
|
* GH-102181: Improve specialization stats for SEND (GH-102182)penguin_wwy2023-05-10
|
* gh-102110: Add all tools description missed (GH-102625)Missoupro2023-03-30
| | | | | Added missing descriptions of some tools. Automerge-Triggered-By: GH:hugovk
* GH-100982: Break up COMPARE_AND_BRANCH (GH-102801)Brandt Bucher2023-03-23
|
* GH-100982: Add `COMPARE_AND_BRANCH` instruction (GH-100983)Mark Shannon2023-01-16
|
* Don't double count misses. (GH-100984)Mark Shannon2023-01-13
|
* GH-99770: Make the correct call specialization fail kind show up in the ↵penguin_wwy2022-12-22
| | | | stats (GH-99771)
* Assorted minor fixes for specialization stats. (GH-100219)Mark Shannon2022-12-14
|