Bloomberg open source memray, et minneprofileringsverktøy for Python

Bloomberg har åpen kildekode memray, et verktøy for profilering av minne i Python-applikasjoner. Programmet overvåker minneallokeringsoperasjoner i Python og tilbyr et visuelt grensesnitt for å analysere og optimalisere minneforbruket til ulike deler av kode, samt plug-ins skrevet i C/C++. Rapporter kan genereres enten interaktivt eller generert i HTML-format. Den inkluderer et CLI-grensesnitt for å administrere profilering og et bibliotek som kan brukes til å spore minneoperasjoner i tredjepartsprosjekter. Koden er publisert under Apache 2.0-lisensen. Drift støttes kun på Linux-plattformen.

Nøkkelegenskaper:

  • Applikasjoner: Identifiser årsaker til høyt minneforbruk i applikasjoner, finn minnelekkasjer og identifiser kode som utfører for mange minnetildelinger.
  • Sporer alle funksjonsanrop i forhold til totalt minneforbruk, forbruk i funksjonen og antall minneallokeringsoperasjoner. Evne til å estimere samtalestakken nøyaktig.
  • Behandler kall til biblioteker i C/C++ og tar hensyn til minneforbruk i native moduler. Støtte for å analysere prosjekter med numpy og pandaer.
  • Minimal overhead og ubetydelig innvirkning på ytelsen til den analyserte applikasjonen. Mulighet for å deaktivere innfødt kodesporing for å forbedre ytelsen.
  • Tilgjengelighet av et stort antall minnebruksrapporter, inkludert visuelle hierarkiske grafer og stigegrafer (flammegraf).
  • Evne til å arbeide med tråder og analysere minne i sammenheng med individuelle tråder. Både Python-tråder og native tråder, for eksempel C++-tråder som brukes i C/C++-moduler, støttes.
  • Mulighet for integrasjon med pytest og levering av pytest-kommentarer som definerer minneforbruksgrenser, hvis overskredet, vil advarsler bli generert under testkjøring.

Bloomberg open source memray, et minneprofileringsverktøy for Python
Bloomberg open source memray, et minneprofileringsverktøy for Python


Kilde: opennet.ru

Legg til en kommentar