Skip to main content

PerfCounters

Coverage Status license

Easily add performance counters to your python code.

PerfCounter is a thoroughly tested library that make it easy to add counters to any python code to measure intermediate timings and values. Its various reporting mechanisms (pretty print, json, html, latex, markdown... ) makes it easy to analyze and report performance measurement regardless of your workflow.

Perfcounters natively support two kind of counters:

  • TimeCounters() that are used to track timings.
  • ValueCounters() thatr used if you want to track values.

For each counter you can track intermediate values using the lap() API if needed.

Basic usage

Here is a short example that demonstrate how to track time. Tracking values looks very similarly.

import random
from perfcounters import TimeCounters

cnts = TimeCounters()  # init the counter collection.

cnts.start('random')  # start a timing counter called random.
for x in range(100000):
    int(random.random())
cnts.stop('random')  # stop the random counter

cnts.start('randint')  # start a timing counter called randint.
for x in range(1000000):
    random.randint(0, 1)
cnts.stop('randint')  # stop the randint counter.

cnts.report(rounding=5) # report print all counter values in a nicely formated table.

For more advanced usage take look at the demo jupyter notebook.

Installation

The easiest way to install perfcounters is via pip:

pip install --user -U perfcounters

Download files

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

Source Distribution

perfcounters-3.0.1.tar.gz (10.9 kB view details)

Uploaded Source

Built Distribution

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

perfcounters-3.0.1-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file perfcounters-3.0.1.tar.gz.

File metadata

  • Download URL: perfcounters-3.0.1.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for perfcounters-3.0.1.tar.gz
Algorithm Hash digest
SHA256 93463d8a9c3abab104feac8e52450ca3902eb6d0ba57f02c231b3b9b4eca975c
MD5 39da4a8efa58e5434d5f380ef3ab608d
BLAKE2b-256 75be6ebc30483773a649b6a7647b84c7979d6660309de8573f579a5b021e1ee6

See more details on using hashes here.

File details

Details for the file perfcounters-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: perfcounters-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for perfcounters-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 656b9c739f5dd7595f5b187e93cfcd91958f2afe750ec5c7c1db77f5d960f20d
MD5 f5e6ae97f6f8fc5d66ac0aeb8e0ef38b
BLAKE2b-256 8c05b389556c41169d02024109fbde8574d36f6c1dccd85070e05ae067d4bef1

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

3.0.1 This release

2 files

3.0.0

2 files

2.1.0

2 files

2.0.0

2 files

1.0.6

2 files

1.0.5

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page