Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
推論エンジンMAXの紹介
Search
Ryosuke Kamesawa
July 22, 2024
Technology
1
450
推論エンジンMAXの紹介
DeNA+GO AI技術共有会で発表したスライドです。
Ryosuke Kamesawa
July 22, 2024
Tweet
Share
More Decks by Ryosuke Kamesawa
See All by Ryosuke Kamesawa
ニューラルネットワークの量子化手法の紹介
emakryo
3
2.5k
MediaPipeの紹介
emakryo
0
40
Customizing Cargo for Cross Compiling
emakryo
0
27
Feature Store in DRIVE CHART
emakryo
0
36
Feature StoreをRustで実装した話
emakryo
0
36
なぜRustか?
emakryo
0
31
rustdef: Rust on Jupyter Notebook
emakryo
0
30
Cargo-makeを使ってみた
emakryo
0
250
Machine Learning on Graph Data @ICML2019
emakryo
0
15
Other Decks in Technology
See All in Technology
ObservabilityCON on the Road Tokyoの見どころ
hamadakoji
0
210
GitLab SelfManagedをCodePipelineのソースに設定する/SetGitLabSelfManagedtoCodePipeline
norihiroishiyama
1
120
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
120k
SREとしてスタッフエンジニアを目指す / SRE Kaigi 2025
tjun
15
6.5k
CloudWatch Container Insightsを使ったAmazon ECSのリソース監視
umekou
1
120
20250125_Agent for Amazon Bedrock試してみた
riz3f7
2
110
Japan AWS Jr. Championsがお届けするre:Invent2024のハイライト ~ラスベガスで見てきた景色~
fukuchiiinu
0
1.1k
MCP server を作って Claude Desktop アプリから kintone へアクセスすると楽しい
r3_yamauchi
PRO
1
120
Site Reliability Engineering on Kubernetes
nwiizo
6
4.4k
トレードオフスライダーにおける品質について考えてみた
suzuki_tada
3
180
顧客の声を集めて活かすリクルートPdMのVoC活用事例を徹底解剖!〜プロデザ!〜
recruitengineers
PRO
0
200
EDRからERM: PFN-SIRTが関わるセキュリティとリスクへの取り組み
pfn
PRO
0
110
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
30
2.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
990
Typedesign – Prime Four
hannesfritz
40
2.5k
Navigating Team Friction
lara
183
15k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
380
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Into the Great Unknown - MozCon
thekraken
34
1.6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.3k
Transcript
AI 2024.07.18 Ryosuke Kamesawa GO株式会社 推論エンジンMAX by Modular
AI 2 Outline 01|推論エンジン MAX 02|Mojo言語 03|まとめ
AI 3 01 推論エンジン MAX
AI 4 Modularが開発している推論エンジン - ✅ 速い(らしい) - ✅ Python &
C API - ✅ PyTorch & ONNXのモデルが実行可能 - ✅ 無償利用可(条件付きで商用利用含め) - ❌ CPU (x64, ARM) のみ(GPU対応版は未公開) - ❌ ソースコードは非公開 MAXとは
AI 5 - Chris LattnerがCEOしている会社 - LLVM (Clang), Swift を作ったげきつよ開発者
- GoogleではTensorFlowのディレクター - 今のところMAX, Mojo以外のプロダクトはなさそう - ビジネスモデルはよくわからない - 推論エンドポイントSaaS? ちなみにModularって?
AI 6 公式サイトでの記述 どれくらい速い・・? https://www.modular.com/max
AI 7 速そうだけどよくわからない(たぶんLLMでのベンチマーク) → 自分たちのユースケース(CV)で試してみる 1. MobileNetV2 2. MobileNetV3 (large)
3. EfficientNet Lite0 4. ResNet50 5. YOLOv8 segmentation どれくらい速い・・?
AI 8 ベンチマーク
AI 9 - AWS EC2 (c6i.4xlarge); Ubuntu22.04 - モデル実装 -
Torchvision: MobileNetV2/MobileNetV3/ResNet50 - Timm: EfficientNet Lite0 - Ultralytics: YOLOv8 - 100回推論するのにかかった時間を測定 - MAX (ONNX/torchscript) - ONNX runtime - PyTorch ベンチマーク環境・条件 https://github.com/emakryo/max-benchmark
AI 10 - 軽量CVモデルではMAXは速くない - EfficientNet Lite/MobileNetV2, 3 - ターゲットとしていないので最適化されていない?
- 比較的重いモデルでは同じくらいか多少速い - ResNet50/YOLOv8 - モデル入力はtorchscriptの方が多少速い場合が多い - MAXは初回のコンパイルが遅い ベンチマーク結果まとめ
AI 11 02 Mojo言語
AI 12 Modularが開発しているプログラミング言語 MAXがMojoで実装されている - Python風の文法 - 静的型(型推論、ジェネリクス、トレイト) - コンパイル時定数
- オーナーシップとライフタイム - Pythonとの相互呼び出し - 拡張可能な最適化パス、アクセラレータ固有型(MLIR) Mojo言語
AI 13 サンプルコード
AI 14 AI技術スタックの複雑さの軽減、全体最適化 モチベーション https://www.modular.com/blog/mojo-llvm-2023
AI 15 - 簡単な用途には使えるがエコシステムは未成熟 - パッケージマネージャーがない - 頑張れば、できないことは基本的にない - システムプログラミング言語(e.g.
C++)として設計されている - 使いこなす(最適化)にはMLIR dialectの知識が必要 - MLIR (Multi-Level Intermediate Representation) - LLVM IRの一般化 - MLIR dialect - LLVM IRにおける命令セットを拡張したもの - 言語におけるライブラリに近い 使える?
AI 16 - Pythonの完全な置き換えにはならない - コンパイルが必要→遅いのでinteractiveな実行に不向き - CythonやC/C++での拡張モジュールの置き換えは可能 - Pythonに近い文法なのでとっつきやすいかも
- CUDAの置き換えがOSSとしてできれば Nvidia以外のGPUメーカーが参戦してくるかも 流行る?
AI 17 MAX: ニューラルネットワーク推論エンジン - (今のところ)LLMでは速い、軽量モデルには不向き - ONNX, PyTorch (torchscript)
を実行できる Mojo: コンパイル可能なPython風プログラミング言語 - AIの技術スタックを統合、最適化(ができるポテンシャル) - 未成熟だが技術的には面白い まとめ