GPUアーキテクト&トレンドGPUアーキテクト&トレンド

トレンド

【後編】なぜ、エッジコンピューティングは注目されるのか?
~ 「IoTゲートウェイ時代」から「エッジ時代」に ~

2020.05.18

テクニカルライター
大原 雄介

前回は、これまでのIoTシステムの現状と課題、およびエッジコンピューティングを導入した際のさまざまなメリットを紹介してきた。

既存のIoTシステムからエッジコンピューティングにシステムを更改すれば、コストやレイテンシ、セキュリティといった課題が解決できるため、すぐにでも導入したいという諸兄が多いだろう。
しかし、例えば既存のエッジ IoTサーバーをシステムに入れる、あるいはデバイスをエッジデバイスに高機能化するだけで全てエッジコンピューティング化できるのか?というと、そこまで単純な話ではない。

従来型IoTシステムは、そのまま「エッジコンピューティング化」できない

まずエッジ IoTサーバーをシステムに入れる場合を考えよう。既存のデバイスは、エッジ IoTサーバーに接続するような仕組みをそもそも考慮していない。クラウドとエッジ IoTサーバーでは、提供できる機能が段違いだし、サービスのAPIそのものも異なってる。結果、デバイスをエッジ IoTサーバーに繋ぐために、プログラムの書き直しが必要になる。

さらに、データの持ち方や転送頻度を含めて見直しをしたほうが良いケースも多々存在するし、エッジ IoTサーバーからクラウドに繋ぐためのプログラムも必要だ。要するに「エッジ IoT」を活用するために、全体の設計を見直す必要があるという話になる。クラウドを使わない、という選択肢も当然ここでは出てくるだろう。

これはデバイスを「エッジデバイス」に昇格するケースでも同じだ。

先ほどは監視カメラを例にとって紹介したが、監視カメラそのものは決して大きなものではないから、内蔵できるコンピューティングの機能には限界がある。また、カメラが1台や2台しかないならともかく、大規模施設では100台以上、場合によっては数千台規模(たとえば国際空港など)になることも珍しくない。こうなってくると、その数千台のカメラ全部にコンピューティングの機能を入れるよりも、例えばカメラ数台に1台の割合でエッジコンピューティングサーバーを入れ、これで一つのエッジデバイスとする、などの構成の方がハードウェアコストや運用コストを抑えられる場合もある。

要するに、エッジ IoTを効果的に構成するためには、もう一度きちんとシステム全体を設計しなおし、目的に合った形を見出す必要があるわけだ。

IoTクラウド各社は「エッジIoTサーバー」ソリューションを提供中

とはいえ、こうした再設計には手間がかかる。このあたりを勘案してか、2018年頃からIoTクラウドを提供する各社は、容易にエッジ IoTサーバーを利用できるソリューションを提供し始めた。

例えばAmazonはAWS IoT Greengrassと呼ばれるサービスを、MicrosoftもAzure IoT エッジというサービスを、どちらも2018年から提供し始めている。これはAWS IoTあるいはAzure IoTを利用している既存のIoTデバイスに対し、プログラムを書き換えずにエッジ IoTサーバーを利用できる様にするための仕組みである。

【図3:AWS IoT Greengrassの仕組み】

具体的には、AWS IoTなりAzure IoTのサブセットをエッジ IoTサーバー上で動かすことで、シームレスに従来型のIoTからエッジ IoTに移行できるという仕組みになっている。ただ、「アプリケーションがそのまま動く」とは言っても、処理性能やレスポンス時間は異なるし、データの同期についても「頻度や項目が十分か」という検証は必要である(AWS GreengrassもAzure IoT エッジも定期的にデータを同期する仕組みが用意されている)。なお、こうしたソリューションを利用すると、(当然ではあるが)そのベンダーにロックインされる形になってしまうという問題もある。

「エッジIoTサーバー」のベンダーも多数あり

逆にエッジ IoTサーバーのソリューションを提供するベンダーも数多く存在する。

こちらは、当然デバイス側のプログラムは最初から構築しなおしになるが、クラウド側との連携機能は標準で多数用意されており、なによりエッジ IoTのワークロードに向けた形のソリューションを提供してくれるので、よりエッジ IoTに適した構成を作りやすい。強いて難を挙げるとすれば、多数のベンダーが数多くのソリューションを提供しているので、選ぶのが大変だというあたりだろうか。

「エッジIoT」は当たり前のトレンド、今後はエッジのAI処理能力も向上へ

そんなわけで、「従来型のIoTシステム」から「エッジ IoT」への移行は、ランニングコストや性能面でのメリットを考えれば行うべき、少なくとも考慮はすべきトレンドといえる。

【図4:エッジIoTは運用コストを低減できる】

また、「新規にIoTシステムを構築する」という話なら、従来型のIoTシステムで済ませるか、それともエッジ IoTの仕組みにするかはきちんと検討する必要がある。ただ、まだ立ち上がり始めたジャンルなだけに、エッジ IoTをきちんと実現するにはベンダー選びも含め、障壁が多いのもまた事実である。

ちなみに先ほど、主に計算能力で「エッジ IoTサーバー」と「エッジコンピューティングサーバー」の2つの方向性に分かれている、という話をしたが、今後はこれが再び融合する方向になると思われる。というのは、昨今、エッジあるいはデバイス向けのAIソリューションが各社から提案されているからだ。

例えば、現時点のAI処理を考えると、NVIDIAのGPUを利用して推論処理を行うのが現実的だが、その一方、NVIDIAのGPUは省電力とは言いにくい(*5)。しかし、最近はさまざまな半導体メーカーがAI専用コプロセッサを多数提案しており、もう数年経つと、これがエッジ IoTサーバー用プロセッサに搭載されるようになる。

もう一つの解はFPGAで、現時点でもGPUを凌ぐ性能と低い消費電力を実現しているが、開発が難しい(*6)という問題を抱えている。ただ、こちらもFPGAベンダーが、通常のソフトウェア開発者でも扱えるような開発環境(HLS:High Level Synthesis)を用意し始めており、こちらも数年経てばかなり便利に利用できるようになるだろう。

*5 性能/消費電力比はともかく、絶対的な消費電力は数百W~数KWになるから、これはちょっと敷居が高い
*6 FPGAを使いこなせる開発者が少ない

これらの結果として、今「エッジ IoTサーバー」と呼んでいる構成のハードウェアでも、数年後には「エッジコンピューティングサーバー」と呼んでも差し支えないAI推論性能が実現できる様になり、より広範にエッジコンピューティングサーバーが普及するようになると考えられる。

これはこれで好ましい動きではあるが、事業者からするとこうしたトレンドも考慮の上で構成を選ばないと、数年でシステムが陳腐化するという危険性もあるわけだ。

IoTシステムを効率よく構築するために

IoTシステムはある意味「生モノ」である。旬の時期のものをうまく取り入れて構築することで、自身の製品/サービスの価値を大幅に高めることが出来る。これは、外部に出す製品/サービスだけでなく、例えば自社の製造設備に向けたものでも、同じ話。だから、なるべく幅広い分野で、新技術のトレンドを担当者は把握していることが望ましい。

しかし、「生モノ」だけに、必ずしもトレンドを追うことが正解とは限らない。だからこそ、「PoCでその効果を確認し、そこから本格導入する」という手順が一般的なわけだが、しばしばPoCの実現=IoTシステムの完成と誤解されがちだ。PoCで成果を確認できて、初めてIoTシステムの開発がスタートする、ということは念頭に置いておくべきであろう。