このセクションでは、このリリースでのプラットフォームとパフォーマンスの拡張機能について説明します。これらの機能は SPARC および x86 ベースのシステムのための Oracle Solaris の最適化に役立つため、パフォーマンスが向上するだけでなく、システムのより優れた診断も実現されます。
OSM (Optimized Shared Memory) V2 によって、Oracle Database 12c インスタンスのシステムグローバル領域 (SGA) がより高速になります。Oracle Database 12c インスタンスは、小さい SGA では 2 倍速くなり、大きい (28T バイト) SGA では 6.5 倍速くなります。Oracle Database のシャットダウン時間も、小さい SGA ではほぼ 2 倍、大きい SGA では 6 倍速くなりました。
パフォーマンス上の理由からメモリーをロックダウンしているアプリケーションは、新しい OSM により起動、停止、または再起動時間がさらに改善される可能性があります。これは、ISM (Intimate Shared Memory) および DISM (Dynamic Intimate Shared Memory) のような以前の共有メモリーメカニズムに対する重要な改善点です。
OSM API の詳細は、coreadm(1M)、proc(4)、および pmap(1) のマニュアルページを参照してください。
動的カーネルレベルトラップトレースを使用すると、システムを停止せず、システム上のトラップアクティビティーに関する情報を収集できます。このため、トラップトレースは影響を最小レベルに削減するときに役立ちます。トレースを動的に有効または無効にしたり、必要に応じてトレースを構成したりするには、システム管理ツール ttrace を使用します。このツールは、SPARC と x86 の両方のプラットフォームで動的なカーネルトラップトレースを提供します。
詳細は、ttrace(1M) のマニュアルページを参照してください。
選択された SPARC システムのプラットフォームファームウェアの更新が、My Oracle Support からの .zip ファイルのダウンロードに加え、Oracle Solaris IPS サポートリポジトリでも入手できるようになりました。ファームウェアパッケージのインストールまたは更新によって /var/firmware/server-type にファイルが保存されますが、サーバーのファームウェアは自動では更新されません。引き続き README ファイルの手順に従って、手動手順を実行する必要があります。
使用しているプラットフォームのファームウェア更新パッケージを識別するには、次のコマンドを使用します。
# pkg list -af 'firmware/system/*'
pkg contents および pkg info コマンドを使用すると、使用しているプラットフォームのパッケージに関する詳細情報を取得できます。
たとえば、firmware/system/T5-4 グループパッケージは、firmware/system/T5-4/sysfw9-4、firmware/system/T5-4/hbafw、および firmware/system/T5-4/hwprogrammables パッケージをインストールします。pkg info コマンドは、firmware/system/T5-4/sysfw9-5 パッケージが Version 9.5.3 Patch 22270913 を提供することを示します。 /var/firmware/system/T5-4/sysfw9-5/p22270913_953/README.html の手順に従い、ファームウェアの更新をインストールします。ファームウェアパッケージのインストール後に、pkg update コマンドを使用して、新しいファームウェアの更新をダウンロードすることもできます。
pkg list、pkg contents、pkg info、pkg install、および pkg update コマンドの詳細は、Oracle Solaris 11.3 ソフトウェアの追加と更新を参照してください。ファームウェアの更新の詳細については、Oracle ILOM 機能更新およびリリースノートファームウェア Release 3.2.xを参照してください。
SPARC (sun4v) プラットフォームでは、時間値を計算して報告する gethrtime および gettimeofday ルーチンのパフォーマンスが向上しています。これらのルーチンのコードはより効率的になるようにリファクタリングされたため、全体的な計算パフォーマンスが向上しました。
詳細は、gethrtime(3C) および gettimeofday(3C) のマニュアルページを参照してください。
NVIDIA グラフィックスレガシードライバがバージョン 346.35 に更新され、NVIDIA GPU の新しいファミリをサポートするようになりました。古い NVIDIA カードのサポートは、R340 または R304 レガシードライバから提供されます。ドライバはリポジトリ (driver/graphics/nvidiaR340 および driver/graphics/nvidiaR304 パッケージ) で入手できます。
R340 レガシードライバをインストールするには、次のコマンドを使用します。
$ sudo pkg install --reject driver/graphics/nvidia driver/graphics/nvidiaR340
R304 レガシードライバをインストールするには、次のコマンドを使用します。
$ sudo pkg install --reject driver/graphics/nvidia driver/graphics/nvidiaR304
レガシー GPU サポートの完全なリストについては、http://www.nvidia.com/object/IO_32667.html を参照してください。詳細は、/usr/share/doc/NVIDIA/README.txt ファイルを参照してください。
スケーラブルな読み取り/書き込みロックによって、読み取り/書き込みロックがすばやく取得され、特に規模の大きいシステム上のアプリケーションのパフォーマンスが強化されます。最新のシステムは NUMA (Non-Uniform Memory Access) 設計を使用しており、プロセッサの速度とほかのプロセッサとの相互接続の速度の差異が拡大しています。
アプリケーションのパフォーマンスは、オペレーティングシステムが、アプリケーションおよびアプリケーションが必要とするデータを同じノード (同じプロセッサまたはプロセッサのグループ) に適切に配置するかどうかに大きく依存しています。スケーラブルな読み取り/書き込みロックプロジェクトはロックを配布し、ロックを使用するアプリケーションに要求されたロックをローカルに配置できるように NUMA に対応しています。要求されたロックがアプリケーションに対してローカルであると、待機時間の長いノード間通信を回避でき、アプリケーションのパフォーマンスが向上します。
詳細は、pthread_rwlockattr_setpshared(3C) および pthread_rwlock_init(3C) のマニュアルページを参照してください。
Oracle Validation Test Suite (Oracle VTS) は、Oracle プラットフォーム上のほとんどのコントローラおよびデバイスの接続性と機能性をテストし、検証する包括的なハードウェア診断ツールです。このテストは、システム内のハードウェアコンポーネントまたは機能ごとに行われます。このツールでは、グラフィカル UI (GUI)、端末ベースの UI、およびコマンド行インタフェース (CLI) の 3 つのタイプのユーザーインタフェース (UI) をサポートしています。
Oracle VTS 7.0 Patch Set 19.2 には、プロセッサ、電源、ディスク、および電源管理の診断が次のように大幅に拡張されています。
Intel Haswell-EP 18 コア CPU のサポートの追加
MCU の帯域幅およびメモリーの能力を向上させるための ramtest の調整
dtlbtest/apat サブテストの VA 生成ロジックの改善
NVMe デバイスおよび新しい SAS3 HBA を識別するための diskmediatest の変更
ワークロードの混在をサポートするための diskmediatest の変更
LT のデータをダンプするための vtsk の変更
詳細は、VTS のユーザーガイド を参照してください。
Oracle Solaris 11.3 では、システムのクラッシュダンプを収集するための遅延ダンプメカニズムがサポートされるようになりました。この処理ははるかに高速であり、システムがリブートされるまでメモリーにダンプが保持され、ディスクベースのダンプデバイスを完全にバイパスしてファイルシステムにダンプを書き込むことができます。
詳細は、dumpadm(1M) のマニュアルページおよびOracle Solaris 11.3 でのシステム管理のトラブルシューティングを参照してください。
Oracle Solaris 11.3 には、システムがメモリー不足のときに、アプリケーション (特に、データベースと Java アプリケーション) に有益な新しい物理メモリー割り当てメカニズムが組み込まれています。このメカニズムにより、カーネルはほかのユーザープロセスで使用できるように、ZFS ARC を減らしてカーネルページを解放したりできます。この拡張機能は、長時間稼働するシステム上でアプリケーションを起動または再起動する場合に特に関係しています。
次の統計情報を報告するように IOMMU (Input Output Memory Management Unit) 統計情報サポートが kstat ツールに追加されました。
成功および失敗した大きいページ割り当ての数
サポートされているページサイズ (4K、2M など) 用の DMA マッピングの数
無効な IOTLB の数
バインド DMA 操作およびバインド解除 DMA 操作の数
バインド DMA 操作およびバインド解除 DMA 操作に費やされた時間
アクティブな大きいページのマッピング時間
小さいページ (4K) の割り当て回数と割り当て済みページを使用した回数の比較
これらの統計は、パフォーマンスの解析、およびシステムに対する DMA 操作の影響とリソースの使用状況の判断に役立ちます。現在、この拡張機能は、x86 プラットフォームで使用できます。詳細は、kstat(1M) のマニュアルページを参照してください。