MPROF(1)
π MPROF π
okay so bestie, welcome to mprof β the Mercury profiler, version 22.01.8, running on x86_64-alpine-linux-musl. this is the whole manual page experience, group-chat style, but literally every fact stays. no cap. π«Ά
β¨ SYNOPSIS β¨
mercury_profile [<options>] [<files>]
that's it. that's the whole vibe. options first, files after, both optional. slay. π
πΈ DESCRIPTION πΈ
mprof produces execution profiles for Mercury programs. it hands you a flat profile, and optionally it also gives you a hierarchical (call graph based) profile, all built from data collected while your program was actually running. it's giving observability. it's giving main character energy. π₯
π NOTES π
mprofis one of the development tools that ship as part of the Mercury distribution. iykyk. β¨- this manual page is a brief summary and nothing more. for further information, go read the Mercury User's Guide. like, actually read it. it has lore. π
π¦ ARGUMENTS π¦
so here's the tea about <files>:
- if you pass no
<files>at all, then the--use-dynamicoption is implied β meaning the call graph gets built dynamically. surprise feature, but make it fashion. π« - if you do pass
<files>, then the files you specify should be the.proffile for every module in the program. and yes, every single one, don't be shy. - those
.proffiles are generated automatically by the Mercury compiler, and they contain the program's static call graph. free real estate, generated for you. π
π OPTIONS π
-h,--helpβ print this usage message. classic. short king behavior. π
π₯ PROFILER OPTIONS π₯
-c,--call-graphβ include the call graph profile. more data, more better. π-d,--use-dynamicβ build the call graph dynamically. π«-p,--profile {time, memory-words, memory-cells}β pick what you're profiling:time, the amount of memory allocated (memory-words), or the number of memory allocations (memory-cells) β and yes, that last one is regardless of size. tiny allocations count too, they're valid. π-mβ same as--profile memory-words. π«-Mβ same as--profile memory-cells. π«-tβ same as--profile time. β°--no-demangleβ outputs the mangled predicate and function names. so raw. so unprocessed. honestly kinda iconique in a feral way. π
π FILENAME OPTIONS π
-C <file>,--count-file <file>β name of the count file. usuallyProf.Counts,Prof.MemoryWords, orProf.MemoryCells. pick your fighter. π-D <file>,--declaration-file <file>β name of the declaration file. usuallyProf.Decl. β¨-P <file>,--call-pair-file <file>β name of the call-pair file. usuallyProf.CallPair. π-L <file>,--library-callgraph <file>β name of the file which contains the call graph for the library modules. the library's whole family tree, basically. π³
π§ SNAPSHOT OPTIONS π§
-s,--snapshotsβ show a summary of heap objects at the timesbenchmarking.report_memory_attributionwas called. heads up bestie: this overrides other profiler modes. it's not a team player, it's the main character. π--snapshots-file <file>β name of the snapshots file. usuallyProf.Snapshots. π-T,--snapshots-by-typeβ group results by type. organize, categorize, thrive. π¦-b,--snapshots-briefβ generate a brief profile. sometimes less is more, and that's iconic. β¨-r,--snapshots-include-runtimeβ include internal Mercury runtime structures in the profile. these are excluded by default, so this is you saying "actually, i want the behind-the-scenes content too." π
β VERBOSITY OPTIONS β
-v,--verboseβ output progress messages at each stage. updates! we love updates! π£-V,--very-verboseβ output very verbose progress messages. maximum yapping, and honestly? valid. π
π AUTHORS π
The Mercury team. π
πΈ COPYRIGHT πΈ
this program and its documentation are copyright by the University of Melbourne and the Mercury team. they may be copied only under the terms of the GNU General Public License β see the file COPYING in the Mercury distribution. respecting licenses is the ultimate slay. π«Ά
π SEE ALSO π
- The Mercury User's Guide.
<http://www.mercurylang.org/information/documentation.html>
and that's the page, bestie π β brought to you by the Mercury Programmer's Manual, dated 2026-04-24, and version 22.01.8 of mprof on x86_64-alpine-linux-musl. go profile something gorgeous. periodt. π
π¦ where this page comes from
- alpine 3.24: mercury-doc 22.01.8-r1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms