diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-11-15 16:17:37 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-15 16:17:37 +0100 |
commit | d40736fef1c0cbfc57ed39678bf95c016a13b512 (patch) | |
tree | 9f7e04744f409421916abf2c444ecda54b653550 /libpod/define | |
parent | cca6df428cb9ce187ae1341740ac1137c7a67a75 (diff) | |
parent | d28b39a90d1b4733ff3144450a280afed8661924 (diff) | |
download | podman-d40736fef1c0cbfc57ed39678bf95c016a13b512.tar.gz podman-d40736fef1c0cbfc57ed39678bf95c016a13b512.tar.bz2 podman-d40736fef1c0cbfc57ed39678bf95c016a13b512.zip |
Merge pull request #12257 from adrianreber/2021-11-10-print-stats
Add optional checkpoint/restore statistics
Diffstat (limited to 'libpod/define')
-rw-r--r-- | libpod/define/checkpoint_restore.go | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/libpod/define/checkpoint_restore.go b/libpod/define/checkpoint_restore.go new file mode 100644 index 000000000..536bdde9a --- /dev/null +++ b/libpod/define/checkpoint_restore.go @@ -0,0 +1,32 @@ +package define + +// This contains values reported by CRIU during +// checkpointing or restoring. +// All names are the same as reported by CRIU. +type CRIUCheckpointRestoreStatistics struct { + // Checkpoint values + // Time required to freeze/pause/quiesce the processes + FreezingTime uint32 `json:"freezing_time,omitempty"` + // Time the processes are actually not running during checkpointing + FrozenTime uint32 `json:"frozen_time,omitempty"` + // Time required to extract memory pages from the processes + MemdumpTime uint32 `json:"memdump_time,omitempty"` + // Time required to write memory pages to disk + MemwriteTime uint32 `json:"memwrite_time,omitempty"` + // Number of memory pages CRIU analyzed + PagesScanned uint64 `json:"pages_scanned,omitempty"` + // Number of memory pages written + PagesWritten uint64 `json:"pages_written,omitempty"` + + // Restore values + // Number of pages compared during restore + PagesCompared uint64 `json:"pages_compared,omitempty"` + // Number of COW pages skipped during restore + PagesSkippedCow uint64 `json:"pages_skipped_cow,omitempty"` + // Time required to fork processes + ForkingTime uint32 `json:"forking_time,omitempty"` + // Time required to restore + RestoreTime uint32 `json:"restore_time,omitempty"` + // Number of memory pages restored + PagesRestored uint64 `json:"pages_restored,omitempty"` +} |