Skip to main content

New Generation Profiler based on PEP 669

Project description

akarsu is the New Generation Profiler based on PEP 669. The name of the project, comes from the surname of a minstrel named Muhlis Akarsu, which means stream.

Installation

akarsu can be installed by running pip install akarsu. It requires Python 3.12.0+ to run.

Usage

cat example.py

Output:

def foo():
    x = 1
    isinstance(x, int)
    return x


def bar():
    foo()


bar()

akarsu -f example.py

Output:

     Count     Event Type     Filename(function)
         1      PY_CALL       example.py(bar)
         1      PY_START      example.py(bar)
         1      PY_CALL       example.py(foo)
         1      PY_START      example.py(foo)
         1       C_CALL       example.py(<built-in function isinstance>)
         1      C_RETURN      example.py(foo)
         1     PY_RETURN      example.py(foo)
         1     PY_RETURN      example.py(bar)

Total number of events: 8
  PY_CALL = 2
  PY_START = 2
  PY_RETURN = 2
  C_CALL = 1
  C_RETURN = 1

If you want to show only the function calls in the output, you can use the -c or --calls argument.

akarsu -c -f example.py

Output:

     Count     Event Type     Filename(function)
         1      PY_CALL       example.py(bar)
         1      PY_CALL       example.py(foo)
         1       C_CALL       example.py(<built-in function isinstance>)

Total number of events: 3
  PY_CALL = 2
  C_CALL = 1

Project details


Download files

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

Source Distribution

akarsu-0.2.0.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

akarsu-0.2.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file akarsu-0.2.0.tar.gz.

File metadata

  • Download URL: akarsu-0.2.0.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for akarsu-0.2.0.tar.gz
Algorithm Hash digest
SHA256 762864b1b452d60d0235199a515a33cbc3ae0e78d92b709e004cdff18b0c43af
MD5 39cd22e111510f960fca335f69e40648
BLAKE2b-256 177f3577b49dc54ffcb554b16c6b59651adad499ecffeb580fc994be8cf84da4

See more details on using hashes here.

File details

Details for the file akarsu-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: akarsu-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for akarsu-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d9307e1609e9e49d1bf965126ee09b7f8296ece02785465ad33add58ab434b31
MD5 3848e0abcc922f3520a97aceb7e336d9
BLAKE2b-256 3183f2489e724dd764f1634b7c7163914987c2f242cfa8b0ffcba2a553f455a1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page