diff --git a/cpp/src/metrics/PrometheusMetrics.cpp b/cpp/src/metrics/PrometheusMetrics.cpp index c8a09b8ea6429ce74919099431409c50024d4906..a730091a460e59e246a2aa7d45a0eab4ec993e33 100644 --- a/cpp/src/metrics/PrometheusMetrics.cpp +++ b/cpp/src/metrics/PrometheusMetrics.cpp @@ -60,47 +60,34 @@ PrometheusMetrics::RAMUsagePercentSet() { void PrometheusMetrics::GPUPercentGaugeSet() { if(!startup_) return; - int numDevide = server::SystemInfo::GetInstance().num_device(); - std::vector values = server::SystemInfo::GetInstance().GPUPercent(); + int numDevice = server::SystemInfo::GetInstance().num_device(); +// std::vector values = server::SystemInfo::GetInstance().GPUPercent(); + std::vector used_memory = server::SystemInfo::GetInstance().GPUMemoryUsed(); + constexpr unsigned long long MtoB = 1024*1024; + - for (int i = 0; i < values.size(); i++) { + for (int i = 0; i < numDevice; i++) { prometheus::Gauge &GPU_percent = GPU_percent_.Add({{"DeviceNum", std::to_string(i)}}); - GPU_percent.Set(static_cast(values[i])); +// std::cout << "nvmlDeviceGetUtilizationRates: " << values[i] << std::endl; +// GPU_percent.Set(static_cast(values[i])); + double percent = (double)used_memory[i] / (double)MtoB; + double res = (percent / 6078) * 100; + GPU_percent.Set(res); } -// if(numDevide >= 1) GPU0_percent_gauge_.Set(static_cast(values[0])); -// if(numDevide >= 2) GPU1_percent_gauge_.Set(static_cast(values[1])); -// if(numDevide >= 3) GPU2_percent_gauge_.Set(static_cast(values[2])); -// if(numDevide >= 4) GPU3_percent_gauge_.Set(static_cast(values[3])); -// if(numDevide >= 5) GPU4_percent_gauge_.Set(static_cast(values[4])); -// if(numDevide >= 6) GPU5_percent_gauge_.Set(static_cast(values[5])); -// if(numDevide >= 7) GPU6_percent_gauge_.Set(static_cast(values[6])); -// if(numDevide >= 8) GPU7_percent_gauge_.Set(static_cast(values[7])); - - // to do } void PrometheusMetrics::GPUMemoryUsageGaugeSet() { if(!startup_) return; std::vector values = server::SystemInfo::GetInstance().GPUMemoryUsed(); constexpr unsigned long long MtoB = 1024*1024; - int numDevice = values.size(); + int numDevice = server::SystemInfo::GetInstance().num_device(); for (int i = 0; i < numDevice; i++) { prometheus::Gauge &GPU_memory = GPU_memory_usage_.Add({{"DeviceNum", std::to_string(i)}}); GPU_memory.Set(values[i] / MtoB); } - -// if(numDevice >=1) GPU0_memory_usage_gauge_.Set(values[0]/MtoB); -// if(numDevice >=2) GPU1_memory_usage_gauge_.Set(values[1]/MtoB); -// if(numDevice >=3) GPU2_memory_usage_gauge_.Set(values[2]/MtoB); -// if(numDevice >=4) GPU3_memory_usage_gauge_.Set(values[3]/MtoB); -// if(numDevice >=5) GPU4_memory_usage_gauge_.Set(values[4]/MtoB); -// if(numDevice >=6) GPU5_memory_usage_gauge_.Set(values[5]/MtoB); -// if(numDevice >=7) GPU6_memory_usage_gauge_.Set(values[6]/MtoB); -// if(numDevice >=8) GPU7_memory_usage_gauge_.Set(values[7]/MtoB); - } void PrometheusMetrics::AddVectorsPerSecondGaugeSet(int num_vector, int dim, double time) { // MB/s @@ -162,7 +149,6 @@ void PrometheusMetrics::CPUCoreUsagePercentSet() { for (int i = 0; i < cpu_core_percent.size(); i++) { prometheus::Gauge &core_percent = CPU_.Add({{"CPU", std::to_string(i)}}); core_percent.Set(cpu_core_percent[i]); -// std::cout << cpu_core_percent[i] << "+"; } } diff --git a/cpp/src/metrics/PrometheusMetrics.h b/cpp/src/metrics/PrometheusMetrics.h index be735853106e65bb344f788d947dddce0ca2a8d2..590130f4448ad4e2fe4f3af1d95c44221f3840aa 100644 --- a/cpp/src/metrics/PrometheusMetrics.h +++ b/cpp/src/metrics/PrometheusMetrics.h @@ -397,7 +397,6 @@ class PrometheusMetrics: public MetricsBase { .Help("CPU usage percent by this this process") .Register(*registry_); prometheus::Gauge &CPU_usage_percent_ = CPU_.Add({{"CPU", "0"}}); -// std::vector &CPU_usage_percent_array; prometheus::Family &RAM_ = prometheus::BuildGauge() @@ -411,32 +410,12 @@ class PrometheusMetrics: public MetricsBase { .Name("Gpu_usage_percent") .Help("GPU_usage_percent ") .Register(*registry_); -// prometheus::Gauge &GPU0_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "0"}}); -// prometheus::Gauge &GPU1_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "1"}}); -// prometheus::Gauge &GPU2_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "2"}}); -// prometheus::Gauge &GPU3_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "3"}}); -// prometheus::Gauge &GPU4_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "4"}}); -// prometheus::Gauge &GPU5_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "5"}}); -// prometheus::Gauge &GPU6_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "6"}}); -// prometheus::Gauge &GPU7_percent_gauge_ = GPU_percent_.Add({{"DeviceNum", "7"}}); - - - //GPU Mempry used prometheus::Family &GPU_memory_usage_ = prometheus::BuildGauge() .Name("GPU_memory_usage_total") .Help("GPU memory usage total ") .Register(*registry_); -// prometheus::Gauge &GPU0_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "0"}}); -// prometheus::Gauge &GPU1_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "1"}}); -// prometheus::Gauge &GPU2_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "2"}}); -// prometheus::Gauge &GPU3_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "3"}}); -// prometheus::Gauge &GPU4_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "4"}}); -// prometheus::Gauge &GPU5_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "5"}}); -// prometheus::Gauge &GPU6_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "6"}}); -// prometheus::Gauge &GPU7_memory_usage_gauge_ = GPU_memory_usage_.Add({{"DeviceNum", "7"}}); - prometheus::Family &query_index_type_per_second_ = prometheus::BuildGauge() .Name("query_index_throughtout_per_microsecond")