Linux 同期スケジューラ
Cray XD1 システムは通信プロセッサの同機能とKernelの機能により同期スケジューラをサポートします。この機能を活用するとOSのJitterを軽減し並列アプリケーションのスループットが最大20%向上します。
Cray XD1は、Linux のPCクラスター型アーキティクチャで初めてハードウェアサポートによるカーネルの同期機能を持ったシステムです。このXD1のカーネル同期機構はLSS ( Linux Synchronize Scheduler) と呼ばれています。ハードウェアサポートによる高速なカーネル同期機能により従来得られなかったMPIアプリケーションの実効性能の向上を図っています。
XD1は同期スケジューラのための新しい Linux スケジュールポリシーを導入しています。新しいスケジュールポリシーでは、全てのMPI並列プロセスを同時に平行してスケジューリングし、Linuxカーネルの処理を同じタイミングで行うようにしています(ギャングスケジュールと同等)。このスケジューリングポリシーを確立するために、XD1では個々のノードにある通信プロセッサ(Rapid Array プロセッサ)のグローバル同期機構を使用しています。このRapid Array 通信プロセッサによるハードウェアレベルの同期機能(1μ秒以下)によって、全てのノードの Linux スケジューリングを同期させることが可能となります。
XD1の同期スケジューラは、同期スケジューリングのためにスケジューリングフレームを定義しています。スケジューリングフレームは128のフレームを持ち、120フレームをアプリケーションの実行に割り当て、残りの8フレームをLinuxの処理のために割り当てています。異なるノード上のカーネルはこのスケジューリングフレームを同期したクロックにアラインします。これによって全てのプロセスを同期させてスケジュールすることが可能となります。