[dts] [PATCH 03/26] framework dut and project_dpdk: binding smaller number of hugepages for arm64

Angela Czubak aczubak at caviumnetworks.com
Thu Apr 6 19:51:09 CEST 2017


Changed default number of set hugepages from 1024 to 8 if architecture
is arm64 and huge pages size is 524288 kB.

Signed-off-by: Angela Czubak <aczubak at caviumnetworks.com>
---
 framework/dut.py          | 5 ++++-
 framework/project_dpdk.py | 6 +++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/framework/dut.py b/framework/dut.py
index 4ce5c3a..b5a21ce 100644
--- a/framework/dut.py
+++ b/framework/dut.py
@@ -308,7 +308,10 @@ class Dut(Crb):
             elif self.architecture == "ppc_64":
                 arch_huge_pages = hugepages if hugepages > 0 else 512
             elif self.architecture == "arm64":
-                arch_huge_pages = hugepages if hugepages > 0 else 2048
+                if hugepages_size == "524288":
+                    arch_huge_pages = hugepages if hugepages > 0 else 8
+                else:
+                    arch_huge_pages = hugepages if hugepages > 0 else 2048
 
             if total_huge_pages != arch_huge_pages:
                 # before all hugepage average distribution  by all socket,
diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py
index 50740f8..97491c7 100644
--- a/framework/project_dpdk.py
+++ b/framework/project_dpdk.py
@@ -428,9 +428,13 @@ class DPDKtester(Tester):
 
         if not self.skip_setup:
             total_huge_pages = self.get_total_huge_pages()
+            hugepages_size = self.send_expect("awk '/Hugepagesize/ {print $2}' /proc/meminfo", "# ")
             if total_huge_pages == 0:
                 self.mount_huge_pages()
-                self.set_huge_pages(1024)
+                if hugepages_size == "524288":
+                    self.set_huge_pages(8)
+                else:
+                    self.set_huge_pages(1024)
 
             self.session.copy_file_to("dep/tgen.tgz")
             self.session.copy_file_to("dep/tclclient.tgz")
-- 
2.7.4



More information about the dts mailing list