From: Martin Klozik Date: Fri, 15 Sep 2017 11:16:04 +0000 (+0100) Subject: CI: Update hugepages configuration X-Git-Tag: opnfv-5.0.RC1~9^2 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F65%2F42065%2F2;p=vswitchperf.git CI: Update hugepages configuration Use the number of free hugepages to correctly set hugepages configuration. Limit the number of allocated hugepages to avoid memory exhaustion. Change-Id: Id5239200579f8c43706ffcc769e4963280b9eb2b Signed-off-by: Martin Klozik --- diff --git a/ci/build-vsperf.sh b/ci/build-vsperf.sh index cee0e525..eaab9977 100755 --- a/ci/build-vsperf.sh +++ b/ci/build-vsperf.sh @@ -422,8 +422,22 @@ function dependencies_check() { # configure hugepages function configure_hugepages() { - sudo bash -c "echo 2048 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages" - sudo bash -c "echo 0 > /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages" + HP_MAX=8192 + HP_REQUESTED=2048 + HP_NR=`cat /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages` + HP_FREE=`cat /sys/devices/system/node/node0/hugepages/hugepages-2048kB/free_hugepages` + # check if HP must be (re)configured + if [ $HP_FREE -lt $HP_REQUESTED ] ; then + HP_NR_NEW=$(($HP_NR+($HP_REQUESTED-$HP_FREE))) + if [ $HP_NR_NEW -gt $HP_MAX ] ; then + HP_NR_NEW=$HP_MAX + fi + sudo bash -c "echo $HP_NR_NEW > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages" + fi + + if [ -f /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages ] ; then + sudo bash -c "echo 0 > /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages" + fi } # dump hugepages configuration @@ -464,7 +478,11 @@ dependencies_check initialize_logdir # configure hugepages +echo "Configure hugepages" +echo "===================" configure_hugepages +hugepages_info | grep -v '^--' +echo # execute job based on passed parameter case $1 in