Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / tools / telemetry / telemetry / core / platform / proc_supporting_platform_backend.py
index 57d3a25..aabeba1 100644 (file)
@@ -7,6 +7,7 @@ try:
 except ImportError:
   resource = None  # Not available on all platforms
 
+from telemetry import decorators
 from telemetry.core import exceptions
 from telemetry.core.platform import platform_backend
 
@@ -25,6 +26,12 @@ class ProcSupportingPlatformBackend(platform_backend.PlatformBackend):
             - self._ConvertKbToByte(meminfo['Buffers'])
             - self._ConvertKbToByte(meminfo['Cached']))
 
+  @decorators.Cache
+  def GetSystemTotalPhysicalMemory(self):
+    meminfo_contents = self._GetFileContents('/proc/meminfo')
+    meminfo = self._GetProcFileDict(meminfo_contents)
+    return self._ConvertKbToByte(meminfo['MemTotal'])
+
   def GetCpuStats(self, pid):
     stats = self._GetProcFileForPid(pid, 'stat')
     if not stats: