在Vitis中编译Vitis AI Library应用

本文详细介绍了如何在Vitis环境中编译Vitis AI Library应用,包括新建应用项目、导入文件、配置硬件函数、添加库文件,并提供了完整的编译步骤和验证方法。

如何将Vitis AI Library应用加入Vitis进行编译,生成可执行文件?

Vitis AI Library应用编译

在不使用vitis的情况下,vitis ai library编译方法如下:

//以refinedet为例
$cd ~/Vitis-AI/Vitis-AI-Library/overview/samples/refinedet
$bash -x build.sh

运行上述指令后,生成可执行文件。

build.sh

build.sh中的内容

CXX=${CXX:-g++}
$CXX -std=c++11 -I. -o test_video_facedetect test_video_facedetect.cpp -lopencv_core -lopencv_video -lopencv_videoio -lopencv_imgproc -lopencv_imgcodecs -lopencv_highgui -lvitis_ai_library-refinedet  -pthread -lglog

在Vitis中新建应用

使用之前创建好的platform新建应用。platform创建方式参考https://github.com/Xilinx/Viti

<think> 我们已经在之前的回答中介绍了使用GPU版本的Vitis AI安装方法。现在用户希望在VMware虚拟机中的Ubuntu系统上使用CPU版本的Vitis AI。由于VMware虚拟机通常不直接支持GPU透传(尤其是NVIDIA GPU),因此使用CPU版本是一个合理的选择。 根据引用[1]和[2]的提示,并结合官方文档,以下是针对VMware中Ubuntu系统安装CPU版本Vitis AI的步骤: ### 步骤1:确保VMware和Ubuntu环境准备 - 按照引用[1]的建议,在VMware中安装Ubuntu 20.04,并安装必要软件(如中文输入法等)。 - 确保Ubuntu系统已更新: ```bash sudo apt update sudo apt upgrade -y ``` - 安装Docker(如果尚未安装): ```bash sudo apt install docker.io sudo systemctl enable --now docker ``` 将当前用户加入docker组以避免使用sudo(需要重新登录生效): ```bash sudo usermod -aG docker $USER ``` ### 步骤2:克隆Vitis AI存储库 ```bash git clone https://github.com/Xilinx/Vitis-AI cd Vitis-AI ``` ### 步骤3:构建CPU版本的Docker镜像 Vitis AI的Docker构建脚本允许我们构建CPU版本的镜像。在`docker`目录下,运行: ```bash cd docker sudo ./docker_build.sh -t cpu -f opt_pytorch ``` 参数说明: - `-t cpu`:指定目标为CPU环境。 - `-f opt_pytorch`:选择PyTorch框架优化器(也可以选择其他框架,如`opt_tensorflow2`)。 构建过程可能需要较长时间(取决于网络和虚拟机性能),因为需要从源下载和安装所有依赖。 ### 步骤4:启动CPU容器 构建完成后,使用以下命令启动容器: ```bash docker run -it -v /path/to/local/data:/workspace vitis-ai-cpu:latest ``` 注意: - 这里不需要`--gpus all`参数,因为使用的是CPU版本。 - `-v`参数用于挂载本地目录到容器中(可选)。 ### 步骤5:验证安装 进入容器后,运行以下命令验证PyTorch环境(以PyTorch为例): ```bash python -c "import torch; print(torch.__version__)" ``` 由于是CPU版本,可以检查是否没有GPU可用: ```bash python -c "import torch; print(torch.cuda.is_available())" ``` 应该输出`False`。 ### 注意事项 1. **性能问题**:在虚拟机中运行CPU版本的Vitis AI可能会比较慢,尤其是模型量化和编译等计算密集型任务。建议分配足够的CPU核心和内存给虚拟机(如8核以上,16GB内存)。 2. **存储空间**:构建镜像和运行容器需要足够的磁盘空间(建议预留50GB以上)。 3. **版本兼容性**:确保克隆的Vitis AI存储库版本为3.0(可以通过`git checkout v3.0`切换到指定标签)。 4. **网络问题**:如果构建过程中下载包速度慢,可以尝试修改Dockerfile中的APT源和Pip源为国内镜像(如阿里云、清华源)[^1]。 §§相关问题§§ 1. 如何在VMware中优化Ubuntu性能以运行Vitis AI? 2. Vitis AI CPU版本支持哪些模型? 3. 如何解决Vitis AI在CPU模式下运行速度慢的问题? </think>### 在 VMware 的 Ubuntu 系统中使用 CPU 版本 Vitis AI 的安装指南 以下是在 VMware 虚拟机中安装 **CPU 版本 Vitis AI** 的完整步骤(基于 Ubuntu 20.04 系统): #### 1. 准备 VMware 和 Ubuntu 环境 - **VMware 配置**(引用[1]): ```bash # 确保启用虚拟化支持: # 1. 在 VMware 设置中勾选"虚拟化 Intel VT-x/EPT" # 2. 分配至少 8GB RAM 和 4 个 CPU 核心 # 3. 磁盘空间 ≥ 50GB ``` - **Ubuntu 基础配置**: ```bash sudo apt update && sudo apt upgrade -y sudo apt install -y git curl wget build-essential ``` #### 2. 安装 Docker(无需 GPU 支持) ```bash # 安装 Docker CE sudo apt install -y docker.io sudo systemctl enable --now docker # 将用户加入 docker 组(引用[1]) sudo usermod -aG docker $USER newgrp docker # 刷新组权限 ``` #### 3. 获取 Vitis AI 源码 ```bash git clone https://github.com/Xilinx/Vitis-AI cd Vitis-AI git checkout v3.0 # 切换到 3.0 版本 ``` #### 4. 构建 CPU 专用 Docker 镜像 ```bash cd docker # 构建 CPU 专用镜像(-t cpu 表示 CPU 版本) sudo ./docker_build.sh -t cpu -f opt_pytorch ``` **参数说明**: - `-t cpu`:指定 CPU 目标平台 - `-f opt_pytorch`:选择 PyTorch 优化框架 - 构建时间约 20-40 分钟(取决于虚拟机性能) #### 5. 启动 CPU 容器 ```bash # 启动容器(注意无 --gpus 参数) docker run -it -v $(pwd)/../:/workspace vitis-ai-cpu:latest # 验证容器环境 (vitis-ai-pytorch) root@docker:/workspace# conda list | grep pytorch ``` 成功进入容器后提示符将变为 `(vitis-ai-pytorch)` #### 6. 验证 CPU 版本功能 ```python # 测试 PyTorch CPU 支持 python -c "import torch; print(f'PyTorch版本: {torch.__version__}, CUDA可用: {torch.cuda.is_available()}')" ``` **预期输出**: ``` PyTorch版本: 1.10.2, CUDA可用: False # 确认 CUDA 不可用 ``` #### 7. 使用 CPU 量化示例模型 在容器内运行: ```bash cd /workspace/demo/Vitis-AI-Library/samples/classification # 使用 CPU 量化 ResNet18 模型 bash test.sh --cpu ``` **关键参数**: - `--cpu`:强制使用 CPU 模式 - `--type float`:使用浮点量化(CPU 默认) #### 注意事项 1. **性能优化**: - VMware 设置中开启"虚拟化 CPU 性能计数器" - 在 Ubuntu 中安装 VMware Tools: ```bash sudo apt install -y open-vm-tools-desktop ``` 2. **存储映射**(引用[1]): ```bash # 解决 VMware 挂载问题: sudo vmware-config-tools.pl # 重新配置共享文件夹 ``` 3. **CPU 模式限制**: - 模型量化速度比 GPU 慢 3-5 倍 - 仅支持浮点量化(不支持 INT8 优化) - 推荐用于模型验证和小规模测试 > 注:完整开发流程参考 [Vitis AI 官方文档](https://github.com/Xilinx/Vitis-AI),CPU 模式操作与 GPU 模式一致,仅需移除 GPU 相关参数[^1][^2]。
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

硬码农二毛哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值