ASUS TPU加速卡:Linux 驱动安装

前言

ASUS发布了一款基于Google Coral Edge TPU处理器的全高半长PCIe Gen3 AI加速卡。我们有幸拿到了一块。这款产品的型号为:CRL-G116U-P3DF,内置了16个GoogleCoral Edge TPU M.2模块。
在这里插入图片描述

本文讲述了如何在Linux上安装处理器的驱动

需求

  • 可运行 Ubuntu/Debian 的工作站(优选的稳定版本,如 Ubuntu18.04.4 或 Debian Buster)
  • 组装好的 AI 加速卡,安装在工作站的 PCIe 插槽中
  • 可连接外网的网络环境

一、 安装Edge TPU驱动程序

检查是否有预构建版本的驱动程序

  1. 检查 Linux 内核版本,如果输出结果为 4.18 或更低,可跳过此步骤直接安装 [PCIe 驱动](##安装 PCIe 驱动和 runtimes)

    uname -r
    
  2. 如果内核版本为 4.19 或更高,则检查是否有预构建的 Apex 驱动程序。

    lsmod | grep apex
    

    如果没有输出任何内容,可直接开始安装 PCIe 驱动。

禁用 Apex 和 Gasket

  1. /etc/modprobe.d/blacklist-apex.conf创建新文件,并在其中添加以下两行

    blacklist gasket
    blacklist apex
    
  2. 重启电脑

  3. 运行以下命令以验证 Apex 和 Gasket 是否被禁用

  4. 按照教程安装 PCIe 驱动

  5. 删除/etc/modprobe.d/blacklist-apex.conf并重启电脑

安装 PCIe 驱动和 runtimes

  1. 添加 Debian 软件源

    echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | sudo tee /etc/apt/sources.list.d/coral-edgetpu.list
    
    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
    
    sudo apt-get update
    
  2. 安装 PCIe 驱动和 Edge TPU runtime

    sudo apt-get install gasket-dkms libedgetpu1-std
    
  3. 如果你没有 root 权限,还需要添加以下 udev 规则,然后验证“apex”组是否存在

    sudo sh -c "echo 'SUBSYSTEM==\"apex\", MODE=\"0660\", GROUP=\"apex\"' >> /etc/udev/rules.d/65-apex.rules"
    
    sudo groupadd apex
    
    sudo adduser $USER apex
    

    如果在运行过程中出现如图画面,则需要进入 BISO 关闭 Secure Boot
    在这里插入图片描述

  4. 重启电脑

  5. 验证加速模块是否已经加载

    lspci -nn | grep 089a
    

    结果应该如以下内容

    03:00.0 System peripheral: Device 1ac1:089a
    

    数字 03System peripheral可能不同,但只要出现089a即可

  6. 验证 PCIe 驱动是否加载

    ls /dev/apex_0
    

    输出结果应该如以下内容

    /dev/apex_0
    

二、 安装 Edge TPU Runtime

sudo apt-get update

sudo apt-get install libedgetpu1-std python3-edgetpu libpython3-dev build-essential libusb-1.0-0-dev

如果在以上安装过程中出现错误,则逐个安装未成功的部分,并按照错误提示执行。或使用 sudo aptitude install [pkgname]进行安装。

安装完成之后,可进入Python3环境,进行import操作确认是否安装成功

import edgetpu

三、 开始多个 Edge TPU 测试

  1. 从 github 克隆 Google 的 “edgetpu” 源码

    git clone https://github.com/google-coral/edgetpu
    
  2. 进入 edgetpu 文件夹,运行测试文件

    cd edgetpu/benchmarks
    
    python3 multiple_tpus_performance_analysis.py 
    

    运行结果应该如下:
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/chenjambo/article/details/117695557