Hitachi

Hitachi Advanced Data Binder システム構築・運用ガイド


13.1.4 HADBサーバ開始時間の短縮(HugePagesの適用)

ここでは,HADBサーバの開始時間を短縮する方法について説明します。

HADBのグローバルバッファはOSの共有メモリを使用しています。そのため,HADBのサーバ定義で大量のグローバルバッファを確保する定義を指定すると,OSのメモリを管理するTLB内に要求されたアドレスがない状態(TLBミス)が多発します。その結果,共有メモリのアクセス性能が低下し,HADBサーバの開始時間が長くなります。

このような場合,HADBの共有メモリにHugePagesを適用してください。HugePagesはTLBのページテーブルを拡張する機能です。TLBのページテーブルを拡張することでTLBミスが少なくなり,共有メモリへのアクセス性能が改善されます。

HADBの共有メモリにHugePagesを適用する手順を次に示します。

設定方法

  1. HADBサーバを終了する

    adbstopコマンドを実行して,HADBサーバを終了してください。

  2. HugePagesを有効にするために,次のカーネルパラメタを指定する

    • vm.nr_hugepagesパラメタ

    • vm.hugetlb_shm_groupパラメタ

    • soft memlockパラメタ

    • hard memlockパラメタ

    各カーネルパラメタの詳細については,「6.2 カーネルパラメタの見積もり」を参照してください。

  3. OSを再起動する

    カーネルパラメタの指定を変更した場合,OSを再起動してください。

  4. サーバ定義を変更する

    サーバ定義にadb_sys_shm_huge_page_sizeオペランドを指定してください。

    また,手順2.でvm.nr_hugepagesパラメタの指定値を変更した場合,サーバ定義のadb_sys_memory_limitオペランドの指定値も変更してください。

  5. HADBサーバを開始する

    adbstartコマンドを実行して,HADBサーバを開始してください。

メモ

サーバ定義のadb_sys_shm_huge_page_sizeオペランド,adb_sys_memory_limitオペランドについては,「7.2.2 性能に関するオペランド(set形式)」のadb_sys_shm_huge_page_sizeオペランド,adb_sys_memory_limitオペランドを参照してください。