モバイルマルチプロセッサデバイスのためのバンド:モバイルランタイムアルゴリズムの提案
目次:
- はじめに
- モバイルエッジデバイスの技術要件
- マルチタスク処理時間の最適化
- ユーザーエクスペリエンスの最大化
- マルチプロセッサデバイスの技術課題
- レイテンシの予測不正確さ
- マルチプロセッサモバイルデバイスでのDNNワークロードの処理
- タスクの適切な分配
- サポートされるオペレーションの選択
- プロセッサ間の絶妙なコーディネーション
- バンド:モバイルランタイムアルゴリズムの提案
- システムの実装
- モデルのパーティショニング
- ジョブキューとスケジューラ
- プロセッサの選択とスケジューリング
- エグゼキューションタイムプロファイル
- 実験設定と結果
- 結論
バンド:モバイルマルチプロセッサデバイスのためのモバイルランタイムアルゴリズムの提案 📱
はじめに
モバイルエッジデバイスの発展により、ユーザーエクスペリエンスの向上やタスクの高速処理が求められるようになりました。しかし、現在のモバイルデバイスでのマルチプロセッサワークロードの処理にはいくつかの課題があります。本論文では、モバイルランタイムアルゴリズム「バンド」を提案し、これらの課題に対処します。
モバイルエッジデバイスの技術要件
モバイルエッジデバイスでのアプリケーションサービスには、以下の技術的要件があります:
- シングル入力のタスク処理時間の短縮
- ユーザーエクスペリエンスの最大化のための素早く動的な入力処理
- 最新のアプリケーションでのマルチモーダル情報の利用
マルチプロセッサデバイスの技術課題
現在のマルチプロセッサデバイスでは、同時に発生する複数のリクエストを効果的に処理するためには、いくつかの課題があります。これらの課題には次のようなものがあります:
- タスクの適切な分配
- サポートされるオペレーションの選択
- プロセッサコンテンションの回避
- レイテンシの予測不正確さ
- プロセッサとワークロードの繊細なコーディネーション
バンド:モバイルランタイムアルゴリズムの提案
本研究では、モバイルデバイスでのマルチDNAワークロードに対応するために、バンドというモバイルランタイムアルゴリズムを提案します。バンドは、プロセッサの互換性があるオペレータをグループ化し、パーティショニングとスケジューリングを行うことで、モデルのレベルでのスケジューリングよりも効率的なタイムラインを作成します。
システムの実装
バンドは、インフェランスリクエストを処理するための中央制御システムです。バンドは、新しいインフェランスリクエストやプロセッサパフォーマンスの変動など、ダイナミックに変化するモバイルワークロードに効率的かつ柔軟に対応します。
モデルのパーティショニング
バンドでは、DNNをより小さな単位であるサブグラフに分割します。これにより、バックフォワード処理を効率的に行うことができ、マルチDNAワークロードに対して複数のプロセッサを同時に活用することができます。
ジョブキューとスケジューラ
バンドでは、ジョブキューとスケジューラを使用して、タスクのスケジューリングとプロセッサの選択を管理します。スケジューラは、最適なスケジューリングポリシーに基づいて、プロセッサに割り当てるサブグラフを選択します。
プロセッサの選択とスケジューリング
スケジューラは、プロセッサの選択とスケジューリングを行います。選択方法はポリシーによって異なりますが、選択したプロセッサに割り当てるサブグラフを選択する際には、スラックタイムなどの指標を考慮します。
エグゼキューションタイムプロファイル
バンドでは、モデルレジスタリングの段階で計算されたエグゼキューションタイムプロファイルを使用して、効率的なスケジューリングを行います。このプロファイルは、実行時間にフロート数や入出力ダンサーのサイズが比例するという仮定に基づいて計算されます。
実験設定と結果
実験では、DNAタスク「Eye ID」と「Distream」を使用し、ベースラインとして、ライブなTensorFlow Liteと最大パーティションの2つを選択しました。さらに、サブグラフの有無による実験結果も報告しました。
結論
本論文では、モバイルマルチプロセッサデバイスにおけるモバイルランタイムアルゴリズム「バンド」の提案を行いました。バンドはプロセッサのコンテンションを回避し、マルチリクエストを容易に処理することができるアルゴリズムです。また、約5倍のフレーム処理速度の向上と、4倍近いサービスレベルオブジェクティブレートの達成を報告しました。
ハイライト:
- モバイルエッジデバイスでのマルチプロセッサワークロードの処理の課題
- モバイルランタイムアルゴリズム「バンド」の提案とその特徴
- ジョブキューとスケジューラを使用した効率的なタスクスケジューリング
- エグゼキューションタイムプロファイルの利用によるパフォーマンス改善
- 実験結果によるバンドの効果の検証
FAQ:
Q: バンドはどのように動作しますか?
A: バンドは、マルチプロセッサモバイルデバイス上でモデルのスケジューリングとタスクの分配を効率的に行うためのモバイルランタイムアルゴリズムです。
Q: バンドはモバイルデバイスのパフォーマンスを向上させますか?
A: はい、バンドはモバイルデバイスでのフレーム処理速度の向上とサービスレベルオブジェクティブレートの達成を報告しています。
Q: バンドは他のモバイルランタイムアルゴリズムと比べてどのような利点がありますか?
A: バンドはプロセッサコンテンションの回避やマルチリクエストの効率的な処理など、他のアルゴリズムに比べて優れた特徴を持っています。
資料: