rknn模型介绍(rknn模型转换)

rknn模型介绍(rknn模型转换)过去几周 我对高性能 ARM 开发板的追求进展有些不顺 但经过近三个月的测试 以下是我对 Banana Pi BPI M7 的笔记 这是一个早就该发布的帖子 由于多种原因而被推迟了 但简而言之 我认为这是 RK3588 迄今为止我测试过的最好 最紧凑的主板 免责声明 Banana Pi 向我发送了一个评测单元 对此我表示感谢 本文遵循我的评测政策 此后 我购买了官方外壳 尚未到达

大家好,我是讯享网,很高兴认识大家。



过去几周,我对高性能 ARM 开发板的追求进展有些不顺,但经过近三个月的测试,以下是我对Banana Pi BPI-M7的笔记。

这是一个早就该发布的帖子,由于多种原因而被推迟了,但简而言之,我认为这是RK3588迄今为止我测试过的最好、最紧凑的主板。

免责声明: Banana Pi 向我发送了一个评测单元(对此我表示感谢),本文遵循我的评测政策。此后,我购买了官方外壳(尚未到达,但到货后我会更新帖子),并提供了自己的 NVMe 驱动器进行测试。

第一印象

如果您曾经使用过任何近期的RK3588主板,那么M7会让您觉得它很密集 - 这是因为它仅比Raspberry Pi稍大一点,并且 PCB 的两侧都相当拥挤:

请注意底部强大的 LAN 驱动器,以及 BPI-M7 设法在边缘处封装的连接器数量。

使用低调的连接器(并且,面对现实,连接器更少,因为它只有一个 HDMI 输出)使其比Orange Pi 5+更紧凑,同时仍然能够在下面安装全尺寸 NVMe,这增加了密度感。

我的丝网印刷掩模版上写着“Bpi v1.1”,但主板装在标有“ArmSoM Sige7”的盒子里,因为ArmSoM是 Banana Pi 的合作公司。

硬件规格

与我最近看过的大多数 Rockchip SBC 一样,M7遵循非常熟悉的模式:

    我的样品配备 16GB RAM 和 128GB ,并且在大部分测试中eMMC我使用了1TB Corsair NVMe 。

    冷却和电源

    与往常一样,主板没有配备冷却解决方案(附加的金属外壳似乎有一个内部凸起用于散热,但我的还没有到货),所以我使用了我的商标铜块:

    M7 刚从我的测试台上取下,带有串行控制台适配器和 Wi-Fi 尾纤(不包括在内)。

    与之前的主板一样,M7使用100W 桌面 USB-C PD 充电器供电时空闲温度约为 40摄氏度,常规使用(浏览或中等至轻度桌面负载)时平均功耗为 2-3W,空闲时功耗为 1W 或更低 - 也与其他主板一致。

    事实上,我花了一点功夫才让它的功耗超过 6W,只有在运行ollama或进行 WebGL 基准测试时它的功耗才会超过 10W。

    操作系统支持

    我对M7非常感兴趣的原因之一是,它是极少数支持 Armbian Platinum 的主板之一,因此我测试了它的两个版本:

      为了新颖性(和更主流的体验),我也尝试了Ubuntu Rockchip 24.02(一个试图为 Rockchip 设备提供更新的 Ubuntu 映像的新发行版),但我所有的基准测试都是在Armbian Bookworm 中完成的(稍后会详细介绍)。

      更新: 在我进行测试后的几周内,Armbian发布了新版本的Ubuntu Noble,据说它有更好的MESA支持VPU。我还没有时间测试它,但我会在测试后更新这篇文章。

      这两款产品都搭载了内核 6.1.43,与所有仍搭载 5.x 内核的 SBC 相比,差距不大。

      总体而言,Armbian体验非常好,但RK3588GPU 驱动程序存在一些常见问题(仍然有点不稳定,但在使用中很明显)。我毫不费力地启动并运行了一个可用的 GNOME 桌面,M7反应非常灵敏。

      从服务器的角度来看,将 Bookworm 安装升级到Proxmox很顺利,并且我能够毫无问题地将其加入到我的集群中。

      基准测试

      到目前为止,我已经测试了相当多的RK3588主板,我不得不说没有任何意外——在运行 Armbian Bookworm 时,M7 的得分与 Orange Pi 5 和 YeeYooToo 的得分相差 5% 以内,NVMe 吞吐量的得分几乎完全相同(因为,嗯,我实际上使用了相同的驱动器):

      NVME 性能

      我决定跳过对内部 EMMC 的基准测试,因为我正在从 NVMe 驱动器启动和运行操作系统,甚至没有文件系统。

      像往常一样,我使用了fio:

      # fio –filename=/<path>/file –size=5GB –direct=1 –rw=randrw –bs=64k –ioengine=libaio –iodepth=64 –runtime=120 –numjobs=4 –time_based –group_reporting –name=random-read-write –eta-newline=1

      …结果相当不错,M7在吞吐量方面略胜于Orange Pi 5+ ,但差距并不大:

      机器

      IOPS(64K随机读取)

      IOPS(64K随机写入)

      香蕉派 M7 (NVME SSD)

      13460

      13326

      英特尔 N5105 (SATA 固态硬盘)

      2741

      2743

      英特尔 i7-12700 (NVMe SSD)

      42926

      42908

      英特尔 i7-6700(SATA 固态硬盘 1)

      2280


      讯享网

      2280

      英特尔 i7-6700(SATA 固态硬盘 2)

      2328

      2329

      Orange Pi 5+ (NVMe SSD)

      13372

      13371

      树莓派 4 (USB 3.0 SSD)

      2001

      2003

      优易通 R1 (NVME SSD)

      4670

      4677

      OLLAMA CPU 性能

      然后我继续进行ollama,在 CPU 模式下测量tinyllama和的令牌生成dolphin-phi(这是我在之前的测试中使用的模型):

      for run in {1..10}; do echo "Why is the sky blue?" | ollama run tinyllama –verbose 2>&1 >/dev/null | grep "eval rate:"; done

      得出了以下结果:

      机器

      模型

      评估令牌/秒

      香蕉派 M7

      海豚

      4.25

      蒂尼拉马

      10.3

      英特尔 i7-6700

      海豚

      7.57

      蒂尼拉马

      16.61

      香橙派 5+

      海豚

      4.65

      蒂尼拉马

      11.3

      树莓派 4

      海豚

      1.51

      蒂尼拉马

      3.77

      优易图 R1

      海豚

      3.9

      蒂尼拉马

      10.5

      令我最初感到惊讶的是,M7比Orange Pi 5+稍慢一些,我花了一段时间才弄明白原因——我怀疑这与热节流有关,因为 M7在这些测试中变得非常热(当温度超过 80摄氏度时,时钟速度就会降低),并且Orange Pi 5+不仅在二月份进行了测试(当时温度较低),而且还安装在一个有利于对流冷却的外壳中。

      所以我实际上称之为平局 - 因为我现在有 16GB RAM 可以在M7上使用,并且官方案例正在进行中(这应该可以改善冷却效果)我将重新审视这一点phi3:instruct(初步结果还可以,但我想看看更好的冷却是否真的有所不同)。

      RKNN 工具包

      像往常一样,我调查了支持状态rknn。RKNN -LLM现在已经存在,但它有几个怪癖:

        …所以我无法真正让它工作——当我有更多时间时我会重新审视这个问题。

        关于 UBUNTU ROCKCHIP 的说明

        但我的大部分测试(以及我停滞了一段时间的地方)都是在Ubuntu Rockchip 24.02 上进行的,这是一个新的发行版,它试图为 Rockchip 设备提供更新的 Ubuntu 映像。

        它看起来很有希望,但我遇到了一些问题:

          相比之下,即使两者都设置为这样,Armbianperformance内核的平均运行温度也要低得多(并且我的所有基准测试都是使用调节器在Armbian Bookworm中完成的ondemand)。

          我花了几个星期的时间,但最终我能够通过重新刷新官方 Wikiuboot中的映像来解决启动问题,但需要注意的是,这还要求我使用真正的 Windows 机器来刷新它——使用 VM 非常困难,因为端口会改变 USB ID,而且我无法在 Linux 上的 Windows VM 中工作。OTGRKDevTool

          支线任务:设置 RKDEVTOOL 语言

          能够使用的一个关键步骤RKDevTool(除了ADB在 Windows 中安装驱动程序)是能够以英语使用它,因为我可以获得的所有最新版本都默认为中文。

          诀窍是将随附的Selected语言设置为:config.ini2

          #选择工具语言:Selected=1(中文);Selected=2(英文)

          [Language]

          Kinds=2

          Selected=2

          LangPath=Language

          Lang1File=Chinese.ini

          Lang1FontName=宋体

          Lang1FontSize=9

          Lang2File=English.ini

          Lang2FontName=Arial

          Lang2FontSize=9

          否则,界面导航会有点困难——但与实际弄清楚我必须重新刷新图像相比,这是一个小问题uboot……

          我使用 RKDevTool 3.19 和 1.15.1 uboot 镜像来修复我的主板

          支线任务:有效使用 VS CODE 串行监视器

          在调试启动问题时,我使用了带有扩展的 USB-TTL 适配器ms-vscode.vscode-serial-monitor。

          但是,该扩展不支持目前似乎所有的范围的 1.5Mbps 波特率,所以我不得不将其添加到 VS Code 配置中以使用自定义波特率:

          "vscode-serial-monitor.customBaudRates":[]

          媒体转码

          尽管我还没有找到用途rknn-toolkit2并且ollama仍然无法利用RK3588先进的硬件,但我终于能够在支持下测试Jellyfin——RK3588它有点崩溃(有时很难弄清楚是客户端还是服务器崩溃),但 CPU 负载的减少明显,并且使其作为媒体服务器更具吸引力——尽管它很难与英特尔的 QuickSync 竞争。

          请记住,您必须选择正确的 Docker 映像才能实现这一点,并且它不是全面的 GPU 支持——似乎只是ffmpeg进行了修补以执行此操作,而且我还没有让HandBrake工作(这将是一个更有趣的测试)。

          但我打算在Jellyfin发布一两次之后回到这个主题并进行更系统的测试,因为VPU同时RK3588支持硬件解码和/硬件编码。H.265AV1H.264H.265

          我们只需要软件支持再改进一点,我想我们就会处于一个良好的状态。

          更新: 正如我上面提到的,在我充实这份草案后的几周内,Armbian推出了一个具有改进的 MESA/VPU 支持的 Ubuntu Noble 版本,但我还没有时间对其进行测试。我会在测试后更新这篇文章。

          结论

          不难看出M7的吸引力–主板上包含了很多可以立即使用的功能,而这些功能在其他主板上要么是附加的,要么根本不存在:

            令我失望的一件事(这在当前的 SBC 中很正常)是缺少单线操作来将其插入显示器以此方式供电 —— 这感觉像是错失了机会。

            但是,如果您想要一台可以实际开发的 ARM Linux 机器,那么硬件功能和官方的ArmbianRK3588支持使它比 Raspberry Pi 5 更具吸引力——Pi 5在原始 CPU 能力或吞吐量(无论是网络还是存储)方面无法与任何主板相匹敌,而 M7至少与我测试过的其他 Rockchip 主板相当。

            是的,文档和软件支持仍然有点混乱,但这对于这些主板来说是正常的 - 并且 M7至少比大多数主板得到更好的支持。

            我真的很好奇它在更好的冷却条件下会表现如何,一旦我拿到正式的机壳,我会重新进行一些测试,看看它的表现如何。不过,可能需要一段时间。

            小讯
            上一篇 2025-05-18 09:55
            下一篇 2025-05-03 07:38

            相关推荐

            版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
            如需转载请保留出处:https://51itzy.com/kjqy/175292.html