Memray sumber terbuka Bloomberg, alat pembuatan profil memori untuk Python

Bloomberg memiliki memray sumber terbuka, alat untuk membuat profil memori dalam aplikasi Python. Program ini melacak operasi alokasi memori dengan Python dan menawarkan antarmuka visual untuk menganalisis dan mengoptimalkan konsumsi memori berbagai bagian kode, serta plug-in yang ditulis dalam C/C++. Laporan dapat dibuat secara interaktif atau dibuat dalam format HTML. Ini mencakup antarmuka CLI untuk mengelola pembuatan profil dan perpustakaan yang dapat digunakan untuk melacak operasi memori di proyek pihak ketiga. Kode ini diterbitkan di bawah lisensi Apache 2.0. Pengoperasian hanya didukung pada platform Linux.

Fitur utama:

  • Aplikasi: Identifikasi alasan konsumsi memori yang tinggi dalam aplikasi, temukan kebocoran memori, dan identifikasi kode yang melakukan terlalu banyak alokasi memori.
  • Melacak semua pemanggilan fungsi sehubungan dengan total konsumsi memori, konsumsi dalam fungsi, dan jumlah operasi alokasi memori. Kemampuan untuk memperkirakan tumpukan panggilan secara akurat.
  • Memproses panggilan ke perpustakaan di C/C++ dan memperhitungkan konsumsi memori dalam modul asli. Dukungan untuk menganalisis proyek menggunakan numpy dan pandas.
  • Overhead minimal dan dampaknya dapat diabaikan terhadap kinerja aplikasi yang dianalisis. Opsi untuk menonaktifkan pelacakan kode asli untuk meningkatkan kinerja.
  • Ketersediaan sejumlah besar laporan penggunaan memori, termasuk grafik hierarki visual dan tangga (grafik api).
  • Kemampuan untuk bekerja dengan thread dan menganalisis memori dalam konteks masing-masing thread. Thread Python dan thread asli, seperti thread C++ yang digunakan dalam modul C/C++, didukung.
  • Kemungkinan integrasi dengan pytest dan penyediaan anotasi pytest yang menentukan batas konsumsi memori, jika terlampaui, peringatan akan dihasilkan selama eksekusi pengujian.

Memray sumber terbuka Bloomberg, alat pembuatan profil memori untuk Python
Memray sumber terbuka Bloomberg, alat pembuatan profil memori untuk Python


Sumber: opennet.ru

Tambah komentar