this repo has no description
1opam-version: "2.0"
2maintainer: "Guillaume Munch-Maccagnoni <Guillaume.Munch-Maccagnoni@inria.fr>"
3authors: [
4 "Guillaume Munch-Maccagnoni <Guillaume.Munch-Maccagnoni@inria.fr>"
5]
6license: "LGPL-3.0-only WITH LGPL-3.0-linking-exception"
7homepage: "https://gitlab.com/gadmm/memprof-limits/"
8doc: "https://guillaume.munch.name/software/ocaml/memprof-limits/"
9bug-reports: "https://gitlab.com/gadmm/memprof-limits/issues/"
10depends: [
11 "ocaml" {>="4.12.0" & < "5.0"}
12 "dune" {>= "1.2"}
13]
14build: ["dune" "build" "-p" name "-j" jobs]
15dev-repo: "git+https://gitlab.com/gadmm/memprof-limits.git"
16synopsis: "Memory limits, allocation limits, and thread cancellation"
17description: """
18Memprof-limits provides per-thread global memory limits, per-thread
19allocation limits, and cancellation of threads, with ways to
20ensure resource-safety after interruption.
21
22Global memory limits let you bound the memory consumption of a task,
23in terms of the major heap size.
24
25Allocation limits let you bound the execution time of a task measured
26in number of allocations. Allocation limits do not count
27deallocations, and are therefore a measure of the work done, which can
28be more suitable (reliable, portable, deterministic) than wall-clock
29time.
30
31Token limits lets you cancel a (CPU-bound) task preemptively and at a
32distance.
33
34Tasks are interrupted by raising an asynchronous exception.
35Memprof-limits provides resource-management features and guidance for
36reasoning about the consistency of state in the presence of such
37interrupts.
38
39The implementation uses OCaml's Statmemprof engine with a low sampling
40rate that does not affect performance. A reimplementation of the
41Memprof interface compatible with Memprof-limits running at the same
42time is provided for profiling needs.
43"""
44url {
45 src:
46 "https://gitlab.com/gadmm/memprof-limits/-/archive/v0.2.1/memprof-limits-v0.2.1.tar.gz"
47 checksum: [
48 "md5=15026b85944ee405fe6784cc9f1575bb"
49 "sha512=6ae138bc582911ab221f8c8a4a461b58bfcb837933b989ea9f10ef8cdd54a445c300f41fa4a0ec70746a27c24ccae5598666c98195a8400bc7c5c37e9327480b"
50 ]
51}