最も費用対効果の高いクラウドを自動選択して大幅なコスト削減が可能な「SkyPilot」
![](https://image.news.livedoor.com/newsimage/stf/0/4/04710_88_fc2ac2735b42f1e1842da092a9a3ff5b.png)
ビジネスにおけるクラウドコンピューティングサービスの重要性はますます高まっていますが、それに伴ってコストの高騰や可用性の問題、サービス選択の手間などが急増しています。そこで、カリフォルニア大学バークレー校の研究者であるZongheng Yang氏らのチームが、最も費用対効果の高いクラウドを自動的に選択できるオープンソースフレームワーク「SkyPilot」を開発しました。
https://github.com/skypilot-org/skypilot
SkyPilot: ML and Data Science on any cloud with massive cost savings | by Zongheng Yang | Nov, 2022 | Medium
https://medium.com/@zongheng_yang/skypilot-ml-and-data-science-on-any-cloud-with-massive-cost-savings-244189cc7c0f
UC Berkeley Launches SkyPilot to Help Navigate Soaring Cloud Costs
https://www.datanami.com/2022/12/12/uc-berkeley-launches-skypilot-to-help-navigate-soaring-cloud-costs/
クラウドコンピューティングサービスにはAmazon Web Services(AWS)やMicrosoft Azure、Google Cloud Platform(GCP)などさまざまな種類があり、「どのクラウドコンピューティングを使用するべきなのか?」に頭を悩ませた経験がある人も多いはず。
Yang氏は、クラウドコンピューティングサービスを使用する組織は複数のクラウドを利用する「マルチクラウド」か、複数リージョンを切り替え可能にする「マルチリージョン」を実装するのが好ましいと主張しています。マルチクラウド/リージョンを使用するメリットには以下が挙げられます。
◆コストを削減できる
以下は、2022年11月時点の「NVIDIA A100 GPU」「AMDのCPU」「ARMのCPU」のインスタンス利用料を、AWS・GCP・Azureで比較したもの。「NVIDIA A100 GPU」ではAzureが最安でAWSが20%、GCPが8%高額になっているなど、同じハードウェアでもサービスプロバイダーによって価格が異なることがわかります。自分たちの用途に最適なクラウドコンピューティングサービスを選択することができれば、大幅なコスト削減につながります。
![](https://image.news.livedoor.com/newsimage/stf/e/7/e710c_88_d2bc9189cd4f4f62031a10a804f7f234.png)
同様に、同じクラウドコンピューティングサービスでもリージョンやゾーンによって価格差があるため、リージョンやゾーンの適切な切り替えも重要です。
![](https://image.news.livedoor.com/newsimage/stf/2/2/22872_88_03acc22cd54f7105b82b88868831bee8.png)
◆最高のハードウェアを活用できる
ハードウェアはそれぞれパフォーマンスや効率性が異なるため、サービスプロバイダーが競合他社との差別化を図るためにカスタムハードウェアを提供するケースが増えています。Yang氏は以下のような例を挙げています。
・ハイパフォーマンスな機械学習用マシンであるGCPの「TPU」
・費用対効果の高い機械学習推論を実行するAWSの「Inferentia」
・利用中データを暗号化するAzureの「Intel SGX」
提供されるサービスやハードウェアの違いは、クラウド間だけでなくリージョン間にも存在するとのこと。タスクに最適なハードウェアを選択することで、コスト削減やパフォーマンス向上が期待できます。
◆貴重なリソースの可用性を高める
クラウドコンピューティングサービスの需要の高まりから、ハイエンドGPUを利用するクラウドインスタンスの取得は困難となっており、そうでないサービスでも容量不足に直面することがあります。貴重なクラウドコンピューティングリソースの可用性を高めるには、マルチクラウド/リージョンを使用することが一番です。
「Microsoft Azureの容量不足でスタートアップの事業に悪影響が及んでいる」という報告でネットユーザーが激論を交わす - GIGAZINE
![](https://image.news.livedoor.com/newsimage/stf/2/e/2ed02_88_33bbba95bea4fcb867949723fcfb17da.jpg)
しかし、カリフォルニア大学バークレー校でさえ、複数クラウド/リージョンの運用における複雑さは長年の課題となっていたとのこと。Yang氏は、「私たちのラボでは機械学習・データサイエンス・システム・データベース・セキュリティなどのプロジェクトを実行するため、パブリッククラウドに大きく依存しています。その中で、1つのクラウドを実行するだけでも困難であり、複数のクラウドを使用することはエンドユーザーの負担を悪化させるだけであることがわかりました」と述べています。
そこでYang氏らのグループは、マルチクラウド/リージョンの使用を簡素化してコストを削減するために、オープンソースフレームワークのSkyPilotを開発しました。SkyPilotはジョブとリソース要件(CPU/GPU/TPU)を指定すると、ジョブを実行するためのコンピューティングリソースがあるクラウドサービス/リージョン/ゾーンを自動で特定し、最も安価なものを選択して実行するとのこと。
![](https://image.news.livedoor.com/newsimage/stf/2/9/29de5_88_e532f6adcb1bf11932a290be7b28deca.png)
さらにSkyPilotは、容量不足やエラーが発生した場合に自動でフェイルオーバーを実行できるほか、ユーザーコードやファイルをクラスターに同期したり、ジョブのキューイングと実行を管理したりすることも可能だそうです。Yang氏は、SkyPilotを利用してジョブを実行する最も安価なクラウドコンピューティングサービスを選択し、アイドル状態のクラスターを自動でクリーンアップすることで、多くの場合でコストが3分の1以下に削減できると主張しています。
SkyPilotは過去数カ月にわたって10以上の組織に所属する数十人の研究者に展開されており、さまざまなユースケースで使用されてきたとのこと。たとえばソーク生物学研究所の科学者は、SkyPilotを使用して毎週の定期的なパッチジョブを実行しています。これにより、オンデマンドでインスタンスを実行した場合と比較してコストが6分の1以下に削減されたほか、ジョブの完了時間も大幅に短縮されたそうです。
Yang氏は、「ソーク研究所のユーザーからは、SkyPilotはクラウドを抽象化することで、研究者がクラウドの複雑な仕組みを学ぶのではなく、科学に集中することができるという声が寄せられています」と述べました。
Yang氏は今後数カ月以内に、SkyPilotのシステムや詳細なユースケース、導入方法についてさらに詳しい情報を提供すると述べているほか、機能の改善も計画されているとのことです。