-
-
Notifications
You must be signed in to change notification settings - Fork 28
Open
Labels
Description
Basic information
- Board URL (official): https://frame.work/laptop13
- Board purchased from: Provided for testing by Framework
- Board purchase date: November 5, 2025
- Board specs (as tested): Ryzen AI 5 340 (6-core/12-thread) / 16 GB RAM / 2.2K display / No Storage
- Board price (as tested): $979
Linux/system information
# output of `screenfetch`
./+o+- jgeerling@framework-13
yyyyy- -yyyyyy+ OS: Ubuntu 25.04 plucky
://+//////-yyyyyyo Kernel: x86_64 Linux 6.14.0-35-generic
.++ .:/++++++/-.+sss/` Uptime: 7m
.:++o: /++++++++/:--:/- Packages: 1680
o:+o+:++.`..```.-/oo+++++/ Shell: dash
.:+o:+o/. `+sssoo+/ Disk: 12G / 1.9T (1%)
.++/+:+oo+o:` /sssooo. CPU: AMD Ryzen AI 5 340 w/ Radeon 840M @ 12x 4.9GHz
/+++//+:`oo+o /::--:. GPU:
\+/+o+++`o++o ++////. RAM: 1652MiB / 14760MiB
.++.o+++oo+:` /dddhhh.
.+.o+oo:. `oddhhhh+
\+.++o+o``-````.:ohdhhhhh+
`:o+++ `ohhhhhhhhyo++os:
.o:`.syhhhhhhh/.oo++o`
/osyyyyyyo++ooo+++/
````` +oo+++o\:
`oo++.
# output of `uname -a`
Linux framework-13 6.14.0-35-generic #35-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 11 10:06:31 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Benchmark results
CPU
- Geekbench 6: (2845 single / 10695 multi - https://browser.geekbench.com/v6/cpu/14996812)
- 88.787 Gflops at 41.6W for 2.13 Gflops/W (geerlingguy/top500-benchmark HPL result)
Power
- Idle power draw (at wall): 2.7 W (5W with screen on at 50% brightness)
- Maximum simulated power draw (
stress-ng --matrix 0): 46.7 W - During Geekbench multicore benchmark: 48 W
- During
top500HPL benchmark: 41.6 W
Disk
KXG80ZNV2T04 KIOXIA
| Benchmark | Result |
|---|---|
| iozone 4K random read | 71.25 MB/s |
| iozone 4K random write | 343.17 MB/s |
| iozone 1M random read | 4065.44 MB/s |
| iozone 1M random write | 4676.18 MB/s |
| iozone 1M sequential read | 4593.00 MB/s |
| iozone 1M sequential write | 5209.89 MB/s |
Network
iperf3 results:
Intel Corporation Wi-Fi 6 AX200
iperf3 -c $SERVER_IP: 6.40 Mbpsiperf3 -c $SERVER_IP --reverse: 114 Mbpsiperf3 -c $SERVER_IP --bidir: 5.14 Mbps up, 13.8 Mbps down
(Not sure why speeds were so low. I may need to pull the antennas out and see if there's an issue there, maybe swapping in an external antenna.)
GPU
glmark2
glmark2-es2 / glmark2-es2-wayland results:
=======================================================
glmark2 2023.01
=======================================================
OpenGL Information
GL_VENDOR: AMD
GL_RENDERER: AMD Radeon Graphics (radeonsi, gfx1152, LLVM 20.1.2, DRM 3.61, 6.14.0-35-generic)
GL_VERSION: OpenGL ES 3.2 Mesa 25.0.7-0ubuntu0.25.04.2
Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=24 stencil=0 samples=0
Surface Size: 800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 18606 FrameTime: 0.054 ms
[build] use-vbo=true: FPS: 29730 FrameTime: 0.034 ms
[texture] texture-filter=nearest: FPS: 22656 FrameTime: 0.044 ms
[texture] texture-filter=linear: FPS: 22592 FrameTime: 0.044 ms
[texture] texture-filter=mipmap: FPS: 23297 FrameTime: 0.043 ms
[shading] shading=gouraud: FPS: 23555 FrameTime: 0.042 ms
[shading] shading=blinn-phong-inf: FPS: 21084 FrameTime: 0.047 ms
[shading] shading=phong: FPS: 16872 FrameTime: 0.059 ms
[shading] shading=cel: FPS: 15514 FrameTime: 0.064 ms
[bump] bump-render=high-poly: FPS: 13117 FrameTime: 0.076 ms
[bump] bump-render=normals: FPS: 25773 FrameTime: 0.039 ms
[bump] bump-render=height: FPS: 22780 FrameTime: 0.044 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 12020 FrameTime: 0.083 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 8243 FrameTime: 0.121 ms
[pulsar] light=false:quads=5:texture=false: FPS: 17688 FrameTime: 0.057 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 6112 FrameTime: 0.164 ms
[desktop] effect=shadow:windows=4: FPS: 8572 FrameTime: 0.117 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 2441 FrameTime: 0.410 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 4313 FrameTime: 0.232 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 2632 FrameTime: 0.380 ms
[ideas] speed=duration: FPS: 12130 FrameTime: 0.082 ms
[jellyfish] <default>: FPS: 11614 FrameTime: 0.086 ms
[terrain] <default>: FPS: 944 FrameTime: 1.060 ms
[shadow] <default>: FPS: 12543 FrameTime: 0.080 ms
[refract] <default>: FPS: 1464 FrameTime: 0.683 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 22047 FrameTime: 0.045 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 18565 FrameTime: 0.054 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 21956 FrameTime: 0.046 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 21136 FrameTime: 0.047 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 18739 FrameTime: 0.053 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 19952 FrameTime: 0.050 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 21601 FrameTime: 0.046 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 21644 FrameTime: 0.046 ms
=======================================================
glmark2 Score: 15815
=======================================================
vkmark
vkmark results:
=======================================================
vkmark 2025.01
=======================================================
Vendor ID: 0x1002
Device ID: 0x1114
Device Name: AMD Radeon Graphics (RADV GFX1152)
Driver Version: 104857607
Device UUID: 695bf57dbae8b103272568cd8e950eca
=======================================================
[vertex] device-local=true: FPS: 42875 FrameTime: 0.023 ms
[vertex] device-local=false: FPS: 39277 FrameTime: 0.025 ms
[texture] anisotropy=0: FPS: 25757 FrameTime: 0.039 ms
[texture] anisotropy=16: FPS: 25110 FrameTime: 0.040 ms
[shading] shading=gouraud: FPS: 24568 FrameTime: 0.041 ms
[shading] shading=blinn-phong-inf: FPS: 22000 FrameTime: 0.045 ms
[shading] shading=phong: FPS: 20788 FrameTime: 0.048 ms
[shading] shading=cel: FPS: 19903 FrameTime: 0.050 ms
[effect2d] kernel=edge: FPS: 19822 FrameTime: 0.050 ms
[effect2d] kernel=blur: FPS: 9088 FrameTime: 0.110 ms
[desktop] <default>: FPS: 9847 FrameTime: 0.102 ms
[cube] <default>: FPS: 31843 FrameTime: 0.031 ms
[clear] <default>: FPS: 26462 FrameTime: 0.038 ms
=======================================================
vkmark Score: 24410
=======================================================
Note:
vkmarkneeds to be compiled from source on Debian 12 and earlier.
GravityMark
GravityMark results: https://gravitymark.tellusim.com/report/?id=ff141d63a99826c825c259741f32ddc0b90599fd
AI / LLM Inference
Basic ollama LLM model inference results: geerlingguy/ai-benchmarks#33
| System | CPU/GPU | Model | Eval Rate | Power (Peak) |
|---|---|---|---|---|
| Framework 13 (Ryzen AI 5 340) | CPU | llama3.2:3b | 23.81 Tokens/s | 51.1 W |
| Framework 13 (Ryzen AI 5 340) | CPU | llama3.1:8b | 10.46 Tokens/s | 51.7 W |
| Framework 13 (Ryzen AI 5 340) | CPU | deepseek-r1:14b | 5.83 Tokens/s | 50.4 W |
Memory
tinymembench results:
Click to expand memory benchmark result
tinymembench v0.4.10 (simple benchmark for memory throughput and latency)
==========================================================================
== Memory bandwidth tests ==
== ==
== Note 1: 1MB = 1000000 bytes ==
== Note 2: Results for 'copy' tests show how many bytes can be ==
== copied per second (adding together read and writen ==
== bytes would have provided twice higher numbers) ==
== Note 3: 2-pass copy means that we are using a small temporary buffer ==
== to first fetch data into it, and only then write it to the ==
== destination (source -> L1 cache, L1 cache -> destination) ==
== Note 4: If sample standard deviation exceeds 0.1%, it is shown in ==
== brackets ==
==========================================================================
C copy backwards : 19828.3 MB/s (0.6%)
C copy backwards (32 byte blocks) : 19836.1 MB/s
C copy backwards (64 byte blocks) : 19826.2 MB/s
C copy : 20017.6 MB/s
C copy prefetched (32 bytes step) : 22003.1 MB/s
C copy prefetched (64 bytes step) : 21885.2 MB/s
C 2-pass copy : 19881.1 MB/s (0.1%)
C 2-pass copy prefetched (32 bytes step) : 19780.0 MB/s
C 2-pass copy prefetched (64 bytes step) : 21066.9 MB/s (2.5%)
C fill : 34035.5 MB/s
C fill (shuffle within 16 byte blocks) : 34088.3 MB/s (0.2%)
C fill (shuffle within 32 byte blocks) : 33982.5 MB/s
C fill (shuffle within 64 byte blocks) : 34060.1 MB/s
---
standard memcpy : 26617.6 MB/s
standard memset : 36943.0 MB/s
---
MOVSB copy : 33799.5 MB/s (0.2%)
MOVSD copy : 33620.1 MB/s (1.0%)
SSE2 copy : 20418.6 MB/s
SSE2 nontemporal copy : 33373.0 MB/s
SSE2 copy prefetched (32 bytes step) : 22531.8 MB/s (0.1%)
SSE2 copy prefetched (64 bytes step) : 22516.4 MB/s
SSE2 nontemporal copy prefetched (32 bytes step) : 33708.7 MB/s
SSE2 nontemporal copy prefetched (64 bytes step) : 33481.8 MB/s
SSE2 2-pass copy : 20035.3 MB/s
SSE2 2-pass copy prefetched (32 bytes step) : 21118.4 MB/s (1.0%)
SSE2 2-pass copy prefetched (64 bytes step) : 21184.2 MB/s
SSE2 2-pass nontemporal copy : 6698.9 MB/s
SSE2 fill : 36075.0 MB/s
SSE2 nontemporal fill : 62525.8 MB/s
==========================================================================
== Memory latency test ==
== ==
== Average time is measured for random memory accesses in the buffers ==
== of different sizes. The larger is the buffer, the more significant ==
== are relative contributions of TLB, L1/L2 cache misses and SDRAM ==
== accesses. For extremely large buffer sizes we are expecting to see ==
== page table walk with several requests to SDRAM for almost every ==
== memory access (though 64MiB is not nearly large enough to experience ==
== this effect to its fullest). ==
== ==
== Note 1: All the numbers are representing extra time, which needs to ==
== be added to L1 cache latency. The cycle timings for L1 cache ==
== latency can be usually found in the processor documentation. ==
== Note 2: Dual random read means that we are simultaneously performing ==
== two independent memory accesses at a time. In the case if ==
== the memory subsystem can't handle multiple outstanding ==
== requests, dual random read has the same timings as two ==
== single reads performed one after another. ==
==========================================================================
block size : single random read / dual random read, [MADV_NOHUGEPAGE]
1024 : 0.0 ns / 0.0 ns
2048 : 0.0 ns / 0.0 ns
4096 : 0.0 ns / 0.0 ns
8192 : 0.0 ns / 0.0 ns
16384 : 0.0 ns / 0.0 ns
32768 : 0.0 ns / 0.0 ns
65536 : 0.5 ns / 0.9 ns
131072 : 1.3 ns / 1.7 ns
262144 : 1.7 ns / 2.0 ns
524288 : 2.3 ns / 2.6 ns
1048576 : 3.0 ns / 3.4 ns
2097152 : 7.0 ns / 9.1 ns
4194304 : 9.0 ns / 10.9 ns
8388608 : 10.0 ns / 11.4 ns
16777216 : 18.7 ns / 24.7 ns
33554432 : 59.9 ns / 83.5 ns
67108864 : 86.9 ns / 105.2 ns
block size : single random read / dual random read, [MADV_HUGEPAGE]
1024 : 0.0 ns / 0.0 ns
2048 : 0.0 ns / 0.0 ns
4096 : 0.0 ns / 0.0 ns
8192 : 0.0 ns / 0.0 ns
16384 : 0.0 ns / 0.0 ns
32768 : 0.0 ns / 0.0 ns
65536 : 0.5 ns / 0.9 ns
131072 : 1.3 ns / 1.7 ns
262144 : 1.7 ns / 2.0 ns
524288 : 1.9 ns / 2.0 ns
1048576 : 2.3 ns / 2.2 ns
2097152 : 5.8 ns / 7.9 ns
4194304 : 8.0 ns / 9.5 ns
8388608 : 8.2 ns / 9.4 ns
16777216 : 9.7 ns / 11.3 ns
33554432 : 53.9 ns / 77.5 ns
67108864 : 78.0 ns / 96.4 ns
Core to Core Memory Latency
Phoronix Test Suite
Results from pi-general-benchmark.sh:
- pts/encode-mp3: 4.909 sec
- pts/x264 1080p: 118.38 fps
- pts/x264 4K: 26.20 fps
- pts/phpbench: 1371865
- pts/build-linux-kernel (defconfig): 145.648 sec
Reactions are currently unavailable

