profmem (version 0.6.0)

readRprofmem: Read an Rprofmem log file

Description

Reads and parses an Rprofmem log file that was created by utils::Rprofmem().

Usage

readRprofmem(pathname, as = c("Rprofmem", "fixed", "raw"), drop = 0L, ...)

Arguments

pathname

The Rprofmem log file to be read.

as

Specifies in what format data should be returned. If "raw", the line content of the file is returned as is (as a character vector). If "fixed", as "raw" but with missing newlines added to lines with empty stack calls that may be introduced in R (< 3.5.0) (see Ref. 1). If "Rprofmem", the collected Rprofmem data is fully parsed into bytes and call stack information.

drop

Number of levels to drop from the top of the call stack.

...

Not used

Value

An Rprofmem data.frame or a character vector (if as is "raw" or "fixed"). An Rprofmem data.frame has columns what, bytes, and trace, with:

  • what: (character) type of memory event; either "alloc" or "new page"

  • bytes: (numeric) number of bytes allocated or NA_real_ (when what is "new page")

  • trace: (list of character vectors) zero or more function names

References

Ref. 1: https://github.com/HenrikBengtsson/Wishlist-for-R/issues/25

Examples

Run this code
# NOT RUN {
file <- system.file("extdata", "example.Rprofmem.out", package = "profmem")

raw <- readRprofmem(file, as = "raw")
cat(raw, sep = "\n")

profmem <- readRprofmem(file, as = "Rprofmem")
print(profmem)
# }

Run the code above in your browser using DataLab