Browse Source

oeqa.buildperf: measure apparent size instead of real disk usage

This change aligns disk usage measurements of the eSDK test with the old
build-perf-test.sh script. And thus, also makes the results between the
old and the new script comparable.

(From OE-Core rev: dadb84936b3672dcf07e5ab8226158136762801f)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Markus Lehtonen 8 years ago
parent
commit
b16001f3e2
2 changed files with 11 additions and 4 deletions
  1. 7 2
      meta/lib/oeqa/buildperf/base.py
  2. 4 2
      meta/lib/oeqa/buildperf/test_basic.py

+ 7 - 2
meta/lib/oeqa/buildperf/base.py

@@ -408,9 +408,14 @@ class BuildPerfTestCase(unittest.TestCase):
                                                       int((e_sec % 3600) / 60),
                                                        e_sec % 60))
 
-    def measure_disk_usage(self, path, name, legend):
+    def measure_disk_usage(self, path, name, legend, apparent_size=False):
         """Estimate disk usage of a file or directory"""
-        ret = runCmd2(['du', '-s', path])
+        cmd = ['du', '-s', '--block-size', '1024']
+        if apparent_size:
+            cmd.append('--apparent-size')
+        cmd.append(path)
+
+        ret = runCmd2(cmd)
         size = int(ret.output.split()[0])
         log.debug("Size of %s path is %s", path, size)
         measurement = {'type': self.DISKUSAGE,

+ 4 - 2
meta/lib/oeqa/buildperf/test_basic.py

@@ -114,7 +114,8 @@ class Test4(BuildPerfTestCase):
             self.bb_vars['SDK_DEPLOY'],
             self.bb_vars['TOOLCHAINEXT_OUTPUTNAME'] + '.sh')
         # Measure installer size
-        self.measure_disk_usage(installer, 'installer_bin', 'eSDK installer')
+        self.measure_disk_usage(installer, 'installer_bin', 'eSDK installer',
+                                apparent_size=True)
         # Measure deployment time and deployed size
         deploy_dir = os.path.join(tmp_dir, 'esdk-deploy')
         if os.path.exists(deploy_dir):
@@ -122,4 +123,5 @@ class Test4(BuildPerfTestCase):
         self.sync()
         self.measure_cmd_resources([installer, '-y', '-d', deploy_dir],
                                    'deploy', 'eSDK deploy')
-        self.measure_disk_usage(deploy_dir, 'deploy_dir', 'deploy dir')
+        self.measure_disk_usage(deploy_dir, 'deploy_dir', 'deploy dir',
+                                apparent_size=True)