Skip to main content
QUICK REVIEW

[論文レビュー] Canary: A Scheduling Architecture for High Performance Cloud Computing

Hang Qu, Omid Mashayekhi|arXiv (Cornell University)|Feb 3, 2016
Cloud Computing and Resource Management参考文献 33被引用数 14
ひとこと要約

Canaryは、中央コントローラーから個々のワーカーへタスクスケジューリングの責任を移管する分散型スケジューリングアーキテクチャを提案し、数千コアでのハイパフォーマンス分析を可能にしている。データパーティションをタスクをローカルにスケジューリングするワーカーに割り当てることで、CanaryはSparkに比べ最大90倍の高速化、GraphXに比べ4倍の高速化を達成し、64ワーカーで1秒間に1億2000万件を超えるタスクのスケーラブルなスケジューリングを実現した。

ABSTRACT

We present Canary, a scheduling architecture that allows high performance analytics workloads to scale out to run on thousands of cores. Canary is motivated by the observation that a central scheduler is a bottleneck for high performance codes: a handful of multicore workers can execute tasks faster than a controller can schedule them. The key insight in Canary is to reverse the responsibilities between controllers and workers. Rather than dispatch tasks to workers, which then fetch data as necessary, in Canary the controller assigns data partitions to workers, which then spawn and schedule tasks locally. We evaluate three benchmark applications in Canary on up to 64 servers and 1,152 cores on Amazon EC2. Canary achieves up to 9-90X speedup over Spark and up to 4X speedup over GraphX, a highly optimized graph analytics engine. While current centralized schedulers can schedule 2,500 tasks/second, each Canary worker can schedule 136,000 tasks/second per core and experiments show this scales out linearly, with 64 workers scheduling over 120 million tasks per second, allowing Canary to support optimized jobs running on thousands of cores.

研究の動機と目的

  • ハイパフォーマンス分析ワークロードにおける集中型スケジューラーのスケーラビリティボトルネックを解決すること。
  • クラウド環境における数千コアにわたるワークロードの効率的実行を可能にすること。
  • スケジューリングのオーバーヘッドを低減するために、スケジューリングの責任をコントローラーからワーカーに移管すること。
  • 提案アーキテクチャの性能を実世界の分析ベンチマークで評価すること。

提案手法

  • 従来のスケジューリングとは逆転させ、中央コントローラーからタスクを配信する代わりに、データパーティションをワーカーに割り当てる。
  • 各ワーカーが割り当てられたデータパーティション上でローカルにタスクをスケジューリング・実行し、コントローラーの負荷を低減する。
  • ワーカーが割り当てられたデータセグメント内で自律的にタスクスケジューリングを管理する分散アーキテクチャを採用する。
  • ワーカー間で線形にスケーリングされ、1コアあたり1秒間に136,000件のタスクをスケジューリング可能。
  • 最大64台のサーバーと1,152コアで性能を評価するためにAmazon EC2を用いる。
  • 3つのベンチマークアプリケーションを用いて、SparkおよびGraphXと性能を比較する。

実験結果

リサーチクエスチョン

  • RQ1分散型スケジューリングモデルは、大規模な分析ワークロードにおいて集中型スケジューラーを著しく上回る性能を発揮できるか?
  • RQ2分散環境における複数ワーカー間でタスクスケジューリングスループットはどのようにスケーリングするか?
  • RQ3ハイパフォーマンスコンピューティングにおいて、分散型スケジューリングがコントローラーのボトルネックをどの程度軽減できるか?
  • RQ4提案アーキテクチャは、Spark や GraphX といった既存システムに比べて、どの程度のパフォーマンス向上を達成できるか?

主な発見

  • Canaryは、評価されたベンチマークでSparkに比べ最大90倍の高速化を達成した。
  • Canaryは、高度に最適化されたグラフ分析エンジンであるGraphXに比べ最大4倍の高速化を達成した。
  • 1コアあたり1秒間に136,000件のタスクをスケジューリングできるため、高いスケジューリングスループットを実現した。
  • 64ワーカーを用いることで、1秒間に1億2000万件を超えるタスクスケジューリングが可能となり、線形スケーリングを示した。
  • 中央スケジューラーのボトルネックを排除することで、数千コアでの効率的実行が可能になった。
  • クラウド環境における複数のベンチマークアプリケーションにわたり、性能向上が一貫して得られた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。