エッジとクラウドでRustを使いこなす ~AI/IoTでの事例~
Full use of Rust on edge and cloud: AI and IoT use cases
この発表では、私たちのプロダクトの開発事例を通して、エッジデバイスやクラウド側でのRustを使った開発をする上で、実践的な設計実装のテクニックを紹介します。
私たちはドライブレコーダーとAI技術を活用して、交通事故削減を目指すプロダクトを開発しています。このシステムはドライブレコーダーとクラウドにまたがる大規模なIoTシステムです。
このシステムの中で、Rustは以下のようなAI技術の実装で使われています。
- ドライブレコーダーでリアルタイム動作する、Deep Learningやコンピュータビジョンアルゴリズムの実装
- クラウドで大規模なテストを行うための、ドライブレコーダーのシミュレーター(分散システム)の実装
この発表で紹介する主要なトピックは以下の通りです。
- デバイス固有のC/C++ライブラリとRustを組み合わせてハイパフォーマンスかつ安全にする方法
- デバイスとクラウド両方で実行するための、アーキテクチャ設計の工夫
- 運用を効率化するためのロギングや分散トレーシングの方法
- 1年間Rustでプロダクト開発を行い、システムはどう変化していったか