Skip to main content
`Ctrl`+`K`

# PetscMemoryGetCurrentUsage

Returns the current resident set size (memory used) for the program.

## Synopsis

    #include "petscsys.h"
    PetscErrorCode PetscMemoryGetCurrentUsage(PetscLogDouble *mem)

Not Collective

## Output Parameter

- mem - memory usage in bytes

## Options Database Key

- -memory_view - Print memory usage at end of run

- -log_view_memory - Display memory information for each logged event

- -malloc_view - Print usage of `PetscMalloc()` in `PetscFinalize()`

## Notes

The memory usage reported here includes all Fortran arrays (that may be used in application-defined sections of code). This routine thus provides a more complete picture of memory usage than `PetscMallocGetCurrentUsage()` for codes that employ Fortran with hardwired arrays.

This value generally never decreases during a run even if the application has freed much of its memory that it allocated

## See Also

`PetscMallocGetMaximumUsage()`, `PetscMemoryGetMaximumUsage()`, `PetscMallocGetCurrentUsage()`, `PetscMemorySetGetMaximumUsage()`, `PetscMemoryView()`

## Level

intermediate

## Location

src/sys/memory/mem.c

## Examples

src/ts/tutorials/ex11.c

Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages