向量化检查
向量化检查功能用于对可向量化片段进行检查,并提供向量化修改建议。
前提条件
已成功登录鲲鹏DevKit。
- “/opt”为工具默认安装目录,下文以此默认路径为例,请根据实际情况替换。
- 当前特性在Web界面中需要手动上传文件或压缩包;在插件工具中支持扫描本地工程,若源码为压缩包格式,请先解压然后选择解压后文件夹。
操作步骤
- 在页面左侧,“亲和分析”下拉选项中选择“向量化检查”,单击创建任务,如图1所示。
- 填写“源码文件存放路径”,可以通过以下两种方式实现:
- 选择“已上传的源码”:单击填写框选择下拉框中的源码路径即可,也可以手动填写源码路径。
- 选择“上传源码”:单击“上传”按钮上传压缩包(上传过程中自动解压)或文件夹。
- 支持上传tar,tar.bz,tar.bz2,tar.gz,tar.xz,tbz,tbz2,tgz,txz,zip格式的压缩包,只允许同时上传一个压缩包。源码文件压缩包小于或等于1GB,解压后小于或等于剩余磁盘空间的一半。
- 只允许同时上传一个文件夹,文件夹小于或等于剩余磁盘空间的一半。
- 填写编译命令。例如:“cd src;cmake ..;make”。
- 编译命令支持make、cmake、configure、shell命令以及shell脚本,其中使用make命令时不支持make install。
- 构建命令或者构建脚本不能对用户空间(/opt/DevKit/用户名/workspace/porting)之外的目录和文件进行创建或修改操作。
- 填写“BC文件存放路径”。可以通过以下两种方式实现:
- 选择“已上传的BC文件”:单击填写框选择下拉框中的BC文件路径即可,也可以手动填写BC文件路径。
- 选择“上传BC文件”:单击“上传”按钮上传压缩包(上传过程中自动解压)或文件夹。
- 关于如何生成BC文件,请参见生成BC文件。
- 支持上传tar,tar.bz,tar.bz2,tar.gz,tar.xz,tbz,tbz2,tgz,txz,zip格式的压缩包,只允许同时上传一个压缩包。源码文件压缩包小于或等于1GB,解压后小于或等于剩余磁盘空间的一半。
- 只允许同时上传一个文件夹,文件夹小于或等于剩余磁盘空间的一半。
- 选择“是否启用SVE”,默认是“否”。
SVE是ARMv8a后为增强二进制码可移植性推出的可变长度的向量化指令,以便其能够运行在更宽的SIMD unit上。
- 选择“编译器类型”。当前支持gcc和clang。
当前支持的编译器版本为clang12/clang15/clang16/GCC7/GCC8/GCC9/GCC10,启用SVE后支持clang15/clang16/GCC9/GCC10。
填写完成后,单击“开始检查”开始向量化检查。检查完成后,自动跳转至“检查报告”界面,如图2所示。
- 可单击对需要修改的源码文件按照路径或修改点数量进行排序。
- 可单击“下载报告 (.csv)”或“下载报告 (.html)”获取报告到本地进行查看。
- 若检查结果中存在需要修改的源码文件,则可单击“查看建议源码”进入源码修改建议页面,如图3所示。具体的向量化源码修改建议请参考向量化源码修改建议。
父主题: 亲和分析工具