模块专用选项 - 2023.2 简体中文

AI 引擎工具和流程用户指南 (UG1076)

Document ID
UG1076
Release Date
2023-12-04
Version
2023.2 简体中文

这些选项适用于 AI 引擎 tile 拼块上的内核实现。

重要: 在 AI 引擎计算图的后续编译中,仅对已修改的 AI 引擎内核进行重新编译。任何未修改的内核都不会进行重新编译;因此,这些选项的应用可能需对要重新编译的内核源代码进行编辑。
Xchess arg

该选项可用于将内核专用选项传递给 CHESS 编译器,此编译器用于为每个 AI 引擎编译代码。选项字符串指定为 <kernel>:<optionid>=<value>。在映射指定内核的 AI 引擎上编译生成的源文件期间包含该选项字符串。

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

该选项可用于将附加命令行选项传递给编译器的 ELF 生成阶段,此阶段当前作为 make 命令来运行,用于构建所有 AI 引擎 ELF 文件。

例如,为了将并行编译数量限制为 4,请写入 Xelfgen="-j4"

注释: 如果 log 日志中出现 bad_alloc 错误,或者如果 Vitis IDE 崩溃,可能是由于工作站上内存不足而导致的。除了增大机器上可用内存外,还有一种可行的变通方法是在代码生成期间限制编译器使用的并行度,具体方法是将该选项传递给 Elf Generator Makefile(-j1 或 -j2)。
Xelfgen=-j2
Xmapper arg

该选项可用于将其他命令行选项传递到编译器的映射器阶段。如果设计在映射或布线阶段无法收敛,或者如果您要尝试通过减少存储体冲突来提升性能,则可尝试这些选项。请参阅映射器和布线器选项,以获取选项列表及其描述。

Xmapper=DisableFloorplanning
Xpreproc arg

该选项可用于将常规选项传递到 AI 引擎组件(例如,-D...)的 PREPROCESSOR 阶段,以执行所有源码编译 AIE/PS/PL/x86sim。

Xpreproc=-D<var>=<value>
Xpslinker arg
该选项用于将常规选项传递到 AI 引擎组件(例如,-L... -l...)的 PS LINKER 阶段。
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
该选项支持快速实现 float2fixfpltfpge。接受的值包括 true 和 false。默认为 false。
fastmath=true
float-accuracy
该选项仅适用于 AI 引擎机器学习。它会选择所需的浮点计算精度,并以 bfloat16数字类型进行仿真:
float-accuracy=<arg

可用实参值包括:

  • safe:精度略好于 FP32。
  • fast:提升性能,精度与 FP32 相似。
  • low:最佳性能,精度好于 FP16 和 bfolat16