SDK 神经网络计算卡配置 从AI资料U盘下载并解压GTISDK到开发板。这里解压GTISDK到 /home/firefly/GTISDK中,假设SDK压缩包在当前目录下,操作如下: firefly@firefly:~$ tar zxvf GTISDK_Linux_aarch64_v3-1-2a.tar.gz -C ~/ 然后进行驱动安装。 如果使用的神经网络计算卡是NCC S1,请在 固件下载 或AI资料U盘中下载并烧写对应的固件,或自行编译AI资料U盘中的内核; 如果使用的神经网络计算卡是USB Dongle模块请确认SCSI的sg.ko驱动模块存在 ,步骤如下: 1). 内核内置确认modules.builtin中包含“kernel/drivers/scsi/sg.ko",命令 : firefly@firefly:~$ cat /lib/modules/$(uname -r)/modules.builtin | grep sg.ko 如果打印”kernel/drivers/scsi/sg.ko“,则驱动存在请跳过2)。 2). 外置模块 使用命令: firefly@firefly:~$ sudo modinfo sg 如果打印 “modinfo: ERROR: Module sg not found.”则驱动不存在,否则存在。 如果驱 动存在请确保模块已被加载,可尝试以下操作加载驱动: firefly@firefly:~$ sudo modprobe sg 如果驱动不存在则需要自行编译并加载sg.ko模块(在内核中的选项为SCSI generic support)。 最后是安装udev配置文件。其操作如下: firefly@firefly:~$ sudo cp -i GTISDK/Lib/Linux/aarch64/50-emmc.rules /etc/udev/rules.d/ firefly@firefly:~$ sudo udevadm control --reload 编译工具 SDK需要g++ 7.2.1及以上版本,使用低于7.2.1版本的g++进行编译示例代码可能 会产生意想不到的问题,如果开发板系统为Ubuntu可按下列步骤进行安装: firefly@firefly:~$ sudo add-apt-repository ppa:ubuntu-toolchain-r/test firefly@firefly:~$ sudo apt-get update firefly@firefly:~$ sudo install g++-7 在编译示例代码前需要先设置环境变量 GTI_CC ,如下: firefly@firefly:~$ export GTI_CC=g++-7 userinput.txt配置 { "Gti device type": 0, "model": [ { "Network name": "Gnet3", "Image output format": 0, "Dump input image": 0, "eMMC write block numbers": 128, "eMMC read delay": 5000, "eMMC device node": "/dev/sg0", } ] } Gti device type 设置GTI芯片型号:0为GTI 2801,1为GTI 2803。 model Network name 此配置与PLAI训练模型实现有关。 Image output format 芯片返回数据格式, 0: Conv out pooling, 1: Sub layers, 2: Conv out, 3: Major layers Dump input image 默认为0。 eMMC write block numbers 设备的一次写或读数据的扇区数,设置为2048可获得最好的性能,设置为128可 兼容usb 2.0设备,但此参数与/sys/devices/下对应设备节点的具体的 max_sectors值有关。 eMMC read delay 设备写数据和读数据之间的延时时间,单位为us,通常与网络模型有关,GNet1 为12000 eMMC device node 第一个可能的神经网络计算卡设备节点,连接设备后可在/dev/目录下查找,通 常USB Dongle为/dev/sg0,NCC S1为/dev/mmcblk1。