14 #include "int_sizes.h"
18 #define RESOURCES_CORES "CORES"
19 #define RESOURCES_MEMORY "MEMORY"
20 #define RESOURCES_DISK "DISK"
21 #define RESOURCES_WALL_TIME "WALL_TIME"
22 #define RESOURCES_GPUS "GPUS"
23 #define RESOURCES_MPI_PROCESSES "MPI_PROCESSES"
50 double virtual_memory;
56 double bytes_received;
62 double context_switches;
64 double max_concurrent_processes;
65 double total_processes;
76 size_t snapshots_count;
80 void rmsummary_print(FILE *stream,
struct rmsummary *s,
int pprint,
struct jx *verbatim_fields);
81 void rmsummary_print_buffer(
struct buffer *B,
const struct rmsummary *s,
int only_resources);
82 char *rmsummary_print_string(
const struct rmsummary *s,
int only_resources);
85 int rmsummary_set(
struct rmsummary *s,
const char *resource,
double value);
86 double rmsummary_get(
const struct rmsummary *s,
const char *resource);
88 void rmsummary_set_by_offset(
struct rmsummary *s,
size_t offset,
double value);
89 double rmsummary_get_by_offset(
const struct rmsummary *s,
size_t offset);
92 struct rmsummary *rmsummary_parse_file_single(
const char *filename);
95 struct rmsummary *rmsummary_parse_string(
const char *str);
98 struct list *rmsummary_parse_file_multiple(
const char *filename);
100 struct jx *rmsummary_to_json(
const struct rmsummary *s,
int only_resources);
104 struct rmsummary *rmsummary_create(
double default_value);
105 void rmsummary_delete(
struct rmsummary *s);
107 void rmsummary_read_env_vars(
struct rmsummary *s);
113 void rmsummary_merge_override_basic(
struct rmsummary *dest,
const struct rmsummary *src);
118 void rmsummary_debug_report(
const struct rmsummary *s);
123 size_t rmsummary_num_resources();
124 const char **rmsummary_list_resources();
126 const char *rmsummary_resource_units(
const char *resource_name);
127 int rmsummary_resource_decimals(
const char *resource_name);
128 size_t rmsummary_resource_offset(
const char *resource_name);
130 const char *rmsummary_resource_to_str(
const char *resource,
double value,
int include_units);