免責事項:この記事はCC 4.0 BY-SAの著作権契約書に従って、ブロガーオリジナル記事です、複製、元のソースのリンクと、この文を添付してください。
このリンク:HTTPS://blog.csdn.net/shaoyunzhe/article/details/54614077
HugePages_Total:の予約のhugepagesの16 //総数
割り当てられていない番号のhugepages 16 //プール、無料の実ページ:HugePages_Free同じHugePages_Free - HugePages_Rsvd
HugePages_Rsvd:0 //のhugepagesアプリケーションプールの数が割り当てられたが、まだ使用されていないされています表し
HugePages_Surp:0 //価値は、この手段あなたは20ラージ・ページの設定を開始するときその、今の設定を変更するには、このパラメータを、その後、16であります一般的に設定を変更しない、4として表示されます、この値は0です
// 1048576キロバイト各ページの大サイズ:Hugepagesize
1は、hugepageは恒久的に設定さ
GRUB_CMDLINE_LINUXには、/ etc / default / grubのを修正した後、GRUBの更新を実行し、システムを再起動します:
default_hugepagesz = 1G hugepagesz = 1Gのhugepages = 16 hugepagesz = 2Mのhugepages = 2048 IOMMU = PT intel_iommu = isolcpus = 1-13,15-27に
#GRUB2-mkconfig -o /boot/grub2/grub.cfg
#リブート
注:上記の設定は、システムがNUMAである場合、単一のCPUが、確実に、上記のサイズの値は予約されている場合、このようなシステムとして、(サイズの上方に配置された各CPUノードを二分する、システム・メモリ用に予約され、ノード1のCPUノード0でありますhugepages = 2048、表示/ SYS /デバイス/システム/ノード/ノード0 /のhugepages / nr_hugepagesを、サイズ確か1024)コマンドエコー 'vm.nr_hugepages = 2048'> /etc/sysctl.d/hugepages.confが設けられていてもよいですが、時々、大きなページサイズを発見し、実際のサンプルは、GRUB設定すると、おそらく遊んで/etc/sysctl.d/hugepages.confパラメータでのサイズ、注意しなければなりません。NUMAノード自体は、連続のhugepagesを生成するのに十分な空きメモリがない場合を除き、デフォルトで、これらのhugepagesを割り当てられているすべてのオンラインシステムのNUMAノードの現在の平均値であり、時間は、システムに応じて数および発生hugepageのタイプによって別のNUMAノードのhugepages調整するために使用可能なメモリ。isolcpusパラメータは、我々はDPDKの申請に基づいてCPUにロックすることができるようにするために、LinuxのCPUスケジューラ分離の一部をサポートします。
システムを再起動して、カーネルコマンドラインパラメータhugepageを見ると、以下のように分配しました。
次は、インストールhugepage・ファイル・システム、負荷vfio-PCIユーザ空間のドライバです。
#mkdir -p / mntに/巨大な
#mkdir -p / mntに/ huge_2mb
#mount -t hugetlbfs hugetlbfsを/ mnt /巨大な ( デフォルトはhugepageサイズをマウントなし-oパラメータ)
のデフォルトのサイズはHugepagesize図が示す参照:1G大ページです1048576キロバイトを、(猫の/ proc / meminfoの|はgrep Hugepagesize)。
#mount -t hugetlbfsなし/ MNT / huge_2mb -o PAGESIZE = 2メガバイト(-oパラメータを指定し、2Mのサイズhugepageマウント)
2、一時的な設定
Hugepageは、動的コマンドを実行し、予約することができます。
$エコー1024> / SYS /カーネル/ MM /のhugepages /のhugepages-2048KBは/ nr_hugepagesを
上記システムは、スルーノードに関連付けられているメモリページを割り当てません。あなたが指定したNUMAノードに割り当てられた強制する場合は、あなたが行う必要があります。
#echo 1024> / SYS /デバイス/システム/ノード/ノード0 /のhugepages /のhugepages-2048KBは/ nr_hugepagesを
/ 1024 nr_hugepagesを#echo> / SYS /デバイス/システム/ノード/ノード1 /のhugepages /のhugepages-2048KBは、
予約サイズ2M-2048KB手段のhugepages、2 * 1024Mの合計1024、のhugepages-1048576kB 1Gは、予約のサイズを指し
3.チェックのhugepages状況:
猫の/ proc / meminfoに
4、マウントビューケース
猫の/ proc /マウント
/ mnt /巨大hugetlbfsはのrw hugetlbfs、その上、これらのumountクリックをアンマウントすることができます決定する際に、VPPコードが自動的に大きなページをマウントし、十分でないときに自由に、大きなページをマウントすることで、このようながrelatime 0 0を、表示されます手動でマウントするOVS + dpdk必要
5、大規模なページに関するいくつかの質問をVPP
A:時々起動し、VPPが報告されます。
これはデフォルトのラージ・ページ・メモリー・サイズをdpdk一般的な要件につながる理由は、VPPスタートアップコンフィギュレーションファイルstartup.confにdpdk財産ソケット-MEMを変更する必要があり、実際の準備が小さすぎると、断片的なポイントは大きすぎます
B:VPPのデフォルトのパスをマウントするには、時にはVPP \以上のマウント/実行/ VPP /のhugepagesた、猫の/ proc /マウントを参照して、起動していないが、umountのアンインストールを完了できなかった、大ページ/実行/ VPP /のhugepagesです、
[ルート@ localhostの/]#アンマウント/実行/ VPP /のhugepages
アンマウント:/実行/ VPP /のhugepages:ターゲットがビジー状態です。
(いくつかの場合に使用するプロセスに関する有用な情報
装置はlsofの(8)又は定着器(1)によって求められます)
あなたは次の回避策を使用することができます
fuserコマンドを使用し、必ずプロセスを殺すために必要とする人があることを確認してください
[ルート@ localhostの/]#定着-cu /実行/ VPP /のhugepages
/ mnt:15060c(ルート)
第二に、プロセスにSIGKILL信号に
[ルート@ localhostの/]#定着-ck /実行/ VPP /のhugepages
/ MNT:15060c
確認
[ルート@ localhostの/]#定着-c /実行/ VPP /のhugepages
[1] + = 1グラム=を/ dev / null BS = 1Mの場合DDを殺した(WD:/実行/ VPP /のhugepages)
(今WD:/)
大きな問題のページをdpdk + 6 OVS
サーバを再起動することが時々できないだけで、暫定ページを構成しますが、+ dpdkが文句を言うでしょうOVSを開始することができます
A:
上記の大規模ページの4 1073741824(1G)、2048 2097152(2M)大ページのサイズを示されているのが、マウントはしませんでした、手動で大規模なページをマウントする必要があり、あなたがマウント実行する必要が-t hugetlbfs hugetlbfsを/ mnt /巨大な
B:
ラージ・ページ・サイズOVS + dpdkの構成は暫定的構成ページを増加させる必要が大きなページのニーズを満たしていないためです
C:
この状況は、特段の理由がマウントされていません!実行する必要があります
ます。mkdir / mntに/巨大な
マウント-t hugetlbfs NODEVを/ mnt /巨大な
例えば、元の設定が4096であるエコー4096> / SYS /カーネル/ MM /のhugepages /のhugepages-2048KBは/ nr_hugepagesを
AnonHugePages:5218304キロバイト
HugePages_Total:4096
A GE ges_Free:4096
HugePages_Rsvd:0
HugePages_Surp:0
胡歌gesize上:2048キロバイト
今、最初のセットのエコー128> / SYS /カーネル/ MM /のhugepages /のhugepages-2048KBは/ nr_hugepagesを
次に、設定エコー4096> / SYS /カーネル/ MM /のhugepages /のhugepages-2048KBは/ nr_hugepagesを
連続メモリの問題に起因するものと推定さ
7、その他の問題
時には、あなたは大規模なページを検索します
とにかく設定、自由は0、topまたはfreeコマンドで、ビューメモリは基本的になくなったが、我々は、VPPまたはOVSを開始しませんでした、これは他のプロセスがhugepageを使用可能性が非常に高い、検索するには、次のコマンドを使用します。
見つけるの/ proc / * / smaps | xargsのはgrep -RIL "anon_hugepage"
原則hugepageコンテンツにhttps://toutiao.io/posts/n4hzg1/previewを参照してください
----------------
免責事項:この記事はCSDNブロガーは元の記事に「少し怠惰」でありますCC 4.0 BY-SAの著作権契約書に従って、再現し、元のソースのリンクと、この文を添付してください。
オリジナルリンクします。https://blog.csdn.net/shaoyunzhe/article/details/54614077