package memtrace

  1. Overview
  2. Docs
Streaming client for Memprof

Install

Dune Dependency

Authors

Maintainers

Sources

v0.2.3.tar.gz
sha256=fa47379e78be5dbb3066cf96962d18a05d1defb4530588c14e5bc0289e0df520

Description

Generates compact traces of a program's memory use.

Published: 18 Oct 2022

README

memtrace

A streaming client for OCaml's Memprof, which generates compact traces of a program's memory use.

To profile the memory use of a program, start by putting this line somewhere at the program startup:

Memtrace.trace_if_requested ~context:"my program" ();;

If the MEMTRACE environment variable is present, tracing begins to the filename it specifies. (If it's absent, nothing happens)

The ~context parameter is optional, and can be set to any string that helps to identify the trace file.

If the program daemonises, the call to trace_if_requested should occur after the program forks, to ensure the right process is traced.

The resulting trace files can be analysed with some simple command-line tools in bin/, but the recommended interface is the memtrace viewer, which lives at:

https://github.com/janestreet/memtrace_viewer

Dependencies (2)

  1. ocaml >= "4.11.0"
  2. dune >= "2.3"

Dev Dependencies

None

Used by (2)

  1. irmin-bench < "3.3.0"
  2. memtrace_viewer >= "v0.15.0"

Conflicts

None