- DanielLi64
- Posts: 4
- Joined: Sat Nov 30, 2024 10:02 pm
Re: NUMA Testing
Average of 8 runs:koge wrote: ↑Tue Dec 03, 2024 10:13 pmAnyone interested to try with and w/o NUMA in Mathematica:
Wolfram reports (aka RPi4/400 - probably pre-NUMA) Cortex-A72 (4 Cores) Linux ARM (64-bit) 0.37Code: Select all
Needs["Benchmarking`"]; BenchmarkReport[]
With NUMA 0.7637
Without NUMA 0.6575
Re: NUMA Testing
I've tested this on a Pi 5 4GB with my low latency video streaming setup (just a gstreamer pipeline), and I don't see any improvements in CPU usage (just looking at top). No regressions either though. I think gstreamer is pretty cpu-bound.
gstreamer command:
gst-launch-1.0 libcamerasrc ! video/x-raw,width=640,height=480,framerate=60/1,format=I420 ! x264enc bitrate=2048 tune=zerolatency ! video/x-h264,profile=baseline ! h264parse ! queue ! rtph264pay config-interval=1 pt=96 ! udpsink host=1ドル port=5000
$ uname -a
Linux pi 6.6.62+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024年11月25日) aarch64 GNU/Linux
$ dmesg | grep NUMA
[ 0.000000] NUMA: No NUMA configuration found
[ 0.000000] NUMA: NODE_DATA [mem 0x1fffd2c0-0x1fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x3fbfd2c0-0x3fbfffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x5fffd2c0-0x5fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x7fffd2c0-0x7fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x9fffd2c0-0x9fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0xbfffd2c0-0xbfffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0xdfffd2c0-0xdfffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0xffd892c0-0xffd8bfff]
[ 0.000000] mempolicy: NUMA default policy overridden to 'interleave:0-7'
[ 0.261719] pci_bus 0000:00: Unknown NUMA node; performance will be reduced
gstreamer command:
gst-launch-1.0 libcamerasrc ! video/x-raw,width=640,height=480,framerate=60/1,format=I420 ! x264enc bitrate=2048 tune=zerolatency ! video/x-h264,profile=baseline ! h264parse ! queue ! rtph264pay config-interval=1 pt=96 ! udpsink host=1ドル port=5000
$ uname -a
Linux pi 6.6.62+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024年11月25日) aarch64 GNU/Linux
$ dmesg | grep NUMA
[ 0.000000] NUMA: No NUMA configuration found
[ 0.000000] NUMA: NODE_DATA [mem 0x1fffd2c0-0x1fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x3fbfd2c0-0x3fbfffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x5fffd2c0-0x5fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x7fffd2c0-0x7fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x9fffd2c0-0x9fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0xbfffd2c0-0xbfffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0xdfffd2c0-0xdfffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0xffd892c0-0xffd8bfff]
[ 0.000000] mempolicy: NUMA default policy overridden to 'interleave:0-7'
[ 0.261719] pci_bus 0000:00: Unknown NUMA node; performance will be reduced
Re: NUMA Testing
You're right. I reran the previous tests and added results for SDRAM_BANKLOW 2 and 3, as well as GB6 scores for all configurations. All tests were ran on a Pi 5 4GB. For some reason, the Quake 2 result for the NUMA off case was much better this time around... The BANKLOW settings of 2 or 3 might be a decent compromise for retained (or even improved) GPU performance, if there is no other way to get it back while still using the BANKLOW=1 setting.DanielLi64 wrote: ↑Sun Dec 08, 2024 3:10 pmSetting SDRAM_BANKLOW=1 is not ideal depending on what your using your PI for. It would be very interesting to see your Quake benchmarks with SDRAM_BANKLOW=2 and SDRAM_BANKLOW=3 (even faster writes).
EDIT: To be honest though, I don't know enough about how the different settings work, so I guess using 2 or 3 could produce other side effects or inconsistencies that are undesirable.
Code: Select all
NUMA off NUMA on [BL=1] NUMA on [BL=2] NUMA on [BL=3]
Yamagi Quake 2 (1080p, GLES3, 16xAF) 117,1 96,7 112,8 118,7
vkQuake3 (1080p, Vulkan) 168,4 146,8 166,3 172,5
Geekbench 6 ST 830 896 889 871
Geekbench 6 MT 1758 2114 2080 1990
- dom
- Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator - Posts: 8472
- Joined: Wed Aug 17, 2011 7:41 pm
Re: NUMA Testing
I believe the zerolatency option disables multicore encode and so the benefits of numa are limited.
I'd expect better numa results for a non-zerolatency encode.
Re: NUMA Testing
Makes sense, although the pipeline is using about 200% cpu (two cores). I don't know what else in the pipeline would use that much juice.dom wrote: I believe the zerolatency option disables multicore encode and so the benefits of numa are limited.
I'd expect better numa results for a non-zerolatency encode.
I'd try it without zerolatency, but for some reason it never produces packets without that parameter.
Re: NUMA Testing
Testing on a Pi 5, the latest bootloader EEPROM from 2024年12月07日 configures 8 NUMA nodes by default when there is no SDRAM_BANKLOW specified in its config.
However, I tested setting SDRAM_BANKLOW=-1 (i.e. minus one), and this appeared to do the trick:
Code: Select all
andrew@tarmachan:~ $ vcgencmd bootloader_config
[all]
BOOT_ORDER=0xf146
POWER_OFF_ON_HALT=1
SDRAM_BANKLOW=-1
Code: Select all
andrew@tarmachan:~ $ dmesg | grep -i numa
[ 0.000000] NUMA: No NUMA configuration found
[ 0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x00000001ffffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x1ffb892c0-0x1ffb8bfff]
[ 0.000000] Kernel command line: reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe cgroup_disable=memory numa_policy=interleave smsc95xx.macaddr=D8:3A:DD:7D:7D:61 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=tty1 console=ttyAMA0,115200 root=PARTUUID=2a4a0632-02 rootfstype=ext4 fsck.repair=yes rootwait drm.edid_firmware=edid/lr_tv.dat video=HDMI-A-1:D vc4.force_hotplug=1
[ 0.000000] mempolicy: NUMA default policy overridden to 'interleave:0'
Re: NUMA Testing
I went back to check on my system, as I was pretty sure I had actually confirmed the behavior. Turns out I still use the Nov 12 bootloader, which indeed disables NUMA if the SDRAM_BANKLOW row is removed. I'll upgrade to the latest. :)
Re: NUMA Testing
numa=fake=off in cmdline.txt seems to work for me.
Code: Select all
[ray@jellyfin ~]$ cat /boot/cmdline.txt
root=PARTUUID=cb41f4dc-03 rw rootwait console=serial0,115200 console=tty0 selinux=0 plymouth.enable=0 smsc95xx.turbo_mode=N dwc_otg.lpm_enable=0 usbhid.mousepoll=8 audit=0 cgroup_enable=memory psi=1 delayacct lsm=landlock,lockdown,yama,integrity,apparmor,bpf numa=fake=off
[ray@jellyfin ~]$ numactl --hardware
available: 1 nodes (0)
node 0 cpus: 0 1 2 3
node 0 size: 8038 MB
node 0 free: 546 MB
node distances:
node 0
0: 10Re: NUMA Testing
What does numactl --hardware report when fake NUMA is properly enabled?slick517d wrote: ↑Mon Dec 16, 2024 1:30 pmnuma=fake=off in cmdline.txt seems to work for me.
Code: Select all
[ray@jellyfin ~]$ cat /boot/cmdline.txt root=PARTUUID=cb41f4dc-03 rw rootwait console=serial0,115200 console=tty0 selinux=0 plymouth.enable=0 smsc95xx.turbo_mode=N dwc_otg.lpm_enable=0 usbhid.mousepoll=8 audit=0 cgroup_enable=memory psi=1 delayacct lsm=landlock,lockdown,yama,integrity,apparmor,bpf numa=fake=off [ray@jellyfin ~]$ numactl --hardware available: 1 nodes (0) node 0 cpus: 0 1 2 3 node 0 size: 8038 MB node 0 free: 546 MB node distances: node 0 0: 10
Re: NUMA Testing
I have some weird problem that might be related to NUMA: On a Pi5 (didn't test on Pi4 yet), showing a 10bit HEVC 4K video on a single DRM plane flickers (see short video here), assuming the following conditions are true:
I'm a bit lost on what might cause this. I feel that it might be memory bandwidth related? The fact that actually using the GL surface or not doesn't make a difference is really odd.
Here's the DRM debug output. The first one flickers, the second one doesn't. The only difference are the V3D related calls.
- Video is 10bit at 4K resolution (hevc (Main 10), yuv420p10le(tv)). 8bit 4K HEVC works.
- NUMA is active with both SDRAM_BANKLOW=1 and the automatically added "numa_policy=interleave numa=fake=8" kernel command line arguments. Both with "numa=fake=off" and removed SDRAM_BANKLOW=1 it works.
- A OpenGLES surface must be active. If I remove the eglSwapBuffers call, it works. It also doesn't make a difference whether or not the resulting GL framebuffer is actually added to a DRM plane or not. Even if completely unused, it results in flickering unless the eglSwapBuffers is also removed.
- Tried both with Mesa 23.2.1-1~bpo12+rpt3 as well as the new 24.2.4 and it doesn't make a difference.
- 4K 30Hz mode (CEA 95) works, anything with a higher frequency (50Hz CEA 96 or 60Hz CEA 97) flickers. Using 1080p output at 60Hz works.
Code: Select all
uname -a
Linux raspberrypi 6.6.62+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024年11月25日) aarch64 GNU/Linux
vcgencmd bootloader_config
[all]
BOOT_UART=1
BOOT_ORDER=0xf461
NET_INSTALL_AT_POWER_ON=1
SDRAM_BANKLOW=1
Here's the DRM debug output. The first one flickers, the second one doesn't. The only difference are the V3D related calls.
Code: Select all
[ 683.607572] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3)
[ 683.607577] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (2)
[ 683.607625] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 686 (2)
[ 683.607627] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (1)
[ 683.607677] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 0000000041d6fee5
[ 683.608162] releasing FB backed AVFrame 0x5555d0648170 (fb_id: 685)
[ 683.608204] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_MODE_ATOMIC
[ 683.608257] vc4-drm axi:gpu: [drm:drm_atomic_state_init [drm]] Allocated atomic state 00000000628a0803
[ 683.608311] [drm:drm_mode_object_get [drm]] OBJ ID: 687 (2)
[ 683.608360] vc4-drm axi:gpu: [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:106:plane-4] 00000000c8ec6464 state to 00000000628a0803
[ 683.608411] [drm:drm_mode_object_get [drm]] OBJ ID: 678 (2)
[ 683.608459] vc4-drm axi:gpu: [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:93:crtc-2] 00000000aa3abbf8 state to 00000000628a0803
[ 683.608510] vc4-drm axi:gpu: [drm:drm_atomic_set_fb_for_plane [drm]] Set [FB:684] for [PLANE:106:plane-4] state 00000000c8ec6464
[ 683.608559] [drm:drm_mode_object_get [drm]] OBJ ID: 684 (3)
[ 683.608608] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 687 (3)
[ 683.608656] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (4)
[ 683.608704] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (3)
[ 683.608753] vc4-drm axi:gpu: [drm:drm_atomic_check_only [drm]] checking 00000000628a0803
[ 683.608805] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 000000006868bfc5 state 000000009bdfa05a to 00000000628a0803
[ 683.608856] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Trying to find a channel.
[ 683.608877] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Already enabled, reusing channel 0.
[ 683.608903] vc4-drm axi:gpu: [drm:vc6_plane_mode_set [vc4]] [PLANE:106:plane-4] Computed DLIST size: 20
[ 683.608922] vc4-drm axi:gpu: [drm:vc4_plane_atomic_check [vc4]] [PLANE:106:plane-4] LBM Allocation Size: 240
[ 683.608942] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Found [PLANE:106:plane-4] with DLIST size: 20
[ 683.608964] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Allocating DLIST block with size: 21
[ 683.608984] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 00000000ffc09560 state 0000000058f90675 to 00000000628a0803
[ 683.609036] vc4-drm axi:gpu: [drm:drm_atomic_nonblocking_commit [drm]] committing 00000000628a0803 nonblocking
[ 683.609150] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.609208] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.609260] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.609310] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.609418] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE
[ 683.610046] vc4-drm axi:gpu: [drm:drm_gem_dma_prime_import_sg_table [drm_dma_helper]] dma_addr = 0x0000000a78000000, size = 16596992
[ 683.610044] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: hwmode: htotal 4400, vtotal 2250, vdisplay 2160
[ 683.610069] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE
[ 683.610104] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: clock 594000 kHz framedur 16666666 linedur 7407
[ 683.610121] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_MODE_ADDFB2
[ 683.610177] vc4-drm axi:gpu: [drm:drm_mode_addfb2 [drm]] [FB:685]
[ 683.610229] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_GEM_CLOSE
[ 683.610403] allocated FB backed AVFrame 0x5555d0648170 (fb_id: 685)
[ 683.610442] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.610496] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.610549] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.610599] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO
[ 683.610655] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_SUBMIT_CL
[ 683.610796] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_HANDLE_TO_FD
[ 683.610863] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_CREATE
[ 683.610916] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_FD_TO_HANDLE
[ 683.610970] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_WAIT
[ 683.611026] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_DESTROY
[ 683.624172] vc4-drm axi:gpu: [drm:drm_atomic_state_default_clear [drm]] Clearing atomic state 00000000628a0803
[ 683.624189] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_MODE_RMFB
[ 683.624230] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3)
[ 683.624241] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 686 (2)
[ 683.624280] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 687 (2)
[ 683.624290] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 686 (1)
[ 683.624331] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 00000000628a0803
Code: Select all
[ 496.057567] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3)
[ 496.057578] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (2)
[ 496.057605] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (2)
[ 496.057616] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (1)
[ 496.057643] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 0000000062baf360
[ 496.058055] releasing FB backed AVFrame 0x5556182c6270 (fb_id: 684)
[ 496.058100] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_MODE_ATOMIC
[ 496.058143] vc4-drm axi:gpu: [drm:drm_atomic_state_init [drm]] Allocated atomic state 00000000293b4b18
[ 496.058186] [drm:drm_mode_object_get [drm]] OBJ ID: 681 (2)
[ 496.058244] vc4-drm axi:gpu: [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:106:plane-4] 00000000036cdaf8 state to 00000000293b4b18
[ 496.058292] [drm:drm_mode_object_get [drm]] OBJ ID: 678 (2)
[ 496.058334] vc4-drm axi:gpu: [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:93:crtc-2] 000000009f440e27 state to 00000000293b4b18
[ 496.058373] vc4-drm axi:gpu: [drm:drm_atomic_set_fb_for_plane [drm]] Set [FB:683] for [PLANE:106:plane-4] state 00000000036cdaf8
[ 496.058416] [drm:drm_mode_object_get [drm]] OBJ ID: 683 (3)
[ 496.058453] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 681 (3)
[ 496.058490] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 683 (4)
[ 496.058528] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 683 (3)
[ 496.058566] vc4-drm axi:gpu: [drm:drm_atomic_check_only [drm]] checking 00000000293b4b18
[ 496.058606] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 000000006868bfc5 state 00000000aabd393c to 00000000293b4b18
[ 496.058648] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Trying to find a channel.
[ 496.058673] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Already enabled, reusing channel 0.
[ 496.058696] vc4-drm axi:gpu: [drm:vc6_plane_mode_set [vc4]] [PLANE:106:plane-4] Computed DLIST size: 20
[ 496.058711] vc4-drm axi:gpu: [drm:vc4_plane_atomic_check [vc4]] [PLANE:106:plane-4] LBM Allocation Size: 240
[ 496.058727] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Found [PLANE:106:plane-4] with DLIST size: 20
[ 496.058746] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Allocating DLIST block with size: 21
[ 496.058765] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 00000000ffc09560 state 00000000ae5d1a57 to 00000000293b4b18
[ 496.058805] vc4-drm axi:gpu: [drm:drm_atomic_nonblocking_commit [drm]] committing 00000000293b4b18 nonblocking
[ 496.058966] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE
[ 496.059465] vc4-drm axi:gpu: [drm:drm_gem_dma_prime_import_sg_table [drm_dma_helper]] dma_addr = 0x0000000a79000000, size = 16596992
[ 496.059477] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE
[ 496.059516] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_MODE_ADDFB2
[ 496.059559] vc4-drm axi:gpu: [drm:drm_mode_addfb2 [drm]] [FB:684]
[ 496.059597] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_GEM_CLOSE
[ 496.059702] allocated FB backed AVFrame 0x5556182c6270 (fb_id: 684)
[ 496.059729] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: hwmode: htotal 4400, vtotal 2250, vdisplay 2160
[ 496.059770] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: clock 594000 kHz framedur 16666666 linedur 7407
[ 496.074172] vc4-drm axi:gpu: [drm:drm_atomic_state_default_clear [drm]] Clearing atomic state 00000000293b4b18
[ 496.074217] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3)
[ 496.074225] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_MODE_RMFB
[ 496.074255] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 681 (2)
[ 496.074272] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (2)
[ 496.074293] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 00000000293b4b18
[ 496.074311] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (1)
[ 496.074721] releasing FB backed AVFrame 0x55561833bf80 (fb_id: 685)
info-beamer hosted - A user and programmer friendly digital signage platform for the Pi: https://info-beamer.com/hosted
- dom
- Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator - Posts: 8472
- Joined: Wed Aug 17, 2011 7:41 pm
Re: NUMA Testing
Can you confirm what planes are present? Is the video displayed as a P030 plane, or does it go through GL and is a RGBA32 plane?
Is there a second plane present?
Are you able to pause the video playback (possibly still decoding, but keep showing the same plane).
Do you ever see the corrupt/striped frame persisting?
Can you test if forcing clocks has any effect (e.g. force_turbo=1 on config.txt). I suspect not on Pi5.
Can you narrow down if it's the banklow setting or the numa setting that causes it?
1) Set in the eeprom-config "SDRAM_BANKLOW=-1" to disable banklow.
add to cmdline.txt "numa_policy=interleave numa=fake=8 system_heap.max_order=0" to enable numa manually.
2) Set in the eeprom-config "SDRAM_BANKLOW=1" to enable banklow.
add to cmdline.txt "numa=fake=1" to disable numa manually.
Do 1 or 2 have the issue?
Re: NUMA Testing
I think possible trouble with video is one of the primary focuses for this thread.dividuum wrote: ↑Wed Dec 18, 2024 4:36 pmI have some weird problem that might be related to NUMA: On a Pi5 (didn't test on Pi4 yet), showing a 10bit HEVC 4K video on a single DRM plane flickers (see short video here), assuming the following conditions are true:
I'm testing this on both 32bit and 64bit Raspberry Pi OS, updated to the latest release:
- Video is 10bit at 4K resolution (hevc (Main 10), yuv420p10le(tv)). 8bit 4K HEVC works.
- NUMA is active with both SDRAM_BANKLOW=1 and the automatically added "numa_policy=interleave numa=fake=8" kernel command line arguments. Both with "numa=fake=off" and removed SDRAM_BANKLOW=1 it works.
- A OpenGLES surface must be active. If I remove the eglSwapBuffers call, it works. It also doesn't make a difference whether or not the resulting GL framebuffer is actually added to a DRM plane or not. Even if completely unused, it results in flickering unless the eglSwapBuffers is also removed.
- Tried both with Mesa 23.2.1-1~bpo12+rpt3 as well as the new 24.2.4 and it doesn't make a difference.
- 4K 30Hz mode (CEA 95) works, anything with a higher frequency (50Hz CEA 96 or 60Hz CEA 97) flickers. Using 1080p output at 60Hz works.
I'm a bit lost on what might cause this. I feel that it might be memory bandwidth related? The fact that actually using the GL surface or not doesn't make a difference is really odd.Code: Select all
uname -a Linux raspberrypi 6.6.62+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024年11月25日) aarch64 GNU/Linux vcgencmd bootloader_config [all] BOOT_UART=1 BOOT_ORDER=0xf461 NET_INSTALL_AT_POWER_ON=1 SDRAM_BANKLOW=1
Here's the DRM debug output. The first one flickers, the second one doesn't. The only difference are the V3D related calls.
Code: Select all
[ 683.607572] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3) [ 683.607577] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (2) [ 683.607625] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 686 (2) [ 683.607627] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (1) [ 683.607677] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 0000000041d6fee5 [ 683.608162] releasing FB backed AVFrame 0x5555d0648170 (fb_id: 685) [ 683.608204] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_MODE_ATOMIC [ 683.608257] vc4-drm axi:gpu: [drm:drm_atomic_state_init [drm]] Allocated atomic state 00000000628a0803 [ 683.608311] [drm:drm_mode_object_get [drm]] OBJ ID: 687 (2) [ 683.608360] vc4-drm axi:gpu: [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:106:plane-4] 00000000c8ec6464 state to 00000000628a0803 [ 683.608411] [drm:drm_mode_object_get [drm]] OBJ ID: 678 (2) [ 683.608459] vc4-drm axi:gpu: [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:93:crtc-2] 00000000aa3abbf8 state to 00000000628a0803 [ 683.608510] vc4-drm axi:gpu: [drm:drm_atomic_set_fb_for_plane [drm]] Set [FB:684] for [PLANE:106:plane-4] state 00000000c8ec6464 [ 683.608559] [drm:drm_mode_object_get [drm]] OBJ ID: 684 (3) [ 683.608608] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 687 (3) [ 683.608656] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (4) [ 683.608704] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (3) [ 683.608753] vc4-drm axi:gpu: [drm:drm_atomic_check_only [drm]] checking 00000000628a0803 [ 683.608805] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 000000006868bfc5 state 000000009bdfa05a to 00000000628a0803 [ 683.608856] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Trying to find a channel. [ 683.608877] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Already enabled, reusing channel 0. [ 683.608903] vc4-drm axi:gpu: [drm:vc6_plane_mode_set [vc4]] [PLANE:106:plane-4] Computed DLIST size: 20 [ 683.608922] vc4-drm axi:gpu: [drm:vc4_plane_atomic_check [vc4]] [PLANE:106:plane-4] LBM Allocation Size: 240 [ 683.608942] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Found [PLANE:106:plane-4] with DLIST size: 20 [ 683.608964] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Allocating DLIST block with size: 21 [ 683.608984] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 00000000ffc09560 state 0000000058f90675 to 00000000628a0803 [ 683.609036] vc4-drm axi:gpu: [drm:drm_atomic_nonblocking_commit [drm]] committing 00000000628a0803 nonblocking [ 683.609150] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.609208] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.609260] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.609310] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.609418] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE [ 683.610046] vc4-drm axi:gpu: [drm:drm_gem_dma_prime_import_sg_table [drm_dma_helper]] dma_addr = 0x0000000a78000000, size = 16596992 [ 683.610044] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: hwmode: htotal 4400, vtotal 2250, vdisplay 2160 [ 683.610069] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE [ 683.610104] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: clock 594000 kHz framedur 16666666 linedur 7407 [ 683.610121] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_MODE_ADDFB2 [ 683.610177] vc4-drm axi:gpu: [drm:drm_mode_addfb2 [drm]] [FB:685] [ 683.610229] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_GEM_CLOSE [ 683.610403] allocated FB backed AVFrame 0x5555d0648170 (fb_id: 685) [ 683.610442] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.610496] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.610549] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.610599] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_WAIT_BO [ 683.610655] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, V3D_SUBMIT_CL [ 683.610796] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_HANDLE_TO_FD [ 683.610863] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_CREATE [ 683.610916] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_FD_TO_HANDLE [ 683.610970] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_WAIT [ 683.611026] v3d 1002000000.v3d: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe280, auth=1, DRM_IOCTL_SYNCOBJ_DESTROY [ 683.624172] vc4-drm axi:gpu: [drm:drm_atomic_state_default_clear [drm]] Clearing atomic state 00000000628a0803 [ 683.624189] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1240, dev=0xe201, auth=1, DRM_IOCTL_MODE_RMFB [ 683.624230] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3) [ 683.624241] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 686 (2) [ 683.624280] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 687 (2) [ 683.624290] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 686 (1) [ 683.624331] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 00000000628a0803Code: Select all
[ 496.057567] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3) [ 496.057578] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (2) [ 496.057605] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (2) [ 496.057616] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 684 (1) [ 496.057643] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 0000000062baf360 [ 496.058055] releasing FB backed AVFrame 0x5556182c6270 (fb_id: 684) [ 496.058100] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_MODE_ATOMIC [ 496.058143] vc4-drm axi:gpu: [drm:drm_atomic_state_init [drm]] Allocated atomic state 00000000293b4b18 [ 496.058186] [drm:drm_mode_object_get [drm]] OBJ ID: 681 (2) [ 496.058244] vc4-drm axi:gpu: [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:106:plane-4] 00000000036cdaf8 state to 00000000293b4b18 [ 496.058292] [drm:drm_mode_object_get [drm]] OBJ ID: 678 (2) [ 496.058334] vc4-drm axi:gpu: [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:93:crtc-2] 000000009f440e27 state to 00000000293b4b18 [ 496.058373] vc4-drm axi:gpu: [drm:drm_atomic_set_fb_for_plane [drm]] Set [FB:683] for [PLANE:106:plane-4] state 00000000036cdaf8 [ 496.058416] [drm:drm_mode_object_get [drm]] OBJ ID: 683 (3) [ 496.058453] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 681 (3) [ 496.058490] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 683 (4) [ 496.058528] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 683 (3) [ 496.058566] vc4-drm axi:gpu: [drm:drm_atomic_check_only [drm]] checking 00000000293b4b18 [ 496.058606] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 000000006868bfc5 state 00000000aabd393c to 00000000293b4b18 [ 496.058648] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Trying to find a channel. [ 496.058673] vc4-drm axi:gpu: [drm:vc4_atomic_check [vc4]] crtc-2: Already enabled, reusing channel 0. [ 496.058696] vc4-drm axi:gpu: [drm:vc6_plane_mode_set [vc4]] [PLANE:106:plane-4] Computed DLIST size: 20 [ 496.058711] vc4-drm axi:gpu: [drm:vc4_plane_atomic_check [vc4]] [PLANE:106:plane-4] LBM Allocation Size: 240 [ 496.058727] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Found [PLANE:106:plane-4] with DLIST size: 20 [ 496.058746] vc4-drm axi:gpu: [drm:vc4_hvs_atomic_check [vc4]] [CRTC:93:crtc-2] Allocating DLIST block with size: 21 [ 496.058765] vc4-drm axi:gpu: [drm:drm_atomic_get_private_obj_state [drm]] Added new private object 00000000ffc09560 state 00000000ae5d1a57 to 00000000293b4b18 [ 496.058805] vc4-drm axi:gpu: [drm:drm_atomic_nonblocking_commit [drm]] committing 00000000293b4b18 nonblocking [ 496.058966] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE [ 496.059465] vc4-drm axi:gpu: [drm:drm_gem_dma_prime_import_sg_table [drm_dma_helper]] dma_addr = 0x0000000a79000000, size = 16596992 [ 496.059477] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_PRIME_FD_TO_HANDLE [ 496.059516] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_MODE_ADDFB2 [ 496.059559] vc4-drm axi:gpu: [drm:drm_mode_addfb2 [drm]] [FB:684] [ 496.059597] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_GEM_CLOSE [ 496.059702] allocated FB backed AVFrame 0x5556182c6270 (fb_id: 684) [ 496.059729] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: hwmode: htotal 4400, vtotal 2250, vdisplay 2160 [ 496.059770] vc4-drm axi:gpu: [drm:drm_calc_timestamping_constants [drm]] crtc 93: clock 594000 kHz framedur 16666666 linedur 7407 [ 496.074172] vc4-drm axi:gpu: [drm:drm_atomic_state_default_clear [drm]] Clearing atomic state 00000000293b4b18 [ 496.074217] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 678 (3) [ 496.074225] vc4-drm axi:gpu: [drm:drm_ioctl [drm]] comm="info-beamer" pid=1177, dev=0xe201, auth=1, DRM_IOCTL_MODE_RMFB [ 496.074255] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 681 (2) [ 496.074272] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (2) [ 496.074293] vc4-drm axi:gpu: [drm:__drm_atomic_state_free [drm]] Freeing atomic state 00000000293b4b18 [ 496.074311] [drm:drm_mode_object_put.part.0 [drm]] OBJ ID: 685 (1) [ 496.074721] releasing FB backed AVFrame 0x55561833bf80 (fb_id: 685)
My understanding is your 6.6.x kernel uses the fake NUMA patches from Igalia. The upcoming 6.12.x kernel uses similar patches by Microsoft. I wonder whether the Microsoft patches in the 6.12.x kernel perform better, worse or the same.
Unfortunately tracking your problem is beyond me; I hope an engineer looks into this.
Edit: Cross posted; see the post before this one.
Re: NUMA Testing
Only a single P030 framebuffer:
Code: Select all
root@raspberrypi:~# kmsprint -p
Connector 0 (32) HDMI-A-1 (connected)
EDID (1) = blob-id 681 len 256 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 93
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (37) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (38) = 8 [8 - 12]
Broadcast RGB (39) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (40) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 0 (31) TMDS
Crtc 2 (93) [email protected] 594.000 3840/176/88/296/+ 2160/4/10/76/- 60 (60.00) P|D
OUT_FENCE_PTR (19) = 0 [0 - 18446744073709551615]
ACTIVE (22) = 1 [0 - 1]
MODE_ID (23) = blob-id 678 len 68
VRR_ENABLED (24) = 0 [0 - 1]
Plane 4 (106) fb-id: 686 (crtcs: 1 2 3) 0,0 3840x2160 -> 0,0 3840x2160 (XR24 AR24 AB24 XB24 RG16 BG16 AR15 XR15 RG24 BG24 YU16 YV16 YU24 YV24 YU12 YV12 NV12 NV21 NV16 NV61 P030 XR30 AR30 AB30 XB30 RGB8 BGR8 XR12 AR12 XB12 AB12 BX12 BA12 RX12 RA12)
type (8) = 0 (Overlay) [Overlay=0|Primary=1|Cursor=2] (immutable)
SRC_X (9) = 0 [0 - 4294967295]
SRC_Y (10) = 0 [0 - 4294967295]
SRC_W (11) = 251658240 [0 - 4294967295]
SRC_H (12) = 141557760 [0 - 4294967295]
CRTC_X (13) = 0 [-2147483648 - 2147483647]
CRTC_Y (14) = 0 [-2147483648 - 2147483647]
CRTC_W (15) = 3840 [0 - 2147483647]
CRTC_H (16) = 2160 [0 - 2147483647]
FB_ID (17) = object id 686
IN_FENCE_FD (18) = -1 [-1 - 2147483647]
CRTC_ID (20) = object id 93
IN_FORMATS (30) = blob-id 107 len 288 (immutable)
alpha (108) = 65535 [0 - 65535]
pixel blend mode (109) = 2 (None) [Pre-multiplied=0|Coverage=1|None=2]
rotation (110) = 0x1 (rotate-0) [rotate-0=0x1|rotate-180=0x4|reflect-x=0x10|reflect-y=0x20]
COLOR_ENCODING (111) = 1 (ITU-R BT.709 YCbCr) [ITU-R BT.601 YCbCr=0|ITU-R BT.709 YCbCr=1|ITU-R BT.2020 YCbCr=2]
COLOR_RANGE (112) = 0 (YCbCr limited range) [YCbCr limited range=0|YCbCr full range=1]
SCALING_FILTER (113) = 0 (Default) [Default=0|Nearest Neighbor=1]
CHROMA_SITING_H (114) = 0 [0 - 65536]
CHROMA_SITING_V (115) = 32768 [0 - 65536]
zpos (116) = 1 [1 - 17]
FB 686 3840x2160 P030
Connector 1 (42) HDMI-A-2 (disconnected)
EDID (1) = blob-id 0 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 0
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (43) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (44) = 8 [8 - 12]
Broadcast RGB (45) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (46) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 1 (41) TMDS
I am. With an unchanging framebuffer, the video output is stable. Although I can see it having those diagonal stripes while the frame is first added to the output.Are you able to pause the video playback (possibly still decoding, but keep showing the same plane).
Nope.Do you ever see the corrupt/striped frame persisting?
Indeed. Flickering remains.Can you test if forcing clocks has any effect (e.g. force_turbo=1 on config.txt). I suspect not on Pi5.
1) Seems to work fine. In `dmesg` I can see that fake NUMA is active while SDRAM_BANKLOW=-1 in shown in `vcgencmd bootloader_config`.Can you narrow down if it's the banklow setting or the numa setting that causes it?
1) Set in the eeprom-config "SDRAM_BANKLOW=-1" to disable banklow.
add to cmdline.txt "numa_policy=interleave numa=fake=8 system_heap.max_order=0" to enable numa manually.
2) Set in the eeprom-config "SDRAM_BANKLOW=1" to enable banklow.
add to cmdline.txt "numa=fake=1" to disable numa manually.
Do 1 or 2 have the issue?
2) Also works. SDRAM_BANKLOW=1 in shown in `vcgencmd bootloader_config`.
info-beamer hosted - A user and programmer friendly digital signage platform for the Pi: https://info-beamer.com/hosted
Re: NUMA Testing
Two other data points:
- I've cut the GL surface resolution in half (1920x1080 down from 4K). With that the video plays back mostly flicker free. Note that the GL surface is still not used anywhere. It's not even getting imported into DRM.
- I've previously placed the video across the complete output (3480x2160+0,0). When I instead leave a small border around it (3280x1960+100,100) or place it in with half resolution in the top left corner (1920x1080+0,0), the flickering changes and it looks like the rendering randomly stops at different horizontal coordinates.
info-beamer hosted - A user and programmer friendly digital signage platform for the Pi: https://info-beamer.com/hosted
Re: NUMA Testing
Works on Pi4:
With added hdmi_enable_4kp60=1 in config.txt.
Code: Select all
# kmsprint -p
Connector 0 (32) HDMI-A-1 (connected)
EDID (1) = blob-id 723 len 256 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 101
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (37) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (38) = 8 [8 - 12]
Broadcast RGB (39) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (40) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 0 (31) TMDS
Crtc 3 (101) [email protected] 594.000 3840/176/88/296/+ 2160/4/10/76/- 60 (60.00) P|D
OUT_FENCE_PTR (19) = 0 [0 - 18446744073709551615]
ACTIVE (22) = 1 [0 - 1]
MODE_ID (23) = blob-id 720 len 68
VRR_ENABLED (24) = 0 [0 - 1]
Plane 6 (126) fb-id: 727 (crtcs: 1 2 3 4 5) 0,0 3840x2160 -> 0,0 3840x2160 (XR24 AR24 AB24 XB24 RG16 BG16 AR15 XR15 RG24 BG24 YU16 YV16 YU24 YV24 YU12 YV12 NV12 NV21 NV16 NV61 P030 XR30 AR30 AB30 XB30 RGB8 BGR8 XR12 AR12 XB12 AB12 BX12 BA12 RX12 RA12)
type (8) = 0 (Overlay) [Overlay=0|Primary=1|Cursor=2] (immutable)
SRC_X (9) = 0 [0 - 4294967295]
SRC_Y (10) = 0 [0 - 4294967295]
SRC_W (11) = 251658240 [0 - 4294967295]
SRC_H (12) = 141557760 [0 - 4294967295]
CRTC_X (13) = 0 [-2147483648 - 2147483647]
CRTC_Y (14) = 0 [-2147483648 - 2147483647]
CRTC_W (15) = 3840 [0 - 2147483647]
CRTC_H (16) = 2160 [0 - 2147483647]
FB_ID (17) = object id 727
IN_FENCE_FD (18) = -1 [-1 - 2147483647]
CRTC_ID (20) = object id 101
IN_FORMATS (30) = blob-id 127 len 288 (immutable)
alpha (128) = 65535 [0 - 65535]
pixel blend mode (129) = 2 (None) [Pre-multiplied=0|Coverage=1|None=2]
rotation (130) = 0x1 (rotate-0) [rotate-0=0x1|rotate-180=0x4|reflect-x=0x10|reflect-y=0x20]
COLOR_ENCODING (131) = 1 (ITU-R BT.709 YCbCr) [ITU-R BT.601 YCbCr=0|ITU-R BT.709 YCbCr=1|ITU-R BT.2020 YCbCr=2]
COLOR_RANGE (132) = 0 (YCbCr limited range) [YCbCr limited range=0|YCbCr full range=1]
SCALING_FILTER (133) = 0 (Default) [Default=0|Nearest Neighbor=1]
CHROMA_SITING_H (134) = 0 [0 - 65536]
CHROMA_SITING_V (135) = 32768 [0 - 65536]
zpos (136) = 1 [1 - 17]
FB 727 3840x2160 P030
Connector 1 (42) HDMI-A-2 (disconnected)
EDID (1) = blob-id 0 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 0
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (43) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (44) = 8 [8 - 12]
Broadcast RGB (45) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (46) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 1 (41) TMDS
Code: Select all
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 6.6.62+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024年11月25日) aarch64 GNU/Linux
pi@raspberrypi:~ $ vcgencmd bootloader_config
[all]
BOOT_UART=0
WAKE_ON_GPIO=1
POWER_OFF_ON_HALT=0
SDRAM_BANKLOW=3
pi@raspberrypi:~ $ vcgencmd bootloader_version
2024年12月07日 12:39:28
version 3858f977ab6d689a226ad24d26749266762b7160 (release)
timestamp 1733575168
update-time 1734608428
capabilities 0x0000007f
pi@raspberrypi:~ $ cat /proc/cmdline
coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_headphones=0 cgroup_disable=memory numa_policy=interleave snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_hdmi=0 numa=fake=2 system_heap.max_order=0 smsc95xx.macaddr=E4:5F:01:98:A0:2B vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 console=ttyS0,115200 console=tty1 root=PARTUUID=f1fa33b0-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=DE
pi@raspberrypi:~ $ numactl -H
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3
node 0 size: 3806 MB
node 0 free: 3012 MB
node 1 cpus:
node 1 size: 4015 MB
node 1 free: 3578 MB
node distances:
node 0 1
0: 10 20
1: 20 10
pi@raspberrypi:~ $ cat /proc/cpuinfo |grep Rev
Revision : d03115
Model : Raspberry Pi 4 Model B Rev 1.5
info-beamer hosted - A user and programmer friendly digital signage platform for the Pi: https://info-beamer.com/hosted
Re: NUMA Testing
Another data point: Works on Pi5 2GB :?:
Let me gather all that again for the 8GB model I initially used...
Code: Select all
kmsprint -p
Connector 0 (32) HDMI-A-1 (connected)
EDID (1) = blob-id 681 len 256 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 93
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (37) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (38) = 8 [8 - 12]
Broadcast RGB (39) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (40) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 0 (31) TMDS
Crtc 2 (93) [email protected] 594.000 3840/176/88/296/+ 2160/4/10/76/- 60 (60.00) P|D
OUT_FENCE_PTR (19) = 0 [0 - 18446744073709551615]
ACTIVE (22) = 1 [0 - 1]
MODE_ID (23) = blob-id 678 len 68
VRR_ENABLED (24) = 0 [0 - 1]
Plane 4 (106) fb-id: 684 (crtcs: 1 2 3) 0,0 3840x2160 -> 0,0 3840x2160 (XR24 AR24 AB24 XB24 RG16 BG16 AR15 XR15 RG24 BG24 YU16 YV16 YU24 YV24 YU12 YV12 NV12 NV21 NV16 NV61 P030 XR30 AR30 AB30 XB30 RGB8 BGR8 XR12 AR12 XB12 AB12 BX12 BA12 RX12 RA12)
type (8) = 0 (Overlay) [Overlay=0|Primary=1|Cursor=2] (immutable)
SRC_X (9) = 0 [0 - 4294967295]
SRC_Y (10) = 0 [0 - 4294967295]
SRC_W (11) = 251658240 [0 - 4294967295]
SRC_H (12) = 141557760 [0 - 4294967295]
CRTC_X (13) = 0 [-2147483648 - 2147483647]
CRTC_Y (14) = 0 [-2147483648 - 2147483647]
CRTC_W (15) = 3840 [0 - 2147483647]
CRTC_H (16) = 2160 [0 - 2147483647]
FB_ID (17) = object id 684
IN_FENCE_FD (18) = -1 [-1 - 2147483647]
CRTC_ID (20) = object id 93
IN_FORMATS (30) = blob-id 107 len 288 (immutable)
alpha (108) = 65535 [0 - 65535]
pixel blend mode (109) = 2 (None) [Pre-multiplied=0|Coverage=1|None=2]
rotation (110) = 0x1 (rotate-0) [rotate-0=0x1|rotate-180=0x4|reflect-x=0x10|reflect-y=0x20]
COLOR_ENCODING (111) = 1 (ITU-R BT.709 YCbCr) [ITU-R BT.601 YCbCr=0|ITU-R BT.709 YCbCr=1|ITU-R BT.2020 YCbCr=2]
COLOR_RANGE (112) = 0 (YCbCr limited range) [YCbCr limited range=0|YCbCr full range=1]
SCALING_FILTER (113) = 0 (Default) [Default=0|Nearest Neighbor=1]
CHROMA_SITING_H (114) = 0 [0 - 65536]
CHROMA_SITING_V (115) = 32768 [0 - 65536]
zpos (116) = 1 [1 - 17]
FB 684 3840x2160 P030
Connector 1 (42) HDMI-A-2 (disconnected)
EDID (1) = blob-id 0 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 0
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (43) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (44) = 8 [8 - 12]
Broadcast RGB (45) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (46) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 1 (41) TMDS
Code: Select all
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 6.6.62+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024年11月25日) aarch64 GNU/Linux
pi@raspberrypi:~ $ vcgencmd bootloader_config
[all]
BOOT_UART=1
BOOT_ORDER=0xf461
NET_INSTALL_AT_POWER_ON=1
SDRAM_BANKLOW=1
pi@raspberrypi:~ $ vcgencmd bootloader_version
2024年12月15日 00:16:50
version 461827f22e6ab42230e3a5a1735ee2092cdcbb72 (release)
timestamp 1734221810
update-time 1734609614
capabilities 0x0000007f
pi@raspberrypi:~ $ cat /proc/cmdline
reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe cgroup_disable=memory numa_policy=interleave numa=fake=4 system_heap.max_order=0 smsc95xx.macaddr=2C:CF:67:75:7B:4B vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=ttyAMA10,115200 console=tty1 root=PARTUUID=f1fa33b0-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=DE
pi@raspberrypi:~ $ numactl -H
available: 4 nodes (0-3)
node 0 cpus: 0 1 2 3
node 0 size: 487 MB
node 0 free: 92 MB
node 1 cpus:
node 1 size: 501 MB
node 1 free: 273 MB
node 2 cpus:
node 2 size: 509 MB
node 2 free: 280 MB
node 3 cpus:
node 3 size: 508 MB
node 3 free: 263 MB
node distances:
node 0 1 2 3
0: 10 20 20 20
1: 20 10 20 20
2: 20 20 10 20
3: 20 20 20 10
pi@raspberrypi:~ $ cat /proc/cpuinfo |grep Rev
Revision : b04170
Model : Raspberry Pi 5 Model B Rev 1.0
info-beamer hosted - A user and programmer friendly digital signage platform for the Pi: https://info-beamer.com/hosted
Re: NUMA Testing
Pi5 8GB model again flickers:
I also tried to restrict its 8GB memory to just 2GB similar to the 2GB Pi5 I have using the following in cmdline.txt:
numactl now looks identical, but it still flickers. Really strange:
Code: Select all
kmsprint -p
Connector 0 (32) HDMI-A-1 (connected)
EDID (1) = blob-id 681 len 256 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 93
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (37) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (38) = 8 [8 - 12]
Broadcast RGB (39) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (40) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 0 (31) TMDS
Crtc 2 (93) [email protected] 594.000 3840/176/88/296/+ 2160/4/10/76/- 60 (60.00) P|D
OUT_FENCE_PTR (19) = 0 [0 - 18446744073709551615]
ACTIVE (22) = 1 [0 - 1]
MODE_ID (23) = blob-id 678 len 68
VRR_ENABLED (24) = 0 [0 - 1]
Plane 4 (106) fb-id: 684 (crtcs: 1 2 3) 0,0 3840x2160 -> 0,0 3840x2160 (XR24 AR24 AB24 XB24 RG16 BG16 AR15 XR15 RG24 BG24 YU16 YV16 YU24 YV24 YU12 YV12 NV12 NV21 NV16 NV61 P030 XR30 AR30 AB30 XB30 RGB8 BGR8 XR12 AR12 XB12 AB12 BX12 BA12 RX12 RA12)
type (8) = 0 (Overlay) [Overlay=0|Primary=1|Cursor=2] (immutable)
SRC_X (9) = 0 [0 - 4294967295]
SRC_Y (10) = 0 [0 - 4294967295]
SRC_W (11) = 251658240 [0 - 4294967295]
SRC_H (12) = 141557760 [0 - 4294967295]
CRTC_X (13) = 0 [-2147483648 - 2147483647]
CRTC_Y (14) = 0 [-2147483648 - 2147483647]
CRTC_W (15) = 3840 [0 - 2147483647]
CRTC_H (16) = 2160 [0 - 2147483647]
FB_ID (17) = object id 684
IN_FENCE_FD (18) = -1 [-1 - 2147483647]
CRTC_ID (20) = object id 93
IN_FORMATS (30) = blob-id 107 len 288 (immutable)
alpha (108) = 65535 [0 - 65535]
pixel blend mode (109) = 2 (None) [Pre-multiplied=0|Coverage=1|None=2]
rotation (110) = 0x1 (rotate-0) [rotate-0=0x1|rotate-180=0x4|reflect-x=0x10|reflect-y=0x20]
COLOR_ENCODING (111) = 1 (ITU-R BT.709 YCbCr) [ITU-R BT.601 YCbCr=0|ITU-R BT.709 YCbCr=1|ITU-R BT.2020 YCbCr=2]
COLOR_RANGE (112) = 0 (YCbCr limited range) [YCbCr limited range=0|YCbCr full range=1]
SCALING_FILTER (113) = 0 (Default) [Default=0|Nearest Neighbor=1]
CHROMA_SITING_H (114) = 0 [0 - 65536]
CHROMA_SITING_V (115) = 32768 [0 - 65536]
zpos (116) = 1 [1 - 17]
FB 684 3840x2160 P030
Connector 1 (42) HDMI-A-2 (disconnected)
EDID (1) = blob-id 0 (immutable)
DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]
TILE (4) = blob-id 0 (immutable)
link-status (5) = 0 (Good) [Good=0|Bad=1]
non-desktop (6) = 0 [0 - 1] (immutable)
HDR_OUTPUT_METADATA (7) = blob-id 0
CRTC_ID (20) = object id 0
left margin (33) = 0 [0 - 100]
right margin (34) = 0 [0 - 100]
top margin (35) = 0 [0 - 100]
bottom margin (36) = 0 [0 - 100]
Colorspace (43) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]
max bpc (44) = 8 [8 - 12]
Broadcast RGB (45) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]
Output format (46) = 0 (Automatic) [Automatic=0|RGB=1|YCbCr 4:2:2=2|YCbCr 4:4:4=3]
Encoder 1 (41) TMDS
Code: Select all
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 6.6.62+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024年11月25日) aarch64 GNU/Linux
pi@raspberrypi:~ $ vcgencmd bootloader_config
[all]
BOOT_UART=1
BOOT_ORDER=0xf461
NET_INSTALL_AT_POWER_ON=1
SDRAM_BANKLOW=1
pi@raspberrypi:~ $ vcgencmd bootloader_version
2024年12月15日 00:16:50
version 461827f22e6ab42230e3a5a1735ee2092cdcbb72 (release)
timestamp 1734221810
update-time 1734609344
capabilities 0x0000007f
pi@raspberrypi:~ $ cat /proc/cmdline
reboot=w coherent_pool=1M 8250.nr_uarts=1 pci=pcie_bus_safe cgroup_disable=memory numa_policy=interleave numa=fake=8 system_heap.max_order=0 smsc95xx.macaddr=D8:3A:DD:A5:9D:A7 vc_mem.mem_base=0x3fc00000 vc_mem.mem_size=0x40000000 console=ttyAMA10,115200 console=tty1 root=PARTUUID=f1fa33b0-02 rootfstype=ext4 fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=DE
pi@raspberrypi:~ $ numactl -H
available: 8 nodes (0-7)
node 0 cpus: 0 1 2 3
node 0 size: 989 MB
node 0 free: 711 MB
node 1 cpus:
node 1 size: 1019 MB
node 1 free: 899 MB
node 2 cpus:
node 2 size: 1019 MB
node 2 free: 898 MB
node 3 cpus:
node 3 size: 955 MB
node 3 free: 821 MB
node 4 cpus:
node 4 size: 1019 MB
node 4 free: 886 MB
node 5 cpus:
node 5 size: 1019 MB
node 5 free: 899 MB
node 6 cpus:
node 6 size: 1019 MB
node 6 free: 898 MB
node 7 cpus:
node 7 size: 1014 MB
node 7 free: 887 MB
node distances:
node 0 1 2 3 4 5 6 7
0: 10 20 20 20 20 20 20 20
1: 20 10 20 20 20 20 20 20
2: 20 20 10 20 20 20 20 20
3: 20 20 20 10 20 20 20 20
4: 20 20 20 20 10 20 20 20
5: 20 20 20 20 20 10 20 20
6: 20 20 20 20 20 20 10 20
7: 20 20 20 20 20 20 20 10
pi@raspberrypi:~ $ cat /proc/cpuinfo |grep Rev
Revision : d04170
Model : Raspberry Pi 5 Model B Rev 1.0
I also tried to restrict its 8GB memory to just 2GB similar to the 2GB Pi5 I have using the following in cmdline.txt:
Code: Select all
mem=2048M numa_policy=interleave numa=fake=4 system_heap.max_order=0
Code: Select all
$ numactl -H
available: 4 nodes (0-3)
node 0 cpus: 0 1 2 3
node 0 size: 489 MB
node 0 free: 317 MB
node 1 cpus:
node 1 size: 503 MB
node 1 free: 390 MB
node 2 cpus:
node 2 size: 511 MB
node 2 free: 399 MB
node 3 cpus:
node 3 size: 510 MB
node 3 free: 381 MB
node distances:
node 0 1 2 3
0: 10 20 20 20
1: 20 10 20 20
2: 20 20 10 20
3: 20 20 20 10
info-beamer hosted - A user and programmer friendly digital signage platform for the Pi: https://info-beamer.com/hosted
Jump to
- Community
- General discussion
- Announcements
- Other languages
- Deutsch
- Español
- Français
- Italiano
- Nederlands
- 日本語
- Polski
- Português
- Русский
- Türkçe
- User groups and events
- Raspberry Pi Official Magazine
- Using the Raspberry Pi
- Beginners
- Troubleshooting
- Advanced users
- Assistive technology and accessibility
- Education
- Picademy
- Teaching and learning resources
- Staffroom, classroom and projects
- Astro Pi
- Mathematica
- High Altitude Balloon
- Weather station
- Programming
- C/C++
- Java
- Python
- Scratch
- Other programming languages
- Windows 10 for IoT
- Wolfram Language
- Bare metal, Assembly language
- Graphics programming
- OpenGLES
- OpenVG
- OpenMAX
- General programming discussion
- Projects
- Networking and servers
- Automation, sensing and robotics
- Graphics, sound and multimedia
- Other projects
- Media centres
- Gaming
- AIY Projects
- Hardware and peripherals
- Camera board
- Compute Module
- Official Display
- HATs and other add-ons
- Device Tree
- Interfacing (DSI, CSI, I2C, etc.)
- Keyboard computers (400, 500, 500+)
- Raspberry Pi Pico
- General
- SDK
- MicroPython
- Other RP2040 boards
- Zephyr
- Rust
- AI Accelerator
- AI Camera - IMX500
- Hailo
- Software
- Raspberry Pi OS
- Raspberry Pi Connect
- Raspberry Pi Desktop for PC and Mac
- Beta testing
- Other
- Android
- Debian
- FreeBSD
- Gentoo
- Linux Kernel
- NetBSD
- openSUSE
- Plan 9
- Puppy
- Arch
- Pidora / Fedora
- RISCOS
- Ubuntu
- Ye Olde Pi Shoppe
- For sale
- Wanted
- Off topic
- Off topic discussion