package devkit
Development kit - general purpose library
Install
Dune Dependency
Authors
Maintainers
Sources
devkit-1.20210120.tbz
md5=47338eaae436aba40abd4d194ee40054
sha256=499b050b73643f6ad7349a41485539d4166d149a07fba59cb6841f508c0297f8
sha512=6a5bf77061d390ddb331ed3d5891a5c56502be91f0eff6846202f658ebfa97ef57695d7a192cbdad4c7b8835f5665df3ea4375daf46930334ebbd9a07f00feca
doc/devkit.core/Devkit_core/Memory/index.html
Module Devkit_core.Memory
Source
Memory reporting - GC and OS, optionally malloc
General background:
- VSZ is not very intersting, this is the amount of memory which is mapped to the process address space. It's not really memory use, only the amount of memory the process can access without triggering a segfault.
- RSS is resident set size: this is the real world data. It's tracked by kernel and is the amount of memory currently allocated to this process. Most of the time this is what you want to look at.
- Malloc stats: those are metrics tracked by C malloc (jemalloc, tcmalloc, glibc, etc).
- size is basically like VSZ but from malloc point of view. That is it does not include mmap files for instance.
- used is basically RSS from malloc point of view.
- heap is the sum of all currently malloced values for which
free
had not been called. So this is what application requested, not including metadata, cache, etc - Gc stats are one level above and are tracked by ocaml gc. e.g. heap is the total size allocate for ocaml program. See
Gc
module documentation for more details.
Source
type t = {
rss : int;
(*resident set size
*)vsize : int;
(*virtual memory size
*)nr_maps : int;
(*number of VM mappings
*)swap_used : int;
(*used swap size
*)
}
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>