FPGA as a Service(FaaS)は、フィールドプログラマブルゲートアレイ(FPGA)を搭載したインスタンスを提供します。これらのインスタンスは、FPGA アクセラレーションインスタンスと呼ばれます。 FPGA ハードウェアとアクセラレーションアプリケーションを再構成して、低レイテンシのハードウェアと柔軟なリソースを取得できます。
FaaS プラットフォーム
従来の FPGA ハードウェアは、開発に時間がかかり、困難です。さらに、ハードウェアアクセラレーションアルゴリズムのリリースとデプロイには、高レベルの保護が必要です。 FaaS プラットフォームは、クラウドで統一されたハードウェアプラットフォームとミドルウェアを提供し、アクセラレータの開発とデプロイのコストを削減します。基盤となるハードウェアを理解する必要なく、独自のアクセラレータを開発およびデプロイできます。また、アクセラレータプロバイダーが提供するアクセラレーションサービスを使用することもできます。
FaaS プラットフォームは、次のコンポーネントで構成されています。
ハードウェアインフラストラクチャ:FPGA アクセラレーションインスタンス、および Intel や Xilinx などのハードウェアアクセラレーション開発およびデプロイプラットフォーム。
クラウドベースの開発環境:Quartus や Vivado などのプロバイダーのソフトウェア、およびエミュレーションとシミュレーション用のサードパーティの電子設計自動化(EDA)ソフトウェア。
FPGA アクセラレーション IP(Intellectual Property)開発エコシステム:画像トランスコーディング、遺伝子計算、データ暗号化、ビデオ圧縮、ハードウェアエミュレーション設計、および深層学習(予測またはトレーニング)。
Alibaba Cloud は、FaaS プラットフォームに基づいて FPGA アクセラレーションインスタンスを提供し、FPGA アクセラレーション機能を提供するとともに、一般的な Elastic Compute Service(ECS)インスタンスと同じユーザーエクスペリエンスを維持します。 ECS コンソールで FPGA アクセラレーションインスタンスを作成するには、エンタープライズレベルのヘテロジニアスコンピューティングインスタンスタイプを選択します。インスタンスタイプの詳細については、インスタンスファミリーの概要をご参照ください。
機能
統一性
FPGA アクセラレーションインスタンスは、より信頼性が高く、移植と開発が容易です。 FPGA アクセラレーションインスタンスは、Intel や Xilinx デバイスなど、さまざまな FPGA デバイスと互換性があり、シェルスクリプトを使用してハードウェア書き込みを実装するマルチブート機能をサポートしています。
FPGA 仮想化
Alibaba Cloud によって開発された FPGA ソフトウェアおよびハードウェア仮想化ソリューションは、クラウドにおけるセキュリティ分離の要件を満たすことができます。ホットアップグレードがサポートされているため、サービスを中断することなくユーザーロジックをオンラインで再構成できます。
共同シミュレーションプラットフォーム
Intel および Xilinx デバイスがサポートされているため、ソフトウェアとハードウェアの共同シミュレーションを実行して、元の設計を変更することなく費用対効果の高いコンピューティング機能を提供できます。
動的に構成可能な相互接続トポロジ
FPGA アクセラレーションインスタンスは、1 つ、2 つ、または 4 つの FPGA の相互接続トポロジをサポートしています。これらのトポロジは、最適な費用対効果を提供するために動的に構成できます。同じアクセラレータカードの FPGA 間で Express Connect を使用して、帯域幅のボトルネックなしに大量のデータをリアルタイムで転送します。
ツールキット
FaaS プラットフォームは、ハードウェア開発キット(HDK)と SDK を提供して、より効率的で統一された開発およびデプロイプラットフォームを構築します。
HDK は、Shell と Role の組み合わせを使用して、利便性と柔軟性を損なうことなく、Shell の軽量性と安定性を確保します。
SDK は、次のコンポーネントで構成されています。
HDK Shell および Role に対応するホストドライバーとライブラリ、および統一された柔軟なソフトウェアサポートを提供します。
faascmd、クラウドベースの FPGA 管理サービスを提供する FPGA 管理ツールキット。 faascmd は、BIT または DCP ファイルのセキュリティ検証、FPGA イメージの生成、ダウンロード、管理、FPGA アクセラレータカードのステータス照会などの機能を提供します。
FaaS ベースのイメージ操作は、Alibaba Cloud Object Storage Service(OSS)に依存しています。したがって、FPGA アクセラレーションインスタンスを使用する前に、OSS をアクティブ化する必要があります。 OSS をアクティブ化する方法の詳細については、OSS のアクティブ化をご参照ください。
課金
FPGA アクセラレーションインスタンスは、ECS インスタンスと同じ方法で課金されます。コンピューティングリソース(vCPU とメモリ)、イメージ、Elastic Block Storage(EBS)デバイス、パブリック帯域幅、およびスナップショットは、FaaS で課金対象のリソースです。
次の一般的な課金方法がサポートされています。
サブスクリプション:リソースを前払いし、一定期間使用します。
従量課金制:リソースを使用した後に料金を支払います。ビジネス要件に基づいてリソースを購入およびリリースできます。
プリエンプティブルインスタンス:利用可能なコンピューティングリソースに入札して、プリエンプティブルインスタンスを作成できます。プリエンプティブルインスタンスは、従量課金制インスタンスと比較して割引が適用されます。ただし、プリエンプティブルインスタンスは回収される可能性があります。
リザーブドインスタンス:リザーブドインスタンスは、従量課金制インスタンスとともに使用される割引クーポンです。リザーブドインスタンスを購入すると、インスタンスタイプ、リージョン、ゾーンなどの指定された構成のインスタンスを使用することをコミットし、割引料金を受け取ります。リザーブドインスタンスは、コンピューティングリソースの請求を相殺するために適用されます。
セービングプラン:セービングプランは、従量課金制インスタンスとともに使用される割引プランです。セービングプランを購入すると、一定量(USD/時単位)のリソースを使用することをコミットし、割引料金を受け取ります。セービングプランは、コンピューティングリソースとシステムディスクの請求を相殺するために適用されます。
ストレージキャパシティユニット(SCU):SCU は、従量課金制ストレージリソースで使用するために提供されるストレージリソースプランです。 SCU を購入すると、特定の容量のストレージリソースを使用することをコミットし、割引料金を受け取ります。 SCU は、EBS デバイス、File Storage NAS ファイルシステム、OSS バケットなどのさまざまなストレージリソースの請求を相殺するために適用されます。
ECS インスタンスの課金方法の詳細については、課金概要と Elastic Compute Service 製品ページの料金タブをご参照ください。