LINEUP & SCHEDULE

ONNX推論ランタイムクレートの比較と実装奮闘記

  • Track A

  • 14:50 - 15:15 (JST)

    • Session Language: 日本語

業務でONNXモデルを扱う機会があり最初はありものの実装そのまま使っていたのですが、パフォーマンス面で改善したい点が出てきたため内部実装も含めて調査することにしました。自社開発デバイス上などいろいろな環境で動かしたいモチベーションもあり、公式ONNX Runtimeおよびその他のOSSの推論ランタイムを含めて調べました。

公式ONNX RuntimeのRustバインディングのクレートや、Rustだけで実装されているものがあります。ONNXフォーマット自体はオープンであるものの、推論処理の仕方やサポートしている機能はエンジン/フレームワークによって差があります。以下の軸で比較したものを紹介します。

  • 開発状況/リリース頻度など
  • 推論専用/学習機能もある
  • Pure Rustか、ラッパーかどうか
  • CPUマルチスレッド対応/GPU対応の有無
  • ONNXの対応バージョン/オペレーター網羅性

また、これらを踏まえ、自身の実装課題に取り組んだことについてもお話します。

Share it on


Bio

Satoshi Yoshikawa

Satoshi Yoshikawa

Fairy Devices株式会社のプロダクト開発部部長兼ソフトウェア開発者。 「実践Rustプログラミング入門」(秀和システム、共著)、「RustによるWebアプリケーション開発 設計からリリース・運用まで」(講談社サイエンティフィック、共著)を執筆。


Copyright © Rust.Tokyo 2024 all rights reserved.


特定商取引法に基づく表示

ぜひフォローしてください! @rustlang_tokyo

お問い合わせ: rust-tokyo-staff@googlegroups.com

過去の開催