Implement the APIs for gRPC calls in client/server
Implement the APIs defined in the RdcStandaloneHandler to make gRPC call to daemon
Implement the APIs defined in the RdcAPIServiceImpl to handle the gRPC calls in daemon
Add two APIs to get all GPU groups and field groups: rdc_group_get_all_ids()
and rdc_group_field_all_ids()
Those two APIs are required by the rdci group and fieldgroup
sub-modules.
Change-Id: I066091423146dea180c16af212688ed43dc44611
[ROCm/rdc commit: 7ee29b6cdd]
This commit is contained in:
committed by
Chris Freehill
parent
3d8180e5af
commit
ce4890f88c
@@ -43,9 +43,9 @@ class RdcEmbeddedHandler: public RdcHandler {
|
||||
rdc_status_t rdc_job_stop_stats(char job_id[64]) override;
|
||||
|
||||
// Discovery API
|
||||
rdc_status_t rdc_get_all_devices(
|
||||
rdc_status_t rdc_device_get_all(
|
||||
uint32_t gpu_index_list[RDC_MAX_NUM_DEVICES], uint32_t* count) override;
|
||||
rdc_status_t rdc_get_device_attributes(uint32_t gpu_index,
|
||||
rdc_status_t rdc_device_get_attributes(uint32_t gpu_index,
|
||||
rdc_device_attributes_t* p_rdc_attr) override;
|
||||
|
||||
// Group API
|
||||
@@ -62,25 +62,29 @@ class RdcEmbeddedHandler: public RdcHandler {
|
||||
rdc_field_group_info_t* field_group_info) override;
|
||||
rdc_status_t rdc_group_gpu_get_info(rdc_gpu_group_t p_rdc_group_id,
|
||||
rdc_group_info_t* p_rdc_group_info) override;
|
||||
rdc_status_t rdc_group_get_all_ids(
|
||||
rdc_gpu_group_t group_id_list[], uint32_t* count) override;
|
||||
rdc_status_t rdc_group_field_get_all_ids(
|
||||
rdc_field_grp_t field_group_id_list[], uint32_t* count) override;
|
||||
rdc_status_t rdc_group_gpu_destroy(
|
||||
rdc_gpu_group_t p_rdc_group_id) override;
|
||||
rdc_status_t rdc_group_field_destroy(
|
||||
rdc_field_grp_t rdc_field_group_id) override;
|
||||
|
||||
// Field API
|
||||
rdc_status_t rdc_watch_fields(rdc_gpu_group_t group_id,
|
||||
rdc_status_t rdc_field_watch(rdc_gpu_group_t group_id,
|
||||
rdc_field_grp_t field_group_id, uint64_t update_freq,
|
||||
double max_keep_age, uint32_t max_keep_samples) override;
|
||||
rdc_status_t rdc_get_latest_value_for_field(uint32_t gpu_index,
|
||||
rdc_status_t rdc_field_get_latest_value(uint32_t gpu_index,
|
||||
uint32_t field, rdc_field_value* value) override;
|
||||
rdc_status_t rdc_get_field_value_since(uint32_t gpu_index,
|
||||
rdc_status_t rdc_field_get_value_since(uint32_t gpu_index,
|
||||
uint32_t field, uint64_t since_time_stamp,
|
||||
uint64_t *next_since_time_stamp, rdc_field_value* value) override;
|
||||
rdc_status_t rdc_unwatch_fields(rdc_gpu_group_t group_id,
|
||||
rdc_status_t rdc_field_unwatch(rdc_gpu_group_t group_id,
|
||||
rdc_field_grp_t field_group_id) override;
|
||||
|
||||
// Control API
|
||||
rdc_status_t rdc_update_all_fields(uint32_t wait_for_update) override;
|
||||
rdc_status_t rdc_field_update_all(uint32_t wait_for_update) override;
|
||||
|
||||
explicit RdcEmbeddedHandler(rdc_operation_mode_t op_mode);
|
||||
~RdcEmbeddedHandler();
|
||||
|
||||
Reference in New Issue
Block a user