rp2ps(1)

πŸ“¦
version 4.7.23 Β· 2 versions
, in nixpkgs unstable

πŸ’… rp2ps(1) β€” the Region-profile to Postscript generator, bestie edition ✨

okay so this little icon is a Region-profile to Postscript generator, and it's part of the MLKit Standard ML compiler πŸŽ€ (yes, the manual page section 1, we see you).


🌸 SYNOPSIS 🌸

rp2ps [-region [filename]]
      [-stack [filename]]
      [-object regionNo [filename]]
      [-sampleMax n]
      [-sortByTime | -sortBySize]
      [-vert] [-eps width (in|mm|pt)]
      [-noOfBands n]
      [-comment time string] [-mark time]
      [-pregion regionNo] [-print] [-stat] [-findPrgPoint n]
      [-source filename] [-name name] [-interact] [-help]

A description of the options is given below 🫢 (scroll down, it's all there, i promise).


πŸ¦‹ DESCRIPTION πŸ¦‹

So when you invoke rp2ps, it reads a profile data file (default is profile.rp, no cap) and outputs a Postscript file based on whatever options you handed it. Like, given a profile data file profile.rp, running

rp2ps -region

will generate a region profile, which gets stored in a file called region.ps. Slay πŸ’…. And if you want to get an overview of which program points allocate data in a particular region, use the -object option (see below, it's right there πŸ‘€).

Now for the MLKit compiler to generate a profile data file that you can then process with rp2ps, you have to pass the option -prof to the MLKit executable. That's the whole vibe check β€” no -prof, no profile data, literally nothing to work with 😭.

Wanna learn more about region profiling with the MLKit? Consult the MLKit manual "Programming with Regions in the MLKit", which is available from the MLKit home page and from the distributions ✨. For more info about the MLKit, consult the MLKit home page:

http://melsman.github.io/mlkit

🌈 EXAMPLES 🌈

For examples, consult the MLKit manual "Programming with Regions in the MLKit", which is available from the MLKit home page and from the distributions πŸ’–. (yes that's the whole section, she's lowkey shy, but she's valid)


✨ OPTIONS ✨

  • -region β€” Profile all regions with respect to size (default output filename is region.ps). main character behavior πŸ‘‘
  • -stack β€” Profile stack with respect to size (default output filename is stack.ps).
  • -object N β€” Profile all objects in region N. (default output filename is objectN.ps, where N is a region number (region variable id)).
  • -sampleMax β€” Use only n samples (default is 64).
  • -sortByTime β€” Choose samples equally distributed over sample time. This is the default behavior.
  • -sortBySize β€” Choose the largest samples. This is not the default behavior.
  • -vert β€” Put a vertical line in the region graph for each sample used.
  • -eps β€” Produce encapsulated postscript with specified width w in inches (in), millimeters (mm) or points (pt). πŸŽ€
  • -noOfBands N β€” Maximum number of bands shown on the region graph. Default (and possible maximum) is 20.
  • -fixedYRange N β€” Use N (bytes) as fixed range of y-axis, -1 means no fixed range on y-axis.
  • -useTickNo β€” Use tick numbers on x-axis instead of elapsed time.
  • -comment t str β€” Insert comment str (one word only) at time t in the region graph. one word. ONE. word. πŸ™ˆ
  • -mark t β€” Insert mark at time t in the region graph.
  • -pregion N β€” Print region information about region variable N on stdout.
  • -print β€” Print all profiling data on stdout.
  • -stat β€” Print statistics on stdout.
  • -findPrgPoint N β€” Print regions containing program point N.
  • -source name β€” Specify name of profile data file (default is profile.rp).
  • -name name β€” Name to print on top of region graph (default is rp2ps).
  • -interactive β€” Enter interactive mode.
  • -help β€” Print help information and exit.
🫢 heads up bestie: the synopsis up there says -interact while the option list says -interactive. that's literally how the page is written, so i'm not touching it β€” do not come for me πŸ’€

πŸ’œ EXIT STATUS πŸ’œ

Exits with status 0 on success and -1 on failure. That's it, that's the mood 🌸


⭐ CREDITS ⭐

The MLKit (version 2 and beyond) was developed by Lars Birkedal, Martin Elsman, Niels Hallenberg, Tommy H. Olesen, Mads Tofte, and Carsten Varming πŸ‘‘. People who have contributed with bug-fixes and improvements include Peter Bertelsen, Ken Friis Larsen, Henning Niss, and Peter Sestoft 🫢. Nick Rothwell and David N. Turner took part in the development of the MLKit version 1.


🧚 SEE ALSO 🧚


and that's the whole page, bestie β€” mwah πŸ’‹

this gem was brought to you by MLKit v4.7.23, stamped 2026-10-19T-00:42:06, and honestly? she ate. periodt. πŸ”₯πŸ‘‘

πŸ“¦ where this page comes from