Implement the rdc_lib API to support the job stats
Add the function to start and stop the job recording. Add the function to get the job stats for each GPU and summary of multiple GPUs Add the function to remove the jobs. Add a class RdcLogger which can control the log level using the environment variable RDC_LOG. This is similar to GRPC_VERBOSITY gRPC. When the customer has the issues, he can enable the verbose log to help us to troubleshoot the issues. Add the -u support in the rdci group, fieldgroup and dmon for connecting to rdcd without authentication. Change-Id: I22c591823c1ee6485db106b911bed8271d1b2769
This commit is contained in:
1 parent
16bce67835
commit
a547dc7efd
26 files changed
+805
-102
No files matched your search
@@ -24,6 +24,7 @@ THE SOFTWARE.
|
||||
|
||||
#include <memory>
|
||||
#include <utility>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
#include "rdc_lib/rdc_common.h"
|
||||
@@ -31,6 +32,7 @@ THE SOFTWARE.
|
||||
|
||||
namespace amd {
|
||||
namespace rdc {
|
||||
typedef std::map<uint32_t, uint64_t> rdc_gpu_total_memory_t;
|
||||
|
||||
class RdcCacheManager {
|
||||
public:
|
||||
@@ -43,7 +45,19 @@ class RdcCacheManager {
|
||||
const rdc_field_value& value) = 0;
|
||||
virtual rdc_status_t evict_cache(uint32_t gpu_index, uint32_t field_id,
|
||||
uint64_t max_keep_samples, double max_keep_age) = 0;
|
||||
virtual uint32_t get_cache_size() = 0;
|
||||
virtual std::string get_cache_stats() = 0;
|
||||
|
||||
virtual rdc_status_t rdc_job_get_stats(char jobId[64],
|
||||
const rdc_gpu_total_memory_t& total_memory,
|
||||
rdc_job_info_t* p_job_info) = 0;
|
||||
virtual rdc_status_t rdc_job_start_stats(char jobId[64],
|
||||
const rdc_group_info_t& group,
|
||||
const rdc_field_group_info_t& finfo) = 0;
|
||||
virtual rdc_status_t rdc_job_stop_stats(char job_id[64]) = 0;
|
||||
virtual rdc_status_t rdc_update_job_stats(uint32_t gpu_index,
|
||||
const std::string& job_id, const rdc_field_value& value) = 0;
|
||||
virtual rdc_status_t rdc_job_remove(char job_id[64]) = 0;
|
||||
virtual rdc_status_t rdc_job_remove_all() = 0;
|
||||
|
||||
virtual ~RdcCacheManager() {}
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user