diff --git a/src/logging.cpp b/src/logging.cpp index 09fcbcc3..4a9e8f81 100644 --- a/src/logging.cpp +++ b/src/logging.cpp @@ -125,7 +125,7 @@ static void writeFileHeaders(ofstream& out){ if (HUDElements.params->enabled[OVERLAY_PARAM_ENABLED_log_versioning]) out << "--------------------FRAME METRICS--------------------" << endl; - out << "fps," << "frametime," << "cpu_load," << "gpu_load," << "cpu_temp," << "gpu_temp," << "gpu_core_clock," << "gpu_mem_clock," << "gpu_vram_used," << "gpu_power," << "ram_used," << "swap_used," << "elapsed" << endl; + out << "fps," << "frametime," << "cpu_load," << "gpu_load," << "cpu_temp," << "gpu_temp," << "gpu_core_clock," << "gpu_mem_clock," << "gpu_vram_used," << "gpu_power," << "ram_used," << "swap_used," << "process_rss," << "elapsed" << endl; } @@ -149,6 +149,7 @@ void Logger::writeToFile(){ output_file << logArray.back().gpu_power << ","; output_file << logArray.back().ram_used << ","; output_file << logArray.back().swap_used << ","; + output_file << logArray.back().process_rss << ","; output_file << std::chrono::duration_cast(logArray.back().previous).count() << "\n"; output_file.flush(); } else { diff --git a/src/logging.h b/src/logging.h index 8c25db07..9f6c70d3 100644 --- a/src/logging.h +++ b/src/logging.h @@ -26,6 +26,7 @@ struct logData{ float gpu_vram_used; float ram_used; float swap_used; + float process_rss; Clock::duration previous; }; diff --git a/src/memory.h b/src/memory.h index 33fe846f..79dd0d3a 100644 --- a/src/memory.h +++ b/src/memory.h @@ -5,7 +5,7 @@ #include #include -extern float memused, memmax, swapused, swapmax; +extern float memused, memmax, swapused, swapmax, rss; struct memory_information { /* memory information in kilobytes */ diff --git a/src/overlay.cpp b/src/overlay.cpp index 9edf3ada..fbf778a9 100644 --- a/src/overlay.cpp +++ b/src/overlay.cpp @@ -159,6 +159,7 @@ void update_hw_info(const struct overlay_params& params, uint32_t vendorID) #ifdef __linux__ currentLogData.ram_used = memused; currentLogData.swap_used = swapused; + currentLogData.process_rss = proc_mem.resident / float((2 << 29)); // GiB, consistent w/ other mem stats #endif currentLogData.cpu_load = cpuStats.GetCPUDataTotal().percent;