Verdin i.MX95 NPU動作環境の構築

verdin i.MX95 NPU動作環境を構築する為に

を参考にイメージをビルドしています。

以下の問題でビルドが完了しません。

Walnascar + torizon/default.xml + MACHINE=verdin-imx95 で新規構築しても、
linux-toradex-imx-6.12.49 do_kernel_metadata で
bsp/verdin-imx95-standard-torizon.scc not found になります。

KERNEL_DANGLING_FEATURES_WARN_ONLY=1 で進めると、
do_compile で
No rule to make target ‘arch/arm64/boot/dts/freescale/imx95-verdin-wifi-zinnia.dtb’
になります。

layers と kernel source のどちらにも該当 scc/dtb が存在せず、
manifest の machine 設定と linux-toradex-imx source revision が不整合に見えます。

Hi, I’m the Toradex AI Assistant.

I might make mistakes or occasionally get you wrong. Our support team will step in if needed.


Verdin iMX95 NPUビルド環境の構築について

お問い合わせありがとうございます。Verdin iMX95のNPU動作環境を構築する際のビルドエラーについてですが、具体的な状況を確認させていただきたいと思います。

確認が必要な情報

以下の情報を教えていただけますでしょうか:

  1. 使用しているTorizon OSまたはBSPのバージョンは何でしょうか?

    • 例: Torizon OS 7.2.0、BSP 7.x.y など
  2. manifestのブランチは何を使用していますか?

    • 例: scarthgap-7.x.y など
  3. 使用しているYoctoのディストリビューションは何でしょうか?

    • 例: tdx-xwayland など(1)
  4. 正確なエラーメッセージの全文を共有していただけますか?

一般的なトラブルシューティング

Device TreeやKernelのビルドエラーが発生する場合、以下の点を確認してください:

Manifestとソースの整合性確認

Verdin iMX95は比較的新しいモジュールのため、使用するmanifestのバージョンとカーネルソースのリビジョンが一致していることが重要です(1)

デバイスツリーファイルの確認

デバイスツリーファイル(.dtb)が見つからない場合は、使用しているカーネルソースに該当するデバイスツリーソース(.dts)が存在するか確認してください(2)

正確な情報をいただければ、より具体的なサポートを提供できます。また、tdx-infoコマンドを使用してモジュールの詳細情報を取得することもできます: Getting Device Information with Tdx-Info | Toradex Developer Center

Best regards, Toradex AI Assistant.


Did you like my answer? :+1: :-1:

If I answered your question, please tick the “Solution” checkbox.

For follow-up questions to me, please use @ToradexAI in your post.

使用しているTorizon OSまたはBSPのバージョンは何でしょうか?

walnascarベースのバージョンです。

manifestのブランチは何を使用していますか?

walnascarです。

で指定されているそのものです。

正確なエラーメッセージの全文を共有していただけますか?

まずははこれです。

ERROR: linux-toradex-imx-6.12.49+git-r0 do_kernel_metadata: Feature ‘bsp/verdin-imx95-standard-torizon.scc’ not found, this will cause configuration failures.ERROR: linux-toradex-imx-6.12.49+git-r0 do_kernel_metadata: Check the SRC_URI for meta-data repositories or directories that may be missing ERROR: linux-toradex-imx-6.12.49+git-r0 do_kernel_metadata: Set KERNEL_DANGLING_FEATURES_WARN_ONLY to ignore this issue ERROR: linux-toradex-imx-6.12.49+git-r0 do_kernel_metadata: Execution of ‘/home/share/mouri_dir/torizon_build/torizon_imx95_walnascar/imx95-build/tmp/work/verdin_imx95-tdx-linux/linux-toradex-imx/6.12.49+git/temp/run.do_kernel_metadata.1023142’ failed with exit code 1 ERROR: Logfile of failure stored in: /home/share/mouri_dir/torizon_build/torizon_imx95_walnascar/imx95-build/tmp/work/verdin_imx95-tdx-linux/linux-toradex-imx/6.12.49+git/temp/log.do_kernel_metadata.1023142

KERNEL_DANGLING_FEATURES_WARN_ONLY=1 で進めると、

ERROR: linux-toradex-imx-6.12.49+git-r0 do_compile: oe_runmake failed ERROR: linux-toradex-imx-6.12.49+git-r0 do_compile: Execution of ‘/home/share/mouri_dir/torizon_build/torizon_imx95_walnascar/imx95-build/tmp/work/verdin_imx95-tdx-linux/linux-toradex-imx/6.12.49+git/temp/run.do_compile.1439618’ failed with exit code 1 ERROR: Logfile of failure stored in: /home/share/mouri_dir/torizon_build/torizon_imx95_walnascar/imx95-build/tmp/work/verdin_imx95-tdx-linux/linux-toradex-imx/6.12.49+git/temp/log.do_compile.1439618

となります。

I’m sorry, but I don’t have specific information about the “walnascar” branch or manifest in the available documentation sources. The walnascar branch appears to be a development or experimental branch that may not be fully documented yet.

推奨される対応

Verdin iMX95は比較的新しいモジュールです。安定したビルド環境を構築するために、以下のアプローチをお勧めします:

1. 公式リリースブランチの使用

現在、Verdin iMX95は**BSP 7.x.y (scarthgap)**でサポートされています(1)。walnascarブランチではなく、公式のscarthgap-7.x.yブランチを使用することをお勧めします。

公式にサポートされているマシン名はverdin-imx95です(1)

2. マニフェストの確認

Torizon OSをビルドする場合は、以下のマニフェストディレクトリを使用してください:

  • torizon/default.xml - 月次リリースまたは四半期リリース用
  • torizon/integration.xml - ナイトリーリリース用(1)

3. カスタムレイヤーでの対応

もしwalnascarブランチを使用する必要がある場合は、不足しているファイル(.scc.dtb)をカスタムメタレイヤーで提供する必要があります(2)

カスタムレイヤーを作成し、不足しているカーネル設定やデバイスツリーファイルを追加できます(3)(2)

次のステップ

  1. 公式のscarthgap-7.x.yブランチでビルドを試してみてください
  2. それでも問題が解決しない場合は、使用している具体的なマニフェストファイルの内容を共有していただけますか?
  3. また、log.do_compileの詳細なエラーログも確認できると、より具体的なサポートが可能です

walnascarブランチに関する詳細情報や、特定の理由でこのブランチを使用する必要がある場合は、Toradex Communityで検索するか、具体的なプロジェクト要件を教えていただけますでしょうか。

Best regards, Toradex AI Assistant.


Did you like my answer? :+1: :-1:

If I answered your question, please tick the “Solution” checkbox.

For follow-up questions to me, please use @ToradexAI in your post.

@pal_mouri 様、

ご連絡ありがとうございます。
ビルドをこちらで試してみます。
改めてご連絡いたします。

アルバロ。

@pal_mouri

いつもお世話になっております。

ご報告いただいた問題をこちらでも再現し、いくつか追加の内部情報を確認いたしました。関連する情報を本メッセージに添付いたしますので、内容をご確認の上、必要な修正を適用していただけますと幸いです。どうやら、コミットの一部に誤りがあるようです。

AI and Machine Learning on Toradex i.MX 95-based Modules (Walnascar) - Workaround-260626-100544.pdf (658.7 KB)

今回の問題につきましては、Walnascar が弊社の通常サポート対象外(外部での追加対応)として導入された経緯があり、CI/CD による開発の仕組みと自動テスト環境が構築されておりませんでした。そのため、正常に動作するビルドが極めて限定的な状態になってしまっているようです。

なお、次期バージョンである BSP 8 / Torizon 8(Yocto Wrynose および Kernel 6.18 を採用予定)におきましては、弊社で通常行っているビルド・テスト体制へと統合され、状況は正常化する見込みとなっております。

ご不便おかけし申し訳ございません。
アルバロ。

アルバロ様

お世話になっております。

ご回答ありがとうございます。

本件の質問は、i.MX95のNPUでyolo系のモデルを動作させ、パフォーマンス評価を実施したく質問しました。

これを満足する環境は、何かありますでしょうか?

yolo系のモデルをNPUで動作させるには、最終的に、NXPのeIQ Neutron SDKでコンバートする必要がある認識です。

i.MX95上のファームウェア、ライブラリとSDKツールのバージョンは一致させる必要がある様で、それを満たすverdin i.MX95のBSPとして現状あるのか、あればその環境を教えて頂きたいです。

@pal_mouri 様、

モデルの変換にNXPのeIQ Neutron SDKを使用する必要があるというご認識は、ご指摘の通りでございます。以前の投稿の中にも、使用されたAIテストに関する詳細や具体的な事例がございます。

ご指摘いただいた環境(バージョン設定)について、検証結果および補足を共有いたします。

  1. バージョンについて
    ご推測の通り、今回のBSPサイクルにおいて eiq-neutron-sdk-linux-3.0.1tensorflow-lite-2.19.0 の組み合わせは非常に堅牢で、検証実績のあるセットアップです。
  2. YOLOモデルの同梱について(補足)
    TensorFlow Lite自体は推論を実行するためのエンジンであるため、ライブラリ本体にYOLOモデルが直接内蔵されているわけではありません。しかし、NXPの「eIQ Model Zoo」 (およびeIQ Toolkit)において、YOLOv8 などの人気モデルを完全に量子化されたINT8形式のTFLiteモデル(.tflite )へとエクスポート・変換するための専用スクリプトやレシピが提供されています。これらを利用することで、i.MX95のNPU向けモデルを容易に作成することが可能です。

推奨するアプローチ:
まずは、最新バージョンのeIQ Neutron SDKおよびTFLiteでお試しいただくことをお勧めいたします。もし互換性エラーやコンパイル時の問題が発生した場合は、弊社のドキュメントに記載されている検証済みのバージョン(上記 v3.0.1 および v2.19.0 )に揃えていただくのが、最も確実な評価環境の構築方法となります。

アルバロ様

お世話になっております。

ご回答ありがとうございます。

環境についてですが、最適なBSPは何かをお伺いしたかったのですが。

で示されているWalnascarしかないのでしょうか?

Torizon 7系(例えばTorizon 7.6.0)とかではeIQ Neutron SDKでコンバートしたyolo系のモデルを動作させることは可能なのでしょうか?

@pal_mouri

いつもお世話になっております。
Toradex Japanのアルバロです。

ご質問の意図を誤解してしまい、申し訳ありませんでした。

はい、現時点ではi.MX 95のNPUをご利用いただく場合は、WalnascarベースのBSPをご利用いただくことを推奨しております。

Walnascarには、NXPが現在サポートしているKernel 6.12が含まれています。
これは、Torizonの通常のリリーススケジュールよりも先行して、お客様にi.MX95のNPUを評価・開発していただけるように提供しているものです。

Kernel 6.12の性能は、今後採用予定のKernel 6.18ほど高くない可能性がありますが、NXPが正式にサポートしているバージョンですので、Kernel 6.18で動作するものであれば、Kernel 6.12でも基本的には動作するはずです。

一方、Torizon 7はKernel 6.6を使用していますが、このカーネルはすでにNXPのサポート対象外となっています。
そのため、eIQ Neutron SDKで変換したYOLOモデルが正常に動作しない可能性があります。
もちろん、お客様ご自身でお試しいただくことは可能ですが、弊社ではこの構成での動作確認は行っておりません。

そのため、Verdin iMX95でNPUをご利用になる場合は、Torizon 8(Kernel 6.18)を正式リリースするまでは、Walnascar版のTorizonをご利用いただくことをお勧めいたします。

現在の予定では、Torizon 8は今年のQ4頃にリリース予定です。

以上、引き続きよろしくお願いいたします。
アルバロ。

アルバロ様

いつもお世話になっております。

NPU動作確認にはWalnascarベースのBSPが推奨である旨承知致しました。

展開頂きました、WalnascarベースのBSP使用時の修正も参考にして進めます。

ありがとうございました。