モジュール固有オプション - 2023.2 日本語

AI エンジン ツールおよびフロー ユーザー ガイド (UG1076)

Document ID
UG1076
Release Date
2023-12-04
Version
2023.2 日本語

AI エンジン タイル上のカーネル インプリメンテーションで使用されるオプションです。

重要: AI エンジン グラフの次回のコンパイルでは、変更された AI エンジン カーネルのみが再コンパイルされます。未変更のカーネルは再コンパイルされない可能性があるため、これらのオプションを使用する場合は、未変更のカーネルが再コンパイルされるようにカーネル ソースの変更が必要になることがあります。
Xchess arg

AI エンジン用コードをコンパイルする CHESS コンパイラにカーネル固有オプションを渡します。オプション文字列を <kernel>:<optionid>=<value> として指定します。このオプション文字列は、特定のカーネルがマップされる AI エンジンの生成済みソース ファイルをコンパイルする際にインクルードされます。

Xchess=main:darts.xargs=-nb
Xelfgen arg

コンパイラの ELF 生成フェーズに追加のコマンド ライン オプションを渡します。現在、このフェーズでは 1 回の make コマンドですべての AI エンジン ELF ファイルを生成します。

たとえば、並列コンパイルの数を 4 までに制限するには、Xelfgen="-j4" と指定します。

注記: ログに bad_alloc を含むエラーが表示された場合、または Vitis IDE がクラッシュした場合、ワークステーションのメモリ容量が十分でない可能性があります。マシンで使用可能なメモリ容量を増やす以外に可能な回避策としては、このオプションを Elf Generator Makefile (-j1 または -j2) に渡して、コード生成段階でコンパイラにより使用される並列処理を制限する方法があります。
Xelfgen=-j2
Xmapper arg

コンパイラのマップ フェーズに追加のコマンド ライン オプションを渡します。マップまたは配線段階でデザインが収まらない場合、またはメモリ バンクの競合を抑えて性能の改善を試みる場合に、これらのオプションを指定します。オプションのリストと説明は、マップ ツールおよびルーターのオプションを参照してください。

Xmapper=DisableFloorplanning
Xpreproc arg

AI エンジン コンポーネントのすべてのソース コード コンパイル AIE/PS/PL/x86sim の PREPROCESSOR フェーズに一般オプション (例: -D...) を渡します。

Xpreproc=-D<var>=<value>
Xpslinker arg
AI エンジン コンポーネントの PS LINKER フェーズに一般オプション (例: -L... -l...) を渡します。
Xpslinker=-L<libpath> -l<libname>
Xrouter arg

ROUTER フェーズに一般オプションを渡します。

Xrouter=dmaFIFOsInFreeBankOnly
Xx86sim arg

x86sim 固有のオプションをコンパイラに渡します。

Xx86sim=clangStaticAnalyzer
fast-floats

addsubmulcompare などの線形浮動小数点スカラー演算の高速インプリメンテーションをイネーブルにします。使用できる値は、true または false です。デフォルトは false です。

fast-floats=true
fast-nonlinearfloats

sinecosinesqrtinv などの非線形浮動小数点スカラー演算の高速インプリメンテーションをイネーブルにします。使用できる値は、true または false です。デフォルトは false です。

fast-nonlinearfloats=true
fastmath
float2fixfplt、および fpge の高速インプリメンテーションをイネーブルにします。使用できる値は、true または false です。デフォルトは false です。
fastmath=true
float-accuracy
AI エンジン ML でのみ使用可能なオプションです。bfloat16 数値型でエミュレートされた必要な浮動小数点演算精度を選択します。
float-accuracy=<arg

使用可能な引数値は、次のとおりです。

  • safe: 精度は FP32 より若干良い。
  • fast: FP32 と同等の精度でパフォーマンス改善。
  • low: FP16 や bfolat16 よりも精度が高く、最高のパフォーマンス。