解锁 TL182X 算力卡要注意什么-核心信息和使用场景
处理解锁 TL182X 算力卡要注意什么-核心信息和使用场景这类问题时,先确认目标场景,再按步骤核对配置或玩法细节。
四、CNN与LLM模型测试
从操作角度看,把四、CNN与LLM模型测试、4.1硬件连接、4.1.1 TL1828-A1.1放到具体场景里理解,使用时会更清楚。如果只是逐项记功能,TOPS的实际价值并不容易看出来。
换到实际使用里,请先参考TL3588-EVM产品资料的《系统启动卡制作及系统固化》文档换到实际使用里,将产品资料“软件资料RK182X-AI-Acceleratorupdateimg[系统版本]”目录下对应的系统镜像制作成SD启动卡。
备注:系统镜像默认为普通Linux内核。
本章节使用TL1828-A1.1为例完成演示,因此使用update_sodimm.img系统镜像完成测试。
4.1硬件连接的使用场景
4.1.1 TL1828-A1.1
请将转接板拨码开关拨至1000(1~4)(ON为1,相反为0),如下图所示。
更直接地说,备注:该启动方式选择拨码开关实现对RK1828算力协处理器的配置,若拨码错误,将可能导致TL182X评估套件无法被TL3588-EVM评估板正确识别。
更直接地说,请将TL182X评估套件连接至TL3588-EVM评估板PCIe RC(CON21)接口使用网线将评估板任意网口与路由器连接放在具体场景中,将SD启动卡接入TL3588-EVM评估板Micro SD卡槽硬件连接如下图所示。
备注:请先为TL182X评估套件上电,再为TL3588 EVM评估板上电。
4.1.2 TL1828-M-A1.1
更直接地说,使用网线将评估板任意网口与路由器连接请将TL182X评估套件连接至TL3588-EVM评估板PCIe RC(CON21)接口将SD启动卡接入TL3588-EVM评估板Micro SD卡槽将RM1828MC0-F模组电源转接线连接至12V电源适配器硬件连接如下图所示。需要先分清的是
备注:请先为TL182X评估套件(为RM1828MC0-F模组供电)上电,再为TL3588-EVM评估板上电。
图 27
4.2搭建运行时环境容易忽略的点
(1)环境搭建
换到实际使用里,若评估板已替换为产品资料“软件资料RK182X-AI-Acceleratorupdateimg”目录下对应的系统镜像(默认为普通Linux内核),可跳过以下步骤;放在具体场景中,否则,请参考下文完成环境搭建。
a) 替换内核
更直接地说,我司提供的TL3588 EVM产品资料系统镜像中,内核默认未启用PCIe功能。从操作角度看,请参考我司TL3588 EVM产品资料的《Ubuntu系统使用手册》,替换为"boot-enable-pcie.img"内核镜像。
换到实际使用里,如需使用Linux-RT内核备注:该内核镜像位于TL3588-EVM产品资料“4-软件资料UbuntuKernelimagelinux-5.10.209-[版本号]-[Git序列号]”目录下请选用"boot-enable-pcie-rt.img"内核镜像。更直接地说
b) 安装rknn3库及工具
更直接地说,请将rknn3库及工具包拷贝至评估板文件系统任意目录下。更直接地说我司提供的rknn3库及工具包位于产品资料“软件资料RK182X-AI-Acceleratorectruntime”目录下
执行如下命令,在评估板上安装rknn3库及工具。
Target# mkdir tmp
Target# tar zxf rknn3_rk182x_sodimm_installer_arm64.tgz -C tmp/
Target# cd tmp/
执行如下命令,安装dpkg-architecture工具,以确保后续install.sh脚本顺利运行。
Target# apt install dpkg-dev
执行install.sh脚本,安装rknn3库及工具。
Target# ./install.sh
c)安装pcie-rkep驱动
更直接地说,请将位于产品资料“软件资料RK182X-AI-Acceleratorruntime[系统版本]”目录下的"pcie-rkep.ko"驱动文件拷贝至评估板文件系统"/usr/lib/modules/"目录下。换到实际使用里
备注:
(1)如需使用Linux-RT内核,请使用"pcie-rkep-rt.ko"驱动文件,并将其重命名为"pcie-rkep.ko"。
(2)请根据评估板实际文件系统版本安装对应的驱动文件。
至此,运行时环境搭建完毕,请重启评估板。
(3)查询PCIe设备及驱动
执行如下命令,查看评估板是否识别到PCIe设备。若打印如下信息,即表示已识别到PCIe设备。
Target# lspci
执行如下命令,查看pcie_rkep驱动是否已加载。若打印如下信息,即表示已加载pcie_rkep驱动。
Target# lsmod
(4)查询算力卡信息
执行如下命令,使用rknn-smi工具查看算力卡信息,以确认算力卡能被正常识别。
Target# rknn-smi info
更直接地说,备注:rknn-smi(System Management Interface)工具可用于RKNPU设备的信息收集、功能配置、日志管理等功能。更直接地说,我司已提供对应文档位于产品资料“开发参考资料/Tools/”目录下。
执行如下命令,查看算力卡型号名称。
Target# rknn-smi info -l
备注:不同批次算力卡的型号名称不同,请以实际型号为准。
(5)开启rknn-smi工具
执行如下命令,查看评估板IP地址。
Target# ifconfig
本次查询到评估板IP地址为192.168.12.20。
在上位机Ubuntu系统执行如下命令,使用SSH协议登录评估板文件系统。
Host# ssh [email protected]
执行如下命令,使用rknn-smi工具以查看模型运行时CPU与NPU使用率。
Host# rknn-smi info -w
4.3优化CPU空闲状态实际怎么用
换到实际使用里,在Linux系统中,CPU通过cpuidle机制管理不同级别的空闲状态。放在具体场景中,较深层级的空闲状态虽然可以降低功耗,但会带来较大的唤醒延迟,在高负载或实时性要求较高的场景下,可能影响模型处理效率和TPS稳定性。
放在具体场景中,执行如下命令,通过禁用各CPU核心的state1空闲状态,使CPU保持在较浅层idle状态运行,从而降低唤醒延迟、减少时延抖动、提升Decode TPS处理性能。
Target# echo 1 > /sys/devices/system/cpu/cpu0/cpuidle/state1/disable
Target# echo 1 > /sys/devices/system/cpu/cpu1/cpuidle/state1/disable
Target# echo 1 > /sys/devices/system/cpu/cpu2/cpuidle/state1/disable
Target# echo 1 > /sys/devices/system/cpu/cpu3/cpuidle/state1/disable
Target# echo 1 > /sys/devices/system/cpu/cpu4/cpuidle/state1/disable
Target# echo 1 > /sys/devices/system/cpu/cpu5/cpuidle/state1/disable
Target# echo 1 > /sys/devices/system/cpu/cpu6/cpuidle/state1/disable
Target# echo 1 > /sys/devices/system/cpu/cpu7/cpuidle/state1/disable
如需恢复CPU状态,请执行如下命令完成恢复。
Target# echo 0 > /sys/devices/system/cpu/cpu0/cpuidle/state1/disable
Target# echo 0 > /sys/devices/system/cpu/cpu1/cpuidle/state1/disable
Target# echo 0 > /sys/devices/system/cpu/cpu2/cpuidle/state1/disable
Target# echo 0 > /sys/devices/system/cpu/cpu3/cpuidle/state1/disable
Target# echo 0 > /sys/devices/system/cpu/cpu4/cpuidle/state1/disable
Target# echo 0 > /sys/devices/system/cpu/cpu5/cpuidle/state1/disable
Target# echo 0 > /sys/devices/system/cpu/cpu6/cpuidle/state1/disable
Target# echo 0 > /sys/devices/system/cpu/cpu7/cpuidle/state1/disable
4.4运行CNN模型的使用场景
更直接地说,请将“软件资料RK182X-AI-Acceleratorectmodelcnnyolov5s”目录下的所有文件拷贝至评估板文件系统任意目录。
Target# cd model/cnn/yolov5s/
执行如下命令,可查看rknn3_model_test程序对应参数信息。
备注:rknn3_model_test默认已打包进评估板文件系统。
Target# rknn3_model_test -h
参数说明:
<model_path>:RKNN文件存放路径。<weight_path>:Weight文件存放路径。执行如下命令,运行yolov5s模型测试程序(即rknn3_model_test)。
Target# rknn3_model_test yolov5s_rknn3.rknn yolov5s_rknn3.weight
在上位机Ubuntu终端下,可查看模型运行时CPU与NPU使用率。
由结合上述打印信息可知,运行模型耗时28.775ms,CPU最大使用率为:15%,NPU使用率为0%。
4.5运行LLM模型的使用场景
执行如下命令,可查看rknn3_session_test_eval_perf程序对应参数信息。
备注:rknn3_session_test_eval_perf默认已打包进评估板文件系统。
Target# rknn3_session_test_eval_perf -h
参数说明:
<rknn_path>:RKNN文件存放路径。<weight_path>:Weight文件存放路径。<tokenizer.gguf>:tokenizer.gguf文件存放路径。<embedding.bin>:embedding.bin文件存放路径。<max_context_len>:模型转换时rknn.config中配置的max_ctx_len值。<max_new_token>:每次会话最多生成的Token数。<core_mask>:十六进制数,用于选择启用的核心。放在具体场景中,备注:<max_context_len>参数决定模型转换和推理过程中输入序列的最大长度,<max_new_token>参数决定推理生成阶段输出序列的最大长度。
4.5.1 运行Qwen2.5-3B模型
请将“软件资料RK182X-AI-AcceleratorectmodelllmQwen2.5-3B”目录下的所有文件拷贝至评估板文件系统。
备注:请确保用于拷贝Qwen2.5-3B模型的文件系统目录具备充足的剩余存储空间。
Target# cd /userdata/model/llm/Qwen2.5-3B/
从操作角度看,执行如下命令,运行Qwen2.5-3B模型测试程序,该程序在测试过程中,会以随机生成的token序列作为测试样本,重复完成3次提问,最终统计并输出测试的性能。
更直接地说,Target# rknn3_session_test_eval_perf Qwen2.5-3B.rknn Qwen2.5-3B.weight Qwen2.5-3B.tokenizer.gguf Qwen2.5-3B.embed.bin 1024 128 128 0xff更直接地说
程序统计性能:
由打印信息可得:
查看CPU使用率和NPU使用率:
由上图可以看到,CPU使用率最高54%,NPU使用率最高91%。
-
09.02
ai免费写作一键生成,轻松搞定文案创作
-
09.02
从FDA清单看医疗AI正在进入规模化监管时代讲了什么-主要信息和内容重点
-
09.02
Atoms多模型同时调用请求头设置完整代码怎么做-执行顺序和关键限制
-
09.02
OpenAI正放缓人工智能训练速度有哪些重点-关键信息和实际影响
-
09.02
智慧交通讲了什么-主要信息和内容重点
-
09.02
火山引擎豆包API请求超时故障排查方案怎么看-事实变化和判断依据
-
-
下载
- |
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- |
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏