FIKIT: Priority-Based Real-time GPU Multi-tasking Scheduling with Kernel Identification

要約

機械学習トレーニング、推論、一般的な HPC タスクなどの高度に並列化されたワークロードは、GPU デバイスを使用することで大幅に高速化されます。
クラウド コンピューティング クラスターでは、利用可能な GPU の数よりも多くのタスク リクエストが常に存在するため、マルチタスク共有を通じて GPU の計算能力を提供することが非常に要求されます。
既存の GPU 共有ソリューションは、複数のジョブが 1 つの GPU をめぐって競合する場合に、タスク レベルの待機時間やタスク レベルのスイッチング コストを削減することに重点を置いています。
ノンストップの計算リクエストには異なる優先順位が付けられ、GPU デバイスを共有する際の QoS に非対称的な影響を与えます。
既存の作業は、この設定によってもたらされるカーネル レベルの最適化の機会を逃していました。
この問題に対処するために、FIKIT (Filling Inter-kernel Idle Time) と呼ばれる新しいカーネル レベルのスケジューリング戦略を提案します。
FIKIT には、タスク レベルの優先度情報、きめ細かいカーネル識別、カーネル測定が組み込まれており、優先度の高いタスクのカーネル間アイドル時間中に優先度の低いタスクを実行できます。
これにより、GPU のデバイス ランタイムが完全に満たされ、クラウド サービスに対する全体的な GPU 共有の影響が軽減されます。
一連の ML モデル全体で、FIKIT ベースの推論システムは、GPU 共有モードの JCT と比較して優先度の高いタスクを 1.33 ~ 14.87 倍高速化し、半数以上のケースで 3.5 倍以上高速化しました。
あるいは、プリエンプティブ共有では、優先度の低いタスクには、デフォルトの GPU 共有モードに相当する 0.84 対 1 倍の比率の JCT があります。
さらに、カーネル測定と実行時のきめ細かいカーネル スケジューリングのオーバーヘッドを 5% 未満に制限します。

要約(オリジナル)

Highly parallelized workloads like machine learning training, inferences and general HPC tasks are greatly accelerated using GPU devices. In a cloud computing cluster, serving a GPU’s computation power through multi-tasks sharing is highly demanded since there are always more task requests than the number of GPU available. Existing GPU sharing solutions focus on reducing task-level waiting time or task-level switching costs when multiple jobs competing for a single GPU. Non-stopped computation requests come with different priorities, having non-symmetric impact on QoS for sharing a GPU device. Existing work missed the kernel-level optimization opportunity brought by this setting. To address this problem, we present a novel kernel-level scheduling strategy called FIKIT: Filling Inter-kernel Idle Time. FIKIT incorporates task-level priority information, fine-grained kernel identification, and kernel measurement, allowing low priorities task’s execution during high priority task’s inter-kernel idle time. Thereby, filling the GPU’s device runtime fully, and reduce overall GPU sharing impact to cloud services. Across a set of ML models, the FIKIT based inference system accelerated high priority tasks by 1.33 to 14.87 times compared to the JCT in GPU sharing mode, and more than half of the cases are accelerated by more than 3.5 times. Alternatively, under preemptive sharing, the low-priority tasks have a comparable to default GPU sharing mode JCT, with a 0.84 to 1 times ratio. We further limit the kernel measurement and runtime fine-grained kernel scheduling overhead to less than 5%.

arxiv情報

著者 Wenqing Wu
発行日 2024-01-18 16:47:43+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.DC, cs.LG パーマリンク