Skip to main content

IPython magic for parallel profiling

Project description

A tool for measuring serial and parallel execution, and comparing the results. Provides an IPython magic %ptime. This can be useful for measuring the benefits of parallelizing code, including measuring the effect of the Global Interpreter Lock (GIL).

Example

In [1]: %load_ext ptime

In [2]: import numpy as np

In [3]: x = np.ones((5000, 10000))

In [4]: %ptime x + x
Total serial time:   0.42 s
Total parallel time: 0.25 s
For a 1.67X speedup across 2 threads

In [5]: %ptime -n4 x + x  # use 4 threads
Total serial time:   0.82 s
Total parallel time: 0.31 s
For a 2.60X speedup across 4 threads

In [6]: res = %ptime -o x + x  # Get the result
Total serial time:   0.41 s
Total parallel time: 0.25 s
For a 1.66X speedup across 2 threads

In [7]: res.speedup
Out[7]: 1.6610825669011922

In [8]: %%ptime  # Use as a cell magic
...: x = np.ones((5000, 10000))
...: y = x + x
...:
Total serial time:   0.72 s
Total parallel time: 0.47 s
For a 1.54X speedup across 2 threads

Install

This package is available via pip:

pip install ptime

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

ptime-0.0.1.tar.gz (2.8 kB view details)

Uploaded Source

File details

Details for the file ptime-0.0.1.tar.gz.

File metadata

  • Download URL: ptime-0.0.1.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ptime-0.0.1.tar.gz
Algorithm Hash digest
SHA256 753fe7862bf081bb61391c59aa41e159a8e77bc5a7b091bf7e137c4f90739e6d
MD5 dd087d9742adb706ad0f744b7c9898bf
BLAKE2b-256 0ba9f7bce9926eac778faa994cff43eb91816f83a3db40104922dbccb38503da

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