| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | gh-142927: Clarify pstats file output in docs and CLI (#143388) | László Kiss Kollár | 13 days | 1 | -2/+2 |
| | | | | | | | | | | When running the `profiling.sampling` module in pstats mode, the output can be emitted in two different ways: text to stdout or a binary file when the `--output` argument is set. The current documentation and help text is confusing as it does not distinguish between these two output formats so it may be surprising to the user to get different formats depending whether `--output` is set or not. | ||||
| * | gh-142927: Hide _sync_coordinator frames from profiler output (#143337) | Pablo Galindo Salgado | 2026-01-02 | 3 | -3/+36 |
| | | |||||
| * | gh-138122: Move local imports to module level in sampling profiler (#143257) | Pablo Galindo Salgado | 2026-01-02 | 7 | -26/+26 |
| | | |||||
| * | gh-138122: Integrate live profiler TUI with _colorize theming system (#142360) | Pablo Galindo Salgado | 2026-01-01 | 4 | -85/+82 |
| | | | | | Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> | ||||
| * | gh-142927: Fix heatmap caller navigation for interior lines (#143180) | Pablo Galindo Salgado | 2026-01-01 | 1 | -3/+34 |
| | | |||||
| * | gh-142927: Auto-open HTML output in browser after generation (#143178) | ivonastojanovic | 2026-01-01 | 1 | -0/+41 |
| | | |||||
| * | gh-143040: Exit taychon live mode gracefully and display profiled script ↵ | Marta Gómez Macías | 2025-12-27 | 4 | -36/+62 |
| | | | | | errors (#143101) | ||||
| * | gh-138122: Remove default duration for statistical profiling (#143174) | László Kiss Kollár | 2025-12-25 | 2 | -23/+24 |
| | | | | | Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com> | ||||
| * | gh-142927: Tachyon: Fix contrast ratio in top panel (#142936) | Hugo van Kemenade | 2025-12-25 | 3 | -12/+26 |
| | | |||||
| * | gh-138122: Convert GIL/GC/exception stats from tiles to progress bars (#143177) | ivonastojanovic | 2025-12-25 | 3 | -90/+110 |
| | | |||||
| * | gh-138122: Extend binary profiling format with full source location and ↵ | Pablo Galindo Salgado | 2025-12-24 | 1 | -1/+1 |
| | | | | | | | opcode (#143088) Co-authored-by: Stan Ulbrych <stan@ulbrych.org> | ||||
| * | gh-138122: Replace --interval with --sampling-rate (#143085) | László Kiss Kollár | 2025-12-24 | 9 | -46/+101 |
| | | |||||
| * | gh-138122: Add blocking mode for accurate stack traces in Tachyon (#142998) | Pablo Galindo Salgado | 2025-12-23 | 2 | -11/+58 |
| | | |||||
| * | gh-138122: Allow tachyon to write and read binary output (#142730) | Pablo Galindo Salgado | 2025-12-22 | 10 | -121/+568 |
| | | |||||
| * | gh-142927: Tachyon: Comma separate thousands and fix singular/plurals (#142934) | Hugo van Kemenade | 2025-12-22 | 5 | -46/+64 |
| | | |||||
| * | gh-142927: Tachyon: Start with user's default light/dark theme (#142987) | Hugo van Kemenade | 2025-12-20 | 5 | -53/+40 |
| | | |||||
| * | gh-138122: Improve bytecode panel (#142910) | ivonastojanovic | 2025-12-18 | 3 | -10/+91 |
| | | | | | | | | | The bytecode panel appears when a user generates a heatmap with --opcodes and clicks the button to unfold a line and display the bytecode instructions. Currently, an empty space appears on the left where the line number, self, and total columns are displayed. This area should instead extend those columns, rather than leaving a gap. | ||||
| * | gh-142654: show the clear error message when sampling on an unknown PID in ↵ | Keming | 2025-12-17 | 4 | -31/+72 |
| | | | | | | | tachyon (#142655) Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com> | ||||
| * | gh-138122: Update Tachyon dark theme colors (#142841) | ivonastojanovic | 2025-12-16 | 2 | -9/+21 |
| | | |||||
| * | gh-138122: Add --subprocesses flag to profile child processes in tachyon ↵ | Pablo Galindo Salgado | 2025-12-15 | 2 | -45/+421 |
| | | | | | (#142636) | ||||
| * | GH-142591: Tachyon does not handle non-existent file/module (#142592) | Savannah Ostrowski | 2025-12-14 | 2 | -21/+107 |
| | | | | | Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com> | ||||
| * | gh-138122: Fix sample counting for filtered profiling modes (#142677) | Pablo Galindo Salgado | 2025-12-14 | 2 | -21/+9 |
| | | |||||
| * | GH-142646: Update Tachyon to use backtick formatting in CLI help (#142647) | Savannah Ostrowski | 2025-12-13 | 1 | -16/+12 |
| | | |||||
| * | gh-138122: Tachyon Flamegraph: Make toggle keyboard accesible and adjust ↵ | Stan Ulbrych | 2025-12-12 | 4 | -22/+35 |
| | | | | | sidebar collapse CSS (#142638) | ||||
| * | gh-138122: Add docs button to Tachyon heatmap and flamegraph (#142614) | Stan Ulbrych | 2025-12-12 | 8 | -12/+87 |
| | | |||||
| * | gh-138122: Add code examples to the profiling.sampling ddocs (#142609) | Pablo Galindo Salgado | 2025-12-12 | 1 | -0/+0 |
| | | |||||
| * | gh-138122: Add inverted flamegraph (#142288) | ivonastojanovic | 2025-12-12 | 5 | -113/+341 |
| | | | | Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com> | ||||
| * | gh-142374: Fix recursive function cumulative over-counting in sampling ↵ | Pablo Galindo Salgado | 2025-12-12 | 4 | -43/+55 |
| | | | | | profiler (#142378) | ||||
| * | gh-138122: Tachyon heatmap: Make toggle switches keyboard accessible (#142601) | Stan Ulbrych | 2025-12-11 | 4 | -4/+13 |
| | | |||||
| * | gh-138122: Make Tachyon flamegraph and heatmap output more similar (#142590) | Stan Ulbrych | 2025-12-11 | 6 | -34/+67 |
| | | |||||
| * | gh-138122: Add exception profiling mode to the sampling profiler (#142561) | Pablo Galindo Salgado | 2025-12-11 | 10 | -7/+73 |
| | | |||||
| * | Tachyon: Fix heatmap line highlight animation overriding heat colors (#142522) | Stan Ulbrych | 2025-12-11 | 1 | -1/+0 |
| | | |||||
| * | gh-138122: Make the tachyon profiler opcode-aware (#142394) | Pablo Galindo Salgado | 2025-12-11 | 18 | -135/+1980 |
| | | |||||
| * | Tachyon: Set favicon for heatmap pages (#142493) | Stan Ulbrych | 2025-12-10 | 1 | -0/+15 |
| | | |||||
| * | Tachyon: Remove spurious CSS for `stat-card` (#142487) | Stan Ulbrych | 2025-12-09 | 1 | -16/+0 |
| | | |||||
| * | Tachyon: Make "Tachyon" in navbar link to `index.html` (#142486) | Stan Ulbrych | 2025-12-09 | 2 | -1/+4 |
| | | |||||
| * | Tachyon: Fix unesecarry plural when there is a single file/sample (#142478) | Stan Ulbrych | 2025-12-09 | 1 | -2/+7 |
| | | |||||
| * | gh-140727: Restructure profiling documentation for PEP 799 (#142373) | Pablo Galindo Salgado | 2025-12-09 | 7 | -12/+15 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add profiling module documentation structure PEP 799 introduces a new `profiling` package that reorganizes Python's profiling tools under a unified namespace. This commit adds the documentation structure to match: a main entry point (profiling.rst) that helps users choose between profilers, detailed docs for the tracing profiler (profiling-tracing.rst), and separated pstats documentation. The tracing profiler docs note that cProfile remains as a backward-compatible alias, so existing code continues to work. The pstats module gets its own page since it's used by both profiler types and deserves focused documentation. * Add profiling.sampling documentation The sampling profiler is new in Python 3.15 and works fundamentally differently from the tracing profiler. It observes programs from outside by periodically capturing stack snapshots, which means zero overhead on the profiled code. This makes it practical for production use where you can attach to live servers. The docs explain the key concepts (statistical vs deterministic profiling), provide quick examples upfront, document all output formats (pstats, flamegraph, gecko, heatmap), and cover the live TUI mode. The defaults table helps users understand what happens without any flags. * Wire profiling docs into the documentation tree Add the new profiling module pages to the Debugging and Profiling toctree. The order places the main profiling.rst entry point first, followed by the two profiler implementations, then pstats, and finally the deprecated profile module last. * Convert profile.rst to deprecation stub The pure Python profile module is deprecated in 3.15 and scheduled for removal in 3.17. Users should migrate to profiling.tracing (or use the cProfile alias which continues to work). The page now focuses on helping existing users migrate: it shows the old vs new import style, keeps the shared API reference since both modules have the same interface, and preserves the calibration docs for anyone still using the pure Python implementation during the transition period. * Update CLI module references for profiling restructure Point cProfile to profiling.tracing docs and add profiling.sampling to the list of modules with CLI interfaces. The old profile-cli label no longer exists after the documentation restructure. * Update whatsnew to link to profiling module docs Enable cross-references to the new profiling module documentation and update the CLI examples to use the current syntax with the attach subcommand. Also reference profiling.tracing instead of cProfile since that's the new canonical name. | ||||
| * | Tachyon: Fix html output sidebar cards hidden behind section headers on ↵ | Stan Ulbrych | 2025-12-08 | 1 | -1/+0 |
| | | | | | hover (#142428) | ||||
| * | gh-142363: Improve Tachyon flamegraph contrast (#142377) | Hugo van Kemenade | 2025-12-08 | 2 | -3/+3 |
| | | |||||
| * | gh-138122: Implement frame caching in RemoteUnwinder to reduce memory reads ↵ | Pablo Galindo Salgado | 2025-12-06 | 1 | -10/+102 |
| | | | | | | | | | | | | (#142137) This PR implements frame caching in the RemoteUnwinder class to significantly reduce memory reads when profiling remote processes with deep call stacks. When cache_frames=True, the unwinder stores the frame chain from each sample and reuses unchanged portions in subsequent samples. Since most profiling samples capture similar call stacks (especially the parent frames), this optimization avoids repeatedly reading the same frame data from the target process. The implementation adds a last_profiled_frame field to the thread state that tracks where the previous sample stopped. On the next sample, if the current frame chain reaches this marker, the cached frames from that point onward are reused instead of being re-read from remote memory. The sampling profiler now enables frame caching by default. | ||||
| * | GH-142363: Contrast and gradient CSS fixes for Tachyon flamegraph (#142364) | Savannah Ostrowski | 2025-12-06 | 1 | -7/+7 |
| | | |||||
| * | gh-140677 Improve heatmap colors (#142241) | ivonastojanovic | 2025-12-06 | 5 | -151/+117 |
| | | | | | Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com> | ||||
| * | GH-141565: Add async code awareness to Tachyon (#141533) | Savannah Ostrowski | 2025-12-06 | 6 | -82/+213 |
| | | | | | Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com> | ||||
| * | Remove unused imports (#142320) | Victor Stinner | 2025-12-06 | 1 | -1/+1 |
| | | |||||
| * | gh-142318: Fix typing `'q'` at interactive help screen exiting Tachyon (#142319) | Stan Ulbrych | 2025-12-05 | 1 | -1/+3 |
| | | |||||
| * | gh-140677 Add heatmap visualization to Tachyon sampling profiler (#140680) | Pablo Galindo Salgado | 2025-12-02 | 15 | -326/+3279 |
| | | | | | Co-authored-by: Ivona Stojanovic <stojanovic.i@hotmail.com> | ||||
| * | gh-138122: Small fixes to the new tachyon UI (#142157) | Pablo Galindo Salgado | 2025-12-01 | 2 | -2/+4 |
| | | |||||
| * | gh-138122: New Tachyon UI (#142116) | László Kiss Kollár | 2025-12-01 | 5 | -1007/+1969 |
| | | | | | Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com> | ||||
| * | gh-141999: Handle KeyboardInterrupt when sampling in the new tachyon ↵ | yihong | 2025-11-30 | 1 | -41/+47 |
| | | | | | profiler (#142000) | ||||
