情報ガイドステーションメニュー
| AI環境でGPUリソースを有効活用 | |
BitfusionでGPUをプール化(概要編) |
こんにちは。デル・テクノロジーズでAI関連ソリューションを担当している山口です。 この記事を書いているのが2020年10月1日なんですが、昨日からVMworld 2020が開催されていて、業務の合間の休憩にGeneral SessionやBreakoutセッションを視聴しています。 数年前に比べてアプリケーションよりのセッションがとても多くなり、どれから視聴しようか悩みつつ面白そうなのを見つけて視聴しています。 今回ご紹介するBitfusionのセッションもVMworldでいくつか公開されているので、興味があるかたは、この記事と合わせて視聴いただければと思います。
Bitfusion概要
AIやMachine Learningのワークロードで利用されているGPUの利用率は15%前後といわれています。これはGPU環境がサイロ化されユーザ間やサーバ間でGPUのリソースが共有できにくい環境にあるからです。Bitfusionはこのサイロ化され、低利用率のGPUを有効活用するために、GPUをプール化・共有するソリューションです。GPUのリソースをプール化し統合することによってGPUリソースを最大限有効活用してコスト削減を実現します。 BitufionはGPUのプール化と共有を実現するために、ネットワーク上でGPUリソースを提供するサーバ、クライアント型モデルのアーキテクチャを採用しています。
GPUのプール化と共有
BitfusionではGPUプール化することによって有効活用できると紹介いたしまいたが、GPUの利用率を上げるためにGPUを複数ユーザ(Bitfusionクライアント)で分割して共有することが可能です。 1.GPUごとの利用 データサイエンティストはネットワークを経由してGPU単位で利用することができます。上の図では青色のジョブで2枚のGPUを利用し、緑色のジョブで1枚のGPUを利用している例になります。 2.GPUメモリの分割 Bitfusionでは各ジョブ事に利用するメモリ量を指定して利用することもできます。上記例では青いジョブで65%のGPUメモリを、緑のジョブで35%のGPUメモリを割り当てて利用している例です。指定の単位はパーセント(%)単位か、MB単位で指定して分割することが可能です。 GPUメモリの分割は、MLの学習では多く、推論では少なくメモリを割り当てるなど、GPUの利用目的に合わせて必要な分だけ利用できるので柔軟性が高く、GPUの利用率を向上させることができます。
Bitfusionのアーキテクチャ
ではBitfusionの基本的な構成とアーキテクチャについても紹介します。 <ネットワーク> Bitfusionは前述のとおり、サーバ、クライアント側のアーキテクチャを構成するのですが、クライアント側からGPUサーバ側へネットワークを介してGPUリソースを利用するため、ポイントとなるのはネットワークです。ネットワークの要件は10Gbps以上のEthernetもしくは、RoCEを利用する必要があります。もう1つ要件ではなく推奨ということでマニュアルに記載されているのが、ノード間が50マイクロ秒以下となっています。 左側のクライアントノード上のLinuxにBitfusionクライアントをインストールし、仮想マシンからネットワーク経由で右側のGPUノードのGPUを利用します。クライアントノードはESXの6.7以降でBitfusionを利用することができます。 現時点でサポートされるクライアントOSは次の4種類になります。 ・Ubuntu18.04 ・Ubuntu16.04 ・Centos7 ・RHEL7.4+ Bitfusionサーバが稼働するESXi7に、OVAで提供されるBitfusionサーバをデプロイし、GPUをパススルーで構成スつ必要があります。ドキュメントにはGPUはNVIDIAのV100かT4が推奨されています。OVAのデプロイウィザードでNVIDIAドライバーのインストールを行うこともできるのでとても簡単に構成することができます。
まとめ
初回ということで、Bitfusionの概要と基礎を紹介させていただきました。まだ触り部分の紹介だけですが、Bitfusionの柔軟性は感じていただけたのではないでしょうか。 Bitfusionは2020年7月にリリースされた新しい製品なので、まだまだ情報が少ないのですが、次回は当社東京 田町オフィスのCustomer Solution Center内のAI Experience Zoneで動作確認した内容をご紹介したいと思います。 Dell Technologies 製品本部 シニアシステムエンジニア 山口 泰亜 2020/10/21 関連記事はこちら情報ガイドステーション ソリューションページNVIDIA GPUとコンテナでAI環境作ってみた DockerでJupyterlab使ってコード実行してみた GPUのために設計されたサーバー 「PowerEdge C4140」 の実績と実力! AI環境でGPUリソースを有効活用 BitfusionでGPUをプール化(概要編) AI環境でGPUリソースを有効活用 Bitfusionの利用環境と方法 AI環境でGPUリソースを有効活用 BitfusionでGPUのメモリ分割 AI環境でGPUリソースを有効活用 他ソフトウェアと連携してBitfusionをもっと便利に AI環境でGPUリソースを有効活用 ベアメタルサーバもBitfusionで高速化! HPC and AI Innovation Labのご紹介 サンディエゴスーパーコンピューターセンターの新スパコン 「Expanse」 にDellEMCのAMDサーバーが採用! |