0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

冰点测试!树莓派CM5如何避免“热”战?

上海晶珩电子科技有限公司 2025-03-25 09:32 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在Raspberry Pi CM5发布的那天,我发表了一篇关于Raspberry Pi CM5开发套件的迷你评测,展示了如何组装套件并启动RaspberryPi操作系统,还运行了sbc-bench基准测试来评估其性能。遗憾的是,在测试过程中,Broadcom BCM2712 CPU出现了降频,这意味着当CM5 IO板置于IO盒内且处理器模块5仅靠风扇散热时,散热效果并不理想。因此,今天我将使用其他散热方案重复相同的测试,即官方的Raspberry Pi CM5散热器(仅散热片)和上海晶珩的CM5主动散热器,后者类似于RaspberryPi5的主动散热器,但专为CPU模块设计。

但在那之前,我要做一些“清理工作”。自从上次我从NVMe SSD启动Raspberry Pi 操作系统以来,我发现摄像头无法正常工作。因此,我将报告我在eMMC闪存上安装Raspberry Pi 操作系统并使摄像头正常工作的经历,这两件事都进行得不太顺利。

efe69d14-0918-11f0-9434-92fbcf53809c.jpg

将Raspberry Pi操作系统安装到CM5的eMMC闪存

理论上,将Raspberry Pi操作系统安装到CM5模块的eMMC闪存上应该很容易,因为已有相关文档说明。

我们需要在J6接头的左侧插入一个跳线,标记为“安装跳线以禁用eMMC启动”,并按照下图所示在IO板和主机之间连接一根USB-C电缆。

f00fccd4-0918-11f0-9434-92fbcf53809c.jpg

然后,我们需要安装并运行rpiboot,以便eMMC闪存作为主机上的USB存储设备出现。

sudo apt install rpibootsudo rpiboot

该实用程序一直卡在等待主板的界面……而且我无法在系统中看到任何表明有新USB设备的信息。

RPIBOOT: build-date Jan 31 2022 version 0~20220315+git6fa2ec0+nowin-0ubuntu1Waiting for BCM2835/6/7/2711...

经过几次尝试后,我认为可能是Ubuntu 22.04存储库中的rpiboot版本太旧了。因此,我将其删除,并从源代码构建了该实用程序:

sudo apt remove rpibootsudo apt install git libusb-1.0-0-dev pkg-config build-essentialgit clone --recurse-submodules --shallow-submodules --depth=1 https://github.com/raspberrypi/usbbootcd usbbootmakesudo make install

该命令的输出现在看起来好多了……

jaufranc@CNX-LAPTOP-5:~/usbboot$ sudo rpibootRPIBOOT: build-date Dec 20 2024 version 20240422~085300 ef721cdaIf the device fails to connect then please see https://rpltd.co/rpibootfordebuggingtips.Waiting for BCM2835/6/7/2711/2712...2712: Directory not specified using default /usr/share/rpiboot/mass-storage-gadget64/Sending bootcode.binSuccessful read 4 bytesWaiting for BCM2835/6/7/2711/2712...Second stage boot serverFile read: mcb.binFile read: memsys00.binFile read: memsys01.binFile read: memsys02.binFile read: memsys03.binFile read: bootmainLoading: /usr/share/rpiboot/mass-storage-gadget64//config.txtFile read: config.txtLoading: /usr/share/rpiboot/mass-storage-gadget64//boot.imgFile read: boot.imgSecond stage boot server done

于是我启动了Raspberry Pi镜像,选择了Raspberry Pi OS的64位版本,以及名为“Raspberry Pi多功能USB设备”的存储设备,其容量为31.3GB,这与我模块上的32GBeMMC闪存相对应。

f036c6ea-0918-11f0-9434-92fbcf53809c.jpg

我可以像将镜像写入microSD卡那样,将镜像写入Raspberry Pi CM5。

f05edd9c-0918-11f0-9434-92fbcf53809c.jpg

一旦完成,操作系统就会从eMMC闪存中正常启动。

f06d320c-0918-11f0-9434-92fbcf53809c.jpg

我们还可以使用lsblk命令来检查eMMC闪存的分区:

pi@raspberrypi:~ $ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTSmmcblk0 179:0 0 29.1G 0 disk├─mmcblk0p1 179:1 0 512M 0 part /boot/firmware└─mmcblk0p2 179:2 0 28.6G 0 part /mmcblk0boot0 179:32 0 4M 1 diskmmcblk0boot1 179:64 0 4M 1 disk

Raspberry Pi CM5 摄像头支持

如引言所述,当将Raspberry Pi 摄像头模块3连接到CAM/DISP 0连接器时,它并不能即插即用。

pi@raspberrypi:~ $ rpicam-hello --listNo cameras available!

虽然有关于如何在CAM/DISP 0和CAM/DISP 1上启用摄像头的文档,但文档有些不完整,且部分内容存在错误。

我按照指示编辑了/boot/firmware/config.txt文件,将camera_auto_detect行注释掉,并为RaspberryPiCameraModule3添加了overlay:

# Automatically load overlays for detected cameras#camera_auto_detect=1dtoverlay=imx708,cam0

重启后,问题解决了。

pi@raspberrypi:~ $ rpicam-hello --listAvailable cameras-----------------0 : imx708 [4608x2592 10-bit RGGB] (/base/axi/pcie@120000/rp1/i2c@88000/imx708@1a)Modes: 'SRGGB10_CSI2P' : 1536x864 [120.13 fps - (768, 432)/3072x1728 crop]2304x1296 [56.03 fps - (0, 0)/4608x2592 crop]4608x2592 [14.35 fps - (0, 0)/4608x2592 crop]

这很简单,没有遇到任何问题。

使用第二个相机的方法类似,但CAM/DISP 1接口要求我们在J6上添加两个跳线。

f087d224-0918-11f0-9434-92fbcf53809c.jpg

我决定使用Raspberry Pi AI相机进行这次测试。我只有一根Raspberry Pi Zero相机线,因此无法同时测试两个相机。AI相机在计算模块文档中没有列出,但我们在GitHub上可以找到所需的overlay:

# Automatically load overlays for detected cameras#camera_auto_detect=1dtoverlay=imx708,cam0dtoverlay=imx500-pi5,cam1

我还安装了imx500包以防万一,并重启了系统:

sudo apt install imx500-allsudo reboot

但相机没有被检测到,所以我尝试将Raspberry Pi Camera Module 3连接到CAM/DISP 1,并将config.txt文件更改如下:

# Automatically load overlays for detected cameras#camera_auto_detect=1#dtoverlay=imx708,cam0dtoverlay=imx708,cam1

与之前一样:

pi@raspberrypi:~ $ rpicam-hello --listNo cameras available!

最后,我只使用imx500-pi5设备树overlay在CAM/DISP 0上测试了Raspberry Pi AI相机,并且可以检测到它。

pi@raspberrypi:~ $ rpicam-hello --listAvailable cameras-----------------0 : imx500 [4056x3040 10-bit RGGB] (/base/axi/pcie@120000/rp1/i2c@88000/imx500@1a)Modes: 'SRGGB10_CSI2P' : 2028x1520 [30.02 fps - (0, 0)/4056x3040 crop]4056x3040 [10.00 fps - (0, 0)/4056x3040 crop]

所以我无法使用CAM/DISP 1连接器。要么是我遗漏了什么,要么是这个第二个连接器只有在CM5 IO板上连接了两个相机时才会工作,单个相机连接时不会工作。所以,以防万一,我将Raspberry Pi Touch Display 2连接到CAM/DISP 0,将AI相机连接到CAM/DISP 1,并进行了以下配置:

# Automatically load overlays for detected cameras#camera_auto_detect=1#dtoverlay=imx708,cam0dtoverlay=vc4-kms-dsi-ili9881-7inch,dsi0dtoverlay=imx500-pi5,cam1
# Automatically load overlays for detected DSI displays#display_auto_detect=1

显示器工作正常,但AI相机在第二个连接器上仍然无法工作,尽管imx500传感器在内核日志中显示…

pi@raspberrypi:~ $ dmesg | grep csi[ 0.958143] platform 1f00128000.csi: Fixed dependency cycle(s) with /axi/pcie@120000/rp1/i2c@88000/imx500@1a[ 0.964771] platform 1f00128000.csi: bcm2712_iommu_probe_device: MMU 1000005280.iommu[ 0.964774] platform 1f00128000.csi: bcm2712_iommu_device_group: MMU 1000005280.iommu[ 0.964778] platform 1f00128000.csi: Adding to iommu group 2[ 0.964795] platform 1f00128000.csi: bcm2712_iommu_attach_dev: MMU 1000005280.iommu[ 2.484827] rp1-cfe 1f00128000.csi: bcm2712_iommu_of_xlate: MMU 1000005280.iommu[ 2.485163] rp1-cfe 1f00128000.csi: DW dphy Host HW v1.20[ 2.485175] rp1-cfe 1f00128000.csi: PiSP FE HW v0.1[ 2.487088] rp1-cfe 1f00128000.csi: found subdevice /axi/pcie@120000/rp1/i2c@88000/imx500@1api@raspberrypi:~ $ rpicam-hello --listNo cameras available!

我现在先放弃了……

Raspberry Pi散热器和CM5主动散热器安装

让我们回到正题,为Raspberry Pi CM5安装散热器。

f09d2f84-0918-11f0-9434-92fbcf53809c.jpg

无论是官方的Raspberry Pi散热器还是上海晶珩的CM5主动散热器,它们都采用了类似的包装,并且基本配备了相同的附件,即一些螺丝、厚垫片和三个贴合在散热器底部的导热垫。

f0b95092-0918-11f0-9434-92fbcf53809c.jpg

上海晶珩散热器只是额外增加了一个散热风扇。让我们先从官方散热器开始。首先,我需要撕掉保护导热垫的薄膜……

f0d7a678-0918-11f0-9434-92fbcf53809c.jpg

然后再将其放置在CM5模块上,并确保其方向不会干扰CPU模块上的内置天线

f0f52aae-0918-11f0-9434-92fbcf53809c.jpg

接着,我在IO板和CM5模块之间放置了四个垫片,并用四个螺丝将所有东西固定好。

f10ac2e2-0918-11f0-9434-92fbcf53809c.jpg

f1346598-0918-11f0-9434-92fbcf53809c.jpg

安装上海晶珩主动散热器的步骤完全相同,只不过我们还需要连接风扇的电线。

f152b8f4-0918-11f0-9434-92fbcf53809c.jpg

使用 Raspberry Pi CM5 的散热器进行基准测试和CPU温度监测

让我们在无风扇配置下,使用Pi散热器,同时运行sbc-bench.sh基准测试脚本,并用rpi-monitor监测CPU温度。

pi@raspberrypi:~ $ sudo ./sbc-bench.sh -rStarting to examine hardware/software for review purposes...
sbc-bench v0.9.68
Installing needed tools: distro packages already installed, mhz, cpufetch,cpuminer.Done.Checking cpufreq OPP. Done.Executing tinymembench. Done.Executing RAM latency tester. Done.Executing OpenSSL benchmark. Done.Executing 7-zip benchmark. Done.Throttling test: heating up the device, 5 more minutes to wait. Done.Checking cpufreq OPP again. Done (11 minutes elapsed).
Results validation:
* Measured clockspeed not lower than advertised max CPU clockspeed* No swapping* Background activity (%system) OK* No throttling
Full results uploaded to https://0x0.st/XCd-.txt
# Raspberry Pi Compute Module 5 Rev 1.0
Tested with sbc-bench v0.9.68 on Sat, 21 Dec 2024 1420 +0700. Fullinfo:[https://0x0.st/XCd-.txt](http://0x0.st/XCd-.txt)
### General information:
Information courtesy of cpufetch:
SoC: Broadcom BCM2712Technology: 16nmMicroarchitecture: Cortex-A76Max Frequency: 2.400 GHzCores: 4 coresFeatures: NEON,SHA1,SHA2,AES,CRC32
BCM2712, Kernel: aarch64, Userland: arm64
CPU sysfs topology (clusters, cpufreq members, clockspeeds)cpufreq min maxCPU cluster policy speed speed core type0 0 0 1500 2400 Cortex-A76 / r4p11 0 0 1500 2400 Cortex-A76 / r4p12 0 0 1500 2400 Cortex-A76 / r4p13 0 0 1500 2400 Cortex-A76 / r4p1
4041 KB available RAM
### Governors/policies (performance vs. idle consumption):
Original governor settings:
cpufreq-policy0: performance / 2400 MHz (conservative ondemand userspacepowersaveperformanceschedutil/15001600 1700 1800 1900 2000 2100 22002300 2400)
Tuned governor settings:
cpufreq-policy0: performance / 2400 MHz
Status of performance related policies found below /sys:
/sys/module/pcie_aspm/parameters/policy: default [performance] powersavepowersupersave
### Clockspeeds (idle vs. heated up):
Before at 52.9°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
After at 79.3°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
### Performance baseline
* memcpy: 5607.4 MB/s, memchr: 14150.3 MB/s, memset: 12426.6 MB/s* 16M latency: 117.8 118.8 118.3 118.0 119.6 119.6 141.0 135.3* 128M latency: 133.8 132.8 134.0 144.3 133.9 132.6 133.3 134.4* 7-zip MIPS (3 consecutive runs): 11145, 10906, 11012 (11020 avg), single-threaded:3203* `aes-256-cbc 540078.51k 1003701.74k 1256093.44k 1332879.02k 1365472.60k1367829.16k`* `aes-256-cbc 540615.20k 1003659.80k 1255990.53k 1332837.72k 1365235.03k1368178.69k`
### PCIe and storage devices:
* Raspberry RP1 PCIe 2.0 South Bridge: Speed 5GT/s, Width x4, driver inuse:rp1,* 29.1GB "Samsung BJTD4R" HS400 Enhanced strobe eMMC 5.1 card as /dev/mmcblk0:date07/2024,manfid/oemid:0x000015/0x0100,hw/fwrev: 0x0/0x0300000000000000
### Swap configuration:
* /var/swap on /dev/mmcblk0p2: 512.0M (0K used) on MMC storage
### Software versions:
* Debian GNU/Linux 12 (bookworm)* Build scripts: http://archive.raspberrypi.com/debian/ bookworm main* Compiler: /usr/bin/gcc (Debian 12.2.0-14) 12.2.0 / aarch64-linux-gnu* OpenSSL 3.0.15, built on 3 Sep 2024 (Library: OpenSSL 3.0.15 3 Sep 2024)* ThreadX: 26826259 / 2024/09/23 1456
### Kernel info:
* `/proc/cmdline: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safecgroup_disable=memorynuma_policy=interleavesmsc95xx.macaddr=2C678D:E8vc_mem.mem_base=0x3fc00000vc_mem.mem_size=0x40000000console=ttyAMA10,115200console=tty1root=PARTUUID=4825a0d7-02rootfstype=ext4fsck.repair=yesrootwaitquietsplashplymouth.ignore-serial-consolescfg80211.ieee80211_regdom=TH`* Vulnerability Spec store bypass: Mitigation; Speculative Store Bypassdisabledviaprctl* Vulnerability Spectre v1: Mitigation; __user pointer sanitization* Vulnerability Spectre v2: Mitigation; CSV2, BHB* Kernel 6.6.62+rpt-rpi-2712 / CONFIG_HZ=250
All known settings adjusted for performance. Device now ready for benchmarking.Once finished stop with [ctrl]-[c] to get info about throttling, frequencycapand too high background activity all potentially invalidating benchmarkscores.All changes with storage and PCIe devices as well as suspicious dmesgcontentswill be reported too.
Time fake/real load %cpu %sys %usr %nice %io %irq Temp VCore PMIC DC(V)1421: 2400/2400MHz 3.51 2% 0% 2% 0% 0% 0% 73.8°C 0.8945V 2.9W 5.13V^C
Cleaning up. Done.Checking cpufreq OPP again. Done.
Clockspeeds now at 72.7°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
Results validation:
* Measured clockspeed not lower than advertised max CPU clockspeed* No swapping* Background activity (%system) OK* No throttling

测试期间的环境温度约为26°C,未发现降频现象。然而,在使用CPUminer进行运算时,CPU的负载温度仍然相当高,达到了79.3°C。而在使用7-zip进行多核压缩时,CPU温度从未超过68.8°C。

f1828ac0-0918-11f0-9434-92fbcf53809c.jpg

看看它与带有内置风扇但没有散热片的Raspberry Pi CM5 IO外壳(环境温度:32°C)相比如何。

f1a31498-0918-11f0-9434-92fbcf53809c.jpg

对于大多数人来说,Raspberry Pi CM5散热器应该是一个合适的冷却系统,但如果你打算在高温(35°C以上)环境下或热量积聚的机箱内运行设备,它可能就不够了。

顺便提一下,我让CM5套件运行了一整夜,下面的图表显示了环境温度对CPU空闲温度的影响。

f1c5c7d6-0918-11f0-9434-92fbcf53809c.jpg

从16:00时的46°C降到6:00时的38°C,同时室内温度从27°C下降到19°C(根据天气预报估计)。

使用上海晶珩 CM5主动散热器 进行基准测试和CPU温度监测

现在,让我们使用主动散热器来运行基准测试:

pi@raspberrypi:~ $ sudo ./sbc-bench.sh -rStarting to examine hardware/software for review purposes...
sbc-bench v0.9.68
Installing needed tools: distro packages already installed. Done.Checking cpufreq OPP. Done.Executing tinymembench. Done.Executing RAM latency tester. Done.Executing OpenSSL benchmark. Done.Executing 7-zip benchmark. Done.Throttling test: heating up the device, 5 more minutes to wait. Done.Checking cpufreq OPP again. Done (11 minutes elapsed).
Results validation:
* Measured clockspeed not lower than advertised max CPU clockspeed* No swapping* Background activity (%system) OK* No throttling
Full results uploaded to https://0x0.st/8rH_.txt
# Raspberry Pi Compute Module 5 Rev 1.0
Tested with sbc-bench v0.9.68 on Sun, 22 Dec 2024 1435 +0700. Fullinfo:[https://0x0.st/8rH_.txt](http://0x0.st/8rH_.txt)
### General information:
Information courtesy of cpufetch:
SoC: Broadcom BCM2712Technology: 16nmMicroarchitecture: Cortex-A76Max Frequency: 2.400 GHzCores: 4 coresFeatures: NEON,SHA1,SHA2,AES,CRC32
BCM2712, Kernel: aarch64, Userland: arm64
CPU sysfs topology (clusters, cpufreq members, clockspeeds)cpufreq min maxCPU cluster policy speed speed core type0 0 0 1500 2400 Cortex-A76 / r4p11 0 0 1500 2400 Cortex-A76 / r4p12 0 0 1500 2400 Cortex-A76 / r4p13 0 0 1500 2400 Cortex-A76 / r4p1
4040 KB available RAM
### Governors/policies (performance vs. idle consumption):
Original governor settings:
cpufreq-policy0: ondemand / 2400 MHz (conservative ondemand userspacepowersaveperformanceschedutil/15001600 1700 1800 1900 2000 2100 22002300 2400)
Tuned governor settings:
cpufreq-policy0: performance / 2400 MHz
Status of performance related policies found below /sys:
/sys/module/pcie_aspm/parameters/policy: default [performance] powersavepowersupersave
### Clockspeeds (idle vs. heated up):
Before at 43.0°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2398
After at 65.5°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
### Performance baseline
* memcpy: 5707.8 MB/s, memchr: 14187.6 MB/s, memset: 12935.3 MB/s* 16M latency: 118.9 117.1 119.8 117.9 120.3 118.9 141.0 136.2* 128M latency: 133.6 132.5 133.7 142.7 134.3 132.3 133.1 134.4* 7-zip MIPS (3 consecutive runs): 11154, 11152, 11174 (11160 avg), single-threaded:3209* `aes-256-cbc 540286.17k 1003793.09k 1255994.45k 1332805.63k 1365428.91k1367692.63k`* `aes-256-cbc 540545.85k 1003955.39k 1256114.35k 1332834.30k 1364443.14k1367905.62k`
### PCIe and storage devices:
* Raspberry RP1 PCIe 2.0 South Bridge: Speed 5GT/s, Width x4, driver inuse:rp1,* 29.1GB "Samsung BJTD4R" HS400 Enhanced strobe eMMC 5.1 card as /dev/mmcblk0:date07/2024,manfid/oemid:0x000015/0x0100,hw/fwrev: 0x0/0x0300000000000000
### Swap configuration:
* /var/swap on /dev/mmcblk0p2: 512.0M (0K used) on MMC storage
### Software versions:
* Debian GNU/Linux 12 (bookworm)* Build scripts: http://archive.raspberrypi.com/debian/ bookworm main* Compiler: /usr/bin/gcc (Debian 12.2.0-14) 12.2.0 / aarch64-linux-gnu* OpenSSL 3.0.15, built on 3 Sep 2024 (Library: OpenSSL 3.0.15 3 Sep 2024)* ThreadX: 26826259 / 2024/09/23 1456
### Kernel info:
* `/proc/cmdline: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safecgroup_disable=memorynuma_policy=interleavesmsc95xx.macaddr=2C678D:E8vc_mem.mem_base=0x3fc00000vc_mem.mem_size=0x40000000console=ttyAMA10,115200console=tty1root=PARTUUID=4825a0d7-02rootfstype=ext4fsck.repair=yesrootwaitquietsplashplymouth.ignore-serial-consolescfg80211.ieee80211_regdom=TH`* Vulnerability Spec store bypass: Mitigation; Speculative Store Bypassdisabledviaprctl* Vulnerability Spectre v1: Mitigation; __user pointer sanitization* Vulnerability Spectre v2: Mitigation; CSV2, BHB* Kernel 6.6.62+rpt-rpi-2712 / CONFIG_HZ=250
All known settings adjusted for performance. Device now ready for benchmarking.Once finished stop with [ctrl]-[c] to get info about throttling, frequencycapand too high background activity all potentially invalidating benchmarkscores.All changes with storage and PCIe devices as well as suspicious dmesgcontentswill be reported too.
Time fake/real load %cpu %sys %usr %nice %io %irq Temp VCore PMIC DC(V)1436: 2400/2400MHz 3.78 39% 0% 39% 0% 0% 0% 60.6°C 0.8942V 2.6W 5.13V^C
Cleaning up. Done.Checking cpufreq OPP again. Done.
Clockspeeds now at 58.4°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
Results validation:
* Measured clockspeed not lower than advertised max CPU clockspeed* No swapping* Background activity (%system) OK* No throttling* ondemand cpufreq governor used by distro but io_is_busy not set to 1onallcores-

环境温度约为25°C。没有发生降频现象,CPU温度在使用CPUminer时最高达到67.2°C,而在使用7-zip时最高为63.9°C。

f1d8de3e-0918-11f0-9434-92fbcf53809c.jpg

它看起来很不错,但有一个问题是,当我关闭系统时,风扇会以全速运转,而且墙上的电源插座会显示有2.3瓦的功耗……

最后的测试是将CM5主动散热器安装在IO外壳内。在用四个螺丝将主板固定在底部后,我连接了外部WiFi天线。我还拆除了外壳顶部的风扇。

f1f36df8-0918-11f0-9434-92fbcf53809c.jpg

我们最终得到了一个带有外壳的完整系统。风扇并没有完全居中,但对于获取冷却所需的进气口来说已经足够了。

f218a96a-0918-11f0-9434-92fbcf53809c.jpg

是时候运行sbc-bench.sh的文件测试了:

pi@raspberrypi:~ $ sudo ./sbc-bench.sh -rStarting to examine hardware/software for review purposes...
sbc-bench v0.9.68
Installing needed tools: distro packages already installed. Done.Checking cpufreq OPP. Done.Executing tinymembench. Done.Executing RAM latency tester. Done.Executing OpenSSL benchmark. Done.Executing 7-zip benchmark. Done.Throttling test: heating up the device, 5 more minutes to wait. Done.Checking cpufreq OPP again. Done (11 minutes elapsed).
Results validation:
* Measured clockspeed not lower than advertised max CPU clockspeed* No swapping* Background activity (%system) OK* No throttling
Full results uploaded to https://0x0.st/8rHy.txt
# Raspberry Pi Compute Module 5 Rev 1.0
Tested with sbc-bench v0.9.68 on Sun, 22 Dec 2024 1429 +0700. Fullinfo:[https://0x0.st/8rHy.txt](http://0x0.st/8rHy.txt)
### General information:
Information courtesy of cpufetch:
SoC: Broadcom BCM2712Technology: 16nmMicroarchitecture: Cortex-A76Max Frequency: 2.400 GHzCores: 4 coresFeatures: NEON,SHA1,SHA2,AES,CRC32
BCM2712, Kernel: aarch64, Userland: arm64
CPU sysfs topology (clusters, cpufreq members, clockspeeds)cpufreq min maxCPU cluster policy speed speed core type0 0 0 1500 2400 Cortex-A76 / r4p11 0 0 1500 2400 Cortex-A76 / r4p12 0 0 1500 2400 Cortex-A76 / r4p13 0 0 1500 2400 Cortex-A76 / r4p1
4044 KB available RAM
### Governors/policies (performance vs. idle consumption):
Original governor settings:
cpufreq-policy0: ondemand / 2400 MHz (conservative ondemand userspacepowersaveperformanceschedutil/15001600 1700 1800 1900 2000 2100 22002300 2400)
Tuned governor settings:
cpufreq-policy0: performance / 2400 MHz
Status of performance related policies found below /sys:
/sys/module/pcie_aspm/parameters/policy: default [performance] powersavepowersupersave
### Clockspeeds (idle vs. heated up):
Before at 44.1°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
After at 68.8°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
### Performance baseline
* memcpy: 5704.2 MB/s, memchr: 14175.1 MB/s, memset: 12902.3 MB/s* 16M latency: 117.0 116.9 120.3 123.1 120.1 118.7 140.4 133.6* 128M latency: 133.6 132.6 133.9 143.8 133.9 132.2 132.9 134.0* 7-zip MIPS (3 consecutive runs): 11056, 10937, 11060 (11020 avg), single-threaded:3201* `aes-256-cbc 540240.68k 1003708.86k 1256076.37k 1332945.24k 1365475.33k1367780.01k`* `aes-256-cbc 540632.86k 1003822.31k 1256136.02k 1332974.93k 1365194.07k1368216.92k`
### PCIe and storage devices:
* Raspberry RP1 PCIe 2.0 South Bridge: Speed 5GT/s, Width x4, driver inuse:rp1,* 29.1GB "Samsung BJTD4R" HS400 Enhanced strobe eMMC 5.1 card as /dev/mmcblk0:date07/2024,manfid/oemid:0x000015/0x0100,hw/fwrev: 0x0/0x0300000000000000
### Swap configuration:
* /var/swap on /dev/mmcblk0p2: 512.0M (0K used) on MMC storage
### Software versions:
* Debian GNU/Linux 12 (bookworm)* Build scripts: http://archive.raspberrypi.com/debian/ bookworm main* Compiler: /usr/bin/gcc (Debian 12.2.0-14) 12.2.0 / aarch64-linux-gnu* OpenSSL 3.0.15, built on 3 Sep 2024 (Library: OpenSSL 3.0.15 3 Sep 2024)* ThreadX: 26826259 / 2024/09/23 1456
### Kernel info:
* `/proc/cmdline: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safecgroup_disable=memorynuma_policy=interleavesmsc95xx.macaddr=2C678D:E8vc_mem.mem_base=0x3fc00000vc_mem.mem_size=0x40000000console=ttyAMA10,115200console=tty1root=PARTUUID=4825a0d7-02rootfstype=ext4fsck.repair=yesrootwaitquietsplashplymouth.ignore-serial-consolescfg80211.ieee80211_regdom=TH`* Vulnerability Spec store bypass: Mitigation; Speculative Store Bypassdisabledviaprctl* Vulnerability Spectre v1: Mitigation; __user pointer sanitization* Vulnerability Spectre v2: Mitigation; CSV2, BHB* Kernel 6.6.62+rpt-rpi-2712 / CONFIG_HZ=250
All known settings adjusted for performance. Device now ready for benchmarking.Once finished stop with [ctrl]-[c] to get info about throttling, frequencycapand too high background activity all potentially invalidating benchmarkscores.All changes with storage and PCIe devices as well as suspicious dmesgcontentswill be reported too.
Time fake/real load %cpu %sys %usr %nice %io %irq Temp VCore PMIC DC(V)1429: 2400/2400MHz 3.60 49% 0% 49% 0% 0% 0% 63.4°C 0.8948V 2.8W 5.13V1429: 2400/2400MHz 1.32 0% 0% 0% 0% 0% 0% 60.0°C 0.8948V 2.3W 5.13V1429: 2400/2400MHz 0.48 0% 0% 0% 0% 0% 0% 59.5°C 0.8953V 2.7W 5.13V^C
Cleaning up. Done.Checking cpufreq OPP again. Done.
Clockspeeds now at 60.0°C:
cpu0 (Cortex-A76): OPP: 2400, ThreadX: 2400, Measured: 2399
Results validation:
* Measured clockspeed not lower than advertised max CPU clockspeed* No swapping* Background activity (%system) OK* No throttling* ondemand cpufreq governor used by distro but io_is_busy not set to 1onallcores-

环境温度仍然保持在25°C左右。CPU温度在使用CPUminer时上升到68.3°C,而在使用7-zip时上升到65.5°C,只比主板不在外壳内时高了几度。

f241138c-0918-11f0-9434-92fbcf53809c.jpg

Raspberry Pi CM5 散热方案比较

让我们来比较一下我们为Raspberry Pi CM5测试过的四种散热方案。

IO外壳带风扇树莓派散热器上海晶珩主动散热器IO外壳内上海晶珩主动散热器
7-zip 基准测试(MIPS)9300110201116011020
CPU 最高温度(7-zip)85.9°C68.8°C63.9°C65.5°C
CPU 最高温度(CPUminer)86.5°C79.3°C67.2°C68.3°C
CPU降频YesNoNoNo
关机功耗2.5W1.6W2.3W2.3W
空闲功耗2.3W2.3W2.4W2.4W

只有IO外壳带风扇(没有散热片)的方案出现了CPU降频,而在环境温度为25-26°C时,无论是Raspberry Pi CM5散热器还是上海晶珩 CM5主动散热器都没有出现降频。对于大多数人来说,被动散热就足够了,但如果你的系统设计在高温(35°C以上)环境下运行,或者你希望超频你的CM5,那么主动散热器可能会带来一些好处。

在CM5 IO板关闭时关闭风扇

你还会注意到,主动冷却系统的关机功耗高得惊人,这是因为系统关闭时风扇会以全速旋转。Raspberry Pi 最初解释说,“将EEPROM的‘POWER_OFF_ON_HALT=0’设置应该可以固定风扇,但会牺牲一些功耗”。我正准备尝试,但在阅读了该线程的更多内容后,发现这并不起作用。Raspberry Pi于12月19日发布了一个修复程序。新的pieeprom固件尚未通过apt提供,因此我们需要从Github下载并按照以下步骤进行安装:

wget https://github.com/timg236/rpi-eeprom/raw/927596fc312b6c2ddcf33f7b7608938241403586/firmware-2712/latest/pieeprom-2024-12-19.binsudo rpi-eeprom-update -d -f ./pieeprom-2024-12-19.bin

以下是该命令的输出结果:

*** CREATED UPDATE ./pieeprom-2024-12-19.bin ***
CURRENT: Sun Dec 15 1250 AM UTC 2024 (1734221810)UPDATE: Thu Dec 19 1113 AM UTC 2024 (1734609433)BOOTFS: /boot/firmware'/tmp/tmp.4SKLxJWPj1' -> '/boot/firmware/pieeprom.upd'
UPDATING bootloader. This could take up to a minute. Please wait
*** Do not disconnect the power until the update is complete ***
If a problem occurs then the Raspberry Pi Imager may be used to createa bootloader rescue SD card image which restores the default bootloaderimage.
flashrom -p linux_spi:dev=/dev/spidev10.0,spispeed=16000 -w /boot/firmware/pieeprom.updVerifying updateVERIFY: SUCCESSUPDATE SUCCESSFUL

我本来也打算更改EEPROM配置,但没必要了,因为POWER_OFF_ON_HALT已经被设置为零:

pi@raspberrypi:~ $ sudo rpi-eeprom-config[all]BOOT_UART=1POWER_OFF_ON_HALT=0
# Default BOOT_ORDER for provisioning# SD -> NVMe -> USB -> NetworkBOOT_ORDER=0xf2461

这不起作用。虽然使用了新的固件版本,但事实证明,这是因为我用来刷写固件的命令使用了固件中的配置……

pi@raspberrypi:~ $ sudo rpi-eeprom-updateBOOTLOADER: up to dateCURRENT: Thu Dec 19 1113 AM UTC 2024 (1734609433)LATEST: Sun Dec 15 1250 AM UTC 2024 (1734221810)RELEASE: latest (/lib/firmware/raspberrypi/bootloader-2712/latest)Use raspi-config to change the release.pi@raspberrypi:~ $ sudo rpi-eeprom-config[all]BOOT_UART=1BOOT_ORDER=0xf461NET_INSTALL_AT_POWER_ON=1

因此,我不得不使用以下命令行更改配置,并添加‘POWER_OFF_ON_HALT=0’:

sudo rpi-eeprom-config --edit

我们还需要再重启一次。让我们最后一次检查引导加载程序版本和配置文件:

pi@raspberrypi:~ $ sudo rpi-eeprom-config[all]BOOT_UART=1BOOT_ORDER=0xf461NET_INSTALL_AT_POWER_ON=1POWER_OFF_ON_HALT=0pi@raspberrypi:~ $ sudo rpi-eeprom-updateBOOTLOADER: up to dateCURRENT: Sun Dec 15 1250 AM UTC 2024 (1734221810)LATEST: Sun Dec 15 1250 AM UTC 2024 (1734221810)RELEASE: latest (/lib/firmware/raspberrypi/bootloader-2712/latest)Use raspi-config to change the release.

这是怎么回事?看起来固件又恢复到了旧版本。这通常是因为新的引导加载程序有问题,所以它正在使用恢复映像,但这里看起来是随机的……所以我再次刷写了映像(不使用其配置),并重启了设备。这次一切都恢复正常了,所以我们现在可以准备关机了:

pi@raspberrypi:~ $ sudo rpi-eeprom-updateBOOTLOADER: up to dateCURRENT: Thu Dec 19 1113 AM UTC 2024 (1734609433)LATEST: Sun Dec 15 1250 AM UTC 2024 (1734221810)RELEASE: latest (/lib/firmware/raspberrypi/bootloader-2712/latest)Use raspi-config to change the release.pi@raspberrypi:~ $ sudo rpi-eeprom-config[all]BOOT_UART=1BOOT_ORDER=0xf461NET_INSTALL_AT_POWER_ON=1POWER_OFF_ON_HALT=0pi@raspberrypi:~ $ sudo shutdown now

风扇确实关闭了,系统关闭时的功耗为1.6瓦。如果你想进一步降低关机时的功耗,你需要将WAKE_ON_GPIO设置为0,就像我在Raspberry Pi 5 2GB上所做的那样。一些HAT可能与此更改不兼容……

我要感谢Raspberry Pi提供了Raspberry Pi CM5开发套件以供评测,还要感谢上海晶珩提供了CM5主动散热器,为我们提供了更好的散热解决方案。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 测试
    +关注

    关注

    8

    文章

    6033

    浏览量

    130734
  • Raspberry Pi
    +关注

    关注

    2

    文章

    621

    浏览量

    23859
  • 树莓派
    +关注

    关注

    122

    文章

    2069

    浏览量

    109728
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Banana Pi BPI-CM4 评测(计算模块 4),更快性能,旨在替换树莓CM4

    Banana Pi BPI-CM4是一个Amlogic A311D的计算机模块,与树莓CM4模块相同的尺寸,它也具有相同的连接引脚,这意味着它应该与为
    的头像 发表于 08-24 10:38 1817次阅读
    Banana Pi BPI-<b class='flag-5'>CM</b>4 评测(计算模块 4),更快性能,旨在替换<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM</b>4

    成都本地工业级树莓CM5板卡定制厂商求推荐

    得到一些指导和建议。 具体需求如下: 具备设计与生产树莓CM5模块的能力; 能够提供工业级别的解决方案; 位于或靠近成都地区,便于沟通和合作。 如果有任何关于如何更有效地寻找此类厂商的建议,或者可以直接推荐相关企业,请不吝赐教
    发表于 06-23 11:45

    树莓CM4底板设计资料下载

    树莓CM4底板设计资料下载
    发表于 11-02 09:12 55次下载

    开发者自制载板令树莓 5“变身”CM5 计算模块

    然而,制造商们仍在等待树莓 cm5计算模块, Arturo182的开发者开发了一个投手踏板,可以将树莓
    的头像 发表于 11-12 15:01 1875次阅读

    ArmSoM CM5 RK3576计算模组——树莓CM4的理想替代品

    ArmSoM团队自豪地推出全新的CM5 RK3576计算模组,这款模块专为嵌入式开发者设计。凭借其强大的性能和广泛的扩展性,CM5计算模组成为开发者的理想选择,也是一款完美替代树莓
    的头像 发表于 09-04 18:28 1528次阅读
    ArmSoM <b class='flag-5'>CM5</b> RK3576计算模组——<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM</b>4的理想替代品

    超频必备!树莓 CM5 主动散热器评测!

    Tom'sHardware评测总结一款低成本且易于安装的散热器,为CM5带来了被动式和主动式散热器,理应获得最佳冷却性能。优点出色的超频性能易于安装低成本静音风扇缺点标准速度下,其散热
    的头像 发表于 03-25 09:28 964次阅读
    超频必备!<b class='flag-5'>树莓</b><b class='flag-5'>派</b> <b class='flag-5'>CM5</b> 主动散热器评测!

    假如你有一块树莓CM5,你会用它来干什么?来看看这些异想天开的树莓项目!

    RaspberryPi处理器模块5CM5)是一款功能强大的单板计算机,几乎无所不能。与常规计算机不同,它专为与定制硬件完美配合而设计,因此您可以选择所需的存储空间、内存和无线功能。它体积小巧,用途
    的头像 发表于 03-25 09:30 2627次阅读
    假如你有一块<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM5</b>,你会用它来干什么?来看看这些异想天开的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>项目!

    树莓CM5 的基准测试:性能飙升,直击你的需求核心!

    CM4升级到了CM5,只需替换处理器模块即可!CM4多年来一直很难买到。它恰好在新冠疫情导致的供应链危机之后推出,从而引发了黄牛哄抬价格的疯狂现象。不过,它非常有用
    的头像 发表于 03-25 09:34 2032次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM5</b> 的基准<b class='flag-5'>测试</b>:性能飙升,直击你的需求核心!

    性能与效率的较量:树莓CM5CM4的温度对比测试

    测试过程和结果由上海晶珩工程师提供,喜欢的小伙伴记得点赞转发噢~视频版本:文字版如下:温度散热性能对比1.同样运行条件下,CM4与CM5运行温度及功耗对比(不带散热片)1.1硬件配置RaspberryPiCM4+Raspberr
    的头像 发表于 03-25 09:35 876次阅读
    性能与效率的较量:<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM5</b>和<b class='flag-5'>CM</b>4的温度对比<b class='flag-5'>测试</b>!

    搭载树莓CM5:Sfera Labs 工业控制器!

    搭载树莓计算模块5的工业计算机:快速、灵活且可靠!为更好地满足工业客户的需求,SferaLabs对StratoPiMax平台进行了升级,利用树莓
    的头像 发表于 07-01 17:41 541次阅读
    搭载<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM5</b>:Sfera Labs 工业控制器!

    2025年树莓最值得关注的事,树莓CM5工业级进化!

    上海晶珩(EDATEC)作为专注于工业计算解决方案的创新企业,推出了基于树莓CM5模块的ED-IPC3100和ED-IPC3630系列工业计算机,这些产品在工业自动化、边缘计算和物联网领域展现出
    的头像 发表于 07-25 15:59 1270次阅读
    2025年<b class='flag-5'>树莓</b><b class='flag-5'>派</b>最值得关注的事,<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM5</b>工业级进化!

    树莓CM5塞进IP65相机?树莓硬核工业相机形态曝光!

    ",智能相机正成为推动智能制造升级的核心部件。上海晶珩深谙此道,凭借多年技术沉淀,重磅推出基于树莓CM5的ED-AIC3000和ED-AIC3100工业智能相机系列,以卓越性能重新定义工业视觉标准。
    的头像 发表于 08-05 17:31 1177次阅读
    把<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM5</b>塞进IP65相机?<b class='flag-5'>树莓</b><b class='flag-5'>派</b>硬核工业相机形态曝光!

    树莓5/CM5秒变工业大脑?

    性能+树莓5/CM5核心"的创新组合架构。这一系列产品专为工业自动化高精度控制与运动控制场景设计,融合了树莓
    的头像 发表于 08-06 15:33 882次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>5</b>/<b class='flag-5'>CM5</b>秒变工业大脑?

    树莓官方都没告诉你的散热黑科技!

    ED-CM5ACOOLER——专为树莓ComputeModule5CM5)量身打造的小钢炮级主动散热器,一句话总结:装上它,
    的头像 发表于 08-07 18:19 1006次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>官方都没告诉你的散热黑科技!

    一块树莓CM5抗下整条产线?工业计算机主板全面解析!

    上海晶珩推出的ED-SBC3300是一款基于树莓CM5模块设计的Mini-ITX规格工业计算机主板,专为严苛的工业环境和边缘计算场景打造。这款产品融合了树莓派生态系统的易用性与工业级
    的头像 发表于 08-10 08:04 870次阅读
    一块<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>CM5</b>抗下整条产线?工业计算机主板全面解析!