4TBシステムのRedhat 7.6:1TB以上は使用できません。

4TBシステムのRedhat 7.6:1TB以上は使用できません。

Redhat 7.6を実行する4-CPU/72コア、4TBメモリシステムがあります。

/proc/cmdline示す:

BOOT_IMAGE=/vmlinuz-3.10.0-957.5.1.el7.x86_64 ... ro crashkernel=auto rd.lvm.lv=vg00/lswap nomodeset rhgb quiet LANG=en_US.UTF-8

ジョブを実行すると、このマシンに1TB以上のメモリを割り当てることはできません。割り当てられたメモリを使用してこれを再現できましたstress-ng。たとえば、現在の状態は次のとおりです。

              total        used        free      shared  buff/cache   available
Mem:           3.9T        279G        2.2T         34G        1.4T        3.6T
Swap:          127G        849M        127G

1TB以上を使用するためにストレスngを使用してメモリを割り当てようとすると、エラーが発生します。このコマンドはうまく動作します。

stress-ng -m 60 --vm-bytes 700G -t 180s

メモリが最大980GB程度になることを確認しました。しかし、もう少し割り当てると、mmapは失敗します。

stress-ng -m 60 --vm-bytes 800G -t 180s
stress-ng: info:  [90100] dispatching hogs: 60 vm
stress-ng: error: [90457] stress-ng-vm: gave up trying to mmap, no available memory

そして、freeディスプレイ使用量は最大1TBに達します。使用量は1TBを超えていません。

ユーザーメモリを1.0TBに制限できるカーネル構成やその他の要素を考慮する必要がありますか?時間の経過とともに、このbuff/cache値は3.0Tに増加し、決して解放されません。おそらく、カーネルがユーザープロセスがその値に入ることを許可していないからです。

ベストアンサー1

おすすめ記事