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"
43 int64_t total_processes;
44 int64_t max_concurrent_processes;
46 int64_t virtual_memory;
51 int64_t bytes_written;
54 int64_t bytes_received;
62 int64_t context_switches;
83 union { uint64_t integer;
89 void rmsummary_print(FILE *stream,
struct rmsummary *s,
int pprint,
struct jx *verbatim_fields);
90 void rmsummary_print_buffer(
struct buffer *B,
const struct rmsummary *s,
int only_resources);
91 char *rmsummary_print_string(
const struct rmsummary *s,
int only_resources);
93 const char *rmsummary_unit_of(
const char *key);
95 int rmsummary_assign_int_field(
struct rmsummary *s,
const char *key, int64_t value);
96 int rmsummary_assign_char_field(
struct rmsummary *s,
const char *key,
char *value);
98 int64_t rmsummary_get_int_field(
const struct rmsummary *s,
const char *key);
99 const char *rmsummary_get_char_field(
const struct rmsummary *s,
const char *key);
102 struct rmsummary *rmsummary_parse_file_single(
const char *filename);
105 struct rmsummary *rmsummary_parse_string(
const char *str);
108 struct list *rmsummary_parse_file_multiple(
const char *filename);
110 struct jx *rmsummary_to_json(
const struct rmsummary *s,
int only_resources);
113 struct rmsummary *rmsummary_create(
signed char default_value);
114 void rmsummary_delete(
struct rmsummary *s);
116 void rmsummary_read_env_vars(
struct rmsummary *s);
126 void rmsummary_debug_report(
const struct rmsummary *s);
128 double rmsummary_to_external_unit(
const char *field, int64_t n);
129 double rmsummary_to_base_unit(
const char *field, int64_t n);
130 int rmsummary_to_internal_unit(
const char *field,
double input_number, int64_t *output_number,
const char *unit);
132 size_t rmsummary_field_offset(
const char *key);
133 int64_t rmsummary_get_int_field_by_offset(
const struct rmsummary *s,
size_t offset);
135 void rmsummary_add_conversion_field(
const char *name,
const char *
internal,
const char *external,
const char *base,
double exttoint,
double inttobase,
int float_flag);
136 int rmsummary_field_is_float(
const char *key);
JSON Expressions (JX) library.
Definition: rmsummary.h:28
String Buffer Operations.
JX value representing any expression type.
Definition: jx.h:115
Definition: rmsummary.h:78
Definition: category.h:50