Skip to main content

A memory profiler for Python applications

Project description

memray

Tests Linux Wheels Code Style

Memray output

Memray is a memory profiler for Python. It can track memory allocations both in Python code and native extensions and generate various reports to help analyze memory usage in libraries and applications. It can be used as a CLI tool or as a library to perform more fine-grained profiling tasks.

Notable features:

  • 🕵️‍♀️ Traces every function call so it can accurately represent the call stack, unlike sampling profilers.
  • ℭ Also handles native calls in C/C++ libraries so the entire call stack is present in the results.
  • 🏎 Blazing fast! Profiling causes minimal slowdown in the application. Tracking native code is somewhat slower, but this can be enabled or disabled on demand.
  • 📈 It can generate various reports about the collected memory usage data, like flame graphs.
  • 🧵 Works with Python threads.
  • 👽🧵 Works with native-threads (e.g. C++ threads in C extensions).

Memray can help with the following problems:

  • Analyze allocations in applications to help reduce memory usage.
  • Find memory leaks.
  • Find hotspots in code which cause a lot of allocations.

Note that memray only works on Linux and cannot be installed on other platforms.

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

memray-1.0.2.tar.gz (914.0 kB view details)

Uploaded Source

Built Distributions

memray-1.0.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ x86-64

memray-1.0.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (4.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ i686

memray-1.0.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

memray-1.0.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl (4.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ i686

memray-1.0.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

memray-1.0.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl (4.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ i686

memray-1.0.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64

memray-1.0.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl (4.4 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ i686

File details

Details for the file memray-1.0.2.tar.gz.

File metadata

  • Download URL: memray-1.0.2.tar.gz
  • Upload date:
  • Size: 914.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for memray-1.0.2.tar.gz
Algorithm Hash digest
SHA256 01fbbf43d434f81bed4d9e63f1e8eebcd9686945211b4cd4e51b2f03cc1004f5
MD5 bed7e3ab48d6d8573d11b89f2a0c596e
BLAKE2b-256 c590409516bd5dc1044c5cb69ade756da1764680b9451ab95e8ef45724647320

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 d8307977c838b91c7f4763071b11e966b7cc3ae62879ab5a1a91f4db356fd70b
MD5 3ae81a153770902ef24041bfb36231ac
BLAKE2b-256 3021d4b1f8e0322c0f86cf0b377b5eea79a428932cb012359463eca864f46643

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 802a53d1be33fb2798c7bb9cc50a9b323d0188fea3505eb54da7cf0260ef9f74
MD5 5b6cb0bda5546f0bcd6d8b8116b8344d
BLAKE2b-256 802c5178adf01487d3363dba45da434b37f5dfc3acdbc72b2eca2ce908b4fe83

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 0135ba58f73492ca90b55193a7fe64173e2312e6a3040a26dd367c18f0ebe959
MD5 1fad1d21eb485a4f332d34d00f2525f6
BLAKE2b-256 7e946aee638e43bb32b2dbcfe3678c703e66e16780286362928e219e05c1e3c2

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 54ca32d0afa802114f738dac4277359d151c85a1605ca04cb53a4c8b4a499c8d
MD5 e132a4d71e79973e6efdd4249c90b394
BLAKE2b-256 0b99f8e12e8b67207b353c524a4c8a4b786efc97935e56b0d2c989c1f1404378

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 06031713095aa811542ca34ad4408031b98aebdd6e77c4f9c16635dd5a530814
MD5 475ba66e6b8a072a71dceafc9cec864c
BLAKE2b-256 38ac8d29a558e5e28889890ef5920a61c237c61b766f7b5371625ef9579ad49c

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 337fd3f36e4d452ca42538b1cce6601a7aed37155373c64bd37c66de8e8214c2
MD5 55f42a0440efb2e1de9c576774d054b4
BLAKE2b-256 7241a71de3ff0a102228cafe7bf6e0c3e02be608548f90033e88017bb0ceb8f3

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 7981d4cd0d4f9e31eb87c8138ceb821fd2f9e7590f32259df8606802baddc2fb
MD5 8af3c13860dcb57657c476276de9dfef
BLAKE2b-256 c6e007e3c4ff3a55e24c3a5e210ba7d5a0e581f011995cd9eb76ac6c9de0e40c

See more details on using hashes here.

File details

Details for the file memray-1.0.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for memray-1.0.2-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 7c08ca95db8999c67db5d3185bbef188950c89b860e85440369f284c883e56f1
MD5 10f78d2d07f3b62054d3046f1735a543
BLAKE2b-256 9d8c06f13874f8ef2e69dd45f9aaee7d9012bbc566cc3d45e20c93b919cd13a5

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