Skip to main content

scope-profiler

Profile Python code regions—and optionally C, Fortran, MPI, NVTX, and LIKWID—with one consistent API and HDF5 output format.

pip install scope-profiler

Quick start

from scope_profiler import ProfileManager

with ProfileManager.session():
    @ProfileManager.profile("main")
    def main():
        with ProfileManager.profile_region("work"):
            sum(range(100))  # replace with the code you want to measure

    main()
# writes profiling_data.h5 and prints a summary

You can also profile a script without changing its source:

scope-profiler run my_script.py
scope-profiler inspect profiling_data.h5
scope-profiler plot default profiling_data.h5 -o figures

Example output

The plotting tools include duration summaries and timelines for finding expensive regions:

Duration summary

Gantt chart

The overhead benchmark measures the cost of each instrumentation mode:

python examples/benchmark_overhead.py

Profiling overhead by region type

Documentation

Development

pip install -e '.[dev]'
pytest

See AGENTS.md for the measured benchmark workflow used when optimizing this project.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scope_profiler-0.3.3.tar.gz (221.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scope_profiler-0.3.3-py3-none-any.whl (257.2 kB view details)

Uploaded Python 3

File details

Details for the file scope_profiler-0.3.3.tar.gz.

File metadata

  • Download URL: scope_profiler-0.3.3.tar.gz
  • Upload date:
  • Size: 221.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for scope_profiler-0.3.3.tar.gz
Algorithm Hash digest
SHA256 8d7789f19905d1b4f58d4061d5b98384d68f6309484f8eb163cc07d23df800f4
MD5 2ced721867e3b9c727a4a4712e91fc91
BLAKE2b-256 1fa4dc215d2029e9e3dd120efd54e1079a8cad1a2e80b76bf3f06754ba3b4361

See more details on using hashes here.

Provenance

The following attestation bundles were made for scope_profiler-0.3.3.tar.gz:

Publisher: publish.yml on max-models/scope-profiler

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scope_profiler-0.3.3-py3-none-any.whl.

File metadata

  • Download URL: scope_profiler-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 257.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for scope_profiler-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e4afbfd58fed37155338cdbc40796229482b8665625d930240f6f3ba91186694
MD5 4e63796b53252f904da88b7fadf60b37
BLAKE2b-256 6c0b7a7db8b1b0cfd7a5fd275d232ae7640a4728152fa888c5a2b94b13d5f741

See more details on using hashes here.

Provenance

The following attestation bundles were made for scope_profiler-0.3.3-py3-none-any.whl:

Publisher: publish.yml on max-models/scope-profiler

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.5.0

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.6

2 files

0.3.5

2 files

0.3.4

2 files

This release

0.3.3 This release

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.8

2 files

0.2.7

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2

2 files

0.1.11

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page