はじめに

ここでは、Verticaを導入するサーバに必要なBIOS設定情報を紹介します。
このBIOS設定は必須ではなく、よりパフォーマンスを高めるための推奨設定という位置付けです。
HP ProLiant DL380 Gen9の場合を例に記載しています。
他のサーバの場合には、適宜読み替えてご対応ください。

HP電力プロファイル設定

設定値:最大パフォーマンスモード
パフォーマンスに悪い影響を与える可能性のあるすべての電力管理オプションを無効にするモードです。
BIOS1

HPパワーレギュレーター設定

設定値:HPスタティックハイパフォーマンスモード
プロセッサーは、OSの電源管理ポリシーを無視して、電力を最大限まで使い、最高のパフォーマンスを発揮する設定です。
BIOS2

協調電力制御設定

設定値:無効
プロセッサークロッキングコントロール(PCC)インターフェイスをサポートしているオペレーティングシステムでこのオプションを有効にすると、サーバーのパワーレギュレーターオプションがダイナミックパワーセービングモードに構成されている場合でも、オペレーティングシステムからプロセッサーに対して周波数の変更を要求できます。PCC インターフェイスをサポートしていないオペレーティングシステムの場合やパワーレギュレーターがダイナミックパワーセービングモードに構成されていない場合、このオプションはシステムの動作に影響しません。このオプションを構成できるのは、HP 電力プロファイルがカスタムに設定されている場合のみです。
BIOS3

HyperThreading設定

設定値:ON/OFFどちらでも可
ベストプラクティスとして、Verticaは下記のようなことが無い限り、CPUハイパースレッディングを無効にすることを推奨します。
・重要なロード処理がある(クエリ処理に対して)
・Verticaサーバのハードウェアが、少なくともHP ProLiantシリーズGen8または同等のものである
BIOS4

ブートモード設定

設定値:BIOSモード/UEFIモードのどちらでも可
BIOS5

その他

電源管理の設定に関連して、OSのgrub.confのkernel行に以下の設定を追記してください。
この設定をする事で、Cステート制御(プロセッサ負荷状態に応じた省電力機能)を無効化します。
※以下の例は、RedHat Enterprise Linux 6の設定例です。

intel_idle.max_cstate=0 processor.max_cstate=0

(設定例)
title Red Hat Enterprise Linux (2.6.32-431.el6.x86_64)
root (hd0,1)
kernel /boot/vmlinuz-2.6.32-431.el6.x86_64 ro root=UUID=00c29c3d-d96f-4809-a689-2c0354e9be19 rd_NO_LUKS rd_NO_MD KEYBOARDTYPE=pc KEYTABLE=jp106 LANG=ja_JP.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet intel_idle.max_cstate=0 processor.max_cstate=0
initrd /boot/initramfs-2.6.32-431.el6.x86_64.img

Red Hat Enterprise Linux 7.xでは、以下の行を追記してください。
※Red Hat Enterprise Linux 7.xでは/etc/grub.confは/boot/efi/EFI/[centos or redhat]/grub.confになりました。

intel_idle.max_cstate=0 processor.max_cstate=1 intel_pstate=disable


参考情報

Configuring the HPE Proliant DL380 Gen9 24-SFF CTO Server as a Vertica Node
https://www.vertica.com/kb/Configuring-the-Proliant-DL380-Gen9-24-SFF-CTO-Server-as-a/Content/Hardware/Configuring-the-Proliant-DL380-Gen9-24-SFF-CTO-Server-as-a.htm

検証バージョンについて

この記事の内容はVertica 9.1で確認しています。