翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CPU コアのミスマッチを回避
ライセンスがカバーするコア数よりも多いサーバーを選択すると、CPU スキューが発生し、CPU パワーが無駄になる可能性があります。これは、論理コアと実際のコアがマッピングされているためです。クライアントアクセスライセンス (CAL) で SQL Server を使用する場合、VISIBLE ONLINE
一部のスケジューラーは対応し、VISIBLE OFFLINE
その他のスケジューラーは使用します。これにより、スケジューラーノードが最適に使用されないため、不均一メモリアクセス (NUMA) トポロジーでパフォーマンスの問題が発生する可能性があります。
たとえば、m5.24xlarge
あるインスタンスで SQL Server を実行すると、24 コアのソケットが 2 つ、ソケットあたり 48 の論理プロセッサが検出され、合計 96 個の論理プロセッサになります。48 コアのみのライセンスをお持ちの場合は、SQL Server エラーログに次のようなメッセージが表示されます。
2020-06-08 12:35:27 .37 SQL Server のライセンスに基づき、サーバー SQL Server は 48 個の論理プロセッサを使用して、1 ソケットあたり 24 コア、1 ソケットあたり 48 個の論理プロセッサ、合計 96 個のソケット 2 個のソケットを検出しました。 これは情報メッセージであり、ユーザーによる操作は必要ありません。
合計コア数と SQL Server が使用しているコア数に違いがある場合は、CPU 使用率の不均衡を確認するか、ライセンスがサポートしているコア数と同じ種類のサーバーを使用してください。
CPU スキュー: この例 (m5.24xlarge
) のインスタンスタイプでは、SQL Server はデフォルトで 8 つの NUMA ノードを作成します。ステータスのスケジューラーがあるのは、これらのノードのうち 4 つ (親ノード ID 0,1,2,3) だけですVISIBLE
ONLINE
。VISIBLE OFFLINE
残りのスケジュールはすべてです。このようなスケジューラー間の不一致は、パフォーマンスの低下につながります。
スケジューラーの情報とステータスを確認するには、以下を使用してください。
$ select * from sys.dm_os_schedulers
SQL Server ライセンスがサポートするコア数が多いサーバーインスタンスを使用する場合は、Amazon EC2 ドキュメントの「インスタンスの CPU オプションの指定」の指示に従ってコア数をカスタマイズすることを検討してください。