11.1.3 HADBサーバ開始時間の短縮(HugePagesの適用)
ここでは,HADBサーバの開始時間を短縮する方法について説明します。
HADBのグローバルバッファはOSの共有メモリを使用しています。そのため,HADBのサーバ定義で大量のグローバルバッファを確保する定義を指定すると,OSのメモリを管理するTLB内に要求されたアドレスがない状態(TLBミス)が多発します。その結果,共有メモリのアクセス性能が低下し,HADBサーバの開始時間が長くなります。
このような場合,HADBの共有メモリにHugePagesを適用してください。HugePagesはTLBのページテーブルを拡張する機能です。TLBのページテーブルを拡張することでTLBミスが少なくなり,共有メモリへのアクセス性能が改善されます。
HADBの共有メモリにHugePagesを適用するためには,次の2つの設定をしてください。
設定方法
-
HugePagesを有効にするために,次のカーネルパラメタを指定します。
-
vm.nr_hugepagesパラメタ
-
vm.hugetlb_shm_groupパラメタ
-
soft memlockパラメタ
-
hard memlockパラメタ
各カーネルパラメタの詳細については,「6.2 カーネルパラメタの見積もり」を参照してください。
-
-
サーバ定義adb_sys_shm_huge_page_sizeオペランドを設定します。
詳細については,「7.6.2(2) 性能に関するオペランド(set形式)」のadb_sys_shm_huge_page_sizeオペランドを参照してください。