diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-06-16 09:02:59 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-06-16 09:22:30 +0000 |
commit | 43935f2b36a8b3ae2f4b5381ab692b9219b05aae (patch) | |
tree | f879b8d564e2c4b3b227c1e40608f4d3081346b1 /vespabase | |
parent | ff9785791affddb70748738bc38eb6a0610be9a2 (diff) |
Use /sys/kernel/mm/transparent_hugepage/hpage_pmd_size for checking size of transparent hugepages.
Diffstat (limited to 'vespabase')
-rwxr-xr-x | vespabase/src/common-env.sh | 34 |
1 files changed, 10 insertions, 24 deletions
diff --git a/vespabase/src/common-env.sh b/vespabase/src/common-env.sh index b64de704d85..443234e82ed 100755 --- a/vespabase/src/common-env.sh +++ b/vespabase/src/common-env.sh @@ -129,29 +129,19 @@ optionally_reduce_base_frequency() { fi } -get_hugepage_size_mb() { - while read -r name size rest +get_thp_size_mb() { + thp_size=2 + while read -r size do - if [[ "$name" =~ ^Hugepagesize:$ ]] - then - hugepagesize="$size" - unit="${rest,,}" - break - fi - done < /proc/meminfo - if [[ "$unit" == "kb" ]]; then - hugepage_size_mb=$(($hugepagesize / 1024)) - else - echo "Failed extracting hugepage size from /proc/meminfo. Unknown unit($unit)" - exit 1 - fi - OUT=$hugepage_size_mb + thp_size=$(($size / 1024 / 1024)) + break + done < /sys/kernel/mm/transparent_hugepage/hpage_pmd_size + echo "$thp_size" } get_jvm_hugepage_settings() { local heap_mb="$1" - get_hugepage_size_mb - sz_mb=$OUT + sz_mb=$(get_thp_size_mb) if (($sz_mb * 2 < $heap_mb)); then options=" -XX:+UseTransparentHugePages" fi @@ -178,15 +168,11 @@ get_heap_size() { } get_min_heap_mb() { - args=$1 - size=$2 - get_heap_size "-Xms" "$args" $size + get_heap_size "-Xms" "$1" $2 } get_max_heap_mb() { - args=$1 - size=$2 - get_heap_size "-Xmx" "$args" $size + get_heap_size "-Xmx" "$1" $2 } populate_environment |