cctools
work_queue_resources.h
1 /*
2 Copyright (C) 2013- The University of Notre Dame
3 This software is distributed under the GNU General Public License.
4 See the file COPYING for details.
5 */
6 
7 #ifndef WORK_QUEUE_RESOURCES_H
8 #define WORK_QUEUE_RESOURCES_H
9 
10 #include "link.h"
11 #include "nvpair.h"
12 
14  int64_t inuse;
15  int64_t committed;
16  int64_t total;
17  int64_t smallest;
18  int64_t largest;
19 };
20 
22  int64_t tag; // Identifies the resource snapshot.
23  struct work_queue_resource workers;
24  struct work_queue_resource disk;
25  struct work_queue_resource cores;
26  struct work_queue_resource memory;
27  struct work_queue_resource gpus;
28  struct work_queue_resource unlabeled;
29 };
30 
31 struct work_queue_resources * work_queue_resources_create();
32 void work_queue_resources_delete( struct work_queue_resources *r );
33 void work_queue_resources_debug( struct work_queue_resources *r );
34 void work_queue_resources_measure_locally( struct work_queue_resources *r, const char *workspace );
35 void work_queue_resources_send( struct link *master, struct work_queue_resources *r, time_t stoptime );
36 void work_queue_resources_clear( struct work_queue_resources *r );
37 void work_queue_resources_add( struct work_queue_resources *total, struct work_queue_resources *r );
38 void work_queue_resources_add_to_nvpair( struct work_queue_resources *r, struct nvpair *nv );
39 
40 #endif
An nvpair object is a collection of name-value pairs that might describe a complex object such as a h...
Definition: nvpair_private.h:15
Definition: work_queue_resources.h:21
Definition: work_queue_resources.h:13