sciagraph on PyPI)
v2022.9.0 (September 26, 2022)
- The logged message on profiling success,
sciagraph.api.ReportResult, now has an attribute recording peak memory in kibibytes (
peak_memory_kb). This is useful for workload characterization: you can correlate input size with peak memory.
- Added OpenTelemetry integration, to record download instructions (and peak memory) in OpenTelemetry traces.
v2022.7.3 (July 19, 2022)
- The celery integration now includes the task name in the job ID, for easier identification.
- Celery integration works when
SCIAGRAPH_CELERY_REPORTS_PATHis not set.
v2022.7.2 (July 19, 2022)
- When using
sciagraph.api.profile_job(), if the directory didn’t exist writing the report failed. The directory is now created on-demand if necessary.
- Reduced the performance overhead of profiling with Sciagraph.
v2022.7.1 (July 12, 2022)
- Celery integration.
- Fixed a crash in trial mode on Python 3.7.
- Fixed an occasional crash in Rust thread startup.
- Better handling of cases where Sciagraph code panics and is therefore safely disabled for the rest of the process life time.
v2022.7.0 (July 6, 2022)
- You can now profile multiple jobs in a single process’ lifetime.
- Building on the above, the MLflow integration now supports profiling across multiple runs.
v2022.6.2 (June 21, 2022)
- You can now try out Sciagraph without signing up for an account, using the
--trialflag, which limits profiling to one minute.
v2022.6.1 (June 9, 2022)
- Fix rendering bug which hid the reversed memory and overall performance flamegraphs.
v2022.6.0 (June 7, 2022)
- Added minimal performance profiling of non-Python threads.
- Memory profiling now tells you the Python extension responsible for memory allocations in non-Python threads.
- Significantly reduced performance overhead that was skewing the performance profiling results, and made sure reports take profiling overhead into account.
v2022.5.4 (May 31, 2022)
- The performance timeline report adds the ability to zoom in.
- It’s now possible to set the job ID from within the Python process being profiled.
- The log message detailing job info also reports local storage path.
- Improved rendering on non-Linux platforms.
v2022.5.3 (May 25, 2022)
- Reports now include more information about the runtime environment (Sciagraph/Python/OS version, hostname, available CPUs).
- Fixed report so it is no longer in HTML quirks mode.
v2022.5.2 (May 19, 2022)
- Fixed potential deadlocks when writing out reports.
v2022.5.1 (May 16, 2022)
- Fixed intermittent whitespace rendering problem in timeline reports when using Firefox.
- Fixed timeline font size in Chrome.
- Enabled resizing thread timelines in Chrome.
v2022.5.0 (May 9, 2022)
- Made it easier to install Sciagraph with older versions of
- The profiler now runs with a little less performance overhead.
- The report directories written by the profiler now avoid using
v2022.4.1 April 19, 2022
- Added support for Python 3.7, 3.8, and 3.10; 3.9 was already supported previously.
v2022.4.0 (April 14, 2022)
- The profiler includes a timeline visualization of thread runtime; the runtime flamegraph now combines multiple threads into a single flamegraph.
v2022.3.2 (March 29, 2022)
- Added MLflow integration support.
sciagraph.api.ReportResultnow includes the local path where the report was written.
- Fixed bug where the generated report files had a modification time of Jan 1, 1970.
Report viewer (
sciagraph-report on PyPI)
v2022.4.0 (April 19, 2022)
- Fixed Python 3.7 support.
May 9, 2022
- You can now sign up for Sciagraph on your own.
March 28, 2022
- Fixed bug that prevented larger reports from being downloaded.