Fox Red Labs / Measured
Measured
One bench, one person, medians of three runs.
Every number has a method, a date and a CSV row. Your numbers will differ.
21 boards measured on one set of tests, side by side.
How the boards compare
The three tests that separate them most. Sort by any column; click a board, or pick it here, to follow it through every chart below.
| CoreMark per MHz, higher is better | ns, lower is better | µs, lower is better, log bars | |
|---|---|---|---|
| CC35X1Cortex-M33 | 4.49 | not run | not run |
| LP-EM-CC2755P10Cortex-M33 | 4.44 | 219 ns | 10.5 µs |
| LP-AM13E230Cortex-M33 | 4.36 | not run | 1.33 µs |
| LP-CC1354P10-1Cortex-M33 | 4.17 | 479 ns | 21.4 µs |
| LP-AM263PCortex-R5F | 3.74 | 488 ns | not run |
| LP-MSPM33C321ACortex-M33 | 3.40 | 200 ns | 5.03 µs |
| FRDM-MCXA153 (NXP)Cortex-M33 · NXP | 2.94 | 177 ns | not run |
| Raspberry Pi Pico 2 HCortex-M33 · Raspberry Pi | 2.92 | 173 ns | not run |
| ESP32-C6-DevKitC-1-N8 (Espressif)RISC-V · Espressif | 2.73 | 1069 ns | not run |
| LP-MSPM0L1306Cortex-M0+ | 2.45 | 781 ns | 448 µs |
| LP-EM-CC2340R5Cortex-M0+ | 2.31 | 583 ns | 337 µs |
| LP-MSPM0G3507Cortex-M0+ | 2.30 | 362 ns | 88.5 µs |
| LP-MSPM0G5187Cortex-M0+ | 2.29 | 450 ns | 181 µs |
| LP-MSPM0G3519Cortex-M0+ | 2.28 | 388 ns | 89.3 µs |
| NUCLEO-U083RC (ST)Cortex-M0+ · ST | 1.96 | 458 ns | 299 µs |
| LAUNCHXL-F2800137C28x | 1.18 | 250 ns | 2.58 µs |
| LAUNCHXL-F28P65XC28x | 1.06 | 150 ns | not run |
| LP-MSPM0C1104Cortex-M0+ | not run | 958 ns | not run |
Bars scale to the best board in each column (control loop on a log scale, as in its chart). Boards with none of these three results are left out. Outlined bars are other vendors' boards; a muted value is an unofficial build, not ranked. Hover a value for the clock and build; each chart below has the rows behind it.
Two things to know before you start. At -O3, where GCC is built with -funroll-loops, TI Arm Clang scores 26% higher than GCC on the MSPM0 G3507. In float code, each chip on its own math unit, the LAUNCHXL-F2800137 runs the control loop 34 times faster than the MSPM0 G3507.
CoreMark per MHz. At -O3, TI Arm Clang scores 26% higher than GCC with loop unrolling. At -O2 the order flips: GCC is 15% ahead. Adding Zephyr costs GCC 7% at -O2.
Control loop, C2000 against MSPM0ADC trigger to new PWM value in float code, each chip on its own math unit. The C2000 took about 1/34 of the time.
CPU speed
CoreMark per MHz by board
The Cortex-M33 boards score about 1.7 times the Cortex-M0+ boards per clock.
CoreMark per MHz: how much general code a core gets done each clock tick. The same source runs on every board at the clock shown in its hover, the board's top clock unless the chart note says otherwise. TI's compiler builds the TI boards and GCC the others, with no OS unless marked.
Hover a score for the core, clock and build. GCC built FRDM-MCXA153 (NXP), Raspberry Pi Pico 2 H, ESP32-C6-DevKitC-1-N8 (Espressif), NUCLEO-U083RC (ST); TI's compilers built the rest. The C28x build has three source changes for its 16-bit byte, so its score is shown for scale only. Each board ran at the clock in its hover; NUCLEO-U083RC ran at 48 MHz, its maximum is 56 MHz.
All rows
CoreMark iter/s, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | IWRL6432BOOST | LP-AM263P | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| armgnu14-bare-o2 | 267.596 MHz | ||||||||||||||||||||
| armgnu14-bare-o3 | 275.396 MHz | ||||||||||||||||||||
| armgnu14-bare-o3-48mhz | 137.648 MHz, 1 run | ||||||||||||||||||||
| armgnu14-bare-os | 219.396 MHz | ||||||||||||||||||||
| c28patch-ti-c2000-o2-flash | 97.1120 MHz, 1 run | ||||||||||||||||||||
| c28patch-ti-c2000-o2-ram | 114.1120 MHz, 1 run | ||||||||||||||||||||
| c28patch-ti-c2000-o4-flash | 107.3120 MHz, 1 run | ||||||||||||||||||||
| c28patch-ti-c2000-o4-ram | 124.4120 MHz, 1 run | ||||||||||||||||||||
| c28patch-ti-c2000-o4s0-flash | 106.5120 MHz, 1 run | ||||||||||||||||||||
| c28patch-ti-c2000-o4s0-ram | 123.4120 MHz, 1 run | ||||||||||||||||||||
| c28patch-ti-c2000-o4s5-flash | 141120 MHz, 1 run | 211.8200 MHz, 1 run | |||||||||||||||||||
| c28patch-ti-c2000-o4s5-ram | 155.3120 MHz, 1 run | 258.9200 MHz, 1 run | |||||||||||||||||||
| gcc-bare-o2 | 140.580 MHz, 1 run | 263.596 MHz | |||||||||||||||||||
| gcc-bare-o2-48mhz | 92.148 MHz | ||||||||||||||||||||
| gcc-bare-o2-m33 | 419.9150 MHz | ||||||||||||||||||||
| gcc-bare-o2-m33-gcc12 | 407.9150 MHz | ||||||||||||||||||||
| gcc-bare-o2-riscv | 503.1150 MHz | 443.8160 MHz | |||||||||||||||||||
| gcc-bare-o3 | 54.632 MHz | 282.296 MHz | |||||||||||||||||||
| gcc-bare-o3-48mhz | 141.248 MHz | ||||||||||||||||||||
| gcc-bare-o3-m33 | 434.1150 MHz | ||||||||||||||||||||
| gcc-bare-o3-m33-gcc12 | 437.6150 MHz | ||||||||||||||||||||
| gcc-bare-o3-m33-gcc12-ram | 437.6150 MHz | ||||||||||||||||||||
| gcc-bare-o3-m33-ram | 434.1150 MHz | ||||||||||||||||||||
| gcc-bare-o3-riscv | 495.2150 MHz | 436.9160 MHz | |||||||||||||||||||
| gcc-bare-o3-riscv-ram | 493.8150 MHz | ||||||||||||||||||||
| gcc-bare-o3-unroll | 145.480 MHz, 1 run | ||||||||||||||||||||
| gcc-bare-o3-unroll-48mhz | 97.348 MHz | ||||||||||||||||||||
| gcc-bare-o3-unroll-reset | 8.224 MHz | ||||||||||||||||||||
| gcc-bare-o3unroll | 58.632 MHz | ||||||||||||||||||||
| gcc-bare-o3x-m33 | 511.6150 MHz | ||||||||||||||||||||
| gcc-bare-o3x-riscv | 585.8150 MHz | ||||||||||||||||||||
| gcc-bare-os | 99.680 MHz, 1 run | 233.696 MHz | |||||||||||||||||||
| gcc-bare-os-48mhz | 71.548 MHz | ||||||||||||||||||||
| gcc-bare-os-m33 | 339.3150 MHz | ||||||||||||||||||||
| gcc-bare-os-m33-gcc12 | 364.7150 MHz | ||||||||||||||||||||
| gcc-bare-os-riscv | 379.9150 MHz | 341.2160 MHz | |||||||||||||||||||
| gcc-linux-o2-1t | 10,441 to 10,4622000 MHz | ||||||||||||||||||||
| gcc-linux-o2-1t-oursrc | 10,466.3 to 10,467.42000 MHz | ||||||||||||||||||||
| gcc-linux-o2-mcpu-1t | 10,450.4 to 10,471.22000 MHz | ||||||||||||||||||||
| gcc-linux-o3-1t | 9,834.6 to 9,839.9 | ||||||||||||||||||||
| gcc-linux-o3-2t | 19,579.9 to 19,583.4 | ||||||||||||||||||||
| gcc-linux-o3-mcpu-1t | 10,333.8 to 10,338.12000 MHz | ||||||||||||||||||||
| gcc-linux-o3-mcpu-unroll-1t | 10,781.7 to 10,783.42000 MHz | ||||||||||||||||||||
| gcc-vendor-o3 | 451.1160 MHz | ||||||||||||||||||||
| gcc-zephyr-o2 | 130.280 MHz, 1 run | 53.732 MHz, 1 run | 12680 MHz, 1 run | 74.148 MHz, 1 run | 88.148 MHz, 1 run | 251.496 MHz, 1 run | |||||||||||||||
| gcc-zephyr-o2unroll | 139.980 MHz, 1 run | 59.732 MHz, 1 run | 135.380 MHz, 1 run | 84.148 MHz, 1 run | |||||||||||||||||
| gcc-zephyr-o3 | 136.780 MHz, 1 run | 56.732 MHz, 1 run | 130.280 MHz, 1 run | 79.548 MHz, 1 run | 92.248 MHz, 1 run | ||||||||||||||||
| gcc-zephyr-os | 9580 MHz, 1 run | 4232 MHz, 1 run | 9280 MHz, 1 run | 58.448 MHz, 1 run | 70.748 MHz, 1 run | 223.596 MHz, 1 run | |||||||||||||||
| gcc12.2-zephyr-core1-o2-ddr | 4,007 to 4,007.51250 MHz | ||||||||||||||||||||
| gcc14.2-static-o2-1t-kvm-guest-alpine | 3,926 to 4,0151250 MHz | ||||||||||||||||||||
| gcc14.2-static-o2-1t-kvm-host | 4,077 to 4,1531250 MHz | ||||||||||||||||||||
| gcc15.3-linux-o2-1t | 4,255.61250 MHz, 1 run | ||||||||||||||||||||
| gcc15.3-linux-o2-1t-recheck | 4,254.41250 MHz, 1 run | ||||||||||||||||||||
| gcc15.3-linux-o2-1t-zephyr-running | 3,895.61250 MHz, 1 run | ||||||||||||||||||||
| gcc15.3-linux-o2-2t | 8,428.21250 MHz, 1 run | ||||||||||||||||||||
| r5f-ticlang-nortos | |||||||||||||||||||||
| starmclang-bare-o3-48mhz | 87.948 MHz | ||||||||||||||||||||
| starmclang-bare-omax-48mhz | 115.148 MHz | ||||||||||||||||||||
| stgcc14-bare-o3-48mhz | 93.948 MHz | ||||||||||||||||||||
| stgcc14-bare-o3-unroll-48mhz | 98.848 MHz | ||||||||||||||||||||
| ti-port-o2 | 612.5200 MHz | ||||||||||||||||||||
| ti-port-o3 | 871.6200 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram | 1,464.5400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-60k-beside-loop-core1 | 1,463400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-60k-beside-loop-core2 | 1,460.2400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-60k-beside-loop-core3 | 1,461.4400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-60k-cores1to3-alone-core1 | 1,463400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-60k-cores1to3-alone-core2 | 1,460.2400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-60k-cores1to3-alone-core3 | 1,461.4400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-all4-core0 | 1,462.1400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-all4-core1 | 1,464.1400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-all4-core2 | 1,463.7400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-all4-core3 | 1,464.1400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-all4-sum | 5,854400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-core0-alone-freertos | 1,463.3 to 1,463.4400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-core1-alone | 1,464.1400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-core2-alone | 1,463.7 to 1,463.8400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-core3-alone | 1,463.5400 MHz | ||||||||||||||||||||
| ti-port-o3-ocsram-lockstep | 1,464.5400 MHz | ||||||||||||||||||||
| ti-port-o3-xip | 1,394.5 to 1,394.6400 MHz | ||||||||||||||||||||
| ti-port-o3-xip-l2-64k | 1,464.5400 MHz | ||||||||||||||||||||
| ti-port-os | 476.7200 MHz | ||||||||||||||||||||
| ti-port-oz | 438.3200 MHz | ||||||||||||||||||||
| ticlang-bare-o2 | 122.680 MHz, 1 run | 54.332 MHz, 1 run | 122.780 MHz | 122.680 MHz | 376.9160 MHz | 612.7200 MHz | |||||||||||||||
| ticlang-bare-o2-32mhz | 54.832 MHz | 54.832 MHz | 96.932 MHz | ||||||||||||||||||
| ticlang-bare-o2-ocsram | 1,026400 MHz | ||||||||||||||||||||
| ticlang-bare-o2-tcm | 1,039.8400 MHz | ||||||||||||||||||||
| ticlang-bare-o3 | 183.680 MHz | 78.332 MHz, 1 run | Not for this chip 4,330 short | 182.780 MHz | 182.880 MHz | 111.148 MHz, 1 run | 199.948 MHz | 544160 MHz | 872.4200 MHz | 426.396 MHz | |||||||||||
| ticlang-bare-o3-100mhz | 442.3100 MHz, 1 run | ||||||||||||||||||||
| ticlang-bare-o3-32mhz | 78.832 MHz, 1 run | 78.832 MHz | 78.832 MHz | 140.332 MHz | |||||||||||||||||
| ticlang-bare-o3-4mhz | 10.54 MHz, 1 run | ||||||||||||||||||||
| ticlang-bare-o3-50mhz | 221.150 MHz, 1 run | ||||||||||||||||||||
| ticlang-bare-o3-ocsram | 1,464.2400 MHz | ||||||||||||||||||||
| ticlang-bare-o3-tcm | 1,497.8400 MHz | ||||||||||||||||||||
| ticlang-bare-o3-tcm-core1-alone | |||||||||||||||||||||
| ticlang-bare-o3-tcm-core2-alone | |||||||||||||||||||||
| ticlang-bare-o3-tcm-core3-alone | |||||||||||||||||||||
| ticlang-bare-o3-tcm-lockstep | |||||||||||||||||||||
| ticlang-bare-o3-xip | |||||||||||||||||||||
| ticlang-bare-o3-xip-sp | |||||||||||||||||||||
| ticlang-bare-os | 114.580 MHz, 1 run | 47.432 MHz, 1 run | 112.980 MHz | 11080 MHz | 323.9160 MHz | 477.1200 MHz | |||||||||||||||
| ticlang-bare-os-32mhz | 49.432 MHz | 49.532 MHz | 76.432 MHz | ||||||||||||||||||
| ticlang-bare-os-400b | Not for this chip | ||||||||||||||||||||
| ticlang-bare-os-ocsram | 877.5400 MHz | ||||||||||||||||||||
| ticlang-bare-os-tcm | 870.4400 MHz | ||||||||||||||||||||
| ticlang-bare-oz | 102.280 MHz, 1 run | 41.632 MHz, 1 run | 100.880 MHz | 98.580 MHz | 57.548 MHz, 1 run | 94.748 MHz | 285.2160 MHz | 438.1200 MHz | 21196 MHz | ||||||||||||
| ticlang-bare-oz-32mhz | 44.232 MHz | 44.332 MHz | 69.232 MHz | ||||||||||||||||||
| ticlang-bare-oz-4mhz | 5.984 MHz, 1 run | ||||||||||||||||||||
| ticlang-bare-oz-ocsram | 850400 MHz | ||||||||||||||||||||
| ticlang-bare-oz-tcm | 854.2400 MHz | ||||||||||||||||||||
| ticlang-freertos-o3 | 718.9160 MHz | ||||||||||||||||||||
| ticlang-freertos-oz | 354.1160 MHz | ||||||||||||||||||||
| unmodified-ticlang-c2000-o4 | Not for this chip |
Sources
am13e230/bench/coremark/main.c, am13e230/bench/coremark/ti_printf.c, am13e230/tools/build_lowclk.sh, am62l-evm/README.md, cc1354p10/baremetal/README.md, cc2340r5/baremetal/README.md, mspm0l1306/zephyr/README.md
CoreMark per MHz iter/s/MHz, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| armgnu14-bare-o2 | 2.7996 MHz | ||||||||||||||||||
| armgnu14-bare-o3 | 2.8796 MHz | ||||||||||||||||||
| armgnu14-bare-o3-48mhz | 2.8748 MHz, 1 run | ||||||||||||||||||
| armgnu14-bare-os | 2.2896 MHz | ||||||||||||||||||
| c28patch-ti-c2000-o2-flash | 0.809120 MHz, 1 run | ||||||||||||||||||
| c28patch-ti-c2000-o2-ram | 0.951120 MHz, 1 run | ||||||||||||||||||
| c28patch-ti-c2000-o4-flash | 0.894120 MHz, 1 run | ||||||||||||||||||
| c28patch-ti-c2000-o4-ram | 1.04120 MHz, 1 run | ||||||||||||||||||
| c28patch-ti-c2000-o4s0-flash | 0.888120 MHz, 1 run | ||||||||||||||||||
| c28patch-ti-c2000-o4s0-ram | 1.03120 MHz, 1 run | ||||||||||||||||||
| c28patch-ti-c2000-o4s5-flash | 1.18120 MHz, 1 run | 1.06200 MHz, 1 run | |||||||||||||||||
| c28patch-ti-c2000-o4s5-ram | 1.29120 MHz, 1 run | 1.29200 MHz, 1 run | |||||||||||||||||
| gcc-bare-o2 | 1.7680 MHz, 1 run | 2.7596 MHz | |||||||||||||||||
| gcc-bare-o2-48mhz | 1.9248 MHz | ||||||||||||||||||
| gcc-bare-o2-m33 | 2.8150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o2-m33-gcc12 | 2.72150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o2-riscv | 3.35150 MHz, 1 run | 2.77160 MHz | |||||||||||||||||
| gcc-bare-o3 | 1.7132 MHz | 2.9496 MHz | |||||||||||||||||
| gcc-bare-o3-48mhz | 2.9448 MHz | ||||||||||||||||||
| gcc-bare-o3-m33 | 2.89150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3-m33-gcc12 | 2.92150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3-m33-gcc12-ram | 2.92150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3-m33-ram | 2.89150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3-riscv | 3.3150 MHz, 1 run | 2.73160 MHz | |||||||||||||||||
| gcc-bare-o3-riscv-ram | 3.29150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3-unroll | 1.8280 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3-unroll-48mhz | 2.0348 MHz | ||||||||||||||||||
| gcc-bare-o3-unroll-reset | 2.054 MHz | ||||||||||||||||||
| gcc-bare-o3unroll | 1.8332 MHz | ||||||||||||||||||
| gcc-bare-o3x-m33 | 3.41150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3x-riscv | 3.91150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-os | 1.2480 MHz, 1 run | 2.4396 MHz | |||||||||||||||||
| gcc-bare-os-48mhz | 1.4948 MHz | ||||||||||||||||||
| gcc-bare-os-m33 | 2.26150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-os-m33-gcc12 | 2.43150 MHz, 1 run | ||||||||||||||||||
| gcc-bare-os-riscv | 2.53150 MHz, 1 run | 2.13160 MHz | |||||||||||||||||
| gcc-vendor-o3 | 2.82160 MHz | ||||||||||||||||||
| gcc-zephyr-o2 | 1.6380 MHz, 1 run | 1.6832 MHz, 1 run | 1.5780 MHz, 1 run | 1.5448 MHz, 1 run | 1.8448 MHz, 1 run | 2.6296 MHz, 1 run | |||||||||||||
| gcc-zephyr-o2unroll | 1.7580 MHz, 1 run | 1.8732 MHz, 1 run | 1.6980 MHz, 1 run | 1.7548 MHz, 1 run | |||||||||||||||
| gcc-zephyr-o3 | 1.7180 MHz, 1 run | 1.7732 MHz, 1 run | 1.6380 MHz, 1 run | 1.6648 MHz, 1 run | 1.9248 MHz, 1 run | ||||||||||||||
| gcc-zephyr-os | 1.1980 MHz, 1 run | 1.3132 MHz, 1 run | 1.1580 MHz, 1 run | 1.2248 MHz, 1 run | 1.4748 MHz, 1 run | 2.3396 MHz, 1 run | |||||||||||||
| gcc12.2-zephyr-core1-o2-ddr | 3.211250 MHz, 1 run | ||||||||||||||||||
| gcc15.3-linux-o2-1t | 3.41250 MHz, 1 run | ||||||||||||||||||
| starmclang-bare-o3-48mhz | 1.8348 MHz | ||||||||||||||||||
| starmclang-bare-omax-48mhz | 2.448 MHz | ||||||||||||||||||
| stgcc14-bare-o3-48mhz | 1.9648 MHz | ||||||||||||||||||
| stgcc14-bare-o3-unroll-48mhz | 2.0648 MHz | ||||||||||||||||||
| ti-port-o3-ocsram | 3.66400 MHz | ||||||||||||||||||
| ticlang-bare-o2 | 1.5380 MHz, 1 run | 1.732 MHz, 1 run | 1.5380 MHz | 1.5380 MHz | 2.36160 MHz | ||||||||||||||
| ticlang-bare-o2-32mhz | 1.7132 MHz | 1.7132 MHz | 3.0332 MHz | ||||||||||||||||
| ticlang-bare-o3 | 2.380 MHz | 2.4532 MHz, 1 run | Not for this chip | 2.2880 MHz | 2.2980 MHz | 2.3148 MHz, 1 run | 4.1748 MHz | 3.4160 MHz | 4.36200 MHz | 4.4496 MHz | |||||||||
| ticlang-bare-o3-100mhz | 4.42100 MHz, 1 run | ||||||||||||||||||
| ticlang-bare-o3-32mhz | 2.4632 MHz, 1 run | 2.4632 MHz | 2.4632 MHz | 4.3832 MHz | |||||||||||||||
| ticlang-bare-o3-4mhz | 2.634 MHz, 1 run | ||||||||||||||||||
| ticlang-bare-o3-ocsram | 3.66400 MHz | ||||||||||||||||||
| ticlang-bare-o3-tcm | 3.74400 MHz | ||||||||||||||||||
| ticlang-bare-os | 1.4380 MHz, 1 run | 1.4832 MHz, 1 run | 1.4180 MHz | 1.3880 MHz | 2.02160 MHz | ||||||||||||||
| ticlang-bare-os-32mhz | 1.5432 MHz | 1.5532 MHz | 2.3932 MHz | ||||||||||||||||
| ticlang-bare-oz | 1.2880 MHz, 1 run | 1.332 MHz, 1 run | 1.2680 MHz | 1.2380 MHz | 1.248 MHz, 1 run | 1.9748 MHz | 1.78160 MHz | 2.296 MHz | |||||||||||
| ticlang-bare-oz-32mhz | 1.3832 MHz | 1.3932 MHz | 2.1632 MHz | ||||||||||||||||
| ticlang-bare-oz-4mhz | 1.54 MHz, 1 run | ||||||||||||||||||
| ticlang-freertos-o3 | 4.49160 MHz | ||||||||||||||||||
| ticlang-freertos-oz | 2.21160 MHz |
Sources
am13e230/bench/coremark/main.c, am13e230/tools/build_lowclk.sh, am62l-evm/README.md, cc1354p10/baremetal/README.md, cc2340r5/baremetal/README.md, mspm0l1306/zephyr/README.md
Dhrystone 2.1 DMIPS/MHz, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| armgnu14-bare-o3 | 0.8496 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3 | 0.83596 MHz, 1 run | ||||||||||||||||||
| gcc-bare-o3-noinline-m33 | 1.32150 MHz | ||||||||||||||||||
| gcc-bare-o3-noinline-m33-gcc12 | 1.32150 MHz | ||||||||||||||||||
| gcc-bare-o3-noinline-riscv | 1.56150 MHz | ||||||||||||||||||
| gcc-linux-o2-noinline-mcpu | 4.61 to 4.622000 MHz | ||||||||||||||||||
| gcc-linux-o3-inline | 5.26 to 5.682000 MHz | ||||||||||||||||||
| gcc-linux-o3-noinline | 4.832000 MHz | ||||||||||||||||||
| gcc-linux-o3-noinline-mcpu | 4.682000 MHz | ||||||||||||||||||
| gcc-linux-os-noinline | 3.09 to 3.12000 MHz | ||||||||||||||||||
| gcc12-os | 0.47948 MHz | ||||||||||||||||||
| linux | |||||||||||||||||||
| ti-c2000-o3-inline-ram | 0.477120 MHz, 1 run | ||||||||||||||||||
| ti-c2000-o3-noinline-flash | 0.362120 MHz, 1 run | 0.279200 MHz, 1 run | |||||||||||||||||
| ti-c2000-o3-noinline-ram | 0.442120 MHz, 1 run | 0.444200 MHz, 1 run | |||||||||||||||||
| ti-example-o3 | 1.94400 MHz, 1 run | ||||||||||||||||||
| ticlang-bare-o3-inline | 0.86648 MHz | 1.4948 MHz | 1.08160 MHz | 1.34200 MHz, 1 run | 1.6296 MHz | 1.88400 MHz | |||||||||||||
| ticlang-bare-o3-noinline | 0.65280 MHz | 0.65180 MHz | 0.60248 MHz | 1.248 MHz | 0.876160 MHz | 1.05200 MHz, 1 run | 1.3296 MHz | 1.5400 MHz | |||||||||||
| ticlang-bare-o3-noinline-32mhz | 1.2232 MHz | ||||||||||||||||||
| ticlang-bare-os-noinline | 0.87160 MHz | 1200 MHz, 1 run | 1.45400 MHz | ||||||||||||||||
| ticlang-bare-os-noinline-32mhz | 1.2132 MHz | ||||||||||||||||||
| ticlang-bare-oz-noinline | 0.27548 MHz | 0.47848 MHz | 0.5696 MHz | ||||||||||||||||
| ticlang-freertos-o3-inline | 1.65160 MHz | ||||||||||||||||||
| ticlang-freertos-o3-noinline | 1.34160 MHz | ||||||||||||||||||
| ticlang-freertos-os-noinline | 1.32160 MHz | ||||||||||||||||||
| (one way) | 0.73132 MHz, 1 run | Not for this chip | 0.67248 MHz |
Sources
am62l-evm/README.md, cc35x1/dhrystone/build.sh
Embench programs that fit and pass of 19, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | SK-TDA4VM |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| gcc-linux-a72 | ||||||||||||||||
| gcc-o2-m33 | 19150 MHz | |||||||||||||||
| gcc-o2-riscv | 19150 MHz | |||||||||||||||
| gcc-os-m33 | 19150 MHz | |||||||||||||||
| gcc-os-riscv | 19150 MHz | |||||||||||||||
| ti-c2000-o2-flash | 15120 MHz, 1 run | |||||||||||||||
| ticlang-freertos-o2 | Not for this chip | |||||||||||||||
| ticlang-freertos-o2-retry | ||||||||||||||||
| ticlang-freertos-os | Not for this chip | |||||||||||||||
| ticlang-o2 | 724 MHz, 1 run | 1848 MHz | 1948 MHz | 19160 MHz | 19200 MHz | 1996 MHz, 1 run | ||||||||||
| ticlang-os | 624 MHz, 1 run | 1848 MHz | 1948 MHz | 19160 MHz | 19200 MHz | 1996 MHz, 1 run | ||||||||||
| (one way) | 1880 MHz, 1 run | 1332 MHz, 1 run | 924 MHz | 1880 MHz | 1880 MHz | 1948 MHz | 1996 MHz, 1 run |
Sources
am13e230/data/logs/tb/, mspm0l1306/third-party/README.md
Reaction time
Interrupt latency, in time
Best case, every board here reaches its handler in under 1 µs except the ESP32-C6-DevKitC-1-N8 (Espressif).
Time from a pin or timer signal to the first line of your handler, no OS. Cycle counts flatter slow clocks, so the bars show time, calculated from measured cycles and the clock.
Times are calculated from measured cycles and the clock; hover a time for both. No OS, code in flash unless marked (LAUNCHXL-F28P65X ran from RAM). Zephyr adds cycles on every board that ran it; see the rows below.
All rows
Interrupt pend to first line of handler cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| bare | 29 to 3680 MHz, 1 run | 25 to 2832 MHz, 1 run | 23 to 2524 MHz | 31 to 3480 MHz | 36 to 4080 MHz | 28 to 2948 MHz, 1 run | 23 to 2948 MHz | 30 to 32120 MHz | 22 to 2648 MHz | 17 to 2996 MHz, 1 run | 32160 MHz | 21 to 3596 MHz | 195 to 227400 MHz | |||||
| bare-32mhz | 2032 MHz | |||||||||||||||||
| bare-external-wire4 | ||||||||||||||||||
| bare-fiq | 144 to 205400 MHz | |||||||||||||||||
| bare-flash | 36200 MHz | |||||||||||||||||
| bare-m33 | 26150 MHz | |||||||||||||||||
| bare-m33-gcc12 | 26150 MHz | |||||||||||||||||
| bare-ram | 30200 MHz | |||||||||||||||||
| bare-riscv | 45150 MHz | |||||||||||||||||
| freertos | 38 to 3932 MHz, 1 run | 39 to 20248 MHz | 2748 MHz | 171 to 175160 MHz | ||||||||||||||
| pend-sw7 | ||||||||||||||||||
| zephyr | 163 to 18180 MHz, 1 run | 119 to 13732 MHz, 1 run | 157 to 18580 MHz, 1 run | 48 to 6048 MHz, 1 run | 108 to 12948 MHz, 1 run |
Sources
cc1354p10/baremetal/README.md, cc2340r5/baremetal/README.md, mspm0l1306/freertos/README.md, mspm0l1306/zephyr/README.md
Control loops
Control loop: ADC trigger to new PWM value
From 1.33 µs to 448 µs across the boards, in float code: hardware math where the chip has it, software math where it does not, each bar says which. The Cortex-M0+ boards run floating point in software, so none gets under 88.5 µs even with a math accelerator for sine and cosine. TI's fixed-point IQmath library brings the MSPM0 G3507 to 12.3 µs.
One field-oriented control step, timed from the ADC finishing to the new PWM value.
One run per board: code in flash, timed from the ADC end-of-conversion interrupt, where the board has that run; otherwise its fastest plain run. Early-trigger, RAM-code, lockstep and IQmath runs are left out; IQmath is in the rows below. AM263P ran only with code in RAM, so it is not drawn. Log scale: each gridline is 10 times slower. Hover a time for the clock and build.
All rows
PWM or timer trigger to first line of ISR us, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ctrl-systick-o2 | ||||||||||||||
| early-flash | 0.402 to 0.433120 MHz | |||||||||||||
| early-flash-ramfunc | 0.368 to 0.417120 MHz | |||||||||||||
| early-ram | 0.392 to 0.408120 MHz | |||||||||||||
| eoc-flash | 1.86 to 1.9732 MHz | 4.21 to 4.3148 MHz | 5.84 to 15.748 MHz | 0.555 to 0.592120 MHz | 1.6948 MHz | 0.538 to 0.55160 MHz | 3.77 to 3.7996 MHz | |||||||
| eoc-flash-o3 | 4.22 to 4.3148 MHz | 5.84 to 15.548 MHz | 1.6948 MHz | 0.713 to 0.725160 MHz | ||||||||||
| eoc-flash-os | 4.2 to 4.2548 MHz | |||||||||||||
| eoc-flash-ramfunc | 0.535 to 0.583120 MHz | |||||||||||||
| eoc-ram | 1.58 to 1.648 MHz | |||||||||||||
| hw-tmu-eoc-flash | 0.365 to 0.38200 MHz, 1 run | |||||||||||||
| hw-tmu-eoc-ocsram | 0.632400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-alone | 0.637 to 0.638400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-bytecopy3 | 0.638400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-coremark3 | 0.638400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-nearcopy3 | 0.637 to 0.638400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-wordcopy3 | 0.638400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-lockstep | 0.631 to 0.632400 MHz | |||||||||||||
| hw-tmu-eoc-tcm-200k-alone | 0.592400 MHz | |||||||||||||
| hw-tmu-eoc-tcm-200k-beside-nearcopy3 | 0.593400 MHz | |||||||||||||
| o3 | 2.69 to 2.7180 MHz | |||||||||||||
| sdk-eoc-ocsram | 0.636 to 0.637400 MHz | |||||||||||||
| sdk-eoc-ocsram-lockstep | 0.637400 MHz | |||||||||||||
| sw-eoc-flash | 0.397 to 0.41200 MHz, 1 run | |||||||||||||
| sw-eoc-ocsram | 0.654 to 0.655400 MHz | |||||||||||||
| sw-eoc-ocsram-lockstep | 0.661 to 0.663400 MHz | |||||||||||||
| ticlang-freertos-o2 | Not for this chip | |||||||||||||
| ticlang-freertos-o3 | Not for this chip | |||||||||||||
| (one way) | 0.86 to 0.9580 MHz, 1 run | 1.94 to 1.9732 MHz, 1 run | 1.11 to 1.2180 MHz | 2.7 to 2.7480 MHz | 0.55 to 0.58120 MHz |
Sources
Run records are in the notebook, not this copy.
Trigger, ADC, control step, new PWM value (mean) us, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ctrl-systick-o2 | ||||||||||||||
| hw | 88.5 to 90.480 MHz, 1 run | n/a | 89.3 to 9180 MHz | n/a | 2.4120 MHz | n/a | ||||||||
| hw-early-flash | 2.45 to 2.49120 MHz | |||||||||||||
| hw-early-flash-ramfunc | 2.15 to 2.2120 MHz | |||||||||||||
| hw-early-ram | 2.21 to 2.23120 MHz | |||||||||||||
| hw-eoc-flash | 2.58 to 2.62120 MHz | |||||||||||||
| hw-eoc-flash-ramfunc | 2.32 to 2.37120 MHz | |||||||||||||
| hw-tmu-eoc-flash | 1.33 to 1.69200 MHz, 1 run | |||||||||||||
| hw-tmu-eoc-ocsram | 1.24400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-alone | 1.23400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-bytecopy3 | 1.23400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-coremark3 | 1.23400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-nearcopy3 | 1.23400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-wordcopy3 | 1.23400 MHz | |||||||||||||
| hw-tmu-eoc-ocsram-lockstep | 1.24400 MHz | |||||||||||||
| hw-tmu-eoc-tcm-200k-alone | 1.19400 MHz | |||||||||||||
| hw-tmu-eoc-tcm-200k-beside-nearcopy3 | 1.19400 MHz | |||||||||||||
| iq-hw | 12.3 to 12.680 MHz | 12.4 to 12.780 MHz | ||||||||||||
| iq-sw | 24.3 to 24.680 MHz | 55.5 to 55.632 MHz, 1 run | 24.4 to 24.680 MHz | 26.3 to 26.480 MHz | ||||||||||
| microstep-sw | 1.23 to 1.77200 MHz, 1 run | |||||||||||||
| microstep-tmu | 0.691 to 1.09200 MHz, 1 run | |||||||||||||
| sdk-eoc-ocsram | 1.45400 MHz | |||||||||||||
| sdk-eoc-ocsram-lockstep | 1.46400 MHz | |||||||||||||
| sw | 171.9 to 177.780 MHz, 1 run | 401.6 to 413.132 MHz, 1 run | 179.8 to 182.480 MHz | 181.1 to 183.480 MHz | 3.7120 MHz | |||||||||
| sw-early-ram | 3.46 to 3.51120 MHz | |||||||||||||
| sw-eoc-flash | 448.1 to 54032 MHz | 336.6 to 403.448 MHz | 21.4 to 24.848 MHz | 4.1 to 4.18120 MHz | 298.8 to 319.648 MHz | 5.17 to 5.74160 MHz | 4.74 to 4.79200 MHz, 1 run | 10.5 to 1396 MHz | ||||||
| sw-eoc-flash-o3 | 338.4 to 408.148 MHz | 21.4 to 24.348 MHz | 299.3 to 319.848 MHz | 5.03 to 5.47160 MHz | 10.5 to 12.996 MHz | |||||||||
| sw-eoc-flash-os | 336.6 to 403.448 MHz | 10.5 to 12.996 MHz | ||||||||||||
| sw-eoc-ocsram | 2.06400 MHz | |||||||||||||
| sw-eoc-ocsram-lockstep | 2.07400 MHz | |||||||||||||
| sw-eoc-ram | 272.3 to 289.148 MHz | |||||||||||||
| sw-o3 | 180.8 to 183.580 MHz | |||||||||||||
| ticlang-freertos-o2 | Not for this chip | |||||||||||||
| ticlang-freertos-o3 | Not for this chip |
Sources
am13e230/stepper-uln2003/microstep/
One field-oriented control step cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ctrl-systick-o2 | |||||||||||||||
| fpu-flash | 308.4150 MHz | ||||||||||||||
| fpu-flash-gcc12 | 314.2150 MHz | ||||||||||||||
| fpu-flash-o3 | 308.4150 MHz | ||||||||||||||
| fpu-flash-o3-gcc12 | 314.2150 MHz | ||||||||||||||
| fpu-flash-os | 306.1150 MHz | ||||||||||||||
| fpu-flash-os-gcc12 | 313.6150 MHz | ||||||||||||||
| hw | 6.4k80 MHz, 1 run | n/a | 6.5k80 MHz | 194.1120 MHz | n/a | n/a | |||||||||
| hw-flash | 220.6120 MHz | ||||||||||||||
| hw-flash-ramfunc | 195.3120 MHz | ||||||||||||||
| hw-tmu-flash | 117200 MHz | ||||||||||||||
| hw-tmu-ocsram | 160.3 to 833400 MHz | ||||||||||||||
| iq-hw | 918.280 MHz | ||||||||||||||
| iq-sw | 1.9k80 MHz | 1.7k32 MHz, 1 run | |||||||||||||
| iq-sw-ram | 1.7k32 MHz | ||||||||||||||
| q15-rtcesl | 44896 MHz, 1 run | ||||||||||||||
| sdk-ocsram | 247.4 to 263400 MHz | ||||||||||||||
| sw | 14k80 MHz, 1 run | 13k32 MHz, 1 run | 14k80 MHz | 14k80 MHz | 348.9120 MHz | ||||||||||
| sw-flash | 13k32 MHz | 14k48 MHz | 671.448 MHz | 400.2120 MHz | 12k48 MHz | 5.4k96 MHz, 1 run | 531.1160 MHz, 1 run | 655.6200 MHz | 593.796 MHz | ||||||
| sw-flash-32mhz | 489.132 MHz, 1 run | ||||||||||||||
| sw-flash-o3 | 13k32 MHz | 14k48 MHz | 671.348 MHz | 12k48 MHz | 5.3k96 MHz, 1 run | 593.796 MHz | |||||||||
| sw-flash-o3-riscv | 4.5k150 MHz | ||||||||||||||
| sw-flash-o3-stgcc14 | 13k48 MHz | ||||||||||||||
| sw-flash-os | 13k32 MHz | 14k48 MHz | 600.796 MHz | ||||||||||||
| sw-flash-os-riscv | 4.5k150 MHz | ||||||||||||||
| sw-flash-riscv | 4.5k150 MHz | ||||||||||||||
| sw-flash-stgcc14 | 13k48 MHz | ||||||||||||||
| sw-ocsram | 412 to 789400 MHz | ||||||||||||||
| sw-ram | 13k32 MHz | 11k48 MHz | |||||||||||||
| sw-ram-stgcc14 | 12k48 MHz | ||||||||||||||
| ti-aci-chain | 555200 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Digital-power PID loop, trigger to duty write (mean) cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC2755P10 |
|---|---|---|---|---|---|---|---|---|---|
| float-flash | 1.8k to 1.9k80 MHz, 1 run | 1.4k to 1.8k32 MHz | 1.8k to 1.9k80 MHz | 2k to 2.1k48 MHz | 396.3 to 42048 MHz | 194 to 198120 MHz, 1 run | 235.3 to 278160 MHz | ||
| float-flash-o3 | 379.8 to 40148 MHz | 230.2 to 258160 MHz | |||||||
| q15-flash | 280 to 30080 MHz, 1 run | 227.7 to 24832 MHz | 301.3 to 32180 MHz | 410 to 43348 MHz | 382.1 to 40948 MHz | 258.4 to 263120 MHz, 1 run | 184.3 to 209160 MHz | ||
| q15-flash-o3 | 369.9 to 39448 MHz | 174.2 to 194160 MHz |
Sources
cc2755p10/RESULTS-cc2755p10.md
Loop rate with 20 percent of the period free (computed, superseded) kHz, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 |
|---|---|---|---|---|---|
| float-flash | 34 calc. | 14.4 calc. | 17.8 calc. | 460.8 calc. | |
| q15-flash | 205 calc. | 99.3 calc. | 85 calc. | 351.9 calc. |
Sources
Run records are in the notebook, not this copy.
Control loop worst case, trigger to new PWM value, as a percent of a 100 kHz period %, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ctrl-systick-o2 | |||||||||||||
| hw | 903.180 MHz | 909.680 MHz | 24.2120 MHz | ||||||||||
| hw-early-flash | 24.9120 MHz | ||||||||||||
| hw-early-flash-ramfunc | 22120 MHz | ||||||||||||
| hw-early-ram | 22.2120 MHz | ||||||||||||
| hw-eoc-flash | 26.2120 MHz | ||||||||||||
| hw-eoc-flash-ramfunc | 23.7120 MHz | ||||||||||||
| hw-o3 | 912.580 MHz | 901.480 MHz | |||||||||||
| hw-tmu-eoc-flash | 16.9200 MHz, 1 run | ||||||||||||
| hw-tmu-eoc-ocsram | 10.7400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-alone | 10.5400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-bytecopy3 | 10.5400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-coremark3 | 10.5400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-nearcopy3 | 13.1 to 13.5400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-wordcopy3 | 10.5400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-lockstep | 10.7400 MHz | ||||||||||||
| hw-tmu-eoc-tcm-200k-alone | 6.3400 MHz | ||||||||||||
| hw-tmu-eoc-tcm-200k-beside-nearcopy3 | 6.3400 MHz | ||||||||||||
| iq-hw | 125.580 MHz | 125.980 MHz | |||||||||||
| iq-sw | 245.680 MHz | 555.932 MHz, 1 run | 24680 MHz | 263.880 MHz | |||||||||
| sdk-eoc-ocsram | 11.8400 MHz | ||||||||||||
| sdk-eoc-ocsram-lockstep | 11.8400 MHz | ||||||||||||
| sw | 2,318.980 MHz | 4,131.232 MHz, 1 run | 1,819.980 MHz | 2,330.580 MHz | 37.1120 MHz | ||||||||
| sw-early-ram | 35.1120 MHz | ||||||||||||
| sw-eoc-flash | 5,399.732 MHz | 4,033.548 MHz | 248.148 MHz | 41.8120 MHz | 3,192.548 MHz | 57.4160 MHz | 47.9200 MHz, 1 run | 12996 MHz | |||||
| sw-eoc-flash-o3 | 4,081.548 MHz | 243.148 MHz | 3,197.748 MHz | 54.8160 MHz | 129.496 MHz | ||||||||
| sw-eoc-flash-os | 4,033.548 MHz | 12996 MHz | |||||||||||
| sw-eoc-ocsram | 13.7 to 14400 MHz | ||||||||||||
| sw-eoc-ocsram-lockstep | 14400 MHz | ||||||||||||
| sw-eoc-ram | 2,890.448 MHz | ||||||||||||
| sw-o3 | 2,322.180 MHz | 1,774.980 MHz | 2,324.880 MHz |
Sources
Run records are in the notebook, not this copy.
Control loop jitter, worst minus best trigger to new PWM value us, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ctrl-systick-o2 | |||||||||||||
| hw | 7.680 MHz | 7.1680 MHz | 0.092120 MHz | ||||||||||
| hw-early-flash | 0.108120 MHz | ||||||||||||
| hw-early-flash-ramfunc | 0.083120 MHz | ||||||||||||
| hw-early-ram | 0.067120 MHz | ||||||||||||
| hw-eoc-flash | 0.108120 MHz | ||||||||||||
| hw-eoc-flash-ramfunc | 0.083120 MHz | ||||||||||||
| hw-o3 | 7.6780 MHz | 7.4680 MHz | |||||||||||
| hw-tmu-eoc-flash | 0.395200 MHz, 1 run | ||||||||||||
| hw-tmu-eoc-ocsram | 0.93400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-alone | 0.905400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-bytecopy3 | 0.905400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-coremark3 | 0.905400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-nearcopy3 | 1.41 to 1.5400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-200k-beside-wordcopy3 | 0.905400 MHz | ||||||||||||
| hw-tmu-eoc-ocsram-lockstep | 0.93400 MHz | ||||||||||||
| hw-tmu-eoc-tcm-200k-alone | 0.09 to 0.095400 MHz | ||||||||||||
| hw-tmu-eoc-tcm-200k-beside-nearcopy3 | 0.095 to 0.1400 MHz | ||||||||||||
| iq-hw | 0.480 MHz | 0.3580 MHz | |||||||||||
| iq-sw | 0.31280 MHz | 0.34432 MHz, 1 run | 0.26380 MHz | 0.18880 MHz | |||||||||
| sdk-eoc-ocsram | 0.91400 MHz | ||||||||||||
| sdk-eoc-ocsram-lockstep | 0.91400 MHz | ||||||||||||
| sw | 157.680 MHz | 246.232 MHz, 1 run | 106.780 MHz | 157.280 MHz | 0.458120 MHz | ||||||||
| sw-early-ram | 0.483120 MHz | ||||||||||||
| sw-eoc-flash | 370.932 MHz | 272.148 MHz | 3.7548 MHz | 0.55120 MHz | 176.248 MHz | 2.79160 MHz | 2.52200 MHz, 1 run | 3.9496 MHz | |||||
| sw-eoc-flash-o3 | 277.148 MHz | 3.2548 MHz | 177.348 MHz | 2.74160 MHz | 3.7596 MHz | ||||||||
| sw-eoc-flash-os | 271.648 MHz | 3.8596 MHz | |||||||||||
| sw-eoc-ocsram | 0.89 to 0.95400 MHz | ||||||||||||
| sw-eoc-ocsram-lockstep | 0.95 to 0.96400 MHz | ||||||||||||
| sw-eoc-ram | 160.348 MHz | ||||||||||||
| sw-o3 | 157.880 MHz | 10280 MHz | 156.380 MHz |
Sources
Run records are in the notebook, not this copy.
Highest control-loop trigger rate with no missed period in 1,000 kHz, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ctrl-systick-o2 | |||||||||||
| hw | 10.9 to 1180 MHz | 10.880 MHz | 336.1120 MHz | ||||||||
| hw-early-flash | 297120 MHz | ||||||||||
| hw-early-flash-ramfunc | 336.1120 MHz | ||||||||||
| hw-early-ram | 334.3120 MHz | ||||||||||
| hw-eoc-flash | 301.5120 MHz | ||||||||||
| hw-eoc-flash-ramfunc | 336.1120 MHz | ||||||||||
| hw-o3 | 10.980 MHz | 10.980 MHz | |||||||||
| iq-hw | 70.880 MHz | 70.380 MHz | |||||||||
| iq-sw | 38.180 MHz | 16.932 MHz | 38 to 38.380 MHz | 37.280 MHz | |||||||
| sw | 4.26 to 4.3180 MHz | 1.83 to 1.8532 MHz | 4.2980 MHz | 4.2880 MHz | 231.7120 MHz | ||||||
| sw-early-ram | 231.7120 MHz | ||||||||||
| sw-eoc-flash | 2.42 to 2.4548 MHz | 46.248 MHz | 209.4120 MHz | 178160 MHz | 90.2 to 91.296 MHz | ||||||
| sw-eoc-flash-gcc14 | |||||||||||
| sw-eoc-flash-o3 | 2.43 to 2.4548 MHz | 45.848 MHz | 93.896 MHz | ||||||||
| sw-eoc-flash-os | 2.48 to 2.548 MHz | 90.9 to 91.196 MHz | |||||||||
| sw-o3 | 4.26 to 4.380 MHz | 1.8332 MHz | 4.24 to 4.2880 MHz | 4.26 to 4.2980 MHz |
Sources
Run records are in the notebook, not this copy.
Control-loop CPU load, interrupt entry to exit, as a percent of a 100 kHz period %, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| ctrl-systick-o2 | |||||||||||
| hw | 894.2 to 928.180 MHz | 900.2 to 934.580 MHz | 26.4 to 33.3120 MHz | ||||||||
| hw-early-flash | 29.9 to 38.1120 MHz | ||||||||||
| hw-early-flash-ramfunc | 27.1 to 34.3120 MHz | ||||||||||
| hw-early-ram | 26.5 to 33.4120 MHz | ||||||||||
| hw-eoc-flash | 29.7 to 37.7120 MHz | ||||||||||
| hw-eoc-flash-ramfunc | 27 to 34.2120 MHz | ||||||||||
| hw-o3 | 901.5 to 934.680 MHz | 892.4 to 927.580 MHz | |||||||||
| iq-hw | 132.1 to 151.180 MHz | 133.3 to 153.880 MHz | |||||||||
| iq-sw | 251.8 to 270.580 MHz | 573.5 to 611.932 MHz | 252.6 to 271.680 MHz | 254.8 to 272.680 MHz | |||||||
| sw | 1,949.8 to 2,337.580 MHz | 4,504.8 to 5,457.832 MHz | 1,952.3 to 2,343.280 MHz | 1,951.1 to 2,339.980 MHz | 39.6 to 46.8120 MHz | ||||||
| sw-early-ram | 39.5 to 46.8120 MHz | ||||||||||
| sw-eoc-flash | 3,380.3 to 4,09448 MHz | 180.4 to 211.548 MHz | 43.7 to 52.1120 MHz | 59.5 to 65.3160 MHz | 76.6 to 99.396 MHz | ||||||
| sw-eoc-flash-gcc14 | |||||||||||
| sw-eoc-flash-o3 | 3,374.548 MHz | 180 to 203.848 MHz | 76.5 to 99.196 MHz | ||||||||
| sw-eoc-flash-os | 3,326.8 to 4,009.248 MHz | 76.5 to 97.796 MHz | |||||||||
| sw-o3 | 1,951.5 to 2,343.480 MHz | 4,517.6 to 5,470.932 MHz | 1,962.2 to 2,351.180 MHz | 1,931.6 to 2,336.480 MHz |
Sources
Run records are in the notebook, not this copy.
Digital-power loop worst case, trigger to duty write, as a percent of a 100 kHz period %, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC2755P10 |
|---|---|---|---|---|---|---|---|---|---|
| float-flash | 235.580 MHz | 554.432 MHz | 236.880 MHz | 437.348 MHz | 87.548 MHz | 16.5120 MHz, 1 run | 17.4160 MHz | ||
| float-flash-o3 | 83.548 MHz | 16.1160 MHz | |||||||
| q15-flash | 39.480 MHz | 77.532 MHz | 40.180 MHz | 88.548 MHz | 85.248 MHz | 21.9120 MHz, 1 run | 13.1160 MHz | ||
| q15-flash-o3 | 8248 MHz | 12.1160 MHz |
Sources
cc2755p10/RESULTS-cc2755p10.md
Digital-power loop jitter, worst minus best trigger to duty write cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC2755P10 |
|---|---|---|---|---|---|---|---|---|
| float-flash | 24780 MHz | 51132 MHz | 25880 MHz | 26848 MHz | 3048 MHz | 0.269160 MHz | ||
| float-flash-o3 | 2448 MHz | 0.175160 MHz | ||||||
| q15-flash | 2380 MHz | 2132 MHz | 2180 MHz | 2348 MHz | 3148 MHz | 0.156160 MHz | ||
| q15-flash-o3 | 2748 MHz | 0.125160 MHz |
Sources
cc2755p10/RESULTS-cc2755p10.md
Highest digital-power loop rate with no missed period in 1,000 kHz, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC2755P10 |
|---|---|---|---|---|---|---|---|---|---|
| float-flash | 39.7 to 4080 MHz | 17.332 MHz | 39.680 MHz | 21.8 to 2248 MHz | 117.148 MHz | 439.6120 MHz | 645.2160 MHz | ||
| float-flash-o3 | 22.2 to 22.448 MHz | 121.248 MHz | 655.7160 MHz | ||||||
| float-ram | 500120 MHz | ||||||||
| q15-flash | 190.980 MHz | 92.832 MHz | 190.980 MHz | 97.448 MHz | 120.648 MHz | 367120 MHz | 680.9160 MHz | ||
| q15-flash-o3 | 113.548 MHz | 123.148 MHz | 720.7160 MHz | ||||||
| q15-ram | 431.6120 MHz |
Sources
cc2755p10/RESULTS-cc2755p10.md
Digital-power loop CPU load, interrupt entry to exit, as a percent of a 100 kHz period %, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC2755P10 |
|---|---|---|---|---|---|---|---|---|---|
| float-flash | 237.2 to 26180 MHz | 471.2 to 606.232 MHz | 236.8 to 260.980 MHz | 430.5 to 477.748 MHz | 48.5 to 70.648 MHz | 19.7 to 26.9120 MHz | 18.7 to 25.6160 MHz | ||
| float-flash-o3 | 427.9 to 472.748 MHz | 47.2 to 7048 MHz | 18.2 to 24.9160 MHz | ||||||
| float-ram | 17.3 to 23.7120 MHz | ||||||||
| q15-flash | 41.4 to 6180 MHz | 85.5 to 127.832 MHz | 41.5 to 61.480 MHz | 99.6 to 121.948 MHz | 42.9 to 64.448 MHz | 24.2 to 31.5120 MHz | 13.3 to 20.2160 MHz | ||
| q15-flash-o3 | 90.8 to 109.848 MHz | 41.6 to 62.148 MHz | 12.7 to 19.6160 MHz | ||||||
| q15-ram | 20.5 to 26.8120 MHz |
Sources
cc2755p10/RESULTS-cc2755p10.md
Brushless motor speed at a duty, six-step from Hall sensors rpm, higher is better
| Variant | LP-AM13E230 |
|---|---|
| no-meter-retry-6x-10pct | 0200 MHz, 1 run |
| rewired-6x-10pct-start | 0200 MHz, 1 run |
| sine-hall-20pct-fwd | 531 to 536200 MHz |
| sine-hall-30pct-fwd | 894 to 907200 MHz |
| sine-hall-30pct-rev | 892200 MHz, 1 run |
| six-step-hall-10pct-fwd | 405 to 411200 MHz |
| six-step-hall-10pct-rev | 376 to 391200 MHz |
| six-step-hall-20pct-fwd | 924 to 929200 MHz |
| six-step-hall-20pct-rev | 891 to 907200 MHz |
| six-step-hall-30pct-fwd | 1,561200 MHz |
| six-step-hall-30pct-rev | 1,446 to 1,457200 MHz |
| six-step-hall-40pct-fwd | 2,312 to 2,339200 MHz |
| six-step-hall-40pct-rev | 2,091200 MHz |
| six-step-hall-50pct-fwd | 3,067200 MHz |
| six-step-hall-50pct-rev | 2,728 to 2,805200 MHz |
| six-step-hall-60pct-fwd | 3,632 to 3,700200 MHz |
| six-step-hall-60pct-rev | 3,442200 MHz |
| speed-bench-firmware-trapezoid-retry | 0200 MHz, 1 run |
Sources
am13e230/bldc-drv8376/README.md
Hall sensor misalignment: largest deviation of a sector's width from one sixth of an electrical turn %, lower is better
| Variant | LP-AM13E230 |
|---|---|
| six-step-hall-30pct-fwd | 2200 MHz |
| six-step-hall-30pct-rev | 1.9200 MHz |
Sources
am13e230/bldc-drv8376/README.md
Radio RAM
Radio stack RAM on the LP-EM-CC2340R5
6 of 11 builds fit, including every Bluetooth-only and Zigbee one. 5 do not link at 36 kB of RAM (Bluetooth + TI 15.4 at once; Thread end device, NCP build; Thread end device, CLI build; Thread router, CLI build; Thread router, NCP build). They link at 64 kB on the CC2340R53; none has run there.
Bar = RAM the stack needs. The chip has 36 kB.
Scale 0 to 58 kB; 1 kB = 1,024 bytes. These are TI's configurations as built here. No trimmed build was made, so none is a proven chip limit.
All rows
RAM left after linking a stack B, higher is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|
| ble-basic-ble | 5.1 kB | 81 kB | ||||
| ble-basic-ble-occ-8k | 8191 run | |||||
| ble-basic-ble-text | 5.1 kB | |||||
| ble-broadcaster | Not for this chip | |||||
| ble-central-b2b | 2.6 kB | |||||
| ble-data-stream | 5.3 kB | 81.2 kB | ||||
| ble-desk-oled | 3.4 kB1 run | |||||
| ble-esphome-proxy | 262.1 kB160 MHz, 1 run | |||||
| ble-hci-controller | 79.9 kB | |||||
| ble-hid-remote | 5.1 kB1 run | |||||
| ble-nimble-peripheral | 347.8 kB160 MHz, 1 run | |||||
| ble-nordic-lbs-nus | 4 kB1 run | |||||
| ble-oad-dual-image | 4.5 kB | 80.5 kB | ||||
| ble-proxy-zigbee-ed | 247.4 kB160 MHz, 1 run | |||||
| ble-simple-peripheral | ||||||
| ble-tooltag | 1.2 kB1 run | 76.8 kB1 run | ||||
| ble-zephyr-ti-fork | 1.7 kB | |||||
| dmm-ble-ti154 | Not for this chip 2.1 kB short | 57.4 kB | ||||
| esphome-minimal-wifi | 303.3 kB160 MHz, 1 run | |||||
| esphome-thread | 335 kB160 MHz, 1 run | |||||
| esphome-zigbee-ed | 358.9 kB160 MHz, 1 run | |||||
| none | n/a | |||||
| proprietary-rftx | 22.4 kB | |||||
| thread-cli-ftd | Not for this chip 16 kB short | 163.3 kB | 66.5 kB1 run | |||
| thread-cli-mtd | Not for this chip 10 kB short | 169.4 kB | 72.5 kB1 run | |||
| thread-ftd | 329 kB160 MHz, 1 run | |||||
| thread-ncp-ftd | Not for this chip 20.7 kB short | |||||
| thread-ncp-mtd | Not for this chip 7.5 kB short | |||||
| thread-radio-cli | 10.2 kB | 191.4 kB | 93.1 kB1 run | |||
| thread-rcp | 8.8 kB | 190.1 kB | 91.7 kB1 run | |||
| ti154-collector | Not for this chip | |||||
| ti154-sensor | 1.6 kB1 run | 127.2 kB1 run | ||||
| wifi-esphome-api | 74 kB to 86.7 kB160 MHz, 1 run | |||||
| wifi-ota-example-plus-voice-fe | 72.2 kB calc. | |||||
| wisun-border-router | ||||||
| wisun-coap-node | ||||||
| wisun-router | Not for this chip | |||||
| zigbee-ble-dmm-zr-light | 222.2 kB | |||||
| zigbee-coordinator | ||||||
| zigbee-end-device | 6.2 kB | 132.1 kB | ||||
| zigbee-ota-client | 10.7 kB | 136.4 kB | ||||
| zigbee-ota-client-router | 5.3 kB | |||||
| zigbee-router | 799 | 360.1 kB160 MHz, 1 run | 126.5 kB | |||
| zigbee-router-esphome | Not for this chip 1.3 kB short | 124.4 kB1 run | ||||
| zigbee-router-esphome-cc23xx | 6831 run | |||||
| zigbee-router-esphome-cc27xx | 124.4 kB1 run | |||||
| zigbee-router-ti-example | 126.7 kB1 run | |||||
| zigbee-router-ti-nolog | 5.9 kB1 run | 131.7 kB1 run | ||||
| zigbee-zed-esphome | 4 kB1 run | 129.8 kB1 run | ||||
| zigbee-zed-esphome-cc23xx | 4 kB1 run | |||||
| zigbee-zed-sleepy-temp | 210.5 kB | |||||
| zigbee-zed-ti-example | 210.6 kB | |||||
| zigbee-zed-ti-nolog | 11.3 kB1 run | 137.1 kB1 run |
Sources
cc2340r5/thread/README.md, docs/experiments/2026-10-13-cc2340r5-esphome-fit.md, docs/experiments/2026-10-13-cc2755p10-esphome-fit.md, docs/experiments/2026-10-13-esphome-cc27xx-platform.md, docs/experiments/2026-10-13-esphome-cc35xx-platform.md, esp32c6/proxy/README.md, esp32c6/proxy/frl-ble-proxy-zigbee.yaml, esp32c6/proxy/frl-esphome-minimal.yaml, esp32c6/proxy/frl-esphome-thread.yaml, esp32c6/proxy/frl-esphome-zigbee.yaml, esp32c6/zigbee/README.md
Flash used by a stack and role, from the linker map B, lower is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|
| ble-basic-ble | 187.4 kB | 205.3 kB | |||||
| ble-basic-ble-occ-8k | 208.6 kB1 run | ||||||
| ble-basic-ble-text | 187.4 kB | ||||||
| ble-broadcaster | Not for this chip | ||||||
| ble-central-b2b | 194 kB | ||||||
| ble-data-stream | 185.9 kB | 203.9 kB | |||||
| ble-desk-oled | 190.5 kB1 run | ||||||
| ble-esphome-proxy | 1.4 MB160 MHz, 1 run | ||||||
| ble-hci-controller | 189.4 kB | ||||||
| ble-hid-remote | 186.5 kB1 run | ||||||
| ble-nimble-peripheral | 640.3 kB160 MHz, 1 run | ||||||
| ble-nordic-lbs-nus | 187.3 kB1 run | ||||||
| ble-oad-dual-image | 192 kB | 209.5 kB | |||||
| ble-proxy-zigbee-ed | 1.6 MB160 MHz, 1 run | ||||||
| ble-simple-peripheral | 166 kB | ||||||
| ble-tooltag | 193.5 kB1 run | 211.9 kB1 run | |||||
| dmm-ble-ti154 | 253.8 kB | ||||||
| esphome-minimal-wifi | 816.2 kB160 MHz, 1 run | ||||||
| esphome-thread | 748.4 kB160 MHz, 1 run | ||||||
| esphome-zigbee-ed | 491.8 kB160 MHz, 1 run | ||||||
| none | n/a | ||||||
| proprietary-rftx | 32.5 kB | 32.2 kB | |||||
| thread-cli-ftd | 417.5 kB | 397.9 kB | 432.2 kB1 run | ||||
| thread-cli-mtd | 353.3 kB | 335.4 kB | 370.1 kB1 run | ||||
| thread-ftd | 1.2 MB160 MHz, 1 run | ||||||
| thread-ncp-ftd | 404.4 kB | ||||||
| thread-ncp-mtd | 342.5 kB | ||||||
| thread-radio-cli | 96.1 kB | 75.4 kB | 118.2 kB1 run | ||||
| thread-rcp | 107.1 kB | 86.6 kB | 128.7 kB1 run | ||||
| ti154-collector | Not for this chip | 117 kB | |||||
| ti154-sensor | 90.4 kB1 run | 111 kB | 90.9 kB1 run | ||||
| wifi-ble-prov-mqtt-chained | 1.3 MB160 MHz, 1 run | ||||||
| wifi-esphome-api | 1.2 MB160 MHz, 1 run | ||||||
| wisun-border-router | 398.3 kB | ||||||
| wisun-coap-node | 338.3 kB | ||||||
| wisun-router | Not for this chip | 342.3 kB | |||||
| zigbee-ble-dmm-zr-light | 458.9 kB | ||||||
| zigbee-coordinator | 219.9 kB | ||||||
| zigbee-end-device | 215.2 kB | 205.7 kB | |||||
| zigbee-ota-client | 216.8 kB | 205.9 kB | |||||
| zigbee-ota-client-router | 274.7 kB | ||||||
| zigbee-router | 275.7 kB | 223.3 kB | 512.9 kB160 MHz, 1 run | 274.2 kB | |||
| zigbee-router-esphome | 277.7 kB1 run | 263.1 kB1 run | |||||
| zigbee-router-esphome-cc23xx | 277.8 kB1 run | ||||||
| zigbee-router-esphome-cc27xx | 262.7 kB1 run | ||||||
| zigbee-router-ti-example | 259.6 kB1 run | ||||||
| zigbee-router-ti-nolog | 268.8 kB1 run | 253.1 kB1 run | |||||
| zigbee-zed-esphome | 219.8 kB1 run | 211.1 kB1 run | |||||
| zigbee-zed-esphome-cc23xx | 219.9 kB1 run | ||||||
| zigbee-zed-sleepy-temp | 179.4 kB | ||||||
| zigbee-zed-ti-example | 178.9 kB | ||||||
| zigbee-zed-ti-nolog | 210.9 kB1 run | 201.4 kB1 run | |||||
| (one way) |
Sources
cc3200-launchxl/README.md, docs/experiments/2026-10-13-cc2340r5-esphome-fit.md, docs/experiments/2026-10-13-cc2755p10-esphome-fit.md, docs/experiments/2026-10-13-esphome-cc27xx-platform.md, docs/experiments/2026-10-13-esphome-cc35xx-platform.md, esp32c6/proxy/README.md, esp32c6/proxy/frl-ble-proxy-zigbee.yaml, esp32c6/proxy/frl-esphome-minimal.yaml, esp32c6/proxy/frl-esphome-thread.yaml, esp32c6/proxy/frl-esphome-zigbee.yaml, esp32c6/zigbee/README.md, ports/wifi-provisioning-ble/README.md
Time on air for one packet ms, lower is better
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 |
|---|---|---|---|---|---|
| cc1407p-2-gfsk-38-4-kbps-200b-host-view | 45.580 MHz | ||||
| cc1407p-2-gfsk-50-kbps-high-performance-200b-host-view | 35.280 MHz | ||||
| cc1407p-2-gfsk-50-kbps-low-power-200b-host-view | 35.280 MHz | ||||
| cc1407p-2-gfsk-9-6-kbps-200b-host-view | 178.480 MHz | ||||
| cc1407p-general-purpose-gfsk-200b-host-view | 35.180 MHz | ||||
| cc1407p-ofdm-lr-16-67-ksps-dsss-6-200b-host-view | 1,216.780 MHz | ||||
| cc1407p-ofdm-lr-66-67-ksps-dsss-2-200b-host-view | 107.480 MHz | ||||
| cc1407p-ofdm-lr-8-33-ksps-dsss-6-200b-host-view | 2,432.280 MHz | ||||
| cc1407p-sun-o-qpsk-rate-mode-3-50-kbps-200b-host-view | 56.580 MHz | ||||
| cc1407p-wi-sun-fsk-mode-2b-200b-host-view | 18.780 MHz | ||||
| cc1407p-wi-sun-fsk-mode-4b-200b-host-view | 10.180 MHz | ||||
| cc1407p-wi-sun-ofdm-opt1-mcs6-200b-host-view | 3.180 MHz | ||||
| cc1407p-wi-sun-ofdm-opt2-mcs3-200b-host-view | 6.9480 MHz | ||||
| cc1407p-wi-sun-ofdm-opt2-mcs4-200b-host-view | 5.5180 MHz | ||||
| cc1407p-wi-sun-ofdm-opt2-mcs5-200b-host-view | 4.9180 MHz | ||||
| cc1407p-wi-sun-ofdm-opt2-mcs6-200b-host-view | 4.1780 MHz | ||||
| cc1407p-wi-sun-ofdm-opt3-mcs4-200b-host-view | 8.3180 MHz | ||||
| cc1407p-wi-sun-ofdm-opt3-mcs5-200b-host-view | 6.9980 MHz | ||||
| cc1407p-wi-sun-ofdm-opt3-mcs6-200b-host-view | 5.5680 MHz | ||||
| cc1407p-wi-sun-ofdm-opt4-mcs4-200b-host-view | 13.880 MHz | ||||
| cc1407p-wi-sun-ofdm-opt4-mcs5-200b-host-view | 11.180 MHz | ||||
| cc1407p-wi-sun-ofdm-opt4-mcs6-200b-host-view | 8.3680 MHz | ||||
| cc1407p-xlr-20-ksps-dsss-2-200b-host-view | 344.380 MHz | ||||
| none | n/a | ||||
| (one way) |
Sources
cc3200-launchxl/README.md
Charge per radio event at 3.0 V uC, lower is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 |
|---|---|---|---|---|
| none | n/a | |||
| (one way) |
Sources
cc3200-launchxl/README.md
Average current at one event per 1000 ms, 3.0 V uA, lower is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 |
|---|---|---|---|---|
| none | n/a | |||
| (one way) |
Sources
cc3200-launchxl/README.md
Payload throughput board to board kbps, higher is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 | LP-EM-CC35X1 |
|---|---|---|---|---|---|
| ble-oad-236b | 61.548 MHz, 1 run | ||||
| none | n/a | ||||
| wifi-tcp | 12,111160 MHz, 1 run | ||||
| wifi-udp | 15,973160 MHz, 1 run | ||||
| (one way) |
Sources
cc2340r5/oad/logs/oad-run1.json, cc3200-launchxl/README.md, cc35x1/RESULTS-cc35x1.md
Distance at which packet error rate stays under 1% m, higher is better
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 |
|---|---|---|---|---|---|
| cc1407p-gfsk50k-desk-ha | |||||
| none | n/a | ||||
| (one way) |
Sources
cc3200-launchxl/README.md
Boot to joined network s, lower is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|
| ble-proxy-zigbee-ed | Not for this chip | |||||
| esphome-minimal-wifi | Not for this chip | |||||
| esphome-thread | 1.2160 MHz | |||||
| esphome-zigbee-ed | 6.4160 MHz, 1 run | |||||
| matter-thermostat-commission-alexa | ||||||
| matter-thermostat-commission-apple-home | 1160 MHz, 1 run | |||||
| matter-thermostat-commission-google-home | ||||||
| matter-thermostat-commission-home-assistant | ||||||
| matter-wifi-commission | 5160 MHz, 1 run | |||||
| none | n/a | |||||
| thread-child | 4.55 to 4.56160 MHz | |||||
| thread-host-rcp-apple-tv | 3.5 to 4.748 MHz | |||||
| thread-host-rcp-restart | 3.4 to 3.748 MHz | |||||
| thread-leader-alone | 6 to 101 run | |||||
| thread-leader-fresh-image | 81 run | |||||
| thread-router-to-cc1354p10-leader | 15.51 run | |||||
| wifi-ble-provisioning | 7.13160 MHz | |||||
| wifi-ble-provisioning-mqtt | ||||||
| wifi-ble-provisioning-wrong-password | ||||||
| wifi-esphome-guest | 5.3 to 16.9160 MHz | |||||
| wifi-stored-credentials-reset | ||||||
| wifi-unknown-network-ble-fallback | Not for this chip | |||||
| wifi-wpa2-2.4g | ||||||
| wifi-wpa2-5g | 5.74160 MHz | |||||
| wifi-xiaozhi-boot | 6.5 to 6.7160 MHz | |||||
| zigbee-end-device | 151 run | |||||
| zigbee-router | 371 run | 32.5160 MHz, 1 run | ||||
| zigbee-router-esphome | 71 run | |||||
| zigbee-router-esphome-cc23xx | 61 run | |||||
| zigbee-router-esphome-cc27xx | 5.7 to 6.3 | |||||
| zigbee-router-repeat | Not for this chip | |||||
| zigbee-router-to-cc1354p10-coordinator | 6.21 run | |||||
| zigbee-zed-esphome-cc23xx | 7 to 19 | |||||
| zigbee-zed-zha | 648 MHz, 1 run | |||||
| zigbee-zr-dmm-zha | 1 to 6.648 MHz, 1 run |
Sources
board-to-board/thread-two-radios-2026-10-06/README.md, board-to-board/zigbee-cc1354-cc2340/README.md, cc1354p10/thread/README.md, cc2340r5/zigbee/README.md, cc35x1/RESULTS-cc35x1.md, cc35x1/matter/COMPATIBILITY.md, cc35x1/matter/README.md, docs/experiments/2026-10-10-cc35x1-matter-thermostat.md, docs/experiments/2026-10-13-cc2755p10-esphome-fit.md, docs/experiments/2026-10-13-esphome-cc27xx-platform.md, docs/experiments/2026-10-13-esphome-cc35xx-platform.md, esp32c6/proxy/frl-ble-proxy-zigbee.yaml, esp32c6/proxy/frl-esphome-minimal.yaml, esp32c6/proxy/frl-esphome-thread.yaml, esp32c6/zigbee/report_bench.py, ports/wifi-provisioning-ble/README.md
Command to state change, median of 20 ms, lower is better
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|
| ble-tooltag-event | 1,415 | ||||||
| ble-tooltag-event-e2e | 1,641 | ||||||
| cc1407p-tag-out-of-range-alarm-ha | 3,010 (1 run)80 MHz | ||||||
| esphome-api-loopback | 120160 MHz | ||||||
| esphome-home-assistant | |||||||
| matter-onoff-toggle | 250 to 830160 MHz | ||||||
| matter-presence-radar-to-alexa | |||||||
| matter-presence-radar-to-apple-home | |||||||
| matter-presence-radar-to-google-home | |||||||
| matter-presence-radar-to-home-assistant | |||||||
| matter-thermostat-setpoint-alexa | |||||||
| matter-thermostat-setpoint-apple-home | |||||||
| matter-thermostat-setpoint-google-home | |||||||
| matter-thermostat-setpoint-home-assistant | |||||||
| mqtt-sensors-request-reply | 167.4 to 1,206.2160 MHz | ||||||
| none | n/a | ||||||
| thermostat-uart-to-mqtt | |||||||
| zigbee-home-assistant | 95 to 292 (1 run) | ||||||
| zigbee-home-assistant-esphome | 87 (1 run) | ||||||
| zigbee-home-assistant-esphome-cc23xx | 136 (1 run) | ||||||
| zigbee-home-assistant-esphome-cc23xx-router | 97 (1 run) | ||||||
| zigbee-home-assistant-esphome-cc27xx | 92.5 (1 run) | ||||||
| zigbee-home-assistant-repaired | 5,000 to 7,000 (1 run) | ||||||
| zigbee-light-toggle | 98.5 to 167160 MHz | ||||||
| zigbee-zha-read-sleepy | 1,574 to 2,79948 MHz |
Sources
cc2340r5/zigbee/README.md, cc35x1/matter/COMPATIBILITY.md, cc35x1/matter/README.md, cc35x1/mqtt-test/README.md, docs/experiments/2026-10-10-thermostat-mcu-only.md, docs/experiments/2026-10-13-cc2755p10-esphome-fit.md, docs/experiments/2026-10-13-esphome-cc27xx-platform.md, docs/experiments/2026-10-13-esphome-cc35xx-platform.md, site/data/radio-demos.json
Commands that landed %, higher is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|
| ble-dmm-light-write | 10048 MHz | |||||||
| ble-tooltag-event | 100 | 100 | ||||||
| ble-tooltag-two-tags | 100 | |||||||
| cc1407p-23-phy-profiles | 10080 MHz | |||||||
| cc1407p-gfsk50k-ping-from-cc1407p | 10080 MHz | |||||||
| cc1407p-parent-message-to-handset | 10080 MHz | |||||||
| cc1407p-spi-bare-no-radio | ||||||||
| cc1407p-spi-bare-no-radio-2026-10-24 | ||||||||
| cc1407p-wisun-fsk-1a-ping-from-cc1407p | 10080 MHz | |||||||
| cc1407p-wisun-fsk-1b-ping-from-cc1407p | 10080 MHz | |||||||
| cc1407p-wisun-fsk-2a-ping-from-cc1407p | 4580 MHz | |||||||
| cc1407p-wisun-fsk-2b-ping-from-cc1407p | 8580 MHz | |||||||
| cc1407p-wisun-fsk-3-ping-from-cc1407p | 10080 MHz | |||||||
| cc1407p-wisun-fsk-4a-ping-from-cc1407p | 2080 MHz | |||||||
| cc1407p-wisun-fsk-4b-ping-from-cc1407p | 10080 MHz | |||||||
| cc1407p-wisun-fsk-5-ping-from-cc1407p | 5580 MHz | |||||||
| esphome-api-loopback-24h | 99.9160 MHz | |||||||
| mqtt-sensors-request-reply | 100160 MHz | |||||||
| none | n/a | |||||||
| thread-ping-cc1354p10 | 100 | |||||||
| thread-ping-cc2340r5 | 100 | |||||||
| zigbee-home-assistant | 100 (1 run) | |||||||
| zigbee-home-assistant-esphome-cc23xx | 93 | |||||||
| zigbee-home-assistant-esphome-cc23xx-router | 100 | |||||||
| zigbee-home-assistant-esphome-cc27xx | 100 | |||||||
| zigbee-home-assistant-repaired | 100 (1 run) | |||||||
| zigbee-light-toggle | 100160 MHz | |||||||
| zigbee-zha-read-sleepy | 10048 MHz |
Sources
board-to-board/thread-two-radios-2026-10-06/README.md, cc2340r5/zigbee/README.md, cc35x1/mqtt-test/README.md, docs/experiments/2026-10-13-esphome-cc27xx-platform.md, mspm0g5187/radio/README.md, mspm0l1306/radio-host/README.md, site/data/radio-demos.json
Flash to advertising s, lower is better
| Variant | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|
| default-100ms-interval | 1.41 run | 0.91 run | |||
| hid-remote-from-dslite-start | 11.91 run | ||||
| interval-20ms | 0.561 run | ||||
| nimble-legacy-30ms | 0.452 to 0.889160 MHz | ||||
| none | n/a | ||||
| nordic-lbs-nus-100ms-interval | 0.17 to 0.69 | ||||
| (one way) | 51 run |
Sources
cc2755p10/ble/onair.py
BLE echo round trip, 20 bytes ms, lower is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-EM-CC2755P10 |
|---|---|---|---|---|
| desk-oled-mac-bleak | 45.9 to 134.548 MHz | |||
| none | n/a | |||
| nordic-uart-14-byte-lines | 24.2 | |||
| nordic-uart-19-byte-lines-100 | 23.9 to 40.348 MHz | |||
| (one way) | 45 | 29.2 |
Sources
data/benchmark-suite.json, docs/experiments/2026-10-30-cc2340r5-desk-display.md
BLE write with response, round trip on the Mac clock (the board acts in its write callback before it answers) ms, lower is better
| Variant | LP-EM-CC2340R5 |
|---|---|
| nordic-lbs-led-1-byte | 24.3 |
| nordic-lbs-led-gpio-readback | 29.9 to 59.648 MHz |
Sources
Run records are in the notebook, not this copy.
BLE connect and discover services s, lower is better
| Variant | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|
| data-stream-mac-bleak | 0.551 run | 0.55 | |||
| nimble-bleprph | 0.615 to 0.748160 MHz | ||||
| none | n/a | ||||
| nordic-lbs-nus-mac-bleak | Not for this chip | ||||
| (one way) | 0.521 run |
Sources
cc35x1/README.md
Signal strength at the test spot dBm, higher is better
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 |
|---|---|---|---|---|---|
| ble-mac-1m | -47 to -41 | ||||
| cc1407p-foxhunt-beacon--12dbm-lowpa | -6280 MHz | ||||
| cc1407p-foxhunt-beacon--20dbm-lowpa | -6580 MHz | ||||
| cc1407p-foxhunt-beacon--30dbm-lowpa | -7880 MHz | ||||
| cc1407p-foxhunt-beacon--6dbm-lowpa | -5680 MHz | ||||
| cc1407p-foxhunt-beacon-0dbm-lowpa | -4680 MHz | ||||
| cc1407p-foxhunt-beacon-10dbm-lowpa | -3580 MHz | ||||
| cc1407p-foxhunt-beacon-14dbm-highpa | -3480 MHz | ||||
| cc1407p-foxhunt-beacon-4dbm-lowpa | -4180 MHz | ||||
| cc1407p-gfsk50k-915-to-cc1354p10 | -14 to -1580 MHz | ||||
| none | n/a | ||||
| thread-peer-cc1354p10 | -301 run | ||||
| thread-peer-cc2340r5 | -291 run | ||||
| wifi-esphome-proxy | -391 run | ||||
| zigbee-zed-parent |
Sources
board-to-board/thread-two-radios-2026-10-06/README.md, cc1354p10/zigbee-sleepy-sensor/README.md, esp32c6/proxy/README.md, mspm0g5187/radio/README.md, site/data/radio-demos.json
Board to board round trip ms, lower is better
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|
| ble-from-cc2340r5 | 195.4 to 199.8 | |||||
| ble-to-cc1354p10 | 195.4 to 199.8 | |||||
| cc1407p-gfsk50k-30b | 17.980 MHz | |||||
| cc1407p-keyfinder-ring-found-gfsk50k | 2180 MHz | |||||
| cc1407p-wisun-fsk-1a-30b | 19.280 MHz | |||||
| cc1407p-wisun-fsk-1b-30b | 19.280 MHz | |||||
| cc1407p-wisun-fsk-2a-30b | 11.780 MHz | |||||
| cc1407p-wisun-fsk-2b-30b | 11.680 MHz | |||||
| cc1407p-wisun-fsk-3-30b | 9.280 MHz | |||||
| cc1407p-wisun-fsk-4a-30b | 8.280 MHz | |||||
| cc1407p-wisun-fsk-4b-30b | 8.180 MHz | |||||
| cc1407p-wisun-fsk-5-30b | 7.180 MHz | |||||
| none | n/a | |||||
| thread-appletv-leader | 32 to 144160 MHz | |||||
| thread-host-mac-via-apple-tv | 28.5 to 70.948 MHz | |||||
| thread-host-to-parent | 26 to 2948 MHz | |||||
| thread-to-cc1354p10 | 44 to 103 | |||||
| thread-to-cc2340r5 | 42 to 47 | |||||
| wifi-ping-mac | 17160 MHz, 1 run |
Sources
board-to-board/ble-cc2340r5-central/README.md, board-to-board/thread-two-radios-2026-10-06/README.md, cc35x1/RESULTS-cc35x1.md, site/data/radio-demos.json
Over-the-air update completed %, higher is better
| Variant | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-EM-CC35X1 |
|---|---|---|---|---|
| ble-mac | 10048 MHz, 1 run | |||
| none | n/a | |||
| wifi-ota-http | 100160 MHz, 1 run | |||
| zigbee-home-assistant | Not for this chip | |||
| (one way) |
Sources
cc1354p10/zigbee-sleepy-sensor/README.md, cc2340r5/oad/README.md, cc35x1/RESULTS-cc35x1.md
Packet loss over one hour %, lower is better
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|
| cc1407p-gfsk50k-915 | 080 MHz | |||||
| cc1407p-gfsk50k-915-350pkt | 080 MHz | |||||
| cc1407p-gfsk50k-915-6h | 080 MHz | |||||
| cc1407p-gfsk50k-from-cc1354p10-20pkt | 080 MHz | |||||
| cc1407p-gfsk50k-spi-sweep-80pkt | 080 MHz | |||||
| cc1407p-ofdm-ofdmlr-xlr | ||||||
| cc1407p-sun-oqpsk-rm3-to-cc1354p10 | Not for this chip | |||||
| cc1407p-voice-adpcm32k-wisun2b-122frames | 080 MHz | |||||
| cc1407p-wisun-fsk-1a-from-cc1354p10-20pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-1b-from-cc1354p10-20pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-2a-from-cc1354p10-20pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-2b-from-cc1354p10-20pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-2b-to-cc1354p10-260pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-3-from-cc1354p10-20pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-4a-from-cc1354p10-20pkt | 480 MHz | |||||
| cc1407p-wisun-fsk-4b-from-cc1354p10-20pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-4b-to-cc1354p10-260pkt | 080 MHz | |||||
| cc1407p-wisun-fsk-5-from-cc1354p10-20pkt | 1480 MHz | |||||
| cc1407p-xlr-to-cc1354p10-slr2500bps2gfsk | Not for this chip | |||||
| cc1407p-xlr-to-cc1354p10-slr5kbps2gfsk | Not for this chip | |||||
| mqtt | 0160 MHz | |||||
| none | n/a | |||||
| thread-appletv-leader | 0160 MHz, 1 run | |||||
| thread-host-rcp-apple-tv | 0.4448 MHz | |||||
| zigbee-zed-zha | ||||||
| (one way) |
Sources
cc1354p10/zigbee-sleepy-sensor/README.md, cc35x1/mqtt-test/README.md, mspm0g5187/radio/README.md, site/data/radio-demos.json
Stack offered and runs status
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 | ESP32-C6-DevKitC-1-N8 | LP-EM-CC2755P10 | LP-EM-CC35X1 | IWRL6432BOOST |
|---|---|---|---|---|---|---|---|---|---|
| ble | Works | Works | Works | Works | |||||
| ble-proxy-zigbee-ed | Not for this chip | ||||||||
| ble-zephyr-ti-fork | Not for this chip | ||||||||
| ble-zephyr-upstream | Not for this chip | ||||||||
| dmm | Not for this chip | Works | Works | ||||||
| matlab-support-package | |||||||||
| matter | Not for this chip | yes | |||||||
| mmwave-l-sdk-host | Not for this chip | ||||||||
| none | n/a | ||||||||
| ota-ble | Works48 MHz | ||||||||
| ota-zigbee | Not for this chip | ||||||||
| proprietary | |||||||||
| radar-toolbox | |||||||||
| sub1ghz | |||||||||
| sub1ghz-bare-host-hal | |||||||||
| sub1ghz-cc1407p | Works80 MHz | ||||||||
| sub1ghz-zephyr-cc140xp-samples | |||||||||
| thread | Not for this chip | Works | yes160 MHz | ||||||
| thread-ftd | Works | ||||||||
| thread-rcp | Works | Works | |||||||
| thread-two-radios | Works | ||||||||
| visualizer-mac | |||||||||
| wifi | Not for this chip | Works | |||||||
| zigbee | Works | Works | yes160 MHz, 1 run | ||||||
| zigbee-thread | Not for this chip | ||||||||
| zigbee-zha-end-device | Works |
Sources
board-to-board/thread-two-radios-2026-10-06/README.md, board-to-board/zigbee-cc1354-cc2340/README.md, cc1354p10/README.md, cc1354p10/dmm-zigbee-ble/README.md, cc1354p10/thread/README.md, cc1354p10/zigbee-sleepy-sensor/README.md, cc2340r5/FAQ.md, cc2340r5/matrix/README.md, cc2340r5/oad/logs/2026-11-02/oad-run4.json, cc2340r5/thread/README.md, cc2340r5/zephyr-ti/README.md, cc2340r5/zigbee/README.md, cc2755p10/README.md, cc2755p10/host-cc1407p/README.md, cc3200-launchxl/README.md, cc35x1/README.md, docs/experiments/2026-10-24-cc2755p10-cc1407p-host-on-silicon.md, esp32c6/proxy/frl-ble-proxy-zigbee.yaml, esp32c6/zigbee/README.md, esp32c6/zigbee/zb-thread-merge/main.patch, iwrl6432boost/README.md, mspm0g5187/radio/README.md
Setpoint or state change still works with the internet cable pulled yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| alexa | |
| apple-home | |
| google-home | |
| home-assistant |
Sources
cc35x1/matter/COMPATIBILITY.md
Controllers that hold one device at once and all still control it controllers, higher is better
| Variant | LP-EM-CC35X1 |
|---|---|
| (one way) |
Sources
cc35x1/matter/COMPATIBILITY.md
Setup again after a reflash and factory reset, per platform s, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| alexa | |
| apple-home | |
| google-home | |
| home-assistant |
Sources
cc35x1/matter/COMPATIBILITY.md
Button press on a Bluetooth LE HID device to the host's action (a media key changing the player), median of 20 ms, lower is better
| Variant | LP-EM-CC2340R5 |
|---|---|
| macos-music |
Sources
ports/ble-hid-remote/README.md
Input change on the board to the notification on the central, on the central's clock ms, lower is better
| Variant | LP-EM-CC2340R5 |
|---|---|
| nordic-lbs-button-uart-stand-in | 23.8 to 29.848 MHz |
Sources
Run records are in the notebook, not this copy.
Bluetooth LE HID device paired and bonded by the host's own settings, no app: time from the host's pairing request to bonded s, lower is better
| Variant | LP-EM-CC2340R5 |
|---|---|
| macos-just-works | 1211 run |
Sources
Run records are in the notebook, not this copy.
Advertisement callbacks per second a Mac scanner (bleak) reports for the gamepad, 30 s windows 1/s
| Variant | LP-EM-CC2340R5 | ESP32-C6-DevKitC-1-N8 |
|---|---|---|
| arduino-nimble-library | 4.1 to 9.5 | |
| core-ticlang-ble-hogp | 2 to 3.248 MHz |
Sources
Run records are in the notebook, not this copy.
Time for the Mac (bleak) to connect to the gamepad, median of 4 connects ms, lower is better
| Variant | LP-EM-CC2340R5 | ESP32-C6-DevKitC-1-N8 |
|---|---|---|
| arduino-nimble-library | 11 to 12 | |
| core-ticlang-ble-hogp | 31,341 to 31,39148 MHz |
Sources
Run records are in the notebook, not this copy.
Edge AI
A hardware AI engine against the CPU, same model
The MSPM0 G5187's NPU answers 2 to 22 times faster than its own CPU. The SK-TDA4VM's C7x is 13 to 135 times faster than its A72 cores on the models shown.
The same model built for the accelerator and for the CPU, timed per answer.
Time per answer on the MSPM0 G5187 at 80 MHz, the same model built for the NPU and for the CPU by the same compiler.
SK-TDA4VM: the six fastest of 8 zoo models that ran on both; the rest are in the Linux block.
All rows
Room-occupancy model, one inference ms, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | SK-TDA4VM |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| npu | n/a | n/a | ||||||||||||||||
| Room occupancy: small, GCC 14 -O3 | 3.5196 MHz, 1 run | |||||||||||||||||
| Room occupancy: small, GCC 14 -Os | 10.496 MHz, 1 run | |||||||||||||||||
| Room occupancy: small, GCC -O3, on the A72 cores | 0.04472000 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O2, code in flash | 5.11 to 5.12120 MHz | 2.75 to 2.76160 MHz | ||||||||||||||||
| Room occupancy: small, plain C -O2, code in RAM | 4.31 to 4.32120 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O3 | 9.0580 MHz, 1 run | 21.9 to 2232 MHz, 1 run | Not for this chip | 9.0480 MHz, 1 run | 9.05 to 9.180 MHz, 1 run | 16.648 MHz | 6.2248 MHz | 3.696 MHz, 1 run | 2.17160 MHz | 1.86160 MHz, 1 run | 1.25200 MHz, 1 run | 2.696 MHz | 1.54160 MHz | |||||
| Room occupancy: small, plain C -O3, at 32 MHz | 7.7932 MHz, 1 run | |||||||||||||||||
| Room occupancy: small, plain C -O3, M33 core | 1.89150 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O3, M33 core, GCC 12 | 1.93150 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O3, code in RAM, M33 core | 1.9150 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O3, code in RAM, RISC-V core | 2.09150 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O3, RISC-V core | 2.1150 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O4, code in flash | 4.83 to 4.85120 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O4, code in RAM | 4.11120 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O4, speed setting 0, code in flash | 4.93 to 4.94120 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O4, speed setting 0, code in RAM | 4.12 to 4.13120 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O4, speed setting 5, code in flash | 4.81 to 4.82120 MHz | |||||||||||||||||
| Room occupancy: small, plain C -O4, speed setting 5, code in RAM | 4.09120 MHz | 2.37200 MHz | ||||||||||||||||
| Room occupancy: small, plain C -Os | 10.980 MHz, 1 run | 28.332 MHz, 1 run | Not for this chip | 10.980 MHz, 1 run | 10.980 MHz, 1 run | 2048 MHz | 9.8148 MHz | 10.496 MHz, 1 run | 3.82 to 3.83160 MHz | 2.62160 MHz, 1 run | 1.86200 MHz, 1 run | 3.8696 MHz | 2.32160 MHz | |||||
| Room occupancy: small, plain C -Os, M33 core | 4.36150 MHz | |||||||||||||||||
| Room occupancy: small, plain C -Os, M33 core, GCC 12 | 4.35150 MHz | |||||||||||||||||
| Room occupancy: small, plain C -Os, RISC-V core | 3.79150 MHz | |||||||||||||||||
| Room occupancy: small, GCC 12 -O3 | 15.3 to 15.548 MHz, 1 run | |||||||||||||||||
| Room occupancy: small, GCC 12 -Os | 28 to 28.248 MHz, 1 run | |||||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the CDE coprocessor | Not for this chip | |||||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU | 1280 MHz, 1 run | 1280 MHz, 1 run | 1280 MHz | 20.448 MHz | 2.6120 MHz | 1.38200 MHz | ||||||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU, at 32 MHz | 26.6 to 26.732 MHz | |||||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU, code in RAM | 2.97120 MHz | |||||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU, source built for the M33 | 6.0548 MHz | 2.7396 MHz | ||||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the NPU | 1.45 to 1.4980 MHz | 0.205200 MHz | ||||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the NPU, at 32 MHz | 3.23 to 3.3332 MHz | |||||||||||||||||
| Room occupancy: small, ST's GCC 14 -O3 | 15.3 to 15.448 MHz, 1 run | |||||||||||||||||
| Room occupancy: large, GCC 14 -O3 | 45.596 MHz, 1 run | |||||||||||||||||
| Room occupancy: large, GCC 14 -Os | 16396 MHz, 1 run | |||||||||||||||||
| Room occupancy: large, GCC -O3, on the A72 cores | 0.6862000 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O2, code in flash | 67.4120 MHz | 40.1160 MHz | ||||||||||||||||
| Room occupancy: large, plain C -O3 | 129.480 MHz, 1 run | Not for this chip | Not for this chip | 129.480 MHz, 1 run | 129.480 MHz, 1 run | 228.948 MHz | 96.448 MHz | 45.896 MHz, 1 run | 27.1 to 27.2160 MHz | 27.2160 MHz, 1 run | 18.7200 MHz, 1 run | 3996 MHz | 24.4160 MHz | |||||
| Room occupancy: large, plain C -O3, at 32 MHz | 116.732 MHz, 1 run | |||||||||||||||||
| Room occupancy: large, plain C -O3, M33 core | 27150 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O3, M33 core, GCC 12 | 27.6150 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O3, code in RAM, M33 core | 25.9150 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O3, code in RAM, RISC-V core | 27.3150 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O3, RISC-V core | 29150 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O4, code in flash | 65.4 to 65.5120 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O4, code in RAM | Not for this chip | |||||||||||||||||
| Room occupancy: large, plain C -O4, speed setting 0, code in flash | 66.6 to 66.7120 MHz | |||||||||||||||||
| Room occupancy: large, plain C -O4, speed setting 5, code in flash | 65.3 to 65.4120 MHz | 47.9200 MHz | ||||||||||||||||
| Room occupancy: large, plain C -Os | 199.480 MHz, 1 run | Not for this chip | Not for this chip | 145.380 MHz, 1 run | 145.3 to 145.480 MHz, 1 run | 30848 MHz | 155.248 MHz | 16396 MHz, 1 run | 57.1 to 57.2160 MHz | 39.7160 MHz, 1 run | 28.6200 MHz, 1 run | 59.696 MHz | 36.3160 MHz | |||||
| Room occupancy: large, plain C -Os, M33 core | 71.6150 MHz | |||||||||||||||||
| Room occupancy: large, plain C -Os, M33 core, GCC 12 | 71.6150 MHz | |||||||||||||||||
| Room occupancy: large, plain C -Os, RISC-V core | 61.9150 MHz | |||||||||||||||||
| Room occupancy: large, GCC 12 -O3 | 185.2 to 185.448 MHz, 1 run | |||||||||||||||||
| Room occupancy: large, GCC 12 -Os | 414.6 to 414.748 MHz, 1 run | |||||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the CDE coprocessor | Not for this chip | |||||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU | 159.180 MHz, 1 run | 159.280 MHz, 1 run | 159.280 MHz | 267.848 MHz | 30.8120 MHz | 22.9200 MHz | ||||||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU, at 32 MHz | 357.4 to 357.532 MHz | |||||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU, code in RAM | Not for this chip | |||||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU, source built for the M33 | 9148 MHz | 40.696 MHz | ||||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the NPU | 69.480 MHz | 9.53200 MHz | ||||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the NPU, at 32 MHz | 161 to 161.132 MHz | |||||||||||||||||
| Room occupancy: large, ST's GCC 14 -O3 | 185.7 to 185.848 MHz, 1 run | |||||||||||||||||
| Room occupancy: tiny, GCC 14 -O3 | 1.6896 MHz, 1 run | |||||||||||||||||
| Room occupancy: tiny, GCC 14 -Os | 3.0796 MHz, 1 run | |||||||||||||||||
| Room occupancy: tiny, GCC -O3, on the A72 cores | 0.01742000 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O2, code in flash | 1.98120 MHz | 1.23 to 1.25160 MHz | ||||||||||||||||
| Room occupancy: tiny, plain C -O2, code in RAM | 1.72 to 1.73120 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O3 | 480 MHz, 1 run | 9.3 to 9.632 MHz, 1 run | Not for this chip | 3.9180 MHz, 1 run | 3.92 to 4.0280 MHz, 1 run | 7.0348 MHz | 2.3348 MHz | 1.6696 MHz, 1 run | 1.12 to 1.14160 MHz | 0.749160 MHz, 1 run | 0.489200 MHz, 1 run | 1.0196 MHz | 0.602160 MHz | |||||
| Room occupancy: tiny, plain C -O3, at 32 MHz | 3.0432 MHz, 1 run | |||||||||||||||||
| Room occupancy: tiny, plain C -O3, M33 core | 0.75150 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O3, M33 core, GCC 12 | 0.76150 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O3, code in RAM, M33 core | 0.759150 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O3, code in RAM, RISC-V core | 0.994150 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O3, RISC-V core | 0.988150 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O4, code in flash | 1.82 to 1.83120 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O4, code in RAM | 1.6120 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O4, speed setting 0, code in flash | 1.86 to 1.87120 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O4, speed setting 0, code in RAM | 1.6120 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O4, speed setting 5, code in flash | 1.8 to 1.81120 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -O4, speed setting 5, code in RAM | 1.58120 MHz | 0.893 to 0.896200 MHz | ||||||||||||||||
| Room occupancy: tiny, plain C -Os | 4.6880 MHz, 1 run | 12 to 12.232 MHz, 1 run | Not for this chip | 4.6780 MHz, 1 run | 4.68 to 4.7680 MHz, 1 run | 8.3748 MHz | 3.5448 MHz | 3.0796 MHz, 1 run | 1.62 to 1.64160 MHz | 0.965160 MHz, 1 run | 0.681200 MHz, 1 run | 1.4196 MHz | 0.84160 MHz | |||||
| Room occupancy: tiny, plain C -Os, M33 core | 1.38150 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -Os, M33 core, GCC 12 | 1.38150 MHz | |||||||||||||||||
| Room occupancy: tiny, plain C -Os, RISC-V core | 1.48150 MHz | |||||||||||||||||
| Room occupancy: tiny, GCC 12 -O3 | 8.16 to 8.3948 MHz, 1 run | |||||||||||||||||
| Room occupancy: tiny, GCC 12 -Os | 11 to 11.248 MHz, 1 run | |||||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CDE coprocessor | Not for this chip | |||||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU | 4.9580 MHz, 1 run | 4.9380 MHz, 1 run | 4.94 to 4.9780 MHz | 7.9648 MHz | 1.12 to 1.13120 MHz | 0.499200 MHz | ||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, at 32 MHz | 10.932 MHz | |||||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, code in RAM | 1.11 to 1.12120 MHz | |||||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, source built for the M33 | 2.1348 MHz | 0.95296 MHz | ||||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the NPU | 1.29 to 1.3280 MHz | 0.107200 MHz | ||||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the NPU, at 32 MHz | 2.88 to 2.9432 MHz | |||||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the NPU, container | 0.106200 MHz | |||||||||||||||||
| Room occupancy: tiny, ST's GCC 14 -O3 | 8.05 to 8.2648 MHz, 1 run | |||||||||||||||||
| Room occupancy: medium, GCC 14 -O3 | 12.696 MHz, 1 run | |||||||||||||||||
| Room occupancy: medium, GCC 14 -Os | 42.996 MHz, 1 run | |||||||||||||||||
| Room occupancy: medium, GCC -O3, on the A72 cores | 0.1932000 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O2, code in flash | 18.2 to 18.3120 MHz | 10.1160 MHz | ||||||||||||||||
| Room occupancy: medium, plain C -O3 | 35.380 MHz, 1 run | 83.7 to 83.832 MHz, 1 run | Not for this chip | 35.380 MHz, 1 run | 35.380 MHz, 1 run | 63.248 MHz | 25.848 MHz | 12.696 MHz, 1 run | 7.14 to 7.16160 MHz | 7.38160 MHz, 1 run | 5.05200 MHz, 1 run | 10.596 MHz | 6.25160 MHz | |||||
| Room occupancy: medium, plain C -O3, at 32 MHz | 31.532 MHz, 1 run | |||||||||||||||||
| Room occupancy: medium, plain C -O3, M33 core | 6.82150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O3, M33 core, GCC 12 | 7150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O3, code in RAM, M33 core | 6.99150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O3, code in RAM, RISC-V core | 7.58150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O3, RISC-V core | 7.5150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O4, code in flash | 17.6120 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O4, code in RAM | Not for this chip | |||||||||||||||||
| Room occupancy: medium, plain C -O4, speed setting 0, code in flash | 17.9120 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O4, speed setting 5, code in flash | 17.5120 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -O4, speed setting 5, code in RAM | 8.38 to 8.39200 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -Os | 39.980 MHz, 1 run | 99.9 to 10032 MHz, 1 run | Not for this chip | 39.980 MHz, 1 run | 39.9 to 4080 MHz, 1 run | 83.248 MHz | 4148 MHz | 42.996 MHz, 1 run | 15.1 to 15.2160 MHz | 10.6160 MHz, 1 run | 7.61200 MHz, 1 run | 15.896 MHz | 9.45160 MHz | |||||
| Room occupancy: medium, plain C -Os, M33 core | 18150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -Os, M33 core, GCC 12 | 18150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -Os, RISC-V core | 15.2150 MHz | |||||||||||||||||
| Room occupancy: medium, plain C -Os, with Bluetooth running | 71.948 MHz | |||||||||||||||||
| Room occupancy: medium, GCC 12 -O3 | 51.6 to 51.848 MHz, 1 run | |||||||||||||||||
| Room occupancy: medium, GCC 12 -Os | 109.9 to 11048 MHz, 1 run | |||||||||||||||||
| Room occupancy: medium, low-power core, network only | 213.8 to 213.9160 MHz | |||||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the CDE coprocessor | Not for this chip | |||||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU | 45.680 MHz, 1 run | 45.680 MHz, 1 run | 45.6 to 45.780 MHz | 77.148 MHz | 9.05 to 9.06120 MHz | 5.54200 MHz | ||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, at 32 MHz | 101 to 101.132 MHz | |||||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, code in RAM | Not for this chip | |||||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, source built for the M33 | 24.448 MHz | 10.896 MHz | ||||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the NPU | 2.12 to 2.1580 MHz | 0.63200 MHz | ||||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the NPU, at 32 MHz | 4.77 to 4.8432 MHz | |||||||||||||||||
| Room occupancy: medium, ST's GCC 14 -O3 | 52 to 52.148 MHz, 1 run | |||||||||||||||||
| occ_float_2k-ort-int8-infloat-nnc | 1.56200 MHz | |||||||||||||||||
| occ_float_2k-ort-int8-nnc | 1.61200 MHz | |||||||||||||||||
| occ_float_2k-ti-ptq-nnc-npu | 0.205200 MHz | |||||||||||||||||
| occ_float_30k-ort-int8-infloat-nnc | 21.3200 MHz | |||||||||||||||||
| occ_float_30k-ort-int8-nnc | 21.4200 MHz | |||||||||||||||||
| occ_float_30k-ti-ptq-nnc-npu | 9.46200 MHz | |||||||||||||||||
| occ_float_500-ort-int8-infloat-nnc | 0.645200 MHz | |||||||||||||||||
| occ_float_500-ort-int8-nnc | 0.655200 MHz | |||||||||||||||||
| occ_float_500-ti-ptq-nnc-npu | 0.107200 MHz | |||||||||||||||||
| occ_float_8k-ort-int8-infloat-nnc | 6.44200 MHz | |||||||||||||||||
| occ_float_8k-ort-int8-nnc | 6.45200 MHz | |||||||||||||||||
| occ_float_8k-ti-ptq-nnc-npu | 0.63200 MHz |
Sources
cc35x1/occ/occ_run.c
Room-occupancy model fits and passes 20 of 20 yes/no
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Room occupancy: small | Works80 MHz, 1 run | Works32 MHz, 1 run | Not for this chip | Works80 MHz, 1 run | Works80 MHz | yes48 MHz | yes48 MHz | Works48 MHz, 1 run | Works96 MHz, 1 run | Works160 MHz | yes160 MHz, 1 run | yes200 MHz, 1 run | yes96 MHz, 1 run | yes160 MHz | ||
| Room occupancy: small, plain C -O4, code in flash | yes120 MHz, 1 run | |||||||||||||||
| Room occupancy: small, plain C -O4, code in RAM | yes120 MHz, 1 run | |||||||||||||||
| Room occupancy: small, plain C -O4, speed setting 5, code in RAM | yes200 MHz, 1 run | |||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU | yes120 MHz | |||||||||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU, code in RAM | yes120 MHz | |||||||||||||||
| Room occupancy: large | Works80 MHz, 1 run | Not for this chip | Not for this chip | Works80 MHz, 1 run | Works80 MHz | yes48 MHz | yes48 MHz | Works48 MHz, 1 run | Works96 MHz, 1 run | Works160 MHz | yes160 MHz, 1 run | yes200 MHz, 1 run | yes96 MHz, 1 run | yes160 MHz | ||
| Room occupancy: large, plain C -O2, code in RAM | Not for this chip | |||||||||||||||
| Room occupancy: large, plain C -O4, code in flash | yes120 MHz, 1 run | |||||||||||||||
| Room occupancy: large, plain C -O4, code in RAM | Not for this chip | |||||||||||||||
| Room occupancy: large, plain C -O4, speed setting 0, code in RAM | Not for this chip | |||||||||||||||
| Room occupancy: large, plain C -O4, speed setting 5, code in flash | yes200 MHz, 1 run | |||||||||||||||
| Room occupancy: large, plain C -O4, speed setting 5, code in RAM | Not for this chip | Not for this chip | ||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU | yes120 MHz | |||||||||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU, code in RAM | Not for this chip | |||||||||||||||
| Room occupancy: large, under Zephyr | Works96 MHz, 1 run | |||||||||||||||
| Room occupancy: tiny | Works80 MHz, 1 run | Works32 MHz, 1 run | Not for this chip | Works80 MHz, 1 run | Works80 MHz | yes48 MHz | yes48 MHz | Works48 MHz, 1 run | Works96 MHz, 1 run | Works160 MHz | yes160 MHz, 1 run | yes200 MHz, 1 run | yes96 MHz, 1 run | yes160 MHz | ||
| Room occupancy: tiny, plain C -O4, code in flash | yes120 MHz, 1 run | |||||||||||||||
| Room occupancy: tiny, plain C -O4, code in RAM | yes120 MHz, 1 run | |||||||||||||||
| Room occupancy: tiny, plain C -O4, speed setting 5, code in RAM | yes200 MHz, 1 run | |||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU | yes120 MHz | |||||||||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, code in RAM | yes120 MHz | |||||||||||||||
| Room occupancy: medium | Works80 MHz, 1 run | Works32 MHz, 1 run | Not for this chip | Works80 MHz, 1 run | Works80 MHz | yes48 MHz | yes48 MHz | Works48 MHz, 1 run | Works96 MHz, 1 run | Works160 MHz | yes160 MHz, 1 run | yes200 MHz, 1 run | yes96 MHz, 1 run | yes160 MHz | ||
| Room occupancy: medium, plain C -O2, code in RAM | Not for this chip | |||||||||||||||
| Room occupancy: medium, plain C -O4, code in flash | yes120 MHz, 1 run | |||||||||||||||
| Room occupancy: medium, plain C -O4, code in RAM | Not for this chip | |||||||||||||||
| Room occupancy: medium, plain C -O4, speed setting 0, code in RAM | Not for this chip | |||||||||||||||
| Room occupancy: medium, plain C -O4, speed setting 5, code in RAM | Not for this chip | yes200 MHz, 1 run | ||||||||||||||
| Room occupancy: medium, plain C -Os, with Bluetooth running | yes48 MHz | |||||||||||||||
| Room occupancy: medium, low-power core, whole program | Not for this chip | |||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU | yes120 MHz | |||||||||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, code in RAM | Not for this chip |
Sources
cc35x1/occ/occ_run.c, docs/experiments/2026-10-11-frdm-mcxa153-model-under-zephyr.md
Room-occupancy model: weights plus model code (plus the NNC runtime it links), from the linker map B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-AM13E230 | LP-EM-CC2755P10 | LAUNCHXL-F28P65X |
|---|---|---|---|---|---|---|---|---|---|---|
| character_recognition | 66.4 kB1 run | |||||||||
| character_recognition_npu | 71.4 kB1 run | |||||||||
| ecg_anomaly_detection_ai | 63.5 kB1 run | |||||||||
| ecg_anomaly_detection_ai_npu | 86.9 kB1 run | |||||||||
| fall_detection_ai | 12.6 kB1 run | |||||||||
| fall_detection_ai_npu | 13.8 kB1 run | |||||||||
| motor_fan_blade_fault_ai | 1.4 kB1 run | |||||||||
| motor_fan_blade_fault_ai_npu | 2.1 kB1 run | |||||||||
| Room occupancy: small, plain C -O2, code in flash | 5.3 kB1 run | |||||||||
| Room occupancy: small, plain C -O2, code in RAM | 5.3 kB1 run | |||||||||
| Room occupancy: small, plain C -O3 | 9.5 kB1 run | 9.5 kB1 run | 9.5 kB1 run | 9.5 kB1 run | 9.5 kB1 run | 10.1 kB1 run | 10.1 kB1 run | 10.1 kB1 run | ||
| Room occupancy: small, plain C -O4, code in flash | 4.9 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, code in RAM | 4.9 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 0, code in flash | 4.9 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 0, code in RAM | 4.9 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 5, code in flash | 5.4 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 5, code in RAM | 5.4 kB1 run | 5.4 kB1 run | ||||||||
| Room occupancy: small, plain C -Os | 3.1 kB1 run | 3.1 kB1 run | 3.1 kB1 run | 3.1 kB1 run | 3.1 kB1 run | 3.1 kB1 run | 3.1 kB1 run | 3.1 kB1 run | ||
| Room occupancy: small, TI neural-network compiler, on the CPU | 5.3 kB1 run | 5.3 kB1 run | 5.3 kB1 run | 5.3 kB1 run | 10.4 kB1 run | 12.5 kB1 run | ||||
| Room occupancy: small, TI neural-network compiler, on the CPU, code in RAM | 10.4 kB1 run | |||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU, source built for the M33 | 12 kB1 run | 12 kB1 run | ||||||||
| Room occupancy: small, TI neural-network compiler, on the NPU | 6.5 kB1 run | 9 kB1 run | ||||||||
| Room occupancy: large, plain C -O2, code in flash | 67.1 kB1 run | |||||||||
| Room occupancy: large, plain C -O3 | 40.7 kB1 run | 40.7 kB1 run | 40.7 kB1 run | 40.7 kB1 run | 40.8 kB1 run | 40.8 kB1 run | 40.8 kB1 run | |||
| Room occupancy: large, plain C -O4, code in flash | 66.8 kB1 run | |||||||||
| Room occupancy: large, plain C -O4, speed setting 0, code in flash | 66.8 kB1 run | |||||||||
| Room occupancy: large, plain C -O4, speed setting 5, code in flash | 67.2 kB1 run | 67.2 kB1 run | ||||||||
| Room occupancy: large, plain C -Os | 34.6 kB1 run | 34.6 kB1 run | 34.6 kB1 run | 34.6 kB1 run | 34.6 kB1 run | 34.6 kB1 run | 34.6 kB1 run | |||
| Room occupancy: large, TI neural-network compiler, on the CPU | 37.9 kB1 run | 37.9 kB1 run | 37.9 kB1 run | 37.9 kB1 run | 73.4 kB1 run | 45.1 kB1 run | ||||
| Room occupancy: large, TI neural-network compiler, on the CPU, source built for the M33 | 43.7 kB1 run | 43.7 kB1 run | ||||||||
| Room occupancy: large, TI neural-network compiler, on the NPU | 59.8 kB1 run | 62.5 kB1 run | ||||||||
| Room occupancy: tiny, plain C -O2, code in flash | 2.8 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O2, code in RAM | 2.8 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O3 | 6.3 kB1 run | 6.3 kB1 run | 6.3 kB1 run | 6.3 kB1 run | 6.3 kB1 run | 6.7 kB1 run | 6.7 kB1 run | 6.7 kB1 run | ||
| Room occupancy: tiny, plain C -O4, code in flash | 2.5 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, code in RAM | 2.5 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 0, code in flash | 2.5 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 0, code in RAM | 2.5 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 5, code in flash | 2.9 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 5, code in RAM | 2.9 kB1 run | 2.9 kB1 run | ||||||||
| Room occupancy: tiny, plain C -Os | 1.7 kB1 run | 1.7 kB1 run | 1.7 kB1 run | 1.7 kB1 run | 1.7 kB1 run | 1.7 kB1 run | 1.7 kB1 run | 1.7 kB1 run | ||
| Room occupancy: tiny, TI neural-network compiler, on the CPU | 2.6 kB1 run | 2.6 kB1 run | 2.6 kB1 run | 2.6 kB1 run | 5 kB1 run | 7 kB1 run | ||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, code in RAM | 5 kB1 run | |||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, source built for the M33 | 6.5 kB1 run | 6.5 kB1 run | ||||||||
| Room occupancy: tiny, TI neural-network compiler, on the NPU | 4.7 kB1 run | 7.1 kB1 run | ||||||||
| Room occupancy: medium, plain C -O2, code in flash | 18.8 kB1 run | |||||||||
| Room occupancy: medium, plain C -O3 | 16.6 kB1 run | 16.6 kB1 run | 16.6 kB1 run | 16.6 kB1 run | 16.6 kB1 run | 16.6 kB1 run | 16.6 kB1 run | 16.6 kB1 run | ||
| Room occupancy: medium, plain C -O4, code in flash | 18.5 kB1 run | |||||||||
| Room occupancy: medium, plain C -O4, speed setting 0, code in flash | 18.5 kB1 run | |||||||||
| Room occupancy: medium, plain C -O4, speed setting 5, code in flash | 18.9 kB1 run | |||||||||
| Room occupancy: medium, plain C -O4, speed setting 5, code in RAM | 18.9 kB1 run | |||||||||
| Room occupancy: medium, plain C -Os | 10.1 kB1 run | 10.1 kB1 run | 10.1 kB1 run | 10.1 kB1 run | 10.1 kB1 run | 10 kB1 run | 10 kB1 run | 10 kB1 run | ||
| Room occupancy: medium, TI neural-network compiler, on the CPU | 12.6 kB1 run | 12.6 kB1 run | 12.6 kB1 run | 12.6 kB1 run | 24.6 kB1 run | 20.5 kB1 run | ||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, source built for the M33 | 19.2 kB1 run | 19.2 kB1 run | ||||||||
| Room occupancy: medium, TI neural-network compiler, on the NPU | 14 kB1 run | 16.6 kB1 run |
Sources
data/ai-model-sizes.csv, docs/experiments/2026-10-09-mspm0g5187-npu-vs-cpu.md
Room-occupancy model: scratch RAM (activation buffers), from the linker map B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-AM13E230 | LP-EM-CC2755P10 | LAUNCHXL-F28P65X |
|---|---|---|---|---|---|---|---|---|---|---|
| character_recognition | 8 kB1 run | |||||||||
| character_recognition_npu | 10.7 kB1 run | |||||||||
| ecg_anomaly_detection_ai | 18 kB1 run | |||||||||
| ecg_anomaly_detection_ai_npu | 12.9 kB1 run | |||||||||
| fall_detection_ai | 9601 run | |||||||||
| fall_detection_ai_npu | 7321 run | |||||||||
| motor_fan_blade_fault_ai | 1 kB1 run | |||||||||
| motor_fan_blade_fault_ai_npu | 8721 run | |||||||||
| Room occupancy: small, plain C -O2, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: small, plain C -O2, code in RAM | 1.2 kB1 run | |||||||||
| Room occupancy: small, plain C -O3 | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | ||
| Room occupancy: small, plain C -O4, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, code in RAM | 1.2 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 0, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 0, code in RAM | 1.2 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 5, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: small, plain C -O4, speed setting 5, code in RAM | 1.2 kB1 run | 1.2 kB1 run | ||||||||
| Room occupancy: small, plain C -Os | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | ||
| Room occupancy: small, TI neural-network compiler, on the CPU | 1.5 kB1 run | 1.5 kB1 run | 1.5 kB1 run | 1.5 kB1 run | 3.1 kB1 run | 1.5 kB1 run | ||||
| Room occupancy: small, TI neural-network compiler, on the CPU, code in RAM | 3.1 kB1 run | |||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU, source built for the M33 | 1.5 kB1 run | 1.5 kB1 run | ||||||||
| Room occupancy: small, TI neural-network compiler, on the NPU | 7001 run | 7001 run | ||||||||
| Room occupancy: large, plain C -O2, code in flash | 4.2 kB1 run | |||||||||
| Room occupancy: large, plain C -O3 | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | |||
| Room occupancy: large, plain C -O4, code in flash | 4.2 kB1 run | |||||||||
| Room occupancy: large, plain C -O4, speed setting 0, code in flash | 4.2 kB1 run | |||||||||
| Room occupancy: large, plain C -O4, speed setting 5, code in flash | 4.2 kB1 run | 4.2 kB1 run | ||||||||
| Room occupancy: large, plain C -Os | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | 4.1 kB1 run | |||
| Room occupancy: large, TI neural-network compiler, on the CPU | 7 kB1 run | 7 kB1 run | 7 kB1 run | 7 kB1 run | 12.2 kB1 run | 7 kB1 run | ||||
| Room occupancy: large, TI neural-network compiler, on the CPU, source built for the M33 | 7 kB1 run | 7 kB1 run | ||||||||
| Room occupancy: large, TI neural-network compiler, on the NPU | 4.6 kB1 run | 4.6 kB1 run | ||||||||
| Room occupancy: tiny, plain C -O2, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O2, code in RAM | 1.2 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O3 | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | ||
| Room occupancy: tiny, plain C -O4, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, code in RAM | 1.2 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 0, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 0, code in RAM | 1.2 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 5, code in flash | 1.2 kB1 run | |||||||||
| Room occupancy: tiny, plain C -O4, speed setting 5, code in RAM | 1.2 kB1 run | 1.2 kB1 run | ||||||||
| Room occupancy: tiny, plain C -Os | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | 1.1 kB1 run | ||
| Room occupancy: tiny, TI neural-network compiler, on the CPU | 1.3 kB1 run | 1.3 kB1 run | 1.3 kB1 run | 1.3 kB1 run | 1.8 kB1 run | 1.3 kB1 run | ||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, code in RAM | 1.8 kB1 run | |||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, source built for the M33 | 1.3 kB1 run | 1.3 kB1 run | ||||||||
| Room occupancy: tiny, TI neural-network compiler, on the NPU | 5481 run | 5481 run | ||||||||
| Room occupancy: medium, plain C -O2, code in flash | 2.2 kB1 run | |||||||||
| Room occupancy: medium, plain C -O3 | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | ||
| Room occupancy: medium, plain C -O4, code in flash | 2.2 kB1 run | |||||||||
| Room occupancy: medium, plain C -O4, speed setting 0, code in flash | 2.2 kB1 run | |||||||||
| Room occupancy: medium, plain C -O4, speed setting 5, code in flash | 2.2 kB1 run | |||||||||
| Room occupancy: medium, plain C -O4, speed setting 5, code in RAM | 2.2 kB1 run | |||||||||
| Room occupancy: medium, plain C -Os | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | 2.1 kB1 run | ||
| Room occupancy: medium, TI neural-network compiler, on the CPU | 3.5 kB1 run | 3.5 kB1 run | 3.5 kB1 run | 3.5 kB1 run | 6.1 kB1 run | 3.5 kB1 run | ||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, source built for the M33 | 3.5 kB1 run | 3.5 kB1 run | ||||||||
| Room occupancy: medium, TI neural-network compiler, on the NPU | 1.4 kB1 run | 1.4 kB1 run |
Sources
data/ai-model-sizes.csv, docs/experiments/2026-10-09-mspm0g5187-npu-vs-cpu.md
BitNetMCU handwritten digit, one inference cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-EM-CC2755P10 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 12k-gcc12-o3-96mhz | 245k96 MHz, 1 run | |||||||||||
| 12k-ticlang-o3-32mhz | 430k32 MHz | 413k32 MHz | 430k32 MHz | 430k32 MHz | ||||||||
| 1k-gcc-o3-150mhz-m33 | 51k150 MHz | |||||||||||
| 1k-gcc-o3-150mhz-riscv | 57k150 MHz | |||||||||||
| 1k-gcc12-o3-96mhz | 44k96 MHz, 1 run | |||||||||||
| 1k-ticlang-o3-160mhz | 36k160 MHz | |||||||||||
| 1k-ticlang-o3-32mhz | 89k32 MHz | 80k32 MHz | 89k32 MHz | 89k32 MHz | ||||||||
| 1k-ticlang-o3-48mhz | 100k48 MHz | 45k48 MHz | ||||||||||
| 1k-ticlang-o3-96mhz | 36k96 MHz | |||||||||||
| cnn-16small-gcc12-o3-96mhz | 332k96 MHz, 1 run | |||||||||||
| cnn-64-c2000-o4s5-120mhz-flash | 2.9M120 MHz, 1 run | |||||||||||
| cnn-64-c2000-o4s5-120mhz-ram | 2.55M120 MHz, 1 run | |||||||||||
| cnn16-small-ticlang-o3-32mhz | 661k32 MHz | 650k32 MHz | 661k32 MHz | 661k32 MHz | ||||||||
| cnn64-gcc-o3-150mhz-m33 | 1.44M150 MHz | |||||||||||
| cnn64-gcc-o3-150mhz-riscv | 1.26M150 MHz | |||||||||||
| cnn64-gcc12-o3-96mhz | 1.3M96 MHz, 1 run | |||||||||||
| cnn64-ticlang-o3-160mhz | 1.5M160 MHz | |||||||||||
| cnn64-ticlang-o3-32mhz | 2.64M32 MHz | 2.65M32 MHz | 2.64M32 MHz | 2.64M32 MHz | ||||||||
| cnn64-ticlang-o3-32mhz-sramloops | 2.95M32 MHz | |||||||||||
| cnn64-ticlang-o3-48mhz | 2.76M48 MHz | 1.13M48 MHz | ||||||||||
| cnn64-ticlang-o3-80mhz | 2.75M80 MHz | 2.75M80 MHz | 2.75M80 MHz | |||||||||
| cnn64-ticlang-o3-96mhz | 1.09M96 MHz | |||||||||||
| (one way) |
Sources
ports/bitnetmcu/README.md
Vendor AI example, one inference ms, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| arc_fault | 11.1120 MHz, 1 run | 41.532 MHz, 1 run | 0.648200 MHz, 1 run | 2.93400 MHz | |||||||||
| arc_fault-xip | 3.11400 MHz | ||||||||||||
| arc_fault-xip-l2-64k | 2.93400 MHz | ||||||||||||
| bitnetmcu-1k | 1024 MHz, 1 run | ||||||||||||
| bitnetmcu-cnn16 | Not for this chip | ||||||||||||
| blower_imbalance | 6.25120 MHz, 1 run | 2332 MHz, 1 run | 0.401200 MHz, 1 run | 1.72400 MHz | |||||||||
| blower_imbalance-xip | 1.79400 MHz | ||||||||||||
| blower_imbalance-xip-l2-64k | 1.72400 MHz | ||||||||||||
| character_recognition | 91.980 MHz | 18.1160 MHz, 1 run | |||||||||||
| character_recognition_npu | 10.180 MHz | ||||||||||||
| deploy-and-live-preview-examples | |||||||||||||
| ecg_anomaly_detection_ai | 496.580 MHz | ||||||||||||
| ecg_anomaly_detection_ai_npu | 96.680 MHz | ||||||||||||
| fall_detection_ai | 8.5780 MHz | ||||||||||||
| fall_detection_ai_npu | 1.4480 MHz | ||||||||||||
| fan_blade_anomalydetection | 23.6120 MHz, 1 run | 5.43200 MHz, 1 run | 2.95400 MHz | ||||||||||
| fan_blade_anomalydetection-xip | 4.96400 MHz | ||||||||||||
| fan_blade_anomalydetection-xip-l2-64k | 3.01400 MHz | ||||||||||||
| forecasting_pmsm_rotor_temp | 0.619120 MHz, 1 run | 0.172200 MHz, 1 run | 0.0623400 MHz | ||||||||||
| forecasting_pmsm_rotor_temp-xip | 0.0721400 MHz | ||||||||||||
| forecasting_pmsm_rotor_temp-xip-l2-64k | 0.0623400 MHz | ||||||||||||
| gearbox_fault_diagnosis_ai | 37.132 MHz | ||||||||||||
| gearbox_fault_diagnosis_ai_npu | 9.6532 MHz | ||||||||||||
| generic_timeseries_anomalydetection | 37.6120 MHz, 1 run | 67.132 MHz, 1 run | 10.6200 MHz, 1 run | 4.72400 MHz | |||||||||
| generic_timeseries_anomalydetection-xip | 6.52400 MHz | ||||||||||||
| generic_timeseries_anomalydetection-xip-l2-64k | 4.74400 MHz | ||||||||||||
| generic_timeseries_classification | 41.532 MHz, 1 run | 0.653200 MHz, 1 run | 3.39400 MHz | ||||||||||
| generic_timeseries_classification-xip | 3.49400 MHz | ||||||||||||
| generic_timeseries_classification-xip-l2-64k | 3.39400 MHz | ||||||||||||
| generic_timeseries_forecasting | 8.09120 MHz, 1 run | 1032 MHz, 1 run | 1.92200 MHz, 1 run | 0.914400 MHz | |||||||||
| generic_timeseries_forecasting-xip | 7.17400 MHz | ||||||||||||
| generic_timeseries_forecasting-xip-l2-64k | 6.29400 MHz | ||||||||||||
| generic_timeseries_regression | 0.216120 MHz, 1 run | 0.48932 MHz, 1 run | 0.0887200 MHz, 1 run | 0.704400 MHz | |||||||||
| generic_timeseries_regression-xip | 1.5400 MHz | ||||||||||||
| generic_timeseries_regression-xip-l2-64k | 0.712400 MHz | ||||||||||||
| hello_world_ai | 125.2 to 126.732 MHz, 1 run | 126.232 MHz | 126.332 MHz | ||||||||||
| hello_world_ai_npu | 1332 MHz | ||||||||||||
| hvac_indoor_temp_forecast | 1.04120 MHz, 1 run | 0.315200 MHz, 1 run | 0.117400 MHz | ||||||||||
| hvac_indoor_temp_forecast-xip | 0.147400 MHz | ||||||||||||
| hvac_indoor_temp_forecast-xip-l2-64k | 0.117400 MHz | ||||||||||||
| jerk_detection | |||||||||||||
| motor_bearing_fault_anomaly_detection_ai | 13.180 MHz, 1 run | ||||||||||||
| motor_bearing_fault_detection_ai | 175.7 to 176.180 MHz, 1 run | 106.880 MHz | |||||||||||
| motor_bearing_fault_detection_ai_npu | 1.2880 MHz | ||||||||||||
| motor_fan_blade_fault_ai | 1.7680 MHz | ||||||||||||
| motor_fan_blade_fault_ai_npu | 0.18280 MHz | ||||||||||||
| motor_fault | 6.26120 MHz, 1 run | 23.432 MHz, 1 run | 0.412200 MHz, 1 run | 0.96400 MHz | |||||||||
| motor_fault-xip | 0.96400 MHz | ||||||||||||
| motor_fault-xip-l2-64k | 0.96400 MHz | ||||||||||||
| pir_detection_ai | 65.332 MHz, 1 run | ||||||||||||
| torque_measurement | 5.6120 MHz, 1 run | 16.732 MHz, 1 run | 2.59200 MHz, 1 run | 1.2400 MHz | |||||||||
| torque_measurement-xip | 1.64400 MHz | ||||||||||||
| torque_measurement-xip-l2-64k | 1.2400 MHz | ||||||||||||
| wakeword-frame-o0 | 27.580 MHz, 1 run | ||||||||||||
| wakeword-frame-o2 | 24.180 MHz, 1 run | ||||||||||||
| wakeword-lpc-frame-o2 | 8.580 MHz, 1 run | ||||||||||||
| wakeword-npu-run-o2 | 11.280 MHz, 1 run | ||||||||||||
| washing_machine_load_weighing | 24.9120 MHz, 1 run | 31200 MHz, 1 run | 15.2400 MHz | ||||||||||
| washing_machine_load_weighing-xip | 16.3400 MHz | ||||||||||||
| washing_machine_load_weighing-xip-l2-64k | 15.2400 MHz | ||||||||||||
| waveform_classifier_ai | 54.3 to 54.480 MHz | 12.4160 MHz, 1 run | |||||||||||
| waveform_classifier_ai_npu | 5.86 to 6.0280 MHz | ||||||||||||
| (one way) | Not for this chip | Not for this chip |
Sources
am13e230/tools/build_ai.py, cc2755p10/README.md, data/benchmark-suite.json, docs/experiments/2026-10-08-mspm0c1104-1kb-ram.md
Presence model: windows classed right in a timed room protocol (empty, person still, person moving, empty; first 20 s of each phase not scored) %, higher is better
| Variant | LP-EM-CC35X1 |
|---|---|
| presence-lab-moving-variance | |
| presence-lab-pca | |
| presence-lab-ti-model | |
| wifi-csi-all | Not for this chip |
| wifi-csi-empty | 0.7160 MHz, 1 run |
| wifi-csi-empty-guest-33min | 99.5160 MHz, 1 run |
| wifi-csi-empty-overnight | 100160 MHz, 1 run |
| wifi-csi-moving | Not for this chip |
| wifi-csi-still | |
| wifi-presence-and-2x2-both | 84.2160 MHz, 1 run |
| wifi-presence-and-2x3 | 85.1160 MHz, 1 run |
| wifi-presence-empty-pass-2x2-both | 0160 MHz, 1 run |
| wifi-presence-empty-pass-2x3 | 0160 MHz, 1 run |
| wifi-presence-or-2x2-both | 34.4160 MHz, 1 run |
| wifi-presence-or-2x3 | 34.6160 MHz, 1 run |
| wifi-presence-radar-2x2-both | 84.2160 MHz, 1 run |
| wifi-presence-radar-2x3 | 85.1160 MHz, 1 run |
| wifi-presence-radar-confirms-wifi-2x2-both | 78160 MHz, 1 run |
| wifi-presence-radar-confirms-wifi-2x3 | 78.3160 MHz, 1 run |
| wifi-presence-wifi-2x2-both | 34.4160 MHz, 1 run |
| wifi-presence-wifi-2x3 | 34.6160 MHz, 1 run |
Sources
docs/experiments/2026-10-09-cc35x1-wifi-csi-presence.md
Presence model: host asks for the stream to the first result s, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| matter-csi-join-to-first-window | 6160 MHz, 1 run |
| matter-csi-window-period | 2.08 to 2.2160 MHz, 1 run |
| wifi-csi | 7.4160 MHz, 1 run |
Sources
docs/experiments/2026-10-09-cc35x1-wifi-csi-presence.md, docs/experiments/2026-10-12-cc35x1-matter-plus-wifi-presence.md
Deep-learning model: one inference, median wall time ms, lower is better
| Variant | SK-TDA4VM |
|---|---|
| deeplabv3-mobv2-ade20k-mlperf-512-tflitert-tidl-c7x | 12.1 |
| Segmentation (DeepLabV3-Lite), ONNX Runtime, on the A72 cores | 714.1 |
| Segmentation (DeepLabV3-Lite), ONNX Runtime, on the C7x | 7.3 |
| Segmentation (DeepLabV3-Lite, 768x432), ONNX Runtime, on the A72 cores | 900.5 |
| Segmentation (DeepLabV3-Lite, 768x432), ONNX Runtime, on the C7x | 11.8 |
| mobilenetv1-mlperf-224-tflitert-tidl-c7x | 2.17 |
| Image classification (RegNetX 200MF), ONNX Runtime, on the A72 cores | 37.4 |
| Image classification (RegNetX 200MF), ONNX Runtime, on the C7x | 2.89 |
| Object detection (SSD-Lite MobileNetV2), ONNX Runtime, on the A72 cores | 438.5 |
| Object detection (SSD-Lite MobileNetV2), ONNX Runtime, on the C7x | 6.1 |
| ssdlite-mobdet-320-tflitert-tidl-c7x | 6.4 |
| tvm-cl-3090-mobilenetv2-tv-tvmdlr | 2.93 to 3.41 |
| tvm-od-5120-ssdlite-mobdet-dsp-coco-320x320-tvmdlr | 13 to 13.3 |
| tvm-ss-5710-deeplabv3lite-mobv2-cocoseg21-512x512-tvmdlr | 8.85 to 9.08 |
| Object detection, small (lite), ONNX Runtime, on the A72 cores | 193 |
| Object detection, small (lite), ONNX Runtime, on the C7x | 4.66 |
| Object detection, medium, ONNX Runtime, on the A72 cores | 1,523.1 |
| Object detection, medium, ONNX Runtime, on the C7x | 11.7 |
| Face detection, ONNX Runtime, on the A72 cores | 1,504 |
| Face detection, ONNX Runtime, on the C7x | 11.2 |
| Pose estimation, ONNX Runtime, on the A72 cores | 1,767 |
| Pose estimation, ONNX Runtime, on the C7x | 13.8 |
Sources
Run records are in the notebook, not this copy.
Whole vision graph: decode, preprocess, inference, postprocess, sink fps, higher is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| file-pose-encode | 17.8 to 18.1 | |
| file-pose-encode-video0-30fps | 301 run | |
| file-ssd-lite-512-zerocopy-fakesink | 91.61 run | |
| file-yolox-nano-416-plain-fakesink | 56.2 | |
| file-yolox-nano-416-zerocopy-fakesink | 110.8 | |
| kmscube-1080p60-llvmpipe | 301 run | |
| three-pipelines-yolox-c7x | 216.41 run | |
| two-pipelines-yolox-plus-ssd-c7x | 163.61 run | |
| two-pipelines-yolox-twice-c7x | 182.41 run | |
| videotestsrc-ball-720p30-kmssink | 1.841 run | |
| videotestsrc-smpte-1080p60-kmssink | 5.921 run | |
| videotestsrc-smpte-720p60-kmssink | 27.11 run |
Sources
am62l-evm/README.md
TI's wake-word model ("OK Kilby"): utterances detected, of the number said (20 unless the conditions say 10), one Mac voice at one level hits, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| daniel-live-mic-vol70 | |
| daniel-replay-m20dbfs | 2080 MHz |
| fred-replay-m20dbfs | 2080 MHz |
| karen-replay-m20dbfs | 2080 MHz |
| kathy-replay-m20dbfs | 2080 MHz |
| ralph-replay-m20dbfs | 2080 MHz |
| samantha-live-mic-vol70 | |
| samantha-replay-m10dbfs | 1080 MHz |
| samantha-replay-m20dbfs | 2080 MHz |
| samantha-replay-m30dbfs | 1080 MHz |
| samantha-replay-m3dbfs | 1080 MHz |
| samantha-replay-m40dbfs | 1080 MHz |
Sources
mspm0g5187/wakeword/run_live.sh
TI's wake-word model: WAKE events in 10 minutes of silence or of other sentences spoken by the Mac per 10 min, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| live-silence | |
| live-speech | |
| replay-silence | 080 MHz, 1 run |
| replay-speech-near-miss | 1880 MHz, 1 run |
| replay-speech-plain | 080 MHz, 1 run |
Sources
mspm0g5187/wakeword/run_live.sh
TI's wake-word model: end of the spoken phrase to the board's WAKE line, median s, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| daniel-replay-m20dbfs | 0.0380 MHz |
| fred-replay-m20dbfs | 0.3680 MHz |
| karen-replay-m20dbfs | 0.4980 MHz |
| kathy-replay-m20dbfs | 0.4480 MHz |
| ralph-replay-m20dbfs | 0.3880 MHz |
| samantha-live-mic-vol70 | |
| samantha-replay-m20dbfs | 0.1880 MHz |
Sources
mspm0g5187/wakeword/run_live.sh
Voice assistant turn: end of the spoken question to the board's first reply audio, median s, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| xiaozhi-claude-haiku | 2.47 to 2.67160 MHz |
Sources
Run records are in the notebook, not this copy.
TI's wake-word example as built for the board's own microphone: flash and RAM (text plus data, bss) from the linker size report B, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| flash-i2s-o2 | 66.8 kB80 MHz, 1 run |
| flash-shipped | 59.7 kB1 run |
| ram-i2s-o2 | 25 kB80 MHz, 1 run |
| ram-shipped | 24.4 kB1 run |
Sources
Run records are in the notebook, not this copy.
Samples a second the wake-word example's audio input really delivers (the model was trained at 8,000), counted by the board against the Mac clock Hz, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| adc-shipped-o2 | 6,63080 MHz, 1 run |
| i2s-microphone | 7,74980 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
One block of a fixed-weight DSP graph on the TinyEngine NPU or the CPU (4 channels x 256 outputs unless the variant says) ms, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| bank8-c-hand-8ch | 22.780 MHz, 1 run |
| bank8-nnc-cpu | 36.780 MHz, 1 run |
| bank8-nnc-npu | 0.96780 MHz, 1 run |
| bank8_trip-nnc-cpu | 33.380 MHz, 1 run |
| bank8_trip-nnc-npu | 0.67780 MHz, 1 run |
| bank8_trip2-nnc-cpu | 33.380 MHz, 1 run |
| bank8_trip2-nnc-npu | 0.69480 MHz, 1 run |
| bank8_trip3-nnc-cpu | 33.780 MHz, 1 run |
| bank8_trip3-nnc-npu | 0.71380 MHz, 1 run |
| bank8_trips-nnc-cpu | 33.380 MHz, 1 run |
| bank8_trips-nnc-npu | 0.67780 MHz, 1 run |
| dft64-nnc-cpu | 0.8380 MHz, 1 run |
| dft64-nnc-npu | 0.19580 MHz, 1 run |
| fir64-c-hand-1ch | 3.2980 MHz, 1 run |
| fir64-c-hand-4ch | 12.280 MHz, 1 run |
| fir64-nnc-cpu | 16.880 MHz, 1 run |
| fir64-nnc-npu | 0.56680 MHz, 1 run |
| fir64_dec4-nnc-cpu | 4.380 MHz, 1 run |
| fir64_dec4-nnc-npu | 0.18580 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
NPU time against the same graph as NNC CPU code, or against hand-written C x, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| bank8-npu-vs-c-hand-8ch | 23.5 calc. |
| bank8-npu-vs-nnc-cpu | 38 calc. |
| bank8_trip-npu-vs-nnc-cpu | 49.1 calc. |
| bank8_trip2-npu-vs-nnc-cpu | 48 calc. |
| bank8_trip3-npu-vs-nnc-cpu | 47.2 calc. |
| bank8_trips-npu-vs-nnc-cpu | 49.1 calc. |
| dft64-npu-vs-nnc-cpu | 4.3 calc. |
| fir64-npu-vs-c-hand-4ch | 21.6 calc. |
| fir64-npu-vs-nnc-cpu | 29.7 calc. |
| fir64-npu4ch-vs-c-hand-1ch | 5.8 calc. |
| fir64_dec4-npu-vs-nnc-cpu | 23.3 calc. |
Sources
Run records are in the notebook, not this copy.
Signal to error ratio of the 8-bit graph against the float reference dB, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| fir64-ch0-total | 34.7 calc. |
| fir64-ch0-weights-only | 44.3 calc. |
| fir64-ch1-total | 34.6 calc. |
| fir64-ch1-weights-only | 53.5 calc. |
| fir64-ch2-total | 35.1 calc. |
| fir64-ch2-weights-only | 42.6 calc. |
| fir64-ch3-total | 35.4 calc. |
| fir64-ch3-weights-only | 47 calc. |
Sources
Run records are in the notebook, not this copy.
Images whose output equals the reference count, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| 16-images-vs-reference | 1680 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Flash text of the whole image with harness and NPU library B, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| bank8-nnc-cpu-ram | 20.4 kB1 run |
| bank8-nnc-npu-flash | 8.3 kB1 run |
| bank8-nnc-npu-ram | 8.1 kB1 run |
| bank8_trip-nnc-npu-flash | 6.9 kB1 run |
| bank8_trip-nnc-npu-ram | 6.1 kB1 run |
| dft64-nnc-npu-flash | 9.9 kB1 run |
| dft64-nnc-npu-ram | 2.6 kB1 run |
| fir64-nnc-npu-flash | 7.9 kB1 run |
| fir64-nnc-npu-ram | 4.9 kB1 run |
| fir64_dec4-nnc-npu-flash | 6.1 kB1 run |
| fir64_dec4-nnc-npu-ram | 3.4 kB1 run |
Sources
mspm0g5187/npu-dsp/build.sh
Energy per block on the NPU against the CPU uJ, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| (one way) |
Sources
mspm0g5187/npu-dsp/README.md
Streaming with the taps-1 overlap carried between blocks works yes/no
| Variant | LP-MSPM0G5187 |
|---|---|
| (one way) |
Sources
mspm0g5187/npu-dsp/README.md
Share of CPU time left free while the NPU runs a block %, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| (one way) |
Sources
mspm0g5187/npu-dsp/README.md
The same graph on the LP-AM13E230 yes/no
| Variant | LP-MSPM0G5187 |
|---|---|
| (one way) |
Sources
mspm0g5187/npu-dsp/README.md
Repeat runs without a reflash count, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| (one way) |
Sources
mspm0g5187/npu-dsp/README.md
Instructions per generated token (emulator count) instructions, lower is better
| Variant | LP-MSPM33C321A |
|---|---|
| tinystories260k-int8-gs4-o2-emulator | 4.81M to 5.14M1 run |
Sources
Run records are in the notebook, not this copy.
Deepest stack use while generating B, lower is better
| Variant | LP-MSPM33C321A |
|---|---|
| tinystories260k-int8-gs4-o2-emulator | 1.7 kB1 run |
Sources
ports/llama2c/README.md
Generated token ids equal to a reference build (greedy, temperature 0) count, higher is better
| Variant | LP-MSPM33C321A |
|---|---|
| int8-m33-emulator-vs-mac-greedy | 1281 run |
| int8-m33-emulator-vs-mac-seed42 | 391 run |
| int8-port-vs-runq-c-mac | 128 |
| int8-vs-float32-mac-greedy | 1281 run |
Sources
ports/llama2c/tools/check_host.sh
Tokens per second of a small language model tokens/s, higher is better
| Variant | LP-MSPM33C321A |
|---|---|
| llama2c-on-edumkii-screen-display-on | 19.1160 MHz, 1 run |
| llama2c-on-edumkii-screen-drawing-excluded | 21.1160 MHz, 1 run |
| tinystories260k-int8-gs4-o2-board | 21.2160 MHz |
| tinystories260k-int8-gs4-o2-estimate-160mhz | 25.8 calc. |
| tinystories260k-weights-in-qspi |
Sources
ports/llama2c/README.md, ports/llama2c/run_board.py
Seconds between stories when the model writes to the screen unattended s
| Variant | LP-MSPM33C321A |
|---|---|
| llama2c-on-edumkii-screen | 30160 MHz, 1 run |
Sources
ports/llama2c/README.md
The S2 button starts a new story on the screen yes/no
| Variant | LP-MSPM33C321A |
|---|---|
| llama2c-on-edumkii-screen |
Sources
ports/llama2c/README.md
Model from the training tool's own file, one inference, plain C from tools/byom ms, lower is better
| Variant | LP-MSPM0G5187 | LP-AM13E230 |
|---|---|---|
| dtree-c-o3 | 0.0014 to 0.0022200 MHz | |
| forest-c-o3 | 0.0243 to 0.0349200 MHz | |
| occ_float_2k-c-o3 | 1.19200 MHz | |
| occ_float_2k-fast-c-o3 | 0.846200 MHz | |
| occ_float_2k-fastreg-c-o3 | 0.938200 MHz | |
| occ_float_30k-c-o3 | 22.5200 MHz | |
| occ_float_30k-fast-c-o3 | 13.6200 MHz | |
| occ_float_30k-fastreg-c-o3 | 14.7200 MHz | |
| occ_float_500-c-o3 | 0.392200 MHz | |
| occ_float_500-fast-c-o3 | 29.1 to 33.780 MHz | 0.302200 MHz |
| occ_float_500-fastreg-c-o3 | 0.344200 MHz | |
| occ_float_8k-c-o3 | 5.58200 MHz | |
| occ_float_8k-fast-c-o3 | 3.7200 MHz | |
| occ_float_8k-fastreg-c-o3 | 3.93200 MHz | |
| occ_int8own_2k-c-o3 | 1.23200 MHz | |
| occ_int8own_30k-c-o3 | 20200 MHz | |
| occ_int8own_30k-cmsis-c-o3 | 8.54200 MHz | |
| occ_int8own_500-c-o3 | 0.447200 MHz | |
| occ_int8own_500-cmsis-c-o3 | 0.491200 MHz | |
| occ_int8own_8k-c-o3 | 5.39200 MHz | |
| occ_int8own_8k-cmsis-c-o3 | 2.89200 MHz | |
| occ_tflite_float-fast-c-o3 | 0.304200 MHz | |
| resnet8-float-c-o3 | Not for this chip | |
| resnet8-int8own-c-o3 | 444.6200 MHz | |
| resnet8-int8own-cmsis-c-o3 | 201.6200 MHz | |
| xgb-c-o3 | 1.01 to 1.3680 MHz | 0.0801 to 0.113200 MHz |
| xgb-onnx-c-o3 | 0.0802 to 0.113200 MHz |
Sources
Run records are in the notebook, not this copy.
Vectors whose class matches the training tool, model through tools/byom of 20, higher is better
| Variant | LP-MSPM0G5187 | LP-AM13E230 |
|---|---|---|
| dtree-c-o3 | 20200 MHz | |
| forest-c-o3 | 20200 MHz | |
| occ_float_2k-c-o3 | 20200 MHz | |
| occ_float_2k-fast-c-o3 | 20200 MHz | |
| occ_float_2k-fastreg-c-o3 | 20200 MHz | |
| occ_float_30k-c-o3 | 20200 MHz | |
| occ_float_30k-fast-c-o3 | 20200 MHz | |
| occ_float_30k-fastreg-c-o3 | 20200 MHz | |
| occ_float_500-c-o3 | 20200 MHz | |
| occ_float_500-fast-c-o3 | 2080 MHz | 20200 MHz |
| occ_float_500-fastreg-c-o3 | 20200 MHz | |
| occ_float_8k-c-o3 | 20200 MHz | |
| occ_float_8k-fast-c-o3 | 20200 MHz | |
| occ_float_8k-fastreg-c-o3 | 20200 MHz | |
| occ_int8own_2k-c-o3 | 19200 MHz | |
| occ_int8own_30k-c-o3 | 20200 MHz | |
| occ_int8own_30k-cmsis-c-o3 | 20200 MHz | |
| occ_int8own_500-c-o3 | 20200 MHz | |
| occ_int8own_500-cmsis-c-o3 | 20200 MHz | |
| occ_int8own_8k-c-o3 | 20200 MHz | |
| occ_int8own_8k-cmsis-c-o3 | 20200 MHz | |
| occ_tflite_float-fast-c-o3 | 20200 MHz | |
| resnet8-int8own-c-o3 | 20200 MHz | |
| resnet8-int8own-cmsis-c-o3 | 20200 MHz | |
| xgb-c-o3 | 2080 MHz | 20200 MHz |
| xgb-onnx-c-o3 | 20200 MHz |
Sources
Run records are in the notebook, not this copy.
MLPerf Tiny image classification (ResNet-8, CIFAR-10), one 32x32 image ms, lower is better
| Variant | LP-AM13E230 |
|---|---|
| resnet8-ti-qat-nnc-cpu | Not for this chip |
| resnet8-ti-qat-nnc-npu | 198.2200 MHz |
Sources
Run records are in the notebook, not this copy.
MLPerf Tiny ResNet-8: board images whose class matches the host run of the same int8 file of 20, higher is better
| Variant | LP-AM13E230 |
|---|---|
| resnet8-ti-qat-nnc-npu | 20200 MHz |
Sources
Run records are in the notebook, not this copy.
Every number
Best result per test, the scorecard, what runs where and every table, each folded.
Best result per test
The scorecard: one number per board per test
| Measured | LP-MSPM0G3507Cortex-M0+, 80 MHz, 32 kB RAM | LP-MSPM0L1306Cortex-M0+, 32 MHz, 4 kB RAM | LP-EM-CC2340R5Cortex-M0+, 48 MHz, 36 kB RAM | LP-CC1354P10-1Cortex-M33, 48 MHz, 296 kB RAM | LAUNCHXL-F2800137C28x, 120 MHz, 36 kB RAM | LP-AM13E230Cortex-M33 with TMU and NPU, 200 MHz, 128 kB RAM | LP-AM263P4x Cortex-R5F with TMU, 400 MHz, 3 MB RAM | TMDS62LEVM (AM62L EVM)2x Cortex-A53, 1250 MHz, 2 GB RAM | LP-EM-CC2755P10Cortex-M33, 96 MHz, 162 kB RAM | LP-EM-CC35X1Cortex-M33, 160 MHz, 1.1 MB RAM | ESP32-C6-DevKitC-1-N8RISC-V, 160 MHz, 512 kB RAM | LAUNCHXL-F28P65XC28x, 200 MHz, 248 kB RAM | FRDM-MCXA153Cortex-M33, 96 MHz, 32 kB RAM | IWRL6432BOOSTCortex-M4F, 160 MHz, 1 MB RAM | LP-MSPM0C1104Cortex-M0+, 24 MHz, 1 kB RAM | LP-MSPM0G3519Cortex-M0+, 80 MHz, 128 kB RAM | LP-MSPM0G5187Cortex-M0+ with NPU, 80 MHz, 32 kB RAM | LP-MSPM33C321ACortex-M33, 160 MHz, 256 kB RAM | NUCLEO-U083RCCortex-M0+, 56 MHz, 40 kB RAM | Raspberry Pi Pico 2 HCortex-M33, 150 MHz, 520 kB RAM | SK-TDA4VM2x Cortex-A72 + C7x/MMA + 2x C66x + 6x R5F, 2000 MHz, 4 GB RAM |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Speed | |||||||||||||||||||||
| CoreMark per MHz, TI compiler, no OS, lowest clock runhigher is better; the lowest clock run, so flash wait states cost the least (clock under the number); the C2000 build is unofficial, not ranked | 2.46Build detailsticlang-bare-o3-32mhzat 32 MHz | 2.63Build detailsticlang-bare-o3-4mhzat 4 MHz | 2.31worstBuild detailsticlang-bare-o3 | 4.17Build detailsticlang-bare-o3 | 1.18Build detailsc28patch-ti-c2000-o4s5-flash | 4.42Build detailsticlang-bare-o3-100mhzat 100 MHz | 4.44bestBuild detailsticlang-bare-o3 | 1.06Build detailsc28patch-ti-c2000-o4s5-flash | Not for this chip | 2.46Build detailsticlang-bare-o3-32mhzat 32 MHz | 2.46Build detailsticlang-bare-o3-32mhzat 32 MHz | 4.38Build detailsticlang-bare-o3-32mhzat 32 MHz | |||||||||
| CoreMark per MHz, TI compiler, no OS, top clockhigher is better; each board at the clock its run used, usually its top clock, where flash wait states cost cycles | 2.3Build detailsticlang-bare-o3 | 2.45Build detailsticlang-bare-o3 | 2.31Build detailsticlang-bare-o3 | 4.17Build detailsticlang-bare-o3 | 1.18Build detailsc28patch-ti-c2000-o4s5-flash | 4.36Build detailsticlang-bare-o3 | 4.44bestBuild detailsticlang-bare-o3 | 1.06Build detailsc28patch-ti-c2000-o4s5-flash | Not for this chip | 2.28worstBuild detailsticlang-bare-o3 | 2.29Build detailsticlang-bare-o3 | 3.4Build detailsticlang-bare-o3 | |||||||||
| CoreMark per MHz, GCC under Zephyrhigher is better | 1.75Build detailsgcc-zephyr-o2unroll | 1.87bestBuild detailsgcc-zephyr-o2unroll | 1.75Build detailsgcc-zephyr-o2unroll | 1.69worstBuild detailsgcc-zephyr-o2unroll | |||||||||||||||||
| Dhrystone, DMIPS per MHzhigher is better | 0.731 | 0.602worstBuild detailsticlang-bare-o3-noinline | 1.2Build detailsticlang-bare-o3-noinline | 0.442Build detailsti-c2000-o3-noinline-ram | 1.05Build detailsticlang-bare-o3-noinline | 1.5Build detailsticlang-bare-o3-noinline | 1.32Build detailsticlang-bare-o3-noinline | 1.34Build detailsticlang-freertos-o3-noinline | 0.444Build detailsti-c2000-o3-noinline-ram | 0.835Build detailsgcc-bare-o3 | Not for this chip | 0.652Build detailsticlang-bare-o3-noinline | 0.651Build detailsticlang-bare-o3-noinline | 1.22Build detailsticlang-bare-o3-noinline-32mhzat 32 MHz | 0.672Build detailsat 48 MHz | 1.32Build detailsgcc-bare-o3-noinline-m33 | 4.83bestBuild detailsgcc-linux-o3-noinline | ||||
| Embench programs that fit and pass, of 19higher is better | 18 | 13 | 18Build detailsticlang-o2 | 19bestBuild detailsticlang-o2 | 15Build detailsti-c2000-o2-flash | 19bestBuild detailsticlang-o2 | 19bestBuild detailsticlang-o2 | Not for this chip | 19best | 9worst | 18 | 18 | 19bestBuild detailsticlang-o2 | 19bestBuild detailsat 48 MHz | 19bestBuild detailsgcc-o2-m33 | ||||||
| Reaction | |||||||||||||||||||||
| Interrupt latency, no OS, cycleslower is better; signal to the first line of the handler | 29Build detailsbare | 25Build detailsbare | 28Build detailsbare | 23Build detailsbare | 30Build detailsbare | 195worstBuild detailsbare | 21Build detailsbare | 17bestBuild detailsbare | 23Build detailsbare | 31Build detailsbare | 36Build detailsbare | 32Build detailsbare | 22Build detailsbareat 48 MHz | ||||||||
| Interrupt latency under Zephyr, cycleslower is better | 163worstBuild detailszephyr | 119Build detailszephyr | 48bestBuild detailszephyr | 157Build detailszephyr | 108Build detailszephyrat 48 MHz | ||||||||||||||||
| GPIO toggle by register write, cycleslower is better | 1bestBuild detailsregister | 1bestBuild detailsregister | 2.1Build detailsregister-bare-o3 | 1.51Build detailsregister-bare-o3 | 1.56Build detailsregister | 10Build detailsregister | 3.99Build detailsregister-bare-o3 | 38worstBuild detailsregister-bare-o3 | 1.56Build detailsregister | 1.12Build detailsregister | 2Build detailsregister-bare-o3 | 1bestBuild detailsregister | 1bestBuild detailsregister | 8Build detailsregister-bare-o3 | 2.5Build detailsregister-bare-o3at 48 MHz | ||||||
| Control loop, trigger to new output, µslower is better; the same run per board as the Control loops chart: code in flash, from the ADC end-of-conversion interrupt where the board has that run (build named under the number) | 88.5Build detailshw | 448.1worstBuild detailssw-eoc-flash | 336.6Build detailssw-eoc-flash-os | 21.4Build detailssw-eoc-flash | 2.58Build detailshw-eoc-flash | 1.33bestBuild detailshw-tmu-eoc-flash | 10.5Build detailssw-eoc-flash-o3 | 89.3Build detailshw | 180.8Build detailssw-o3 | 5.03Build detailssw-eoc-flash-o3 | 298.8Build detailssw-eoc-flashat 48 MHz | ||||||||||
| One control step, software float, cycleslower is better; the same C on every board | 14kBuild detailssw | 13kBuild detailssw-flash | 14kworstBuild detailssw-flash | 671.4Build detailssw-flash | 400.2bestBuild detailssw-flash | 655.6Build detailssw-flash | 593.7Build detailssw-flash | 5.4kBuild detailssw-flash | 14kBuild detailssw | 14kBuild detailssw | 531.1Build detailssw-flash | 12kBuild detailssw-flashat 48 MHz | |||||||||
| Radios | |||||||||||||||||||||
| Bluetooth on the air after flashing, slower is better | 1.4worstBuild detailsdefault-100ms-interval | 0.9bestBuild detailsdefault-100ms-interval | |||||||||||||||||||
| Bluetooth echo, 20 bytes, mslower is better | 45worst | n/a | 29.2best | ||||||||||||||||||
| Zigbee light command from Home Assistant, mslower is better; median of 20 | 95Build detailszigbee-home-assistant | ||||||||||||||||||||
| Zigbee join, slower is better | 6.2Build detailszigbee-router-to-cc1354p10-coordinator | 6Build detailszigbee-zed-zha | |||||||||||||||||||
| Thread join, slower is better | 15.5worstBuild detailsthread-router-to-cc1354p10-leader | 8bestBuild detailsthread-leader-fresh-image | |||||||||||||||||||
| Thread node on the chipend device or router running on the chip itself | Not for this chip | Works | n/a | Works | |||||||||||||||||
| Thread radio (RCP) for a host | Works | Works | n/a | ||||||||||||||||||
| Bluetooth and Zigbee or TI 15.4 at once | Not for this chip | Works | n/a | Works | |||||||||||||||||
| Matter | Not for this chip | n/a | Works | ||||||||||||||||||
| Memory | |||||||||||||||||||||
| RAM left beside TI's Bluetooth example, byteshigher is better | 5.1 kBworstBuild detailsble-basic-ble | 81 kBbestBuild detailsble-basic-ble | |||||||||||||||||||
| RAM left beside TI's Zigbee example, byteshigher is better; router on the CC2340R5, end device on the CC1354P10 | 799worstBuild detailszigbee-router | 210.6 kBBuild detailszigbee-zed-ti-example | 126.5 kBBuild detailszigbee-router | 360.1 kBbestBuild detailszigbee-router | |||||||||||||||||
| Blink image RAM, no OS, byteslower is better | 512Build detailsbare | 256bestBuild detailsbare | 9.9 kBBuild detailsbare | 18.6 kBBuild detailsbare | 1.5 kBBuild detailsbare | 9 kBBuild detailsbare | 93.8 kBworstBuild detailsbare | 10.1 kBBuild detailsbare | 256bestBuild detailsbare | 256bestBuild detailsbareat 32 MHz | |||||||||||
| Blink image RAM under Zephyr, byteslower is better | 3.9 kBBuild detailszephyr | 3.8 kBbestBuild detailszephyr | 4 kBBuild detailszephyr | 3.8 kBBuild detailszephyr | 4 kBBuild detailszephyr | 4.8 kBworstBuild detailszephyrat 48 MHz | |||||||||||||||
| Blink image RAM under FreeRTOS, byteslower is better | 1 kBbestBuild detailsfreertosat 32 MHz | 1 kBbestBuild detailsfreertos | 13 kBBuild detailsfreertos | 37.6 kBBuild detailsfreertos | 36.9 kBworstBuild detailsfreertos | 1 kBbestBuild detailsfreertos | |||||||||||||||
| RTOS task switch, µslower is better; FreeRTOS or Zephyr, whichever ran | 6.72Build detailszephyr | 12Build detailsfreertos | 10.6Build detailsfreertos | 7.38Build detailsfreertos | Not for this chip | 1.49bestBuild detailsfreertos | 3.5Build detailsfreertos | 16.5Build detailsfreertos | 2.76Build detailsfreertos | 19.9worstBuild detailsfreertos | 6.99Build detailszephyr | 7Build detailsfreertos | 11.5Build detailsfreertosat 32 MHz | 9.29Build detailsfreertosat 48 MHz | |||||||
| Small AI models | |||||||||||||||||||||
| Room occupancy, medium, on the CPU, mslower is better; 8.5k weights, fastest plain-C build | 35.3 | 83.7worst | 63.2 | 25.8 | 17.5 | 5.05 | 10.5 | 6.25 | 7.14 | 8.38 | 12.6 | Not for this chip | 35.3 | 35.3 | 7.38 | 6.82 | 0.193best | ||||
| Room occupancy, medium, on an NPU, mslower is better; 8.5k weights, TI NNC code on the chip's neural processing unit | 0.63best | 2.12worst | |||||||||||||||||||
| Room occupancy, large, fit33k weights: does it fit and pass | Works | Not for this chip | Works | Works | Works | Works | Works | Works | Works | Works | Works | Not for this chip | Works | Works | Works | Works | |||||
| Handwritten digit, BitNetMCU 64-wide model, cycleslower is better | 2.64MBuild detailscnn64-ticlang-o3-32mhzat 32 MHz | 2.65MBuild detailscnn64-ticlang-o3-32mhz | 2.55MBuild detailscnn-64-c2000-o4s5-120mhz-ram | 2.64MBuild detailscnn64-ticlang-o3-32mhzat 32 MHz | 2.64MBuild detailscnn64-ticlang-o3-32mhzat 32 MHz | ||||||||||||||||
| Hardware helpers | |||||||||||||||||||||
| sin and cos in hardware against software, times fasterhigher is better | 85.6 | n/a | n/a | n/a | 9.87worst | n/a | 93.3best | n/a | n/a | ||||||||||||
| AES in hardware against software, times fasterhigher is better | 20.3Build details1kb-ticlang-o2 | 131.5bestBuild details1kb-ecb-ticlang-o3-driver-polling | 51.1Build details1kb-ecb-ticlang-o2-driver-polling | 29.9Build details1kb-ecb-ticlang-o2-keyout | 92.8Build detailsticlang-o2-driver-polling | 1.23worstBuild details16b-ecb-mbedtls | 45.8Build details1kb-ticlang-o2 | 45.5Build details1kb-ticlang-o2 | 41.9Build details1kb-ecb-ticlang-o2-keyoutat 32 MHz | 93.9Build details1kb-aes256-ecb-gcc12-o2-regat 48 MHz | |||||||||||
| CRC in hardware against a table, times fasterhigher is better | 13.5best | 10.9 | 1.89worst | 7.06 | 3Build detailscrc16-256b | 8.09 | 8.12 | 2.75Build detailsat 32 MHz | 8.34Build detailsgcc12-o3at 48 MHz | 5.71Build detailsdma-sniffer-riscv | |||||||||||
| 256-point FFT, mslower is better; float where the chip has an FPU | 25.7worstBuild detailsf32 | 18.3Build detailsf32 | 0.473Build detailsf32 | 0.107bestBuild detailsf32 | 0.117Build detailsf32 | 0.224Build detailsf32 | 4.69Build detailsf32 | Not for this chip | 11.1Build detailsf32 | 11Build detailsf32 | 0.204Build detailsf32 | 20Build detailsf32at 48 MHz | |||||||||
| Fastest ADC reading, million samples per secondhigher is better; each board's best setting. Under each number: the ADC's clock when it differs from the CPU's, DMA or not, and resolution and sample window where recorded | 3.93Build detailsat 32 MHzCPU at 32 MHz, ADC clock as in the example | 1.45Build details8-cycle window | 1.2Build detailsti-adcbuf-dmaDMA | 0.2Build detailsti-adcbuf-dmaDMA | 3.98Build detailsti-continuous-9cyc9-cycle window | 1.2Build detailsti-adcbuf-dmaDMA | 0.17worstBuild details12-bit | 2.53Build detailsdmaDMA12-bit | 1Build detailsDMA10-bit, 2-cycle window | 3.93Build detailsat 32 MHzCPU at 32 MHz, ADC clock as in the example | 0.547Build detailsat 32 MHzCPU at 32 MHz, ADC clock as in the example12-bit, 62.5 ns window | 5bestBuild detailsDMA | 1.71Build detailsinternalCPU at 48 MHz, ADC clock as in the exampleDMA12-bit | 0.5Build detailspico-sdk-dma-riscvDMA | |||||||
| Power | |||||||||||||||||||||
| Deepest sleep with RAM kept, µAlower is better; probe-measured chip figure; modes differ by chip (named under the number) | 6.2Build detailsSTANDBY0, RAM kept | 2,590Build detailsti-c2000-standby-borrowed-energytrace | |||||||||||||||||||
| Running current per MHz, µAlower is better; slope between two clocks; the workload differs by chip (named under the number) | 72.9Build detailsenergytrace-3.3v-coremark | 263Build detailsti-c2000-borrowed-energytrace | |||||||||||||||||||
| Getting started | |||||||||||||||||||||
| Plug-in to a changed blink, slower is better; the CC2340R5 figure includes 8 min lost to a half-seated probe | 149Build detailsccs-mcp | 540worstBuild detailscli | 29Build detailscli | 60Build detailsccs-mcp | 78Build detailscli | 198Build detailsccs-mcp | 60Build detailscli | 184Build detailscli | 1.4bestBuild detailscliat 12 MHz | Not for this chip | 77Build detailscli | 19Build detailscli | 14Build detailscliat 48 MHz | 87Build detailscli | |||||||
| Blink build, slower is better | 6Build detailsccs-mcp | 3.3Build detailscli | 22Build detailscli | 4.6Build detailsti-led-ex1-blinky-cli | 2.7bestBuild detailscli | 5.9Build detailscli | 14Build detailscli | 6Build detailscli | 67worstBuild detailscli | 8.6Build detailsti-led-ex1-blinky-cli | 30Build detailscliat 12 MHz | 3.5Build detailscli | 3.2Build detailscliat 32 MHz | 4Build detailscliat 32 MHz | 4.8Build detailscliat 32 MHz | 6Build detailscliat 48 MHz | 12Build detailscli | ||||
| Blink flash, slower is better | 6Build detailswest | 0.6bestBuild detailsopenocd | 7Build detailsuniflash | 3.9Build detailsccs-scripting-ram-load | 3.3Build detailsuniflash | 27worstBuild detailsccs-mcp | 0.64Build detailsopenocd | 0.6bestBuild detailsopenocdat 32 MHz | 20.7Build detailsopenocdat 32 MHz | 11.3Build detailsuniflashat 32 MHz | 1.2Build detailsopenocdat 48 MHz | ||||||||||
| Examples safe to run that ran with no crash, %higher is better; of the images safe to run, not the whole SDK: 213 of 270 on the G3507, 148 of 170 on the L1306 | 100Build detailsmspm0-sdk-2.11at 32 MHz | 100Build detailsmspm0-sdk-2.11 | 100Build detailscc35x1-twins-checked | 100Build detailsc2000ware-26.02 | 98.8Build detailsam13e230-sdk-26.01 | 118bestBuild detailsmcu-plus-sdk-26.01-lp | 98.8Build detailssdk-f3-9.21 | 93.5Build detailswifi-sdk-10.20.00.39 | 87.1Build detailsesp-idf-v6.1 | 97.7Build detailsmcux-26.09.00 | 100Build detailsmspm0-sdk-2.11 | 100Build detailsmspm0-sdk-2.11 | 90.8Build detailsmspm0-sdk-2.11 | 99.4Build detailsmspm33-sdk-1.04at 32 MHz | 100Build detailsstm32cubeu0-1.3.0at 48 MHz | 60worstBuild detailsedgeai-gst-apps-11.00.00.08 | |||||
| Full redraw of a 3.5 inch SPI screen, mslower is better; fastest setting | 67.2Build detailsspi40-dma16 | 67.2Build detailsspi40-dma16 | |||||||||||||||||||
Speed
CoreMark per MHz, TI compiler, no OS, lowest clock run
higher is better; the lowest clock run, so flash wait states cost the least (clock under the number); the C2000 build is unofficial, not ranked
- LP-MSPM0G35072.46
Build details
ticlang-bare-o3-32mhzat 32 MHz - LP-MSPM0L13062.63
Build details
ticlang-bare-o3-4mhzat 4 MHz - LP-EM-CC2340R52.31worst
Build details
ticlang-bare-o3 - LP-CC1354P10-14.17
Build details
ticlang-bare-o3 - LAUNCHXL-F28001371.18unofficial build, not ranked
Build details
c28patch-ti-c2000-o4s5-flash - LP-AM13E2304.42
Build details
ticlang-bare-o3-100mhzat 100 MHz - LP-EM-CC2755P104.44best
Build details
ticlang-bare-o3 - LAUNCHXL-F28P65X1.06unofficial build, not ranked
Build details
c28patch-ti-c2000-o4s5-flash - LP-MSPM0C1104Not for this chip
- LP-MSPM0G35192.46
Build details
ticlang-bare-o3-32mhzat 32 MHz - LP-MSPM0G51872.46
Build details
ticlang-bare-o3-32mhzat 32 MHz - LP-MSPM33C321A4.38
Build details
ticlang-bare-o3-32mhzat 32 MHz
CoreMark per MHz, TI compiler, no OS, top clock
higher is better; each board at the clock its run used, usually its top clock, where flash wait states cost cycles
- LP-MSPM0G35072.3
Build details
ticlang-bare-o3 - LP-MSPM0L13062.45
Build details
ticlang-bare-o3 - LP-EM-CC2340R52.31
Build details
ticlang-bare-o3 - LP-CC1354P10-14.17
Build details
ticlang-bare-o3 - LAUNCHXL-F28001371.18unofficial build, not ranked
Build details
c28patch-ti-c2000-o4s5-flash - LP-AM13E2304.36
Build details
ticlang-bare-o3 - LP-EM-CC2755P104.44best
Build details
ticlang-bare-o3 - LAUNCHXL-F28P65X1.06unofficial build, not ranked
Build details
c28patch-ti-c2000-o4s5-flash - LP-MSPM0C1104Not for this chip
- LP-MSPM0G35192.28worst
Build details
ticlang-bare-o3 - LP-MSPM0G51872.29
Build details
ticlang-bare-o3 - LP-MSPM33C321A3.4
Build details
ticlang-bare-o3
CoreMark per MHz, GCC under Zephyr
higher is better
- LP-MSPM0G35071.75
Build details
gcc-zephyr-o2unroll - LP-MSPM0L13061.87best
Build details
gcc-zephyr-o2unroll - LP-EM-CC2340R51.75
Build details
gcc-zephyr-o2unroll - LP-MSPM0G35191.69worst
Build details
gcc-zephyr-o2unroll
Dhrystone, DMIPS per MHz
higher is better
- LP-MSPM0G3507
- LP-MSPM0L13060.731
- LP-EM-CC2340R50.602worst
Build details
ticlang-bare-o3-noinline - LP-CC1354P10-11.2
Build details
ticlang-bare-o3-noinline - LAUNCHXL-F28001370.442C28x: 16-bit bytes, not ranked
Build details
ti-c2000-o3-noinline-ram - LP-AM13E2301.05
Build details
ticlang-bare-o3-noinline - LP-AM263P1.5
Build details
ticlang-bare-o3-noinline - TMDS62LEVM (AM62L EVM)
- LP-EM-CC2755P101.32
Build details
ticlang-bare-o3-noinline - LP-EM-CC35X11.34
Build details
ticlang-freertos-o3-noinline - LAUNCHXL-F28P65X0.444C28x: 16-bit bytes, not ranked
Build details
ti-c2000-o3-noinline-ram - FRDM-MCXA1530.835
Build details
gcc-bare-o3 - LP-MSPM0C1104Not for this chip
- LP-MSPM0G35190.652
Build details
ticlang-bare-o3-noinline - LP-MSPM0G51870.651
Build details
ticlang-bare-o3-noinline - LP-MSPM33C321A1.22
Build details
ticlang-bare-o3-noinline-32mhzat 32 MHz - NUCLEO-U083RC0.672
Build details
at 48 MHz - Raspberry Pi Pico 2 H1.32
Build details
gcc-bare-o3-noinline-m33 - SK-TDA4VM4.83best
Build details
gcc-linux-o3-noinline
Embench programs that fit and pass, of 19
higher is better
- LP-MSPM0G350718
- LP-MSPM0L130613
- LP-EM-CC2340R518
Build details
ticlang-o2 - LP-CC1354P10-119best
Build details
ticlang-o2 - LAUNCHXL-F280013715
Build details
ti-c2000-o2-flash - LP-AM13E23019best
Build details
ticlang-o2 - LP-EM-CC2755P1019best
Build details
ticlang-o2 - LP-EM-CC35X1Not for this chip
- FRDM-MCXA15319best
- LP-MSPM0C11049worst
- LP-MSPM0G351918
- LP-MSPM0G518718
- LP-MSPM33C321A19best
Build details
ticlang-o2 - NUCLEO-U083RC19best
Build details
at 48 MHz - Raspberry Pi Pico 2 H19best
Build details
gcc-o2-m33 - SK-TDA4VM
Reaction
Interrupt latency, no OS, cycles
lower is better; signal to the first line of the handler
- LP-MSPM0G350729
Build details
bare - LP-MSPM0L130625
Build details
bare - LP-EM-CC2340R528
Build details
bare - LP-CC1354P10-123
Build details
bare - LAUNCHXL-F280013730C28x: different core family, not ranked
Build details
bare - LP-AM13E230
- LP-AM263P195worst
Build details
bare - LP-EM-CC2755P1021
Build details
bare - FRDM-MCXA15317best
Build details
bare - LP-MSPM0C110423
Build details
bare - LP-MSPM0G351931
Build details
bare - LP-MSPM0G518736
Build details
bare - LP-MSPM33C321A32
Build details
bare - NUCLEO-U083RC22
Build details
bareat 48 MHz
Interrupt latency under Zephyr, cycles
lower is better
- LP-MSPM0G3507163worst
Build details
zephyr - LP-MSPM0L1306119
Build details
zephyr - LP-EM-CC2340R548best
Build details
zephyr - LP-MSPM0G3519157
Build details
zephyr - NUCLEO-U083RC108
Build details
zephyrat 48 MHz
GPIO toggle by register write, cycles
lower is better
- LP-MSPM0G35071best
Build details
register - LP-MSPM0L13061best
Build details
register - LP-EM-CC2340R52.1
Build details
register-bare-o3 - LP-CC1354P10-11.51
Build details
register-bare-o3 - LAUNCHXL-F28001371.56
Build details
register - LP-AM13E230
- LP-AM263P10
Build details
register - LP-EM-CC2755P103.99
Build details
register-bare-o3 - ESP32-C6-DevKitC-1-N838worst
Build details
register-bare-o3 - LAUNCHXL-F28P65X1.56
Build details
register - FRDM-MCXA1531.12
Build details
register - LP-MSPM0C11042
Build details
register-bare-o3 - LP-MSPM0G35191best
Build details
register - LP-MSPM0G51871best
Build details
register - LP-MSPM33C321A8
Build details
register-bare-o3 - NUCLEO-U083RC2.5
Build details
register-bare-o3at 48 MHz
Control loop, trigger to new output, µs
lower is better; the same run per board as the Control loops chart: code in flash, from the ADC end-of-conversion interrupt where the board has that run (build named under the number)
- LP-MSPM0G350788.5
Build details
hw - LP-MSPM0L1306448.1worst
Build details
sw-eoc-flash - LP-EM-CC2340R5336.6
Build details
sw-eoc-flash-os - LP-CC1354P10-121.4
Build details
sw-eoc-flash - LAUNCHXL-F28001372.58
Build details
hw-eoc-flash - LP-AM13E2301.33best
Build details
hw-tmu-eoc-flash - LP-EM-CC2755P1010.5
Build details
sw-eoc-flash-o3 - LP-MSPM0G351989.3
Build details
hw - LP-MSPM0G5187180.8
Build details
sw-o3 - LP-MSPM33C321A5.03
Build details
sw-eoc-flash-o3 - NUCLEO-U083RC298.8
Build details
sw-eoc-flashat 48 MHz
One control step, software float, cycles
lower is better; the same C on every board
- LP-MSPM0G350714k
Build details
sw - LP-MSPM0L130613k
Build details
sw-flash - LP-EM-CC2340R514kworst
Build details
sw-flash - LP-CC1354P10-1671.4
Build details
sw-flash - LAUNCHXL-F2800137400.2best
Build details
sw-flash - LP-AM13E230655.6
Build details
sw-flash - LP-EM-CC2755P10593.7
Build details
sw-flash - FRDM-MCXA1535.4k
Build details
sw-flash - LP-MSPM0G351914k
Build details
sw - LP-MSPM0G518714k
Build details
sw - LP-MSPM33C321A531.1
Build details
sw-flash - NUCLEO-U083RC12k
Build details
sw-flashat 48 MHz
Radios
Bluetooth on the air after flashing, s
lower is better
- LP-EM-CC2340R51.4worst
Build details
default-100ms-interval - LP-EM-CC2755P100.9best
Build details
default-100ms-interval
Bluetooth echo, 20 bytes, ms
lower is better
- LP-EM-CC2340R545worst
- LP-CC1354P10-1
- LAUNCHXL-F2800137n/a
- LP-EM-CC2755P1029.2best
Zigbee light command from Home Assistant, ms
lower is better; median of 20
- LP-EM-CC2340R595
Build details
zigbee-home-assistant
Zigbee join, s
lower is better
- LP-EM-CC2340R56.2
Build details
zigbee-router-to-cc1354p10-coordinator - LP-CC1354P10-16
Build details
zigbee-zed-zha
Thread join, s
lower is better
- LP-EM-CC2340R515.5worst
Build details
thread-router-to-cc1354p10-leader - LP-CC1354P10-18best
Build details
thread-leader-fresh-image
Thread node on the chip
end device or router running on the chip itself
- LP-EM-CC2340R5Not for this chip
- LP-CC1354P10-1Works
- LAUNCHXL-F2800137n/a
- ESP32-C6-DevKitC-1-N8Works
Thread radio (RCP) for a host
- LP-EM-CC2340R5Works
- LP-CC1354P10-1Works
- LAUNCHXL-F2800137n/a
Bluetooth and Zigbee or TI 15.4 at once
- LP-EM-CC2340R5Not for this chip
- LP-CC1354P10-1Works
- LAUNCHXL-F2800137n/a
- LP-EM-CC2755P10Works
Matter
- LP-EM-CC2340R5Not for this chip
- LP-CC1354P10-1
- LAUNCHXL-F2800137n/a
- LP-EM-CC35X1Works
Memory
RAM left beside TI's Bluetooth example, bytes
higher is better
- LP-EM-CC2340R55.1 kBworst
Build details
ble-basic-ble - LP-EM-CC2755P1081 kBbest
Build details
ble-basic-ble
RAM left beside TI's Zigbee example, bytes
higher is better; router on the CC2340R5, end device on the CC1354P10
- LP-EM-CC2340R5799worst
Build details
zigbee-router - LP-CC1354P10-1210.6 kB
Build details
zigbee-zed-ti-example - LP-EM-CC2755P10126.5 kB
Build details
zigbee-router - ESP32-C6-DevKitC-1-N8360.1 kBbest
Build details
zigbee-router
Blink image RAM, no OS, bytes
lower is better
- LP-MSPM0G3507512
Build details
bare - LP-MSPM0L1306256best
Build details
bare - LP-EM-CC2340R59.9 kB
Build details
bare - LP-CC1354P10-118.6 kBTI's default configuration, not ranked
Build details
bare - LAUNCHXL-F28001371.5 kB
Build details
bare - LP-AM13E2309 kB
Build details
bare - LP-AM263P93.8 kBworst
Build details
bare - LP-EM-CC2755P1010.1 kB
Build details
bare - LP-MSPM0G5187256best
Build details
bare - LP-MSPM33C321A256best
Build details
bareat 32 MHz
Blink image RAM under Zephyr, bytes
lower is better
- LP-MSPM0G35073.9 kB
Build details
zephyr - LP-MSPM0L13063.8 kBbest
Build details
zephyr - LP-EM-CC2340R54 kB
Build details
zephyr - FRDM-MCXA1533.8 kB
Build details
zephyr - LP-MSPM0G35194 kB
Build details
zephyr - NUCLEO-U083RC4.8 kBworst
Build details
zephyrat 48 MHz
Blink image RAM under FreeRTOS, bytes
lower is better
- LP-MSPM0G35071 kBbest
Build details
freertosat 32 MHz - LP-MSPM0L13061 kBbest
Build details
freertos - LP-EM-CC2340R513 kB
Build details
freertos - LP-CC1354P10-137.6 kBTI's default configuration, not ranked
Build details
freertos - LP-EM-CC35X136.9 kBworst
Build details
freertos - LP-MSPM0C11041 kBbest
Build details
freertos
RTOS task switch, µs
lower is better; FreeRTOS or Zephyr, whichever ran
- LP-MSPM0G35076.72
Build details
zephyr - LP-MSPM0L130612
Build details
freertos - LP-EM-CC2340R510.6
Build details
freertos - LP-CC1354P10-17.38
Build details
freertos - LAUNCHXL-F2800137Not for this chip
- LP-AM13E2301.49best
Build details
freertos - LP-EM-CC2755P103.5
Build details
freertos - LP-EM-CC35X1
- ESP32-C6-DevKitC-1-N816.5
Build details
freertos - FRDM-MCXA1532.76
Build details
freertos - LP-MSPM0C110419.9worst
Build details
freertos - LP-MSPM0G35196.99
Build details
zephyr - LP-MSPM0G51877
Build details
freertos - LP-MSPM33C321A11.5
Build details
freertosat 32 MHz - NUCLEO-U083RC9.29
Build details
freertosat 48 MHz
Small AI models
Room occupancy, medium, on the CPU, ms
lower is better; 8.5k weights, fastest plain-C build
- LP-MSPM0G350735.3
- LP-MSPM0L130683.7worst
- LP-EM-CC2340R563.2
- LP-CC1354P10-125.8
- LAUNCHXL-F280013717.5
- LP-AM13E2305.05
- LP-EM-CC2755P1010.5
- LP-EM-CC35X16.25
- ESP32-C6-DevKitC-1-N87.14
- LAUNCHXL-F28P65X8.38
- FRDM-MCXA15312.6
- LP-MSPM0C1104Not for this chip
- LP-MSPM0G351935.3
- LP-MSPM0G518735.3
- LP-MSPM33C321A7.38
- Raspberry Pi Pico 2 H6.82
- SK-TDA4VM0.193best
Room occupancy, medium, on an NPU, ms
lower is better; 8.5k weights, TI NNC code on the chip's neural processing unit
- LP-AM13E2300.63best
- LP-MSPM0G51872.12worst
Room occupancy, large, fit
33k weights: does it fit and pass
- LP-MSPM0G3507Works
- LP-MSPM0L1306Not for this chip
- LP-EM-CC2340R5Works
- LP-CC1354P10-1Works
- LAUNCHXL-F2800137Works
- LP-AM13E230Works
- LP-EM-CC2755P10Works
- LP-EM-CC35X1Works
- ESP32-C6-DevKitC-1-N8Works
- LAUNCHXL-F28P65XWorks
- FRDM-MCXA153Works
- LP-MSPM0C1104Not for this chip
- LP-MSPM0G3519Works
- LP-MSPM0G5187Works
- LP-MSPM33C321AWorks
- NUCLEO-U083RCWorks
Handwritten digit, BitNetMCU 64-wide model, cycles
lower is better
- LP-MSPM0G35072.64M
Build details
cnn64-ticlang-o3-32mhzat 32 MHz - LP-MSPM0L13062.65M
Build details
cnn64-ticlang-o3-32mhz - LAUNCHXL-F28001372.55M
Build details
cnn-64-c2000-o4s5-120mhz-ram - LP-MSPM0G35192.64M
Build details
cnn64-ticlang-o3-32mhzat 32 MHz - LP-MSPM0G51872.64M
Build details
cnn64-ticlang-o3-32mhzat 32 MHz
Hardware helpers
sin and cos in hardware against software, times faster
higher is better
- LP-MSPM0G350785.6
- LP-MSPM0L1306n/a
- LP-EM-CC2340R5n/a
- LP-CC1354P10-1n/a
- LAUNCHXL-F28001379.87worst
- LP-MSPM0C1104n/a
- LP-MSPM0G351993.3best
- LP-MSPM0G5187n/a
- NUCLEO-U083RCn/a
AES in hardware against software, times faster
higher is better
- LP-MSPM0G350720.3
Build details
1kb-ticlang-o2 - LP-EM-CC2340R5131.5best
Build details
1kb-ecb-ticlang-o3-driver-polling - LP-CC1354P10-151.1
Build details
1kb-ecb-ticlang-o2-driver-polling - LP-AM13E23029.9
Build details
1kb-ecb-ticlang-o2-keyout - LP-EM-CC2755P1092.8
Build details
ticlang-o2-driver-polling - ESP32-C6-DevKitC-1-N81.23worst
Build details
16b-ecb-mbedtls - LP-MSPM0G351945.8
Build details
1kb-ticlang-o2 - LP-MSPM0G518745.5
Build details
1kb-ticlang-o2 - LP-MSPM33C321A41.9
Build details
1kb-ecb-ticlang-o2-keyoutat 32 MHz - NUCLEO-U083RC93.9
Build details
1kb-aes256-ecb-gcc12-o2-regat 48 MHz
CRC in hardware against a table, times faster
higher is better
- LP-MSPM0G350713.5best
- LP-MSPM0L130610.9
- LP-AM13E2301.89worst
- FRDM-MCXA1537.06
- LP-MSPM0C11043
Build details
crc16-256b - LP-MSPM0G35198.09
- LP-MSPM0G51878.12
- LP-MSPM33C321A2.75
Build details
at 32 MHz - NUCLEO-U083RC8.34
Build details
gcc12-o3at 48 MHz - Raspberry Pi Pico 2 H5.71
Build details
dma-sniffer-riscv
256-point FFT, ms
lower is better; float where the chip has an FPU
- LP-MSPM0G3507
- LP-MSPM0L130625.7worst
Build details
f32 - LP-EM-CC2340R518.3
Build details
f32 - LP-CC1354P10-10.473
Build details
f32 - LAUNCHXL-F28001370.107best
Build details
f32 - LP-AM13E2300.117
Build details
f32 - LP-EM-CC2755P100.224
Build details
f32 - FRDM-MCXA1534.69
Build details
f32 - LP-MSPM0C1104Not for this chip
- LP-MSPM0G351911.1
Build details
f32 - LP-MSPM0G518711
Build details
f32 - LP-MSPM33C321A0.204
Build details
f32 - NUCLEO-U083RC20
Build details
f32at 48 MHz
Fastest ADC reading, million samples per second
higher is better; each board's best setting. Under each number: the ADC's clock when it differs from the CPU's, DMA or not, and resolution and sample window where recorded
- LP-MSPM0G35073.93
Build details
at 32 MHzCPU at 32 MHz, ADC clock as in the example - LP-MSPM0L13061.45
Build details
8-cycle window - LP-EM-CC2340R51.2
Build details
ti-adcbuf-dmaDMA - LP-CC1354P10-10.2
Build details
ti-adcbuf-dmaDMA - LAUNCHXL-F28001373.98
Build details
ti-continuous-9cyc9-cycle window - LP-EM-CC2755P101.2
Build details
ti-adcbuf-dmaDMA - LP-EM-CC35X10.17worst
Build details
12-bit - FRDM-MCXA1532.53
Build details
dmaDMA12-bit - LP-MSPM0C11041
Build details
DMA10-bit, 2-cycle window - LP-MSPM0G35193.93
Build details
at 32 MHzCPU at 32 MHz, ADC clock as in the example - LP-MSPM0G51870.547
Build details
at 32 MHzCPU at 32 MHz, ADC clock as in the example12-bit, 62.5 ns window - LP-MSPM33C321A5best
Build details
DMA - NUCLEO-U083RC1.71
Build details
internalCPU at 48 MHz, ADC clock as in the exampleDMA12-bit - Raspberry Pi Pico 2 H0.5
Build details
pico-sdk-dma-riscvDMA
Power
Deepest sleep with RAM kept, µA
lower is better; probe-measured chip figure; modes differ by chip (named under the number)
- LP-MSPM0G3507
- LP-MSPM0L13066.2
Build details
STANDBY0, RAM kept - LP-EM-CC2340R5
- LP-CC1354P10-1
- LAUNCHXL-F28001372,590STANDBY with the PLL on; HALT is the reference floor; not ranked
Build details
ti-c2000-standby-borrowed-energytrace - LP-AM13E230
- LP-AM263P
- TMDS62LEVM (AM62L EVM)
- LP-EM-CC35X1
- FRDM-MCXA153
- LP-MSPM0C1104
- LP-MSPM0G3519
- LP-MSPM0G5187
- LP-MSPM33C321A
- NUCLEO-U083RC
Running current per MHz, µA
lower is better; slope between two clocks; the workload differs by chip (named under the number)
- LP-MSPM0L130672.9
Build details
energytrace-3.3v-coremark - LP-EM-CC2340R5
- LP-CC1354P10-1
- LAUNCHXL-F2800137263busy loop at two clocks, not CoreMark; not ranked
Build details
ti-c2000-borrowed-energytrace - LP-AM13E230
- LP-AM263P
- LP-EM-CC35X1
- FRDM-MCXA153
- LP-MSPM0G3519
- LP-MSPM0G5187
- LP-MSPM33C321A
- NUCLEO-U083RC
Getting started
Plug-in to a changed blink, s
lower is better; the CC2340R5 figure includes 8 min lost to a half-seated probe
- LP-MSPM0G3507149
Build details
ccs-mcp - LP-MSPM0L1306
- LP-EM-CC2340R5540worst
Build details
cli - LP-CC1354P10-129
Build details
cli - LAUNCHXL-F2800137
- LP-AM13E23060
Build details
ccs-mcp - LP-AM263P78
Build details
cli - LP-EM-CC2755P10198
Build details
ccs-mcp - LP-EM-CC35X160
Build details
cli - ESP32-C6-DevKitC-1-N8184
Build details
cli - FRDM-MCXA1531.4best
Build details
cliat 12 MHz - IWRL6432BOOSTNot for this chip
- LP-MSPM0C110477
Build details
cli - LP-MSPM0G3519
- LP-MSPM0G5187
- LP-MSPM33C321A19
Build details
cli - NUCLEO-U083RC14
Build details
cliat 48 MHz - Raspberry Pi Pico 2 H87
Build details
cli - SK-TDA4VM
Blink build, s
lower is better
- LP-MSPM0G35076
Build details
ccs-mcp - LP-MSPM0L13063.3
Build details
cli - LP-EM-CC2340R522
Build details
cli - LAUNCHXL-F28001374.6
Build details
ti-led-ex1-blinky-cli - LP-AM13E2302.7best
Build details
cli - LP-AM263P5.9
Build details
cli - LP-EM-CC2755P1014
Build details
cli - LP-EM-CC35X16
Build details
cli - ESP32-C6-DevKitC-1-N867worst
Build details
cli - LAUNCHXL-F28P65X8.6
Build details
ti-led-ex1-blinky-cli - FRDM-MCXA15330
Build details
cliat 12 MHz - LP-MSPM0C11043.5
Build details
cli - LP-MSPM0G35193.2
Build details
cliat 32 MHz - LP-MSPM0G51874
Build details
cliat 32 MHz - LP-MSPM33C321A4.8
Build details
cliat 32 MHz - NUCLEO-U083RC6
Build details
cliat 48 MHz - Raspberry Pi Pico 2 H12
Build details
cli
Blink flash, s
lower is better
- LP-MSPM0G35076
Build details
west - LP-MSPM0L13060.6best
Build details
openocd - LP-EM-CC2340R57
Build details
uniflash - LAUNCHXL-F28001373.9
Build details
ccs-scripting-ram-load - LP-AM13E2303.3
Build details
uniflash - LP-EM-CC2755P1027worst
Build details
ccs-mcp - LP-MSPM0C11040.64
Build details
openocd - LP-MSPM0G35190.6best
Build details
openocdat 32 MHz - LP-MSPM0G518720.7
Build details
openocdat 32 MHz - LP-MSPM33C321A11.3
Build details
uniflashat 32 MHz - NUCLEO-U083RC1.2
Build details
openocdat 48 MHz
Examples safe to run that ran with no crash, %
higher is better; of the images safe to run, not the whole SDK: 213 of 270 on the G3507, 148 of 170 on the L1306
- LP-MSPM0G3507100
Build details
mspm0-sdk-2.11at 32 MHz - LP-MSPM0L1306100
Build details
mspm0-sdk-2.11 - LP-EM-CC2340R5100
Build details
cc35x1-twins-checked - LP-CC1354P10-1
- LAUNCHXL-F2800137100
Build details
c2000ware-26.02 - LP-AM13E23098.8
Build details
am13e230-sdk-26.01 - LP-AM263P118best
Build details
mcu-plus-sdk-26.01-lp - LP-EM-CC2755P1098.8
Build details
sdk-f3-9.21 - LP-EM-CC35X193.5
Build details
wifi-sdk-10.20.00.39 - ESP32-C6-DevKitC-1-N887.1
Build details
esp-idf-v6.1 - FRDM-MCXA15397.7
Build details
mcux-26.09.00 - LP-MSPM0C1104100
Build details
mspm0-sdk-2.11 - LP-MSPM0G3519100
Build details
mspm0-sdk-2.11 - LP-MSPM0G518790.8
Build details
mspm0-sdk-2.11 - LP-MSPM33C321A99.4
Build details
mspm33-sdk-1.04at 32 MHz - NUCLEO-U083RC100
Build details
stm32cubeu0-1.3.0at 48 MHz - Raspberry Pi Pico 2 H
- SK-TDA4VM60worst
Build details
edgeai-gst-apps-11.00.00.08
Full redraw of a 3.5 inch SPI screen, ms
lower is better; fastest setting
- LP-MSPM0G350767.2
Build details
spi40-dma16 - LP-MSPM0G351967.2
Build details
spi40-dma16
best in the rowbetweenworst in the rowNo color: a spread under 5 percent, one number only, or a figure that is not like for like (named under it). Hover Not for this chip for the reason. Small gray lines: the build behind the number. Hover a cell for more.
Linux boards: their own numbers
A Linux board runs its own tests: boot time, memory bandwidth and latency, model inference, video, Ethernet and storage. Most have no MCU to compare with, so the board sits behind the scorecard toggle. These are its headline numbers. The board page has the conditions and limits of each.
SK-TDA4VM 2x Cortex-A72 + C7x/MMA + 2x C66x + 6x R5F, 2000 MHz, 4 GB RAM
| Measured | Best measured | Variants | Source |
|---|---|---|---|
| Power in to the Linux login prompt on the serial console | 24.2 to 24.5 s warm | best of 2 variants; every row | |
| Vision app launch to the first frame-rate line | 3.09 to 3.84 s edgeai-app-yolox-pose-file | 1 variant; every row | |
| CoreMark | 19,579.9 to 19,583.4 iter/s gcc-linux-o3-2t | best of 7 variants; every row | |
| Dhrystone 2.1 | 5.26 to 5.68 DMIPS/MHz gcc-linux-o3-inline | best of 5 variants; every row | |
| Memory bandwidth, STREAM-style triad | 5,385 MB/s triad-2t | best of 3 variants; every row | |
| Memory load latency by pointer chase | 2.5 ns l1-16k | best of 7 variants; every row | |
| DDR bandwidth used during a pipeline (TI perf_stats) | 1,957 MB/s yolox-zerocopy-111fps | first of 2 variants; every row | |
| Deep-learning model: one inference, median wall time | 2.17 ms mobilenetv1-mlperf-224-tflitert-tidl-c7x | best of 22 variants; every row | |
| Whole vision graph: decode, preprocess, inference, postprocess, sink | 216.4 fps three-pipelines-yolox-c7x | best of 8 variants; every row | |
| Hardware video decode throughput | 499.6 fps 1280x768-h264-zerocopy | best of 7 variants; every row | |
| Hardware video encode throughput | 131 fps 720p-h264 | best of 4 variants; every row | |
| Wired Ethernet TCP throughput (iperf3) | 939.7 to 939.9 Mbit/s tcp-rx-from-host | best of 3 variants; every row | |
| Wired Ethernet round trip to a host on the same switch | 0.313 to 0.37 ms wired-host-same-switch | 1 variant; every row | |
| Timer wake-up latency (cyclictest), max over 60 s | 41 us idle | best of 2 variants; every row | |
| Boot medium sequential read | 44.8 MB/s microsd-fio-1m | best of 2 variants; every row | |
| Boot medium sequential write | 30.5 MB/s microsd-dd-direct | 1 variant; every row | |
| openssl speed, EVP, 8 KB blocks | 1,560 MB/s aes-128-gcm-cpu | best of 10 variants | |
| Room-occupancy model, one inference | 0.0174 ms Room occupancy: tiny, GCC -O3, on the A72 cores | best of 4 variants; every row |
TMDS62LEVM (AM62L EVM) 2x Cortex-A53, 1250 MHz, 2 GB RAM
| Measured | Best measured | Variants | Source |
|---|---|---|---|
| Power in to the Linux login prompt on the serial console | 3.9 to 3.91 s systemd-kernel | best of 9 variants; every row | README notes |
| CoreMark | 8,428.2 iter/s gcc15.3-linux-o2-2t | best of 7 variants; every row | README notes |
| Memory bandwidth, STREAM-style triad | 2,418.5 MB/s copy-2t | best of 4 variants; every row | README notes |
| Memory load latency by pointer chase | 2.41 ns l1-16k | best of 3 variants; every row | README notes |
| Whole vision graph: decode, preprocess, inference, postprocess, sink | 30 fps kmscube-1080p60-llvmpipe | best of 4 variants; every row | README notes |
| Wired Ethernet TCP throughput (iperf3) | 927 Mbit/s tx-to-host | best of 2 variants; every row | README notes |
| Wired Ethernet round trip to a host on the same switch | 0.368 ms host-same-switch | 1 variant; every row | README notes |
| Timer wake-up latency (cyclictest), max over 60 s | 442 to 645 us idle-60s-x3 | best of 4 variants; every row | AM62L realtime jitter notes |
| Boot medium sequential read | 38.1 MB/s usb-stick-dd-direct | 1 variant; every row | README notes |
| Boot medium sequential write | 10.4 MB/s usb-stick-dd-direct | best of 3 variants; every row | README notes |
What runs on each board
Works ran here and did what it shouldShould work it builds; only naming, packaging or build glue is in the way; hover for whichCould work some of it ran; real porting effort is left; hover for whatNot for this chip the chip or its vendor software cannot; hover for whyNot for this chip not enough RAM for itNot for this chip the chip has no radio for itNot for this chip the vendor offers no software for it on this chipNot for this chip a tool or build problem stopped it, not the chipNot for this chip it stopped on the air; the radio link in the room is the suspect, not the chip (not proven)
Every test, every board
The whole store, by test class; the tests that explain a chart sit under that chart. An empty cell is a gap, not a zero. Variant codes:
| Code | Means |
|---|---|
ticlang | TI Arm Clang, TI's own compiler |
gcc | GCC, the open-source compiler Zephyr uses |
armgnu14 | GCC 14 from the Arm GNU Toolchain |
ti-c2000 | TI's C2000 compiler |
bare | no operating system |
zephyr | under the Zephyr operating system |
o2, o3, os, oz | compiler optimization level: o3 is fastest code, os and oz are smallest |
o2unroll | Zephyr's speed setting: -O2 with loop unrolling. Its menu calls it -O3. |
flash, ram | where the code ran from |
c28patch | CoreMark patched for the C28x 16-bit byte: unofficial |
hw, sw | math unit in hardware, or the same math in software |
nnc | built by TI's Neural Network Compiler |
c-o3 | the model as plain C at that optimization level |
energytrace | measured with the board's own EnergyTrace probe |
eoc, early | control loop timed from the ADC end-of-conversion interrupt, or from the earlier ADC-start interrupt |
ramfunc | the interrupt handler copied to RAM |
o4, o4s0, o4s5 | C2000 compiler -O4 with size-against-speed settings 0 or 5 |
q15, q31, f32 | FFT in 16-bit fixed point, 32-bit fixed point, or 32-bit float |
-32mhz, -4mhz | the same build run at that clock instead of the board's top clock |
cli, ccs-mcp, west, uniflash, openocd, dslite | the path or tool used: command line, CCStudio's AI tools, Zephyr's tool, TI's flashers, OpenOCD |
register, driver | one register write, or the vendor's driver call |
(one way) | the test has only one way to run it, so the row has no variant code |
Setup: the other tests in this class
Box or plug-in to a changed blink s, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | IWRL6432BOOST | LP-AM263P | SK-TDA4VM |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| arduino | 124 (1 run)48 MHz | 146 (1 run)150 MHz | Not for this chip | ||||||||||||||||||
| ccs-mcp | 149 (1 run) | 60 (1 run) | 198 (1 run) | ||||||||||||||||||
| cli | 77 (1 run)24 MHz | 540 (1 run) | 29 (1 run) | 14 (1 run)48 MHz | 1.4 (1 run)12 MHz | 87 (1 run)150 MHz | 184 (1 run)160 MHz | 19 (1 run) | 22 (1 run) | 41 (1 run) | 60 (1 run) | Not for this chip | 78 (1 run) | ||||||||
| cli-eyes-check | |||||||||||||||||||||
| cli-script | 13.2 to 14.632 MHz | ||||||||||||||||||||
| cli-scripted | 15.2 to 15.732 MHz | ||||||||||||||||||||
| digital-lab-chrome-webhid | 13.3 (1 run)32 MHz | 22.9 (1 run)80 MHz | |||||||||||||||||||
| linkserver | |||||||||||||||||||||
| micropython | 65 (1 run)150 MHz | Not for this chip | |||||||||||||||||||
| oneline-terminal | 481 (1 run) | ||||||||||||||||||||
| oneline-terminal-start-sh | 75 (1 run) | ||||||||||||||||||||
| platformio | Not for this chip | ||||||||||||||||||||
| rust | |||||||||||||||||||||
| rust-from-nothing | 160 (1 run)32 MHz | ||||||||||||||||||||
| ti-led-ex1-blinky-cli | |||||||||||||||||||||
| vendor-ide | |||||||||||||||||||||
| zephyr | 570 (1 run) | Not for this chip | 82 (1 run) | 471 (1 run)48 MHz | 128 (1 run)96 MHz | ||||||||||||||||
| zephyr-script | 180 to 186 | Not for this chip | |||||||||||||||||||
| (one way) | Not for this chip |
Sources
c2000-launchpad/tools/c2kbuild_f28p65x.sh, cc1354p10/blink/README.md, cc2340r5/zephyr/README.md, cc3200-launchxl/README.md, iwrl6432boost/README.md, mspm0g3507/zephyr/README.md, mspm0l1306/README.md, ports/rust-mspm0/README.md
Blink example build time s, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| arduino | 2148 MHz, 1 run | |||||||||||||||||||
| arduino-cli | 301 run | |||||||||||||||||||
| ccs-mcp | 61 run | 91 run | 101 run | |||||||||||||||||
| cli | 3.332 MHz, 1 run | 3.5 to 4.324 MHz | 3.2 to 4.132 MHz | 4 to 5.832 MHz | 221 run | 648 MHz, 1 run | 3012 MHz, 1 run | 121 run | 671 run | 4.832 MHz, 1 run | 2.71 run | 141 run | 61 run | 5.91 run | ||||||
| cli-wrapper | 5.5 to 5.732 MHz | |||||||||||||||||||
| driverlib | 18.432 MHz, 1 run | 2.424 MHz, 1 run | 3.932 MHz, 1 run | 4.532 MHz, 1 run | ||||||||||||||||
| driverlib-am13 | 14.3200 MHz, 1 run | |||||||||||||||||||
| driverlib-hsadc | 9.932 MHz, 1 run | |||||||||||||||||||
| esphome-cc23xx-compile-cold | 31.5 | |||||||||||||||||||
| esphome-cc23xx-compile-warm | 22.4 to 23.3 | |||||||||||||||||||
| esphome-cc27xx-compile-cold | 35.1 to 40.1 | |||||||||||||||||||
| esphome-cc27xx-compile-warm | 27 to 31.9 | |||||||||||||||||||
| esphome-cc35xx-compile-cold | 55.71 run | |||||||||||||||||||
| esphome-cc35xx-compile-warm | 23.3 to 25.9 | |||||||||||||||||||
| moonlight-embedded-f32e415-cmake-make | 2821250 MHz, 1 run | |||||||||||||||||||
| rust-cold | 10732 MHz, 1 run | |||||||||||||||||||
| rust-incremental | 3.0532 MHz, 1 run | |||||||||||||||||||
| three-ways-app-c2000ware | 2.7 to 4120 MHz, 1 run | |||||||||||||||||||
| three-ways-app-linux-gcc14-o2 | 1.23 to 1.271250 MHz | |||||||||||||||||||
| three-ways-app-tidrivers | 37.11 run | 54.11 run | 8.41 run | |||||||||||||||||
| ti-led-ex1-blinky-cli | 4.61 run | 8.61 run | ||||||||||||||||||
| zephyr | 621 run | 51.5 to 52.880 MHz | 471 run | 42.748 MHz, 1 run | 12496 MHz, 1 run | |||||||||||||||
| (one way) |
Sources
c2000-launchpad/README.md, c2000-launchpad/tools/c2kbuild_f28p65x.sh, cc2340r5/README.md, cc2340r5/zephyr/README.md, cc3200-launchxl/README.md, data/benchmark-suite.json, docs/experiments/2026-10-13-esphome-cc27xx-platform.md, docs/experiments/2026-10-13-esphome-cc35xx-platform.md, mspm0l1306/README.md, portability/three-ways/README.md, portability/three-ways/tidrivers/build_cc2755p10.sh, portability/three-ways/tidrivers/build_cc35x1.sh, ports/rust-mspm0/README.md
Blink flash time s, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ccs-mcp | 381 run | 271 run | |||||||||||||||||
| ccs-scripting-ram-load | 3.91 run | ||||||||||||||||||
| digital-lab-chrome-webhid | 0.732 MHz, 1 run | 0.880 MHz, 1 run | |||||||||||||||||
| digital-lab-node-saci | 6.696 MHz, 1 run | ||||||||||||||||||
| dsflash-wrapper | 5.2 to 5.332 MHz | ||||||||||||||||||
| dslite | 5.4 to 5.624 MHz | 4.6 to 4.832 MHz | 4.7 to 6.432 MHz | 91 run | 5 | ||||||||||||||
| dslite-esphome-upload | 15 to 16.1 | ||||||||||||||||||
| dslite-esphome-upload-cc23xx | 15.1 to 16.7 | ||||||||||||||||||
| dslite-flash-cli | |||||||||||||||||||
| esptool | 2.4 | ||||||||||||||||||
| frl | 124 MHz, 1 run | 0.932 MHz, 1 run | 0.832 MHz, 1 run | 9.4 to 9.8 | 0.532 MHz, 1 run | 1.31 run | |||||||||||||
| openocd | 0.632 MHz, 1 run | 0.64 to 0.6724 MHz | 0.6 to 20.632 MHz | 20.732 MHz, 1 run | Not for this chip | 1.248 MHz, 1 run | |||||||||||||
| openocd-am13e230x | |||||||||||||||||||
| openocd-cc23xx | 0.371 run | ||||||||||||||||||
| openocd-mspm0 | 0.95 to 1.0932 MHz | ||||||||||||||||||
| openocd-ti-fork-cc23xx | 6.21 run | ||||||||||||||||||
| openocd-ti-fork-mspm33 | |||||||||||||||||||
| picotool | 2 | ||||||||||||||||||
| pyocd | 10.812 MHz, 1 run | ||||||||||||||||||
| pyocd-zephyr | 3.696 MHz, 1 run | ||||||||||||||||||
| rust-openocd | 2.632 MHz, 1 run | ||||||||||||||||||
| stm32cubeprogrammer | 548 MHz, 1 run | ||||||||||||||||||
| stm32duino-swd | 348 MHz, 1 run | ||||||||||||||||||
| toolbox | 201 run | ||||||||||||||||||
| uf2 | 11 run | ||||||||||||||||||
| uniflash | 1532 MHz, 1 run | 71 run | Not for this chip | 11.332 MHz, 1 run | 3.31 run | ||||||||||||||
| uniflash-zephyr | 71 run | ||||||||||||||||||
| west | 61 run | 4.5 to 4.880 MHz | |||||||||||||||||
| (one way) |
Sources
c2000-launchpad/README.md, c2000-launchpad/tools/F28P650DK9_CL650001.ccxml, cc2340r5/README.md, cc2340r5/zephyr/README.md, cc3200-launchxl/README.md, data/benchmark-suite.json, docs/experiments/2026-10-13-esphome-cc27xx-platform.md, docs/experiments/2026-10-18-open-flash-path-survey.md, docs/frl.md, mspm0l1306/README.md, ports/openocd-cc23xx/README.md, ports/rust-mspm0/README.md
One step of frl's connect ladder reaches the chip on its own (frl identify --connect-step) yes/no
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|
| clock-100-khz | 132 MHz, 1 run | |||
| clock-1000-khz | 132 MHz, 1 run | |||
| connect-under-reset | 11 run | 1200 MHz, 1 run | ||
| probe-reset-xdsdfu | Not for this chip |
Sources
docs/frl.md
Print-a-message write and serial check, three runs back to back s, lower is better
| Variant | LP-MSPM0L1306 | LP-EM-CC2340R5 | LP-EM-CC35X1 |
|---|---|---|---|
| frl | 132 MHz | ||
| frl-dslite | 9.2 to 9.848 MHz | ||
| frl-toolbox | 23.3 to 24.2 |
Sources
docs/frl.md
frl's own check fails on the board when asked for something the program does not do yes/no
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|
| led-log-other-pattern | 148 MHz, 1 run | ||||||||
| led-other-pattern | 11 run | 11 run | 11 run | 11 run | 11 run | 11 run | |||
| uart-other-message | 148 MHz, 1 run | 11 run |
Sources
docs/frl.md
frl refuses an unsafe write or restore before anything is written yes/no
| Variant | LP-CC1354P10-1 | LP-EM-CC35X1 |
|---|---|---|
| layout-change | 11 run | |
| old-backup | 11 run | |
| power-cycle-other-port | 11 run | |
| stale-bundle | 11 run |
Sources
docs/frl.md
Print-a-message write and serial check, one run s, lower is better
| Variant | LP-MSPM0L1306 | LP-EM-CC35X1 |
|---|---|---|
| frl | 1.5132 MHz, 1 run | |
| frl-toolbox-hashed-copy | 20.21 run |
Sources
docs/frl.md
Blink write and check through frl's second write path (TI's DSLite), once s, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|
| dslite | 632 MHz, 1 run | 6.124 MHz, 1 run | 5.932 MHz, 1 run | 61 run | 11.51 run | 5.71 run | 5.2200 MHz, 1 run |
Sources
docs/frl.md
Blink write and check, three runs back to back s, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|---|
| frl | 0.732 MHz | 0.624 MHz | 0.7 to 20.632 MHz | 0.732 MHz | 9.2 to 9.9 | 0.532 MHz | 1.1 | ||
| frl-ccs13 | 7.4 to 34.648 MHz | ||||||||
| frl-dslite | 10.2 to 10.548 MHz | ||||||||
| frl-verify-path | 0.732 MHz |
Sources
docs/frl.md
Debug probe on the board yes/no
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | CC3200-LAUNCHXL | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| (one way) | yes1 run | yes1 run | yes1 run | yes1 run | yes1 run | no | yes | yes | yes1 run | yes1 run | yes1 run | no1 run | yes | yes1 run | yes1 run | no | no | yes1 run | yes1 run |
Sources
c2000-launchpad/README.md, c2000-launchpad/tools/F28P650DK9_CL650001.ccxml, cc1354p10/README.md, cc2340r5/README.md, cc2755p10/README.md, cc3200-launchxl/README.md, esp32c6/README.md, mspm0l1306/README.md, pico2/README.md
Power in to the Linux login prompt on the serial console s, lower is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| booti-to-login-median3 | 21.4 to 21.71250 MHz | |
| first-boot | 27.71 run | |
| kernel-6.18.38-ti-kvm-reboot-to-login | 32.81250 MHz, 1 run | |
| kvm-guest-alpine-qemu-start-to-poweroff | 19.9 to 20.21250 MHz | |
| rom-phase1-zephyr-sram | ||
| sd-boot-to-login | ||
| systemd-kernel | 3.9 to 3.911250 MHz | |
| systemd-userspace-total | 135.3 to 135.51250 MHz | |
| uart-rom-ping-to-uboot-prompt | 420 to 422.5 | |
| uart-tiboot3-xmodem | 28 to 28.2 | |
| uart-tispl-xmodem | 190 to 191.9 | |
| uart-uboot-img-ymodem | 192.2 to 192.4 | |
| warm | 24.2 to 24.5 |
Sources
am62l-evm/README.md, am62l-evm/zephyr/mkphase1.sh, docs/experiments/2026-10-24-am62l-sd-boot-stall.md
LED pin toggles under the Rust build (probe GPIO read, changes counted) count, higher is better
| Variant | LP-MSPM0L1306 | LP-AM13E230 |
|---|---|---|
| msp430-fram-persist | 132 MHz, 1 run | |
| rust-embassy | 532 MHz, 1 run |
Sources
ports/msp430-to-mspm0/fram-persist/PORT.md, ports/rust-mspm0/README.md
Serial console shows the program banner and a running count yes/no
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-AM13E230 |
|---|---|---|---|
| cli-wrapper | |||
| msp430-lpm3-wake | yes32 MHz, 1 run | yes200 MHz, 1 run | |
| msp430-uart-echo | yes32 MHz, 1 run | ||
| rust-embassy | Works32 MHz, 1 run |
Sources
ports/msp430-to-mspm0/uart-echo-lpm3/PORT.md, ports/rust-mspm0/README.md
Core: the other tests in this class
GPIO toggle cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| driver | 1.11 to 880 MHz, 1 run | 1.05 to 1332 MHz, 1 run | 2.04 to 524 MHz | 1.11 to 880 MHz | 1.08 to 880 MHz | 5 to 9120 MHz, 1 run | 2148 MHz | 3.0196 MHz, 1 run | 5 to 9.99200 MHz, 1 run | 10400 MHz | ||||||||
| driver-bare-o3 | 19.248 MHz, 1 run | 15.148 MHz | 68160 MHz | 8.0696 MHz | ||||||||||||||
| driver-bare-oz | 3148 MHz, 1 run | 1948 MHz | 1196 MHz | |||||||||||||||
| driver-m33 | 7150 MHz | |||||||||||||||||
| driver-m33-gcc12 | 7150 MHz | |||||||||||||||||
| driver-o3 | ||||||||||||||||||
| driver-riscv | 6150 MHz | |||||||||||||||||
| register | 1 to 1.1280 MHz, 1 run | 1 to 1.1232 MHz, 1 run | 180 MHz | 1 to 1.1280 MHz | 1.56120 MHz, 1 run | 1.1296 MHz, 1 run | 1.56200 MHz, 1 run | 10400 MHz | ||||||||||
| register-bare-o3 | 224 MHz, 1 run | 2.148 MHz, 1 run | 1.5148 MHz | 2.5 to 448 MHz | 38160 MHz | 8160 MHz | 3.9996 MHz | |||||||||||
| register-bare-o3-32mhz | 3.0232 MHz | |||||||||||||||||
| register-bare-oz | 948 MHz, 1 run | 8.0148 MHz | 7.0196 MHz | |||||||||||||||
| register-m33 | 4150 MHz | |||||||||||||||||
| register-m33-gcc12 | 4150 MHz | |||||||||||||||||
| register-riscv | 3150 MHz | |||||||||||||||||
| register-zephyr-o2unroll | 2.848 MHz, 1 run | |||||||||||||||||
| zephyr | 36.2 to 4980 MHz, 1 run | 26 to 4232 MHz, 1 run | 21.5 to 3048 MHz, 1 run | |||||||||||||||
| zephyr-o2unroll | 26.848 MHz, 1 run |
Sources
cc1354p10/baremetal/README.md, cc2340r5/baremetal/README.md, mspm0l1306/zephyr/README.md
256-point complex FFT ms, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| armgnu14-f32 | 4.6696 MHz, 1 run | ||||||||||||||
| armgnu14-q15 | 0.33296 MHz, 1 run | ||||||||||||||
| armgnu14-q31 | 0.25796 MHz, 1 run | ||||||||||||||
| cmsis-dsp | |||||||||||||||
| f32 | 25.732 MHz | 11.180 MHz | 1180 MHz | 18.348 MHz | 0.47348 MHz | 0.107120 MHz | 2048 MHz | 4.6996 MHz, 1 run | 0.204160 MHz | 0.117200 MHz | 0.22496 MHz | ||||
| f32-32mhz | 0.71632 MHz | ||||||||||||||
| f32-flash | 0.106120 MHz | ||||||||||||||
| f32-m33 | 0.17150 MHz | ||||||||||||||
| f32-riscv | 2.46150 MHz | ||||||||||||||
| q15 | 2.2532 MHz, 1 run | Not for this chip | 0.91880 MHz | 0.91880 MHz | 1.6948 MHz | 0.3448 MHz | 1.4448 MHz | 0.32996 MHz, 1 run | 0.135160 MHz | 0.0755200 MHz | 0.1696 MHz | ||||
| q15-32mhz | 0.49832 MHz | ||||||||||||||
| q15-m33 | 0.0969150 MHz | ||||||||||||||
| q15-riscv | 0.179150 MHz | ||||||||||||||
| q31 | 7.6832 MHz, 1 run | 3.2180 MHz | 3.2780 MHz | 5.3848 MHz | 0.55848 MHz | 3.7448 MHz | 0.25496 MHz, 1 run | 0.24160 MHz | 0.136200 MHz | 0.26896 MHz | |||||
| q31-32mhz | 0.82332 MHz | ||||||||||||||
| q31-m33 | 0.161150 MHz | ||||||||||||||
| q31-riscv | 0.135150 MHz |
Sources
data/boards.csv
sin plus cos cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| fpu-flash | 154.9150 MHz | ||||||||||||||||
| fpu-flash-gcc12 | 156.9150 MHz | ||||||||||||||||
| fpu-flash-o3 | 154.9150 MHz | ||||||||||||||||
| fpu-flash-o3-gcc12 | 156.9150 MHz | ||||||||||||||||
| fpu-flash-os | 157.1150 MHz | ||||||||||||||||
| fpu-flash-os-gcc12 | 157.1150 MHz | ||||||||||||||||
| fpu-gcc-bare-o3-m33 | 152.7150 MHz | ||||||||||||||||
| fpu-gcc-bare-o3-m33-gcc12 | 152.7150 MHz | ||||||||||||||||
| hw | 115.8 to 132.180 MHz, 1 run | n/a | n/a | 109.8 to 143.180 MHz, 1 run | n/a | n/a | n/a | 16.5120 MHz | n/a | ||||||||
| hw-flash | 24120 MHz | ||||||||||||||||
| hw-tmu | 11.6200 MHz | 26.9400 MHz | |||||||||||||||
| riscv-nofpu-gcc-bare-o3-riscv | 2.2k150 MHz | ||||||||||||||||
| sdk | 77.8400 MHz | ||||||||||||||||
| sw | 9.9k to 10k80 MHz, 1 run | 8.7k to 9.1k32 MHz, 1 run | 10k to 11k80 MHz, 1 run | 8k to 8k80 MHz | 9.7k48 MHz, 1 run | 162.8120 MHz | 2.5k96 MHz, 1 run | 3.4k160 MHz | 495.5160 MHz, 1 run | 512.7200 MHz | 300.2400 MHz | ||||||
| sw-32mhz | 454.432 MHz, 1 run | ||||||||||||||||
| sw-flash | 7.1k32 MHz | 522.548 MHz | 190.7120 MHz | 6.3k48 MHz | 451.996 MHz | ||||||||||||
| sw-flash-o3 | 451.996 MHz | ||||||||||||||||
| sw-flash-o3-riscv | 2.3k150 MHz | ||||||||||||||||
| sw-flash-os | 461.696 MHz | ||||||||||||||||
| sw-flash-os-riscv | 2.3k150 MHz | ||||||||||||||||
| sw-flash-riscv | 2.3k150 MHz | ||||||||||||||||
| sw-ticlang-bare-o3 | 8.2k48 MHz | 527.948 MHz | 45796 MHz | ||||||||||||||
| sw-ticlang-bare-oz | 8.2k48 MHz | 53948 MHz | 465.296 MHz |
Sources
mspm0l1306/zephyr/README.md
Divide cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| fpu-flash | 18.848 MHz | 21.1150 MHz | 18.896 MHz | ||||||||||||||
| fpu-flash-gcc12 | 21.1150 MHz | ||||||||||||||||
| fpu-flash-o3 | 21.1150 MHz | 18.896 MHz | |||||||||||||||
| fpu-flash-o3-gcc12 | 21.1150 MHz | ||||||||||||||||
| fpu-flash-os | 20.1150 MHz | 2396 MHz | |||||||||||||||
| fpu-flash-os-gcc12 | 21.1150 MHz | ||||||||||||||||
| fpu-gcc-bare-o3-m33 | 17.6150 MHz | ||||||||||||||||
| fpu-gcc-bare-o3-m33-gcc12 | 17.6150 MHz | ||||||||||||||||
| hw | 100 to 11280 MHz, 1 run | n/a | n/a | 94 to 119.180 MHz, 1 run | n/a | n/a | n/a | 8120 MHz | n/a | 13.696 MHz, 1 run | 9160 MHz | ||||||
| hw-flash | 12120 MHz | ||||||||||||||||
| hw-tmu | 7.86200 MHz | Not for this chip | |||||||||||||||
| riscv-nofpu-gcc-bare-o3-riscv | 26150 MHz | ||||||||||||||||
| sw | 262.4 to 267.580 MHz, 1 run | 242.2 to 253.232 MHz, 1 run | 263.3 to 271.580 MHz, 1 run | 368 to 373.180 MHz | 283.548 MHz, 1 run | 241.2120 MHz | 15.1160 MHz, 1 run | 15.1200 MHz | 15.9400 MHz | ||||||||
| sw-32mhz | 15.132 MHz, 1 run | ||||||||||||||||
| sw-flash | 509.232 MHz | 250.2120 MHz | 442.948 MHz | ||||||||||||||
| sw-flash-o3-riscv | 173.2150 MHz | ||||||||||||||||
| sw-flash-os-riscv | 172.3150 MHz | ||||||||||||||||
| sw-flash-riscv | 173.2150 MHz | ||||||||||||||||
| sw-ticlang-bare-o3 | 457.448 MHz | 13.848 MHz | 13.796 MHz | ||||||||||||||
| sw-ticlang-bare-oz | 461.648 MHz | 21.648 MHz | 20.696 MHz |
Sources
mspm0l1306/zephyr/README.md
Hardware AES against software (ratio at one message size) x, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 16b-ecb-mbedtls | 1.23160 MHz | |||||||||||||||
| 16b-ecb-ticlang-o2-keyin | 25.632 MHz, 1 run | 20.1200 MHz, 1 run | ||||||||||||||
| 16b-ecb-ticlang-o2-keyout | 29.932 MHz, 1 run | 28.6200 MHz, 1 run | ||||||||||||||
| 1kb-aes256-ecb-gcc12-o2-hal | 33.648 MHz | |||||||||||||||
| 1kb-aes256-ecb-gcc12-o2-reg | 93.948 MHz | |||||||||||||||
| 1kb-aes256-ecb-gcc12-o3-hal | 25.448 MHz | |||||||||||||||
| 1kb-aes256-ecb-gcc12-o3-reg | 69.748 MHz | |||||||||||||||
| 1kb-cbc-ticlang-o2-driver-polling | 45.9 to 93.748 MHz | |||||||||||||||
| 1kb-cbc-ticlang-o3-driver-polling | 45.8 to 93.948 MHz | |||||||||||||||
| 1kb-ecb-mbedtls | 0.83160 MHz | |||||||||||||||
| 1kb-ecb-ticlang-o2-driver-polling | 128.248 MHz | 51.148 MHz | ||||||||||||||
| 1kb-ecb-ticlang-o2-keyin | 41.732 MHz, 1 run | 29.8200 MHz, 1 run | ||||||||||||||
| 1kb-ecb-ticlang-o2-keyout | 41.932 MHz, 1 run | 29.9200 MHz, 1 run | ||||||||||||||
| 1kb-ecb-ticlang-o3-driver-polling | 131.548 MHz | 51.148 MHz | ||||||||||||||
| 1kb-gcc12-o2-hal | 26 to 44.148 MHz | |||||||||||||||
| 1kb-gcc12-o2-reg | 83.9 to 90.848 MHz | |||||||||||||||
| 1kb-gcc12-o3-hal | 19.6 to 37.148 MHz | |||||||||||||||
| 1kb-gcc12-o3-reg | 65.1 to 74.448 MHz | |||||||||||||||
| 1kb-ticlang-o2 | 20.3 to 36.580 MHz, 1 run | 45.8 to 79.180 MHz | 45.5 to 78.580 MHz | |||||||||||||
| hsm-psa | ||||||||||||||||
| none | n/a | |||||||||||||||
| ticlang-o2-driver-polling | 92.896 MHz | |||||||||||||||
| ticlang-o3-driver-polling | 92.896 MHz | |||||||||||||||
| (one way) | n/a | n/a | n/a | Not for this chip |
Sources
mspm0l1306/third-party/README.md
Hardware CRC against a table x, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| crc16-256b | 324 MHz, 1 run | |||||||||||||||
| dma-sniffer-m33 | 5.63150 MHz | |||||||||||||||
| dma-sniffer-riscv | 5.71150 MHz | |||||||||||||||
| gcc12-o3 | 8.3448 MHz | |||||||||||||||
| none | n/a | |||||||||||||||
| (one way) | 13.580 MHz, 1 run | 10.932 MHz, 1 run | 8.0980 MHz | 8.1280 MHz | n/a | n/a | 7.0696 MHz, 1 run | n/a | 2.7532 MHz, 1 run | 1.89200 MHz, 1 run | n/a | Not for this chip |
Sources
cc2755p10/README.md, mspm0l1306/third-party/README.md
Blink image flash B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| arduino | 12.9 kB48 MHz, 1 run | 50.9 kB1 run | |||||||||||||||
| bare | 4721 run | 4401 run | 5281 run | 5.6 kB | 11.5 kB | 8.4 kB1 run | 80032 MHz, 1 run | 7 kB1 run | 7 kB1 run | n/a | |||||||
| bare-m33 | 33 kB1 run | ||||||||||||||||
| bare-riscv | 39.1 kB1 run | ||||||||||||||||
| driverlib-bare | 42424 MHz, 1 run | ||||||||||||||||
| esp-idf-v6.1-og | 147.6 kB160 MHz, 1 run | ||||||||||||||||
| freertos | 3.7 kB32 MHz, 1 run | 3.7 kB1 run | 4.1 kB24 MHz, 1 run | 11.7 kB | 17.5 kB | 17.6 kB | |||||||||||
| mcux-bare | 3.7 kB12 MHz, 1 run | ||||||||||||||||
| rust-embassy | 2.6 kB32 MHz, 1 run | ||||||||||||||||
| st-hal-bare | 3.8 kB48 MHz, 1 run | ||||||||||||||||
| stm32g4-hal | 8.4 kB1 run | ||||||||||||||||
| zephyr | 11.7 kB1 run | 11.1 kB1 run | Not for this chip | 11.8 kB1 run | Not for this chip | 9.9 kB | 16.5 kB48 MHz, 1 run | 17.1 kB96 MHz, 1 run |
Sources
am13e230/stm32g4-hal/run_all.sh, cc2755p10/README.md, cc35x1/README.md, mspm0c1104/freertos/README.md, mspm0g3519/FAQ.md, mspm0l1306/freertos/README.md, mspm0l1306/zephyr/README.md, ports/rust-mspm0/README.md
Blink image RAM B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| arduino | 91648 MHz, 1 run | 9.5 kB1 run | |||||||||||||||
| bare | 5121 run | 2561 run | 2561 run | 9.9 kB | 18.6 kB | 1.5 kB1 run | 25632 MHz, 1 run | 9 kB1 run | 10.1 kB1 run | 93.8 kB1 run | |||||||
| bare-m33 | 2.6 kB1 run | ||||||||||||||||
| bare-riscv | 2.3 kB1 run | ||||||||||||||||
| driverlib-bare | 6424 MHz, 1 run | ||||||||||||||||
| esp-idf-v6.1-og | 48.5 kB160 MHz, 1 run | ||||||||||||||||
| freertos | 1 kB32 MHz, 1 run | 1 kB1 run | 1 kB24 MHz, 1 run | 13 kB | 37.6 kB | 36.9 kB | |||||||||||
| mcux-bare | 3.2 kB12 MHz, 1 run | ||||||||||||||||
| rust-embassy | 11232 MHz, 1 run | ||||||||||||||||
| st-hal-bare | 1.6 kB48 MHz, 1 run | ||||||||||||||||
| stm32g4-hal | 9 kB1 run | ||||||||||||||||
| zephyr | 3.9 kB1 run | 3.8 kB1 run | 4 kB1 run | 4 kB | 4.8 kB48 MHz, 1 run | 3.8 kB96 MHz, 1 run |
Sources
am13e230/stm32g4-hal/run_all.sh, cc2755p10/README.md, cc35x1/README.md, mspm0c1104/freertos/README.md, mspm0g3519/FAQ.md, mspm0l1306/freertos/README.md, mspm0l1306/zephyr/README.md, ports/rust-mspm0/README.md
Zephyr upstream support status
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | IWRL6432BOOST | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| out-of-tree port | Works1 run | Not for this chip | Works400 MHz, 1 run | ||||||||||||||
| upstream | Works1 run | Not for this chip | Not for this chip | Works | Not for this chip | Works | Not for this chip | Not for this chip | Works48 MHz, 1 run | Works1 run | partly1 run | Works | Not for this chip | Not for this chip | Not for this chip | Not for this chip | |
| upstream-4.4.2-spi | Not for this chip | Not for this chip | |||||||||||||||
| upstream-main-boosterpack | Not for this chip | ||||||||||||||||
| upstream-main-micropython | Works160 MHz, 1 run | ||||||||||||||||
| upstream-main-spi | Works1 run | Works1 run | |||||||||||||||
| vendor-fork | Not for this chip | Works96 MHz, 1 run |
Sources
am263p/README.md, cc1354p10/README.md, cc2340r5/zephyr-ti/README.md, cc2340r5/zephyr/README.md, cc2755p10/README.md, cc35x1/README.md, docs/experiments/2026-10-08-zephyr-lp-mspm0g3519.md, docs/experiments/2026-10-09-am13e230-zephyr-upstream.md, iwrl6432boost/README.md, mspm0g3507/zephyr/README.md, mspm0l1306/zephyr/README.md, ports/micropython/zephyr-mspm33c321a/README.md
RTOS task switch round trip us, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| freertos | 12 to 1632 MHz, 1 run | 19.9 to 25.324 MHz | 7 to 8.9880 MHz | 10.6 to 1448 MHz | 7.38 to 9.4248 MHz | Not for this chip | 9.29 to 13.248 MHz | 2.7696 MHz, 1 run | 16.5160 MHz | 11.5 to 14.532 MHz | 1.49 to 2.1200 MHz, 1 run | 3.5 to 4.4596 MHz | |||||
| freertos-lean | 16.3 to 21.724 MHz | ||||||||||||||||
| freertos-m33 | 1.91150 MHz | ||||||||||||||||
| freertos-o3 | 9.98 to 1348 MHz | 7.25 to 9.1948 MHz | 3.44 to 4.5296 MHz | ||||||||||||||
| freertos-riscv | 2.58150 MHz | ||||||||||||||||
| freertos-ti-example-notify | 5.13400 MHz, 1 run | ||||||||||||||||
| freertos-ti-example-semaphore | 6.06400 MHz, 1 run | ||||||||||||||||
| zephyr | 6.7280 MHz, 1 run | 6.9980 MHz, 1 run | 10.5 to 12.648 MHz, 1 run | 18.8 to 21.848 MHz, 1 run |
Sources
mspm0c1104/freertos/README.md, mspm0l1306/freertos/README.md
Minimal tasks that fit tasks, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| freertos | 1132 MHz, 1 run | 124 MHz, 1 run | Not for this chip | 14948 MHz, 1 run | 513 to 514160 MHz | |||||||||||
| freertos-heap | 20580 MHz | 5180 MHz | 4148 MHz | 38848 MHz | 996 MHz, 1 run | 39732 MHz, 1 run | 23896 MHz | |||||||||
| freertos-heap-m33 | 775150 MHz | |||||||||||||||
| freertos-heap-riscv | 731150 MHz | |||||||||||||||
| freertos-static | 4148 MHz | 40848 MHz | 25296 MHz | |||||||||||||
| freertos-static48 | 12280 MHz | |||||||||||||||
| freertos-unchecked | 224 MHz, 1 run |
Sources
mspm0c1104/freertos/README.md, mspm0g3519/RESULTS-mspm0g3519.md, mspm0l1306/freertos/README.md
AES-128 CBC encrypt of 1 kB in software (tiny-AES-c) cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| gcc12-o2-flash | 538k48 MHz | |||||||||||
| gcc12-o3-flash | 405k48 MHz | |||||||||||
| ticlang-o2-flash | 435k80 MHz, 1 run | 416k32 MHz, 1 run | 439k80 MHz | 439k80 MHz | 424k48 MHz | 249k48 MHz | 772k120 MHz, 1 run | 316k32 MHz, 1 run | 359k200 MHz, 1 run | 233k96 MHz | ||
| ticlang-o2-ram | 628k120 MHz, 1 run | |||||||||||
| ticlang-o3-flash | 249k48 MHz | 234k96 MHz | ||||||||||
| ticlang-o4s5-ram | 405k120 MHz, 1 run | |||||||||||
| tinyaes-o2 |
Sources
Run records are in the notebook, not this copy.
AES-128 in hardware, cycles per byte cycles/B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 16b-cbc-ticlang-o2-keyin | 125.548 MHz | 129.1 to 129.248 MHz | 72.296 MHz | ||||||||
| 16b-cbc-ticlang-o3-keyin | 126.148 MHz | 128.848 MHz | 71.296 MHz | ||||||||
| 16b-ecb-gcc12-o2-keyin-hal | 43.848 MHz | ||||||||||
| 16b-ecb-gcc12-o2-keyin-reg | 14.548 MHz | ||||||||||
| 16b-ecb-gcc12-o3-keyin-hal | 39.848 MHz | ||||||||||
| 16b-ecb-gcc12-o3-keyin-reg | 8.8848 MHz | ||||||||||
| 16b-ecb-ticlang-o2-keyin | 73.648 MHz | 91.648 MHz | 15.132 MHz, 1 run | 21.5200 MHz, 1 run | 40.296 MHz | ||||||
| 16b-ecb-ticlang-o2-keyout | 10.332 MHz, 1 run | 12.2200 MHz, 1 run | |||||||||
| 16b-ecb-ticlang-o3-keyin | 72.948 MHz | 91.848 MHz | 39.496 MHz | ||||||||
| 1kb-cbc-gcc12-o2-keyin-hal | 19.848 MHz | ||||||||||
| 1kb-cbc-gcc12-o2-keyin-reg | 6.1648 MHz | ||||||||||
| 1kb-cbc-gcc12-o3-keyin-hal | 19.848 MHz | ||||||||||
| 1kb-cbc-gcc12-o3-keyin-reg | 5.9748 MHz | ||||||||||
| 1kb-cbc-ticlang-o2-keyin | 20.980 MHz, 1 run | 9.3580 MHz | 9.4280 MHz | 3.9948 MHz | 5.2948 MHz | 2.8496 MHz | |||||
| 1kb-cbc-ticlang-o3-keyin | 3.9848 MHz | 5.348 MHz | 2.8496 MHz | ||||||||
| 1kb-ecb-gcc12-o2-keyin-hal | 19.848 MHz | ||||||||||
| 1kb-ecb-gcc12-o2-keyin-reg | 6.1348 MHz | ||||||||||
| 1kb-ecb-gcc12-o3-keyin-hal | 19.748 MHz | ||||||||||
| 1kb-ecb-gcc12-o3-keyin-reg | 5.9548 MHz | ||||||||||
| 1kb-ecb-ticlang-o2-keyin | 1780 MHz, 1 run | 9.3380 MHz | 9.3980 MHz | 3.1748 MHz | 4.6548 MHz | 7.4332 MHz, 1 run | 11.8200 MHz, 1 run | 2.3996 MHz | |||
| 1kb-ecb-ticlang-o2-keyout | 7.3532 MHz, 1 run | 11.7200 MHz, 1 run | |||||||||
| 1kb-ecb-ticlang-o3-keyin | 3.1748 MHz | 4.6448 MHz | 2.3896 MHz | ||||||||
| accelerator | Not for this chip | ||||||||||
| hsm-psa |
Sources
am62l-evm/README.md
AES-128 in software (tiny-AES-c), cycles per byte cycles/B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 16b-ecb-ticlang-o2-keyin | 501.948 MHz | 311.6 to 311.848 MHz | 385.132 MHz, 1 run | 432.9200 MHz, 1 run | 288.896 MHz | ||||||||
| 16b-ecb-ticlang-o2-keyout | 400.448 MHz | 231.448 MHz | 308.332 MHz, 1 run | 348.1200 MHz, 1 run | 216.496 MHz | ||||||||
| 16b-ecb-ticlang-o3-keyin | 512.648 MHz | 310.848 MHz | 288.496 MHz | ||||||||||
| 16b-ecb-ticlang-o3-keyout | 410.848 MHz | 231.148 MHz | 216.496 MHz | ||||||||||
| 16kb-cbc-openssl-armv8ce | 1.331250 MHz, 1 run | ||||||||||||
| 1kb-cbc-gcc12-o2-flash-keyout | 525.448 MHz | ||||||||||||
| 1kb-cbc-gcc12-o3-flash-keyout | 395.548 MHz | ||||||||||||
| 1kb-cbc-ticlang-o2-flash-keyout | 424.780 MHz, 1 run | 405.932 MHz, 1 run | 428.680 MHz | 428.680 MHz | 754.3120 MHz, 1 run | ||||||||
| 1kb-cbc-ticlang-o2-keyout | 404.748 MHz | 235.448 MHz | 220.396 MHz | ||||||||||
| 1kb-cbc-ticlang-o2-ram-keyout | 613.7120 MHz, 1 run | ||||||||||||
| 1kb-cbc-ticlang-o3-keyout | 417.448 MHz | 235.148 MHz | 221.596 MHz | ||||||||||
| 1kb-cbc-ticlang-o4s5-ram-keyout | 395.4120 MHz, 1 run | ||||||||||||
| 1kb-ecb-ticlang-o2-keyin | 309.332 MHz, 1 run | 350.5200 MHz, 1 run | |||||||||||
| 1kb-ecb-ticlang-o2-keyout | 397.948 MHz | 229.748 MHz | 308.232 MHz, 1 run | 349.4200 MHz, 1 run | 214.596 MHz | ||||||||
| 1kb-ecb-ticlang-o3-keyout | 408.248 MHz | 229.348 MHz | 214.296 MHz | ||||||||||
| tinyaes-o2 |
Sources
am62l-evm/README.md
Memory bandwidth, STREAM-style triad MB/s, higher is better
| Variant | LP-AM263P | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|
| bytecopy-64k-ocram-beside-loop-core1 | 59.2400 MHz | ||
| bytecopy-64k-ocram-beside-loop-core2 | 58.6400 MHz | ||
| bytecopy-64k-ocram-beside-loop-core3 | 61.4400 MHz | ||
| bytecopy-64k-ocram-cores1to3-core1 | 59.2400 MHz | ||
| bytecopy-64k-ocram-cores1to3-core2 | 58.6400 MHz | ||
| bytecopy-64k-ocram-cores1to3-core3 | 61.4400 MHz | ||
| copy-1t | 1,6351250 MHz, 1 run | ||
| copy-2t | 2,418.51250 MHz, 1 run | ||
| triad-1t | 4,789 | 1,521.51250 MHz, 1 run | |
| triad-1t-3runs | 4,793 to 4,795 | ||
| triad-2t | 5,3852000 MHz | 2,392.11250 MHz, 1 run | |
| wordcopy-64k-ocram-beside-loop-core1 | 247.4 to 247.5400 MHz | ||
| wordcopy-64k-ocram-beside-loop-core2 | 235.4400 MHz | ||
| wordcopy-64k-ocram-beside-loop-core3 | 296.5400 MHz | ||
| wordcopy-64k-ocram-cores1to3-core1 | 247.5 to 248400 MHz | ||
| wordcopy-64k-ocram-cores1to3-core2 | 235.3 to 235.4400 MHz | ||
| wordcopy-64k-ocram-cores1to3-core3 | 296.5400 MHz | ||
| wordcopy-nearcore0-64k-ocram-beside-loop-core1 | 326.7400 MHz | ||
| wordcopy-nearcore0-64k-ocram-beside-loop-core2 | 261.8400 MHz | ||
| wordcopy-nearcore0-64k-ocram-beside-loop-core3 | 308.5 to 308.6400 MHz | ||
| wordcopy-nearcore0-64k-ocram-cores1to3-core1 | 327.2 to 327.4400 MHz | ||
| wordcopy-nearcore0-64k-ocram-cores1to3-core2 | 262.2 to 262.3400 MHz | ||
| wordcopy-nearcore0-64k-ocram-cores1to3-core3 | 309.1 to 309.3400 MHz |
Sources
am62l-evm/README.md
TI OptiFlash benchmark: 16 tasks, no copy (the 0 B row), code where the variant says ms, lower is better
| Variant | LP-AM263P |
|---|---|
| ocram | 14.6400 MHz |
| xip | 126.6 to 129400 MHz |
| xip-l2-16k | 91.8400 MHz |
| xip-l2-32k | 65.5400 MHz |
| xip-l2-64k | 34.6400 MHz |
| xip-l2-8k | 110.4 to 111.2400 MHz |
| xip-sp | 13.3400 MHz |
Sources
Run records are in the notebook, not this copy.
Hardware video decode throughput fps, higher is better
| Variant | SK-TDA4VM |
|---|---|
| 1080p-h264-1 | 66.7 to 67.5 |
| 1080p-h264-2 | 91.11 run |
| 1080p-h264-4 | 89.41 run |
| 1080p-h264-zerocopy | Not for this chip |
| 1280x768-h264-1 | 4521 run |
| 1280x768-h264-2 | 4611 run |
| 1280x768-h264-4 | 4491 run |
| 1280x768-h264-zerocopy | 499.61 run |
Sources
Run records are in the notebook, not this copy.
Hardware video encode throughput fps, higher is better
| Variant | SK-TDA4VM |
|---|---|
| 1080p-h264 | 42 |
| 1080p-h264-hw-transcode | 53.7 |
| 1080p-jpeg-software | 411 run |
| 720p-h264 | 1311 run |
Sources
Run records are in the notebook, not this copy.
Holoscan Sensor Bridge device emulation: CPU cost of the packetizer process %, lower is better
| Variant | SK-TDA4VM |
|---|---|
| 1080p-raw8-30fps-ticks | 37.21 run |
| 1080p-raw8-30fps-wire-perf | 37.41998 MHz, 1 run |
| 1080p-raw8-60fps-mtu1500-perf | 98.11998 MHz, 1 run |
| 1080p-raw8-60fps-mtu9000-perf | 371998 MHz, 1 run |
| 1080p-raw8-60fps-ticks | 52.21 run |
| 720p-raw8-30fps-ticks | 16.51 run |
| 720p-raw8-30fps-wire-perf | 21.91998 MHz, 1 run |
| 720p-raw8-60fps-ticks | 331 run |
Sources
Run records are in the notebook, not this copy.
Holoscan Sensor Bridge stream: frames received intact by the host-side check %, higher is better
| Variant | SK-TDA4VM |
|---|---|
| 1080p-raw8-30fps-wire-macos | Not for this chip |
| 720p-raw8-10fps-python | 1001 run |
| 720p-raw8-10fps-wire-macos | 1001 run |
| 720p-raw8-30fps-python | Not for this chip |
| 720p-raw8-30fps-wire-macos | 1001 run |
Sources
Run records are in the notebook, not this copy.
Software H.264 decode (baseline profile, no video hardware): frames per second fps, higher is better
| Variant | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|
| h264-1280x720-main-600k30-ffmpeg8-t1 | 52.61250 MHz | |||
| h264-1280x720-main-600k30-ffmpeg8-t2 | 771250 MHz | |||
| h264-1280x720-main-600k30-h264bsd-o3 | Not for this chip | |||
| h264-1280x720-ref1-600k30-ffmpeg8-t1 | 75.71250 MHz | |||
| h264-1280x720-ref1-600k30-ffmpeg8-t2 | 110.31250 MHz | |||
| h264-1280x720-ref1-600k30-h264bsd-o3 | 40.81250 MHz | |||
| h264-128x96-ref1-os | 149.8200 MHz | |||
| h264-160x112-ref1-os | 109.9200 MHz | |||
| h264-176x144-ref1-o3 | 59.8160 MHz | 84.7200 MHz | ||
| h264-176x144-ref1-os | 57.4160 MHz | 86.1200 MHz | ||
| h264-1920x1080-main-600k30-ffmpeg8-t1 | 23.51250 MHz | |||
| h264-1920x1080-main-600k30-ffmpeg8-t2 | 35.51250 MHz | |||
| h264-1920x1080-ref1-600k30-ffmpeg8-t1 | 341250 MHz | |||
| h264-1920x1080-ref1-600k30-ffmpeg8-t2 | 50.21250 MHz | |||
| h264-1920x1080-ref1-600k30-h264bsd-o3 | 171250 MHz | |||
| h264-240x240-ref1-o3 | 34.8160 MHz | |||
| h264-240x240-ref1-os | 33.3160 MHz | |||
| h264-320x240-ref1-600k30-ffmpeg8-t1 | 451.11250 MHz | |||
| h264-320x240-ref1-600k30-ffmpeg8-t2 | 538.61250 MHz | |||
| h264-320x240-ref1-os | ||||
| h264-540x540-ref1-ffmpeg8-t1 | 172.11250 MHz | |||
| h264-540x540-ref1-ffmpeg8-t2 | 246.51250 MHz | |||
| h264-540x540-ref1-h264bsd-o3 | 97.51250 MHz | |||
| h264-640x360-bbb-ffmpeg8-t1 | 174.71250 MHz | |||
| h264-640x360-bbb-ffmpeg8-t2 | 245.11250 MHz | |||
| h264-640x360-bbb-h264bsd-o3 | 102.81250 MHz | |||
| h264-640x360-main-600k30-ffmpeg8-t1 | 146.51250 MHz | |||
| h264-640x360-main-600k30-ffmpeg8-t2 | 210.41250 MHz | |||
| h264-640x360-ref1-600k30-ffmpeg8-t1 | 231.71250 MHz | |||
| h264-640x360-ref1-600k30-ffmpeg8-t2 | 310.21250 MHz | |||
| moonlight-embedded-local-test-stream |
Sources
docs/experiments/2026-10-23-am62l-h264-decode.md, portability/h264/SOURCE.md
RAM the software H.264 decode needs: decoder heap peak plus input buffer plus RGB565 strip B, lower is better
| Variant | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|
| h264-1280x720-ref1-600k30-h264bsd-o3 | 3.5 MB1250 MHz | |||
| h264-1280x720-ref1-600k30-os | Not for this chip 3.2 MB short | Not for this chip 3.3 MB short | Not for this chip 2.98 MB short | |
| h264-128x96-ref1-os | 55.3 kB200 MHz | |||
| h264-160x112-ref1-os | 76.8 kB200 MHz | |||
| h264-176x144-ref1-o3 | 108.3 kB160 MHz | 105.5 kB200 MHz | ||
| h264-176x144-ref1-os | 108.3 kB160 MHz | 105.5 kB200 MHz | ||
| h264-1920x1080-ref1-600k30-h264bsd-o3 | 8 MB1250 MHz | |||
| h264-1920x1080-ref1-600k30-os | Not for this chip 7.5 MB short | Not for this chip 7.6 MB short | Not for this chip 7.3 MB short | |
| h264-240x240-ref1-o3 | 233.5 kB160 MHz | |||
| h264-240x240-ref1-os | 233.5 kB160 MHz | Not for this chip 99.8 kB short | ||
| h264-320x240-ref1-os | Not for this chip 52.6 kB short | Not for this chip 173.1 kB short | ||
| h264-480x270-ref1-600k30-os | Not for this chip 260.9 kB short | Not for this chip 381.4 kB short | Not for this chip 69.4 kB short | |
| h264-540x540-ref1-h264bsd-o3 | 1.2 MB1250 MHz | |||
| h264-540x540-ref1-os | Not for this chip 885.8 kB short | Not for this chip 1,007.4 kB short | Not for this chip 694.2 kB short | |
| h264-640x360-bbb-h264bsd-o3 | 1.6 MB1250 MHz | |||
| h264-640x360-ref1-600k30-os | Not for this chip 657.5 kB short | Not for this chip 778 kB short | Not for this chip 466 kB short |
Sources
docs/experiments/2026-10-23-am62l-h264-decode.md, portability/h264/SOURCE.md
OpenGL ES on the GPU: kmscube or glmark2 frames per second fps, higher is better
| Variant | SK-TDA4VM |
|---|---|
| kmscube |
Sources
Run records are in the notebook, not this copy.
Parallel RGB scan-out from a frame buffer: frames per second with every frame's pixel sum checked against the buffer fps, higher is better
| Variant | LP-AM263P |
|---|---|
| pru-rgb565-480x480-22mhz | 76.3400 MHz |
| pru-rgb565-480x480-22mhz-r5f-copy-same-bank | 76.3400 MHz |
| pru-rgb565-800x480-22mhz | 45.6400 MHz |
| pru-rgb565-800x480-22mhz-r5f-copy-same-bank | Not for this chip |
| pru-rgb565-800x480-28mhz | Not for this chip |
Sources
docs/experiments/2026-10-11-am263p-pru-rgb-scanout.md
PRU read bandwidth into its registers, 64-byte blocks, data checked MB/s, higher is better
| Variant | LP-AM263P |
|---|---|
| lbbo32x2-ocsram | 54400 MHz |
| lbbo64-ocsram | 56.9400 MHz |
| lbbo64-pru-dram | 640400 MHz |
| lbbo64-pru-shared | 640400 MHz |
| xfr2vbus-ocsram | 48.9400 MHz |
Sources
docs/experiments/2026-10-11-am263p-pru-rgb-scanout.md
What a display scan-out costs the CPU: change in a measured CPU workload's cycles with the scan-out running %, lower is better
| Variant | LP-AM263P |
|---|---|
| pru-h264-320x240 | 0.01400 MHz |
Sources
docs/experiments/2026-10-11-am263p-pru-rgb-scanout.md
CPU cycles per single word load from each memory (unrolled independent loads) cycles, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| code-ram | 1.6160 MHz, 1 run |
| dram | 6.2160 MHz, 1 run |
| flash | 44160 MHz, 1 run |
| tcm | 1.06160 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Data-cache hit and miss counters readable from the application yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| data-cache-hit-and-miss |
Sources
docs/experiments/2026-10-20-doom-smallest-ti-chip.md
External flash read mode or clock changeable from the application yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| external-flash-read-mode |
Sources
docs/experiments/2026-10-20-doom-smallest-ti-chip.md
Size of the on-board QSPI NOR flash B
| Variant | LP-MSPM33C321A |
|---|---|
| onboard-nor-jedec-c22018 | 16 MB160 MHz, 1 run |
Sources
docs/experiments/2026-10-21-mspm33c321a-qspi-dump-doom-data.md
Time to read 256 bytes from the on-board QSPI flash us, lower is better
| Variant | LP-MSPM33C321A |
|---|---|
| quad-io-0xeb-40mhz-sdk-polled | 23.8160 MHz, 1 run |
Sources
docs/experiments/2026-10-21-mspm33c321a-qspi-dump-doom-data.md
CPU cycles per instruction of a whole program, from its time and an emulator instruction count cycles/instr, lower is better
| Variant | LP-MSPM33C321A |
|---|---|
| doom-m33whx-board | 1.65 calc. |
Sources
docs/experiments/2026-10-21-mspm33c321a-qspi-dump-doom-data.md
Time for the Lisp Tak benchmark (tak 18 12 6) s, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | 7.580 MHz |
Sources
Run records are in the notebook, not this copy.
Time for the Lisp (fib 23) benchmark s, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | 5.280 MHz |
Sources
Run records are in the notebook, not this copy.
Time for the Lisp (fib 20) benchmark s, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | 1.280 MHz |
Sources
Run records are in the notebook, not this copy.
Time for the Lisp queens benchmark (q2 7 8) s, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | 19.280 MHz |
Sources
Run records are in the notebook, not this copy.
Time of one garbage collection in the Lisp interpreter us, lower is better
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | 1,07480 MHz |
Sources
Run records are in the notebook, not this copy.
Free objects in the Lisp workspace after boot and a collection count, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | 2,80080 MHz |
Sources
Run records are in the notebook, not this copy.
The Lisp interpreter reads an ADC channel yes/no
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a |
Sources
ports/ulisp/README.md
The Lisp interpreter saves its workspace to flash and restores it yes/no
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a |
Sources
ports/ulisp/README.md
A long program pasted in one burst while another runs loses no characters yes/no
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | no80 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Analog: the other tests in this class
Fastest ADC with DMA Msps, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 12bit-s2 | 0.84124 MHz, 1 run | |||||||||||||||
| 12bit-s4 | 0.73924 MHz, 1 run | |||||||||||||||
| 12bit-s8 | 0.59524 MHz, 1 run | |||||||||||||||
| dma | 2.5396 MHz, 1 run | |||||||||||||||
| internal | 1.7148 MHz | |||||||||||||||
| pico-sdk-dma-m33 | 0.499150 MHz | |||||||||||||||
| pico-sdk-dma-riscv | 0.5150 MHz | |||||||||||||||
| ti-adcbuf-dma | 1.248 MHz | 0.248 MHz | 1.296 MHz | |||||||||||||
| ti-continuous-36cyc | 2.1120 MHz, 1 run | |||||||||||||||
| ti-continuous-9cyc | 3.98120 MHz, 1 run | |||||||||||||||
| ti-example-single-block | Not for this chip | |||||||||||||||
| (one way) | 3.9332 MHz, 1 run | 1.4532 MHz, 1 run | 124 MHz | 3.9332 MHz, 1 run | 0.54732 MHz | 5160 MHz, 1 run | 0.17160 MHz |
Sources
cc35x1/adc/build.sh, mspm33c321a/tools/build_adc.sh
DAC to ADC loop error %, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| dac10-ain16 | 9.4200 MHz | |||||||||||||||
| internal | Not for this chip | |||||||||||||||
| pwm-rc | ||||||||||||||||
| (one way) | 0.3432 MHz | n/a | n/a | 0.05532 MHz, 1 run | n/a | n/a | n/a |
Sources
cc2755p10/README.md
Fastest clean UART loopback Mbaud, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LAUNCHXL-F28P65X | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| internal | Not for this chip | ||||||||||||||||
| internal-loopback | 12.5200 MHz, 1 run | ||||||||||||||||
| uart0 | |||||||||||||||||
| uart0-to-uart0 | 51 run | ||||||||||||||||
| uart1 | 396 MHz | ||||||||||||||||
| uc0-to-uc1 | 6.25200 MHz, 1 run | ||||||||||||||||
| wire | 7.5120 MHz, 1 run | ||||||||||||||||
| (one way) | 10.732 MHz | 10.732 MHz | 824 MHz | 10.732 MHz | 10.732 MHz |
Sources
am13e230/tools/build_example.sh, cc35x1/uartloop/uart_loop.c
Power: the other tests in this class
Deepest sleep with RAM kept (STANDBY-class) uA, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC35X1 | LP-AM263P | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ddr-self-refresh-rtcwake-mem | |||||||||||||||
| energytrace-3.3v | |||||||||||||||
| energytrace-3.3v-standby0 | 6.21 run | ||||||||||||||
| meter-3.3v | |||||||||||||||
| msp430-lpm3-wake | |||||||||||||||
| ti-c2000-standby-borrowed-energytrace | 2,590120 MHz, 1 run | ||||||||||||||
| (one way) |
Sources
am62l-evm/README.md, cc1354p10/README.md, ports/msp430-to-mspm0/lpm3-wake/PORT.md
Energy per BLE connection (BlueJoule job) uJ, lower is better
| Variant | LP-MSPM0L1306 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC |
|---|---|---|---|---|---|
| none | n/a | ||||
| (one way) | n/a | n/a |
Sources
cc1354p10/README.md, mspm0l1306/README.md
Energy per CoreMark iteration uJ, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| meter | ||||||||||||
| ti-c2000-o4s5-flash-borrowed-energytrace | 828.1120 MHz | |||||||||||
| ticlang-bare-o3-4mhz-energytrace | 175.54 MHz, 1 run | |||||||||||
| ticlang-bare-o3-energytrace | 109.632 MHz, 1 run | |||||||||||
| (one way) |
Sources
cc1354p10/README.md
Energy per occupancy inference uJ, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|---|
| Room occupancy: small, TI neural-network compiler, on the CPU, EnergyTrace | 673.480 MHz | ||||||||
| Room occupancy: small, TI neural-network compiler, on the CPU, EnergyTrace, floor subtracted | 21.3 to 22.680 MHz | ||||||||
| Room occupancy: small, TI neural-network compiler, on the NPU, EnergyTrace | 81.280 MHz | ||||||||
| Room occupancy: small, TI neural-network compiler, on the NPU, EnergyTrace, floor subtracted | 2.36 to 2.680 MHz | ||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU, EnergyTrace | 8,927.580 MHz | ||||||||
| Room occupancy: large, TI neural-network compiler, on the CPU, EnergyTrace, floor subtracted | 303.2 to 353.680 MHz | ||||||||
| Room occupancy: large, TI neural-network compiler, on the NPU, EnergyTrace | 3,856.580 MHz | ||||||||
| Room occupancy: large, TI neural-network compiler, on the NPU, EnergyTrace, floor subtracted | 92.3 to 120.980 MHz | ||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, EnergyTrace | 276.380 MHz | ||||||||
| Room occupancy: tiny, TI neural-network compiler, on the CPU, EnergyTrace, floor subtracted | 8.73 to 8.9680 MHz | ||||||||
| Room occupancy: tiny, TI neural-network compiler, on the NPU, EnergyTrace | 72.180 MHz | ||||||||
| Room occupancy: tiny, TI neural-network compiler, on the NPU, EnergyTrace, floor subtracted | 2.31 to 2.3380 MHz | ||||||||
| Room occupancy: medium, plain C -O3, metered run | |||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, EnergyTrace | 2,552.980 MHz | ||||||||
| Room occupancy: medium, TI neural-network compiler, on the CPU, EnergyTrace, floor subtracted | 85.7 to 94.380 MHz | ||||||||
| Room occupancy: medium, TI neural-network compiler, on the NPU, EnergyTrace | 118.980 MHz | ||||||||
| Room occupancy: medium, TI neural-network compiler, on the NPU, EnergyTrace, floor subtracted | 4.23 to 4.9280 MHz | ||||||||
| ti-c2000-borrowed-energytrace | |||||||||
| (one way) |
Sources
cc1354p10/README.md
Active current per MHz running CoreMark (slope between two clocks) uA/MHz, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC35X1 | LP-AM263P |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| energytrace-3.3v | ||||||||||||
| energytrace-3.3v-coremark | 72.932 MHz, 1 run | |||||||||||
| ti-c2000-borrowed-energytrace | 263120 MHz, 1 run | |||||||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md
Lightest sleep, CPU off, clocks on (SLEEP) uA, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|
| energytrace-3.3v-sleep0 | 94032 MHz, 1 run | ||||||||
| ti-c2000-idle-borrowed-energytrace | 23,240120 MHz | ||||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md
STOP-class mode, low-speed clock kept uA, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|
| energytrace-3.3v-stop0 | 32932 MHz, 1 run | ||||||||
| none | Not for this chip | ||||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md
Deepest mode, RAM lost, pin wake uA, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|---|
| energytrace-3.3v | |||||||||
| energytrace-3.3v-shutdown | Reference: 1.500 mA raw | ||||||||
| meter-3.3v | |||||||||
| msp430-fram-persist | |||||||||
| ti-c2000-halt-borrowed-energytrace | Reference: 1.500 mA raw | ||||||||
| (one way) |
For the shutdown-current reference rows, the raw 1.500 mA reading is subtracted from every other row.
Sources
cc1354p10/README.md, cc2340r5/FAQ.md, ports/msp430-to-mspm0/fram-persist/PORT.md
Deepest sleep with a 1 s timer wake and nothing to do uA, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|
| energytrace-3.3v | |||||||||
| energytrace-3.3v-standby0-1s | |||||||||
| ti-c2000-standby-wd-borrowed-energytrace | 3,540 | ||||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md
Deepest sleep with RAM kept to first instruction us, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|
| energytrace-3.3v | |||||||||
| msp430-lpm3-wake | |||||||||
| pin-toggle | |||||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md, ports/msp430-to-mspm0/lpm3-wake/PORT.md
Energy per ADC sample at 1 ksps from sleep uJ, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC |
|---|---|---|---|---|---|---|
| energytrace-3.3v | ||||||
| ti-c2000-borrowed-energytrace | ||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md
Energy per 1 kB flash write uJ, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC |
|---|---|---|---|---|---|---|
| energytrace-3.3v | ||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md
Energy per radio transmit event (one advertisement or one packet) uJ, lower is better
| Variant | LP-MSPM0L1306 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC |
|---|---|---|---|---|---|
| none | n/a | ||||
| (one way) | n/a | n/a |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md
Days on a CR2032 (225 mAh) at the reference duty cycle: wake once a minute, 50 ms active at top clock, deepest sleep with RAM kept between days, higher is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | LP-MSPM33C321A |
|---|---|---|---|---|---|---|---|
| cc1407p-shed-sensor-every-1-04s-2xaa | 304 calc. | ||||||
| cc1407p-shed-sensor-every-10s-2xaa | 2,729 calc. | ||||||
| cc1407p-shed-sensor-every-300s-2xaa | 26,178 calc. | ||||||
| cc1407p-shed-sensor-every-60s-2xaa | 11,979 calc. | ||||||
| energytrace-3.3v | 1,12032 MHz, 1 run | ||||||
| ti-c2000-borrowed-energytrace | 3.6120 MHz, 1 run | ||||||
| (one way) |
Sources
cc1354p10/README.md, cc2340r5/FAQ.md, site/data/radio-demos.json
Hottest thermal zone after 10 minutes of sustained load C, lower is better
| Variant | SK-TDA4VM |
|---|---|
| coremark2t-plus-tidl-reset-at-60s | 92.61 run |
Sources
Run records are in the notebook, not this copy.
CPU clock ticks counted across one sleep (a stopped clock counts only the wake) ticks
| Variant | LP-MSPM0L1306 |
|---|---|
| msp430-lpm3-wake-sleep | 15,171,11332 MHz |
| msp430-lpm3-wake-standby0 | 33,80332 MHz |
Sources
Run records are in the notebook, not this copy.
Period between wakes from deep sleep, read by the host clock ms
| Variant | LP-MSPM0L1306 |
|---|---|
| msp430-lpm3-wake | 997.432 MHz |
Sources
Run records are in the notebook, not this copy.
Display: the other tests in this class
Full redraw of a 320x480 RGB565 SPI screen (ST7796S) ms, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-MSPM33C321A |
|---|---|---|---|---|---|---|---|---|---|
| doom-view-80-rows-dma-16mhz | 14.6 to 17.6160 MHz, 1 run | ||||||||
| edumkii-core-dma-16mhz | 19.532 MHz | ||||||||
| edumkii-core-dma-8mhz | 3932 MHz | ||||||||
| edumkii-core-fill-dma-16mhz | 2032 MHz | ||||||||
| edumkii-core-polled-16mhz | 55.332 MHz | ||||||||
| edumkii-core-polled-8mhz | 67.632 MHz | ||||||||
| edumkii-st7735s-128x128-16mhz | 35.332 MHz, 1 run | ||||||||
| edumkii-st7735s-128x128-8mhz | 56.932 MHz, 1 run | ||||||||
| edumkii-st7735s-core | Not for this chip | ||||||||
| none | |||||||||
| sharp128-ls013b7dh03-1mhz-bands-16row | 41.124 MHz, 1 run | ||||||||
| sharp128-ls013b7dh03-1mhz-bands-1row | 153.724 MHz, 1 run | ||||||||
| sharp128-ls013b7dh03-1mhz-framebuffer | |||||||||
| spi16-dma16 | 168.132 MHz, 1 run | 168.132 MHz, 1 run | |||||||
| spi20-cpu80-polled-fill | 134.480 MHz | ||||||||
| spi20-dma16 | 134.480 MHz, 1 run | 134.480 MHz, 1 run | |||||||
| spi40-cpu80-polled-fill | 67.280 MHz | ||||||||
| spi40-dma16 | 67.280 MHz, 1 run | 67.280 MHz, 1 run | |||||||
| spi8-cpu8 | 364.932 MHz, 1 run | 364.832 MHz, 1 run | |||||||
| touch-games-2048-spi20 | 324.780 MHz | ||||||||
| touch-games-2048-spi40 | 165.680 MHz | ||||||||
| touch-games-menu-spi20 | 201.780 MHz | ||||||||
| touch-games-menu-spi40 | 103.580 MHz | ||||||||
| touch-games-mines-spi20 | 331.980 MHz | ||||||||
| touch-games-mines-spi40 | 206.980 MHz | ||||||||
| (one way) | Not for this chip | Not for this chip |
Sources
data/benchmark-suite.json, docs/experiments/2026-10-20-doom-smallest-ti-chip.md, mspm0g3507/display-test/README.md, portability/boosterpacks/edumkii/boards/mspm0l1306/PINS.md, portability/boosterpacks/edumkii/build.sh, portability/boosterpacks/edumkii/examples/framebench/framebench.c, portability/boosterpacks/sharp128/README.md
Power-up to SPI screen initialized and on ms, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-MSPM33C321A |
|---|---|---|---|---|---|---|---|---|---|
| edumkii-screen-pattern | |||||||||
| edumkii-st7735s-core | Not for this chip | ||||||||
| fast | 12.232 MHz, 1 run | 12.232 MHz, 1 run | |||||||
| none | |||||||||
| sharp128-power-to-picture | |||||||||
| usual | 370.232 MHz, 1 run | 370.232 MHz, 1 run | |||||||
| (one way) | Not for this chip | Not for this chip |
Sources
data/benchmark-suite.json, mspm0g3507/display-test/README.md, portability/boosterpacks/edumkii/boards/mspm0l1306/PINS.md, portability/boosterpacks/edumkii/build.sh, portability/boosterpacks/sharp128/README.md
LVGL demo screen refreshes per second fps, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-MSPM33C321A | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|
| arduboy-crate-confusion-edumkii | 30.832 MHz, 1 run | |||||||
| arduboy-snake-edumkii | 32.932 MHz, 1 run | |||||||
| arduboy-tileworld-edumkii | 30.632 MHz, 1 run | |||||||
| chocolate-doom-3.1.0-timedemo-demo1-kmsdrm-1080p | 61250 MHz, 1 run | |||||||
| chocolate-doom-3.1.0-timedemo-demo1-weston-pixman-1080p | 6.541250 MHz, 1 run | |||||||
| doom-cpu-only | 94 calc. | |||||||
| doom-m33whx-board-cached-16kb | 21.9160 MHz, 1 run | |||||||
| doom-m33whx-board-cached-8kb | 19.9160 MHz, 1 run | |||||||
| doom-m33whx-cached-16kb-emulated | 19.7 calc. | |||||||
| doom-m33whx-cpu-only | 42 calc. | |||||||
| doom-m33whx-edumkii-c16-realtime | 24.5160 MHz, 1 run | |||||||
| doom-m33whx-edumkii-c8-realtime | 22.7160 MHz, 1 run | |||||||
| doom-m33whx-edumkii-c8-stepped | 19.3160 MHz, 1 run | |||||||
| doom-m33whx-edumkii-play-by-hand | ||||||||
| doom-m33whx-edumkii-play-e1m1 | 31160 MHz, 1 run | |||||||
| doom-on-board | ||||||||
| doomgeneric-fbdev-timedemo-demo1-1280x1000-scale4x5 | 185.8 to 192.71250 MHz | |||||||
| doomgeneric-fbdev-timedemo-demo1-320x200-scale1x1 | 412.91250 MHz, 1 run | |||||||
| doomgeneric-fbdev-timedemo-demo1-960x800-scale3x4 | 240.61250 MHz, 1 run | |||||||
| dsda-doom-0.29-timedemo-demo1-1280x720 | 10.51250 MHz, 1 run | |||||||
| dsda-doom-0.29-timedemo-demo1-640x480 | 27.21250 MHz, 1 run | |||||||
| lvgl-9.3-drm-1080p | 181250 MHz | |||||||
| lvgl-9.3-fbdev-1080p | 54.11250 MHz | |||||||
| lvgl9.6-32mhz-spi16 | 732 MHz, 1 run | 732 MHz | ||||||
| lvgl9.6-32mhz-spi16-buf40 | 10 to 1332 MHz, 1 run | |||||||
| lvgl9.6-80mhz-spi20 | 13 to 1880 MHz, 1 run | |||||||
| lvgl9.6-80mhz-spi40 | 15 to 1980 MHz, 1 run | 15 to 1980 MHz | ||||||
| lvgl9.6-80mhz-spi40-buf40 | 15 to 1980 MHz, 1 run | |||||||
| lvgl9.6-full-demo-32mhz-spi16 | 732 MHz, 1 run | |||||||
| none | ||||||||
| peanut-gb-tobu-edumkii | 6.732 MHz, 1 run | |||||||
| peanut-gb-tobu-edumkii-160mhz-full | ||||||||
| peanut-gb-tobu-edumkii-160mhz-full-model | 42 calc. | |||||||
| peanut-gb-tobu-edumkii-160mhz-skip | ||||||||
| peanut-gb-tobu-edumkii-160mhz-skip-model | 84 calc. | |||||||
| peanut-gb-tobu-edumkii-160mhz-skip-paced | 59.7160 MHz, 1 run | |||||||
| peanut-gb-tobu-edumkii-32mhz-full | ||||||||
| peanut-gb-tobu-edumkii-32mhz-full-model | 17 calc. | |||||||
| peanut-gb-tobu-edumkii-32mhz-skip | ||||||||
| peanut-gb-tobu-edumkii-32mhz-skip-model | 27 calc. | |||||||
| qt-quick-software-1080p | ||||||||
| redroid-12-scrcpy-5.0.1-hdmi-1080p-settings-scroll | 1.1 to 21250 MHz, 1 run | |||||||
| retroarch-1.20-gambatte-tobu-tobu-girl-hdmi-1920x1080 | 10.41250 MHz, 1 run | |||||||
| retroarch-1.20-gambatte-tobu-tobu-girl-hdmi-640x480 | 481250 MHz, 1 run | |||||||
| retroarch-core-controller | ||||||||
| sharp128-player-fatfs | ||||||||
| sharp128-player-pff | ||||||||
| slint-1.17.1-linuxkms-software-1080p | 41.9 to 42.11250 MHz | |||||||
| steam-light-2d-game-box64-llvmpipe | ||||||||
| supertuxkart-1.5-arm64-hdmi-640x480-fullscreen | 21250 MHz, 1 run | |||||||
| supertuxkart-1.5-arm64-profile-1280x720 | 2.421250 MHz, 1 run | |||||||
| supertuxkart-1.5-arm64-profile-640x480 | 4.481250 MHz, 1 run | |||||||
| supertuxkart-1.5-x86_64-box64-0.3.4-profile-640x480 | Not for this chip | |||||||
| thermostat-80mhz-spi40 | 8 to 1080 MHz, 1 run | |||||||
| zephyr-lvgl9.5 | Not for this chip | |||||||
| (one way) | Not for this chip | Not for this chip |
Sources
am62l-evm/bench/logs/showcase/stk-640x480-race.jpg, data/benchmark-suite.json, docs/experiments/2026-10-20-doom-smallest-ti-chip.md, docs/experiments/2026-10-21-mspm33c321a-qspi-dump-doom-data.md, docs/experiments/2026-10-24-am62l-doom-controller.md, docs/experiments/2026-10-24-am62l-hmi-shootout.md, docs/experiments/2026-10-25-am62l-steam-box64.md, portability/boosterpacks/edumkii/examples/gameboy/gb_app.cpp, portability/boosterpacks/edumkii/examples/snake/frl_edumkii.cpp, portability/boosterpacks/sharp128/README.md, ports/doom/README.md, ports/peanut-gb/README.md, thermostat-system/g3519-zephyr/README.md
Baseline JPEG decode of one 160 x 120 frame (picojpeg), one block row at a time cycles, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 |
|---|---|---|---|---|---|---|
| ticlang-o2-flash | 6.37M80 MHz, 1 run | 5.88M32 MHz, 1 run | 6.52M80 MHz | 6.61M48 MHz | 3.42M48 MHz | 9.43M120 MHz, 1 run |
| ticlang-o2-ram | 7.46M120 MHz, 1 run | |||||
| ticlang-o3-flash | 5.62M48 MHz | 2.99M48 MHz | ||||
| ticlang-o4s5-ram | 7.09M120 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
SPI controller transmit at a stated clock, nothing attached kB/s, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 |
|---|---|---|---|---|---|
| 16bit-12mhz | 1,33948 MHz | 1,33948 MHz | |||
| 16bit-13mhz | 1,48880 MHz, 1 run | ||||
| 16bit-16mhz | 1,78532 MHz, 1 run | ||||
| 16bit-24mhz-over-spec | 2,67848 MHz | 2,67848 MHz | |||
| 16bit-30mhz | 3,662120 MHz, 1 run | ||||
| 16bit-40mhz-over-spec | 4,46380 MHz, 1 run | ||||
| 8bit-12mhz | 1,23448 MHz | ||||
| 8bit-24mhz-over-spec | 1,95348 MHz | ||||
| 8bit-30mhz | 1,957120 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
SPI transmit as a percent of the wire rate %, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 |
|---|---|---|---|---|---|---|
| 16bit-12mhz | 91.448 MHz | 91.448 MHz | ||||
| 16bit-13mhz | 91.480 MHz, 1 run | |||||
| 16bit-16mhz | 91.432 MHz, 1 run | |||||
| 16bit-24mhz-over-spec | 91.448 MHz | 91.448 MHz | ||||
| 16bit-30mhz | 100120 MHz, 1 run | |||||
| 16bit-40mhz-over-spec | 91.480 MHz, 1 run | |||||
| 8bit-12mhz | 84.248 MHz | 84.248 MHz | ||||
| 8bit-13mhz | 84.280 MHz, 1 run | |||||
| 8bit-16mhz | 84.232 MHz, 1 run | |||||
| 8bit-24mhz-over-spec | 66.748 MHz | |||||
| 8bit-30mhz | 53.5120 MHz, 1 run | |||||
| 8bit-40mhz-over-spec | 84.280 MHz, 1 run | |||||
| cc1407p-spi-1mhz-ofdm-opt1-mcs6-200b | 7880 MHz | |||||
| cc1407p-spi-2mhz-ofdm-opt1-mcs6-200b | 6580 MHz | |||||
| cc1407p-spi-4mhz-ofdm-opt1-mcs6-200b | 4880 MHz | |||||
| cc1407p-spi-8mhz-ofdm-opt1-mcs6-200b | 3180 MHz |
Sources
Run records are in the notebook, not this copy.
2048: one swipe (slide, spawn, redraw changed tiles) on a touch panel ms, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| spi20-cpu80-first10 | 47.380 MHz |
| spi20-cpu80-mean60 | 61.6 to 89.680 MHz |
| spi40-cpu80-first10 | 24.980 MHz |
| spi40-cpu80-mean60 | 32.6 to 47.580 MHz |
Sources
Run records are in the notebook, not this copy.
Minesweeper: one tap that redraws one cell ms, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| spi20-cpu80 | 1.680 MHz |
| spi40-cpu80 | 1.0980 MHz |
Sources
Run records are in the notebook, not this copy.
Minesweeper: first tap of a board (places mines, may open a region) ms, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| spi20-cpu80 | 32.5 to 102.280 MHz |
| spi40-cpu80 | 21.7 to 67.980 MHz |
Sources
Run records are in the notebook, not this copy.
Minesweeper: long press that places a flag ms, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| spi20-cpu80 | 8.3880 MHz |
| spi40-cpu80 | 4.9480 MHz |
Sources
Run records are in the notebook, not this copy.
One read of the touch chip registers us, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| ft6336u-softi2c-5byte | 88680 MHz |
Sources
Run records are in the notebook, not this copy.
Deepest stack use of the touch games after the scripted run B, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| touch-games | 59280 MHz |
Sources
Run records are in the notebook, not this copy.
Touch to changed pixel (computed from measured parts, or measured with a real finger) ms, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| real-finger | |
| swipe-2048-spi40-estimate | 31 calc. |
| tap-one-cell-spi40-estimate | 7 calc. |
Sources
ports/touch-games/README.md
A person looked at the games on the panel and touch worked yes/no
| Variant | LP-MSPM0G3519 |
|---|---|
| 2048-and-mines | yes1 run |
Sources
ports/touch-games/README.md
Instructions per drawn frame of an emulator port, counted in an Arm emulator instructions, lower is better
| Variant | LP-MSPM33C321A |
|---|---|
| peanut-gb-acc0 | 2.85M to 2.73M1 run |
| peanut-gb-base | 2.85M to 2.73M1 run |
| peanut-gb-lut | 1.19M to 1.09M1 run |
| peanut-gb-o2 | 1.04M to 921k1 run |
| peanut-gb-o3 | 1.06M to 935k1 run |
| peanut-gb-skip | 593k to 488k1 run |
| peanut-gb-skip-ram | 594k to 488k1 run |
| peanut-gb-zero | 934k to 816k1 run |
Sources
ports/peanut-gb/speed/emu_pgb.py
Emulator frames that finished after their due time, paced to the console clock count, lower is better
| Variant | LP-MSPM33C321A |
|---|---|
| peanut-gb-tobu-edumkii-160mhz-skip-paced | 0160 MHz, 1 run |
Sources
ports/peanut-gb/README.md
Instructions per second of an interpreter port with no screen and the display wait off instructions/s, higher is better
| Variant | LP-MSPM0G3519 |
|---|---|
| chip8-core-flat-out | 526,153 to 472,66980 MHz, 1 run |
Sources
ports/chip8/README.md
Interpreter speed divided by the pace a typical program needs x, higher is better
| Variant | LP-MSPM0G3519 |
|---|---|
| chip8-vs-700ips | 751 calc. |
Sources
ports/chip8/README.md
Time to redraw the whole emulated screen to the panel us, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| chip8-64x32-5x | 14,21280 MHz, 1 run |
Sources
ports/chip8/README.md
A finger on the panel pad reaches the program as a key press yes/no
| Variant | LP-MSPM0G3519 |
|---|---|
| chip8-pad |
Sources
ports/chip8/README.md
A finger on the touch keyboard reaches the program as a typed character yes/no
| Variant | LP-MSPM0G3519 |
|---|---|
| zx48-keyboard |
Sources
ports/zx-spectrum/README.md
Emulated machine speed as per mille of the real machine, 159 meaning 15.9 percent per mille, higher is better
| Variant | LP-MSPM0G3519 |
|---|---|
| zx48-estimate-from-coremark | 200 calc. |
| zx48-o2-flash-core | 15980 MHz, 1 run |
| zx48-o2-flash-total | 12380 MHz, 1 run |
| zx48-o2-sram-core | 18980 MHz, 1 run |
| zx48-o2-sram-total | 14080 MHz, 1 run |
| zx48-o3-flash-core | 14080 MHz, 1 run |
| zx48-opense-idle-sram-core | 19480 MHz |
| zx48-opense-idle-sram-total | 19080 MHz |
Sources
ports/zx-spectrum/README.md
Linux: the other tests in this class
Memory load latency by pointer chase ns, lower is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| ddr-16m | 169.22000 MHz, 1 run | |
| ddr-2m | 91.52000 MHz, 1 run | |
| ddr-64m | 191.62000 MHz, 1 run | 271.11250 MHz, 1 run |
| l1-16k | 2.52000 MHz, 1 run | 2.411250 MHz, 1 run |
| l1-32k | 5.092000 MHz, 1 run | |
| l2-128k | 121250 MHz, 1 run | |
| l2-1m | 24.52000 MHz, 1 run | |
| l2-512k | 13.82000 MHz, 1 run |
Sources
am62l-evm/README.md
Timer wake-up latency (cyclictest), max over 60 s us, lower is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| idle | 412000 MHz, 1 run | 4741 run |
| idle-60s-x3 | 442 to 6451250 MHz | |
| load-2cpu | 592000 MHz, 1 run | 5461250 MHz, 1 run |
| load-2cpu-60s-x5 | 1,074 to 93,6991250 MHz | |
| openplc-v4-cycle | ||
| preempt-rt-idle |
Sources
am62l-evm/README.md, docs/experiments/2026-10-24-am62l-realtime-jitter.md
Boot medium sequential read MB/s, higher is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| microsd-fio-1m | 44.81 run | |
| microsd-hdparm | 43.8 to 43.9 | |
| usb-stick-dd-direct | 38.11 run |
Sources
am62l-evm/README.md
Boot medium sequential write MB/s, higher is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| microsd-dd-direct | 30.51 run | |
| sd-image-write-over-ssh | 81 run | |
| usb-stick-dd-direct | 10.41 run | |
| windows11-setup-apply-qcow2-on-sd-avg | 2.51250 MHz, 1 run |
Sources
am62l-evm/README.md, docs/experiments/2026-10-24-am62l-sd-card-and-ps5-driver.md, docs/experiments/2026-10-25-am62l-windows-arm-vm.md
Boot medium 4 kB random read IOPS, higher is better
| Variant | SK-TDA4VM |
|---|---|
| microsd-fio-4k-qd8 | 3,8231 run |
Sources
Run records are in the notebook, not this copy.
Vision app launch to the first frame-rate line s, lower is better
| Variant | SK-TDA4VM |
|---|---|
| edgeai-app-yolox-pose-file | 3.09 to 3.84 |
Sources
Run records are in the notebook, not this copy.
Linux to remote core message round trip (rpmsg echo) us, lower is better
| Variant | LP-AM263P | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|
| freertos-to-nortos-1-remote | 3.49 to 3.5400 MHz | ||
| freertos-to-nortos-3-remotes | 3.81400 MHz | ||
| main-r5f-c66x-c7x | |||
| mcu-r5f0-0-rpmsg14 | 74 to 75 | ||
| threadx-to-nortos-1-remote | 3.36400 MHz | ||
| threadx-to-nortos-3-remotes | 3.87400 MHz | ||
| zrpmsg-char-userspace-496b | 35.1 to 35.31250 MHz | ||
| zrpmsg-char-userspace-56b | 18.11250 MHz | ||
| zrpmsg-irq-496b | 18.41250 MHz | ||
| zrpmsg-irq-496b-thread-wake | 25.2 to 25.31250 MHz | ||
| zrpmsg-irq-56b | 5.661250 MHz | ||
| zrpmsg-irq-56b-thread-wake | 12.71250 MHz | ||
| zrpmsg-poll-496b | 17.21250 MHz | ||
| zrpmsg-poll-56b | 4.03 to 4.041250 MHz | ||
| zrpmsg-zirq-lpoll-496b | 17.61250 MHz | ||
| zrpmsg-zirq-lpoll-56b | 4.39 to 4.411250 MHz | ||
| zrpmsg-zpoll-lirq-496b | 17.9 to 181250 MHz | ||
| zrpmsg-zpoll-lirq-56b | 5.08 to 5.091250 MHz |
Sources
docs/experiments/2026-10-24-am62l-linux-zephyr-link.md
Linux to remote core message stream, payload rate (1 kB = 1,000 bytes) kB/s, higher is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| linux-to-zephyr-496b-irq | 331,2121250 MHz |
| linux-to-zephyr-496b-poll | 330,7681250 MHz |
| linux-to-zephyr-64b-irq | 43,077.51250 MHz |
| linux-to-zephyr-64b-poll | 43,1541250 MHz |
| zephyr-to-linux-496b-irq | 146,5161250 MHz |
| zephyr-to-linux-496b-poll | 257,7481250 MHz |
| zephyr-to-linux-64b-irq | 19,146.51250 MHz |
| zephyr-to-linux-64b-poll | 34,121.51250 MHz |
Sources
docs/experiments/2026-10-24-am62l-linux-zephyr-link.md
Linux to remote core message stream, messages per second msgs/s, higher is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| linux-to-zephyr-496b-irq | 667,7671250 MHz |
| linux-to-zephyr-496b-poll | 666,8731250 MHz |
| linux-to-zephyr-64b-irq | 673,0971250 MHz |
| linux-to-zephyr-64b-poll | 674,2901250 MHz |
| zephyr-to-linux-496b-irq | 295,3961250 MHz |
| zephyr-to-linux-496b-poll | 519,6551250 MHz |
| zephyr-to-linux-64b-irq | 299,1701250 MHz |
| zephyr-to-linux-64b-poll | 533,1561250 MHz |
Sources
docs/experiments/2026-10-24-am62l-linux-zephyr-link.md
Remote core load during a pipeline (TI perf_stats) %
| Variant | SK-TDA4VM |
|---|---|
| c7x-pose-app-30fps | 351 run |
| c7x-yolox-zerocopy-111fps | 45 |
Sources
Run records are in the notebook, not this copy.
DDR bandwidth used during a pipeline (TI perf_stats) MB/s
| Variant | SK-TDA4VM |
|---|---|
| pose-app-30fps | 4,228 to 4,322 |
| yolox-zerocopy-111fps | 1,9571 run |
Sources
Run records are in the notebook, not this copy.
Wired Ethernet TCP throughput (iperf3) Mbit/s, higher is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| rx-from-host | 9001 run | |
| tcp-bidir | 891.5 to 934.1 | |
| tcp-rx-from-host | 939.7 to 939.9 | |
| tcp-tx-to-host | 939.5 to 939.6 | |
| tx-to-host | 9271 run |
Sources
am62l-evm/README.md
Wired Ethernet round trip to a host on the same switch ms, lower is better
| Variant | SK-TDA4VM | TMDS62LEVM (AM62L EVM) |
|---|---|---|
| host-same-switch | 0.3681 run | |
| wired-host-same-switch | 0.313 to 0.371 run |
Sources
am62l-evm/README.md
Board rail power from the on-board current monitors (sum of the monitored rails, 30 s mean) mW, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| app-baseline-docker-idle | 567.61250 MHz, 1 run |
| app-ha-alone | 571.51250 MHz, 1 run |
| app-ha-plus-mosquitto | 569.51250 MHz, 1 run |
| app-mosquitto | 569.11250 MHz, 1 run |
| app-nodered | 571.81250 MHz, 1 run |
| app-pihole | 572.41250 MHz, 1 run |
| dvdd1v8-linux-idle | 34.31250 MHz, 1 run |
| dvdd3v3-linux-idle | 78.91250 MHz, 1 run |
| lpddr4-linux-idle | 90.61250 MHz, 1 run |
| total-linux-1core-busy | 651.91250 MHz, 1 run |
| total-linux-coremark-zephyr-coremark | 659.21250 MHz, 1 run |
| total-linux-idle | 560.91250 MHz, 1 run |
| total-linux-idle-zephyr-coremark | 633.51250 MHz, 1 run |
| total-linux-maxcpus1-busy-zephyr-hello | 6701250 MHz, 1 run |
| total-linux-maxcpus1-zephyr-hello-idle | 552.51250 MHz, 1 run |
| vdd-core-linux-idle | 312.51250 MHz, 1 run |
| vdda1v8-linux-idle | 44.61250 MHz, 1 run |
| zephyr-sram-ddr-off |
Sources
am62l-evm/README.md, am62l-evm/linux-apps/README.md, am62l-evm/zephyr/mkphase1.sh
Memory a container app uses on a Linux board (docker stats, and whole-system RAM in use from /proc/meminfo) MB, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| baseline-system-used | 5211250 MHz, 1 run |
| ha-container | 5571250 MHz, 1 run |
| ha-plus-mosquitto-system-used | 1,1311250 MHz, 1 run |
| ha-system-used | 1,0791250 MHz, 1 run |
| mosquitto-container | 2.61250 MHz, 1 run |
| mosquitto-native-rss | 7.71250 MHz, 1 run |
| mosquitto-system-used | 5981250 MHz, 1 run |
| nodered-container | 1101250 MHz, 1 run |
| nodered-system-used | 6391250 MHz, 1 run |
| pihole-container | 24.81250 MHz, 1 run |
| pihole-system-used | 5761250 MHz, 1 run |
| redroid-12-arm64-boot-system-used-peak | 9891250 MHz, 1 run |
| steam-arm64-hotpatch-bigpicture-board-used-peak | 1,4211250 MHz, 1 run |
| steam-arm64-hotpatch-board-used-peak | 1,302 to 1,4091250 MHz |
| steam-arm64-hotpatch-lean-board-used-peak | 1,224 to 1,3411250 MHz |
| steam-arm64-native-lsetrap-system-used | 1,3291250 MHz, 1 run |
| steam-client-update-box64-system-used | 1,0901250 MHz, 1 run |
| ti-lvgl-demo-lvglsim-rss | 1181250 MHz, 1 run |
| windows11-22621-arm64-kvm-qemu-rss-peak | 1,5871250 MHz, 1 run |
Sources
am62l-evm/linux-apps/README.md, am62l-evm/showcase/run.sh, docs/experiments/2026-10-25-am62l-windows-arm-vm.md
CPU idle share with a container app running, both cores, 30 s %, higher is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| baseline | 931250 MHz, 1 run |
| ha-alone | 91.51250 MHz, 1 run |
| ha-plus-mosquitto | 82.51250 MHz, 1 run |
| mosquitto | 92.61250 MHz, 1 run |
| nodered | 88.91250 MHz, 1 run |
| pihole | 911250 MHz, 1 run |
Sources
am62l-evm/linux-apps/README.md
Seconds from docker run to the app's first useful answer s, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| fex-armv8a-x86-uname | 11250 MHz, 1 run |
| ha-mqtt-sensor-after-publish | 29.21250 MHz, 1 run |
| ha-onboarding-api | 67.71250 MHz |
| mosquitto-port-open | 2.41250 MHz, 1 run |
| nodered-flow-deploy-to-reply | 2.51250 MHz, 1 run |
| nodered-ui | 17.71250 MHz, 1 run |
| pihole-dns | 4.61250 MHz, 1 run |
| redroid-12-arm64-boot-completed | 861250 MHz, 1 run |
| redroid-12-arm64-boot-completed-showcase | 701250 MHz, 1 run |
| steam-arm64-hotpatch-bigpicture-signin-painted | 1371250 MHz, 1 run |
| steam-arm64-hotpatch-lean-signin-painted | 471250 MHz |
| steam-arm64-hotpatch-lean-swap1g-signin-painted | 461250 MHz, 1 run |
| steam-arm64-hotpatch-nogpu-signin-painted | 441250 MHz, 1 run |
| steam-arm64-hotpatch-nosandbox-signin-painted | 471250 MHz, 1 run |
| steam-arm64-hotpatch-signin-painted | 46 to 491250 MHz |
| steam-arm64-native-lsetrap-login-window | 20 to 431250 MHz, 1 run |
| steam-arm64-native-plain | Not for this chip |
| steam-arm64-trap-signin-painted | 56 to 571250 MHz |
| steam-proton-backyard-baseball-97-window | Not for this chip |
| steam-x86-box64-git-box32-login-window | |
| steam-x86-box64-login-window | Not for this chip |
| steam-x86-box86-armhf-login-window | |
| windows11-22621-arm64-kvm-desktop | Not for this chip |
| windows11-22621-arm64-kvm-oobe-start | 6,3021250 MHz, 1 run |
| windows11-22621-arm64-kvm-setup-copying | 2701250 MHz, 1 run |
| windows11-22621-arm64-kvm-setup-first-reboot | 5,0731250 MHz, 1 run |
| windows11-22621-arm64-kvm-winpe-up | 801250 MHz, 1 run |
Sources
am62l-evm/linux-apps/README.md, am62l-evm/showcase/run.sh, docs/experiments/2026-10-25-am62l-steam-box64.md, docs/experiments/2026-10-25-am62l-windows-arm-vm.md
Seconds to pull the container image over Ethernet to the board's SD card s, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| fex-rootfs-arch-download | 1201250 MHz, 1 run |
| ha | 654.91250 MHz, 1 run |
| mosquitto | 9.11250 MHz, 1 run |
| nodered | 197.11250 MHz, 1 run |
| pihole | 33.41250 MHz, 1 run |
| steam-anonymous-depotdownloader-arm64-app1007 | 28.91250 MHz, 1 run |
| steam-anonymous-depotdownloader-arm64-app896660 | 3711250 MHz, 1 run |
| steam-client-32bit-update-box32 | 4361250 MHz, 1 run |
| steam-client-steamrt64-update-box64 | 3571250 MHz, 1 run |
| steamcmd-box64-0.3.4-box32-anonymous-app1007 | Not for this chip |
Sources
am62l-evm/linux-apps/README.md, docs/experiments/2026-10-25-am62l-steam-box64.md
Container image size on the board's disk (docker images) MB, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| ha | 3,4201250 MHz, 1 run |
| mosquitto | 43.21250 MHz, 1 run |
| nodered | 9921250 MHz, 1 run |
| pihole | 1661250 MHz, 1 run |
| steam-arm64-native-client-unpacked | 3241250 MHz, 1 run |
| steam-client-installed-dir | 2,4671250 MHz, 1 run |
Sources
am62l-evm/linux-apps/README.md
Speech to text on the CPU, processing time divided by audio length (whisper.cpp, 11.0 s clip) x real time, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| base.en-t1 | 8.761250 MHz |
| base.en-t2 | 4.751250 MHz |
| tiny.en-t1 | 41250 MHz |
| tiny.en-t2 | 2.231250 MHz |
Sources
docs/experiments/2026-10-24-am62l-edge-ai-cpu.md
Small language model on the CPU (llama.cpp llama-bench) tokens/s, higher is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| qwen2.5-0.5b-q4_0-gen-t1 | 1.681250 MHz |
| qwen2.5-0.5b-q4_0-gen-t2 | 2.891250 MHz |
| qwen2.5-0.5b-q4_0-prompt-t1 | 2.841250 MHz |
| qwen2.5-0.5b-q4_0-prompt-t2 | 5.231250 MHz |
Sources
docs/experiments/2026-10-24-am62l-edge-ai-cpu.md
One model inference on the CPU, median latency ms, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| silero-en_v5-ort-t1 | 1,4401250 MHz |
| silero-en_v5-ort-t2 | 8681250 MHz |
| yamnet-litert-t1 | 30.41250 MHz |
| yamnet-litert-t2 | 20.21250 MHz |
Sources
docs/experiments/2026-10-24-am62l-edge-ai-cpu.md
Frames per second an emulator core delivers to the HDMI connector, locked to vblank (free-run rows: no vblank wait) fps, higher is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| gambatte-tobu-tobu-girl-1920x1080 | 601250 MHz |
| gambatte-tobu-tobu-girl-640x480 | 601250 MHz |
| pcsx-rearmed-gpu-benchmark-1280x720 | 601250 MHz |
| pcsx-rearmed-gpu-benchmark-1920x1080 | 601250 MHz |
| pcsx-rearmed-gpu-benchmark-1920x1080-thread | 601250 MHz |
| pcsx-rearmed-gpu-benchmark-640x480 | 601250 MHz |
| pcsx-rearmed-gpu-benchmark-640x480-audio | 601250 MHz |
| pcsx-rearmed-gpu-benchmark-640x480-freerun | 250.3 to 254.81250 MHz |
| snes9x2005-effects-music-1920x1080-audio-thread | 601250 MHz |
| snes9x2005-effects-music-640x480-audio | 601250 MHz |
| snes9x2005-mode7-1280x720 | 601250 MHz |
| snes9x2005-mode7-1920x1080 | 601250 MHz |
| snes9x2005-mode7-1920x1080-thread | 601250 MHz |
| snes9x2005-mode7-640x480 | 601250 MHz |
| snes9x2005-mode7-800x600 | 60.31250 MHz |
| snes9x2005-mode7-plane-scaling-2x-4x | Not for this chip |
| snes9x2005-transparency-1920x1080 | 601250 MHz |
| snes9x2005-transparency-1920x1080-freerun | 193.9 to 194.31250 MHz |
| snes9x2005-transparency-640x480 | 601250 MHz |
| snes9x2005-transparency-640x480-freerun | 272.3 to 273.11250 MHz |
Sources
docs/experiments/2026-11-01-am62l-lean-emulation.md
Time the emulator core spends in one retro_run frame, video callback excluded ms, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| gambatte-tobu-tobu-girl-1920x1080 | 0.87 to 0.881250 MHz |
| gambatte-tobu-tobu-girl-640x480 | 0.871250 MHz |
| pcsx-rearmed-gpu-benchmark-1280x720 | 3.7 to 3.741250 MHz |
| pcsx-rearmed-gpu-benchmark-1920x1080 | 3.86 to 3.891250 MHz |
| pcsx-rearmed-gpu-benchmark-1920x1080-thread | 5.15 to 5.161250 MHz |
| pcsx-rearmed-gpu-benchmark-640x480 | 3.61 to 3.621250 MHz |
| pcsx-rearmed-gpu-benchmark-640x480-audio | 3.651250 MHz |
| pcsx-rearmed-gpu-benchmark-640x480-freerun | 3.61 to 3.721250 MHz |
| snes9x2005-effects-music-1920x1080-audio-thread | 1.11 to 1.121250 MHz |
| snes9x2005-effects-music-640x480-audio | 0.73 to 0.741250 MHz |
| snes9x2005-mode7-1280x720 | 2.56 to 2.571250 MHz |
| snes9x2005-mode7-1920x1080 | 2.58 to 2.631250 MHz |
| snes9x2005-mode7-1920x1080-thread | 3.11 to 3.171250 MHz |
| snes9x2005-mode7-640x480 | 2.48 to 2.551250 MHz |
| snes9x2005-mode7-800x600 | 2.56 to 2.581250 MHz |
| snes9x2005-transparency-1920x1080 | 3.55 to 3.591250 MHz |
| snes9x2005-transparency-1920x1080-freerun | 3.53 to 3.631250 MHz |
| snes9x2005-transparency-640x480 | 3.39 to 3.41250 MHz |
| snes9x2005-transparency-640x480-freerun | 3.29 to 3.471250 MHz |
Sources
docs/experiments/2026-11-01-am62l-lean-emulation.md
Time from a gamepad button event (kernel timestamp) to the vblank at which the frame drawn after it is flipped onto the connector ms, lower is better
| Variant | TMDS62LEVM (AM62L EVM) |
|---|---|
| snes9x2005-breakout-1920x1080 | 31.9 to 155.91250 MHz, 1 run |
Sources
docs/experiments/2026-11-01-am62l-lean-emulation.md
Sweep: the other tests in this class
Vendor examples that build from a terminal %, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P | SK-TDA4VM |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| all-sdks | 98.11 run | |||||||||||||||||
| am13e230-sdk-26.01 | 100200 MHz, 1 run | |||||||||||||||||
| c2000ware-26.02 | 1001 run | |||||||||||||||||
| edgeai-gst-apps-11.00.00.08 | n/a | |||||||||||||||||
| esp-idf-v6.1 | 93.5160 MHz, 1 run | |||||||||||||||||
| mcu-plus-sdk-26.01-lp | 249 to 284400 MHz, 1 run | |||||||||||||||||
| mcux-26.09.00 | 981 run | |||||||||||||||||
| mspm0-sdk-2.11 | 971 run | 98.21 run | 1001 run | 971 run | 85.71 run | |||||||||||||
| mspm33-sdk-1.04 | 10032 MHz, 1 run | |||||||||||||||||
| pico-sdk-2.3.1-arm | 1001 run | |||||||||||||||||
| pico-sdk-2.3.1-riscv | 1001 run | |||||||||||||||||
| sdk-f3-9.21 | 1001 run | |||||||||||||||||
| stm32cubeu0-1.3.0 | 1001 run | |||||||||||||||||
| wifi-sdk-10.20.00.39 | 96.91 run | |||||||||||||||||
| (one way) |
Sources
cc35x1/prebuild.sh, data/benchmark-suite.json
Examples run with no crash %, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | Raspberry Pi Pico 2 H | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | LP-AM263P | SK-TDA4VM |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| all-sdks | ||||||||||||||||||
| am13e230-sdk-26.01 | 98.8200 MHz, 1 run | |||||||||||||||||
| c2000ware-26.02 | 100120 MHz, 1 run | |||||||||||||||||
| cc35x1-twins-checked | 10048 MHz, 1 run | |||||||||||||||||
| edgeai-gst-apps-11.00.00.08 | 601 run | |||||||||||||||||
| esp-idf-v6.1 | 87.1160 MHz, 1 run | |||||||||||||||||
| esp-idf-v6.1-sleep | ||||||||||||||||||
| f3-app-twins-programmed | 100160 MHz, 1 run | |||||||||||||||||
| f3-app-twins-serial-checked | 54.5160 MHz, 1 run | |||||||||||||||||
| f3-app-twins-silent | ||||||||||||||||||
| g3519-port-adc12_max_freq_dma | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-adc12_max_freq_dma_8bit | ||||||||||||||||||
| g3519-port-adc12_monitor_supply | ||||||||||||||||||
| g3519-port-adc12_sequence_conversion | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-adc12_single_conversion | ||||||||||||||||||
| g3519-port-adc12_single_conversion_vref_external | ||||||||||||||||||
| g3519-port-adc12_single_conversion_vref_internal | ||||||||||||||||||
| g3519-port-adc12_triggered_by_timer_event | ||||||||||||||||||
| g3519-port-adc12_triggered_by_timer_event_stop | ||||||||||||||||||
| g3519-port-adc12_window_comparator | ||||||||||||||||||
| g3519-port-aesadv_cbc_128_enc_dec | ||||||||||||||||||
| g3519-port-aesadv_ecb_128_enc_dec | ||||||||||||||||||
| g3519-port-aesadv_ecb_256_encrypt | ||||||||||||||||||
| g3519-port-blinky_asm | Not for this chip | |||||||||||||||||
| g3519-port-cinit_bypass | ||||||||||||||||||
| g3519-port-comm_modules-i2c_controller | ||||||||||||||||||
| g3519-port-comm_modules-i2c_target | ||||||||||||||||||
| g3519-port-comm_modules-uart_controller | ||||||||||||||||||
| g3519-port-comm_modules-uart_target | ||||||||||||||||||
| g3519-port-comp_analog_filter | ||||||||||||||||||
| g3519-port-comp_dac_to_timer_event | ||||||||||||||||||
| g3519-port-comp_hs_tima_pwm_fault | ||||||||||||||||||
| g3519-port-comp_lp_dac_vref_internal | ||||||||||||||||||
| g3519-port-crcp_calculate_checksum | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-crcp_calculate_checksum_dma | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-dma_block_transfer | Not for this chip | |||||||||||||||||
| g3519-port-dma_fill_data | Not for this chip | |||||||||||||||||
| g3519-port-dma_table_transfer | Not for this chip | |||||||||||||||||
| g3519-port-drivers-uart_echo | Not for this chip | |||||||||||||||||
| g3519-port-empty | ||||||||||||||||||
| g3519-port-empty_asm | ||||||||||||||||||
| g3519-port-empty_cpp | ||||||||||||||||||
| g3519-port-empty_driverlib_src | ||||||||||||||||||
| g3519-port-event_input_triggers_output | ||||||||||||||||||
| g3519-port-flashctl_blank_verify | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-flashctl_dynamic_memory_protection | ||||||||||||||||||
| g3519-port-flashctl_ecc_error_injection | ||||||||||||||||||
| g3519-port-flashctl_multiple_size_read_verify | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-flashctl_multiple_size_write | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-flashctl_nonmain_memory_write | ||||||||||||||||||
| g3519-port-flashctl_program_with_ecc | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-gpio_input_capture | ||||||||||||||||||
| g3519-port-gpio_software_poll | ||||||||||||||||||
| g3519-port-gpio_toggle_output_hiz | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-iwdt_periodic_reset | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-nvic_interrupt_disable | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-rtc_b_offset_calibration_lfxt | ||||||||||||||||||
| g3519-port-spi_controller_internal_loopback_poll | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-spi_controller_multibyte_fifo_poll | ||||||||||||||||||
| g3519-port-spi_controller_register_format | ||||||||||||||||||
| g3519-port-spi_peripheral_echo_interrupts | ||||||||||||||||||
| g3519-port-spi_peripheral_multibyte_fifo_poll | ||||||||||||||||||
| g3519-port-spi_peripheral_register_format | ||||||||||||||||||
| g3519-port-sram_parity | ||||||||||||||||||
| g3519-port-sysctl_frequency_clock_counter | ||||||||||||||||||
| g3519-port-sysctl_hfxt_run | Not for this chip | |||||||||||||||||
| g3519-port-sysctl_lfxt_standby | ||||||||||||||||||
| g3519-port-sysctl_power_policy_sleep_to_standby | ||||||||||||||||||
| g3519-port-sysctl_power_policy_sleep_to_stop | ||||||||||||||||||
| g3519-port-sysctl_shutdown | ||||||||||||||||||
| g3519-port-systick_periodic_timer | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-tima_timer_mode_periodic_repeat_count | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-tima_timer_mode_pwm_dead_band | ||||||||||||||||||
| g3519-port-tima_trigger_fail_mechanism | ||||||||||||||||||
| g3519-port-timx_timer_mode_capture_duty_and_period | ||||||||||||||||||
| g3519-port-timx_timer_mode_capture_edge_capture | ||||||||||||||||||
| g3519-port-timx_timer_mode_compare_edge_count | ||||||||||||||||||
| g3519-port-timx_timer_mode_one_shot_standby | ||||||||||||||||||
| g3519-port-timx_timer_mode_periodic_sleep | ||||||||||||||||||
| g3519-port-timx_timer_mode_periodic_standby | ||||||||||||||||||
| g3519-port-timx_timer_mode_periodic_stop | ||||||||||||||||||
| g3519-port-timx_timer_mode_pwm_center_stop | ||||||||||||||||||
| g3519-port-timx_timer_mode_pwm_edge_sleep | ||||||||||||||||||
| g3519-port-timx_timer_mode_pwm_edge_sleep_shadow | ||||||||||||||||||
| g3519-port-timx_timer_mode_pwm_x_trig_stop_restore | ||||||||||||||||||
| g3519-port-uart_echo_interrupts_standby | ||||||||||||||||||
| g3519-port-uart_extend_irda_send_packet | ||||||||||||||||||
| g3519-port-uart_extend_manchester_echo | ||||||||||||||||||
| g3519-port-uart_extend_manchester_send_packet | ||||||||||||||||||
| g3519-port-uart_external_loopback_interrupt | ||||||||||||||||||
| g3519-port-uart_rw_multibyte_fifo_poll-rx | ||||||||||||||||||
| g3519-port-uart_rw_multibyte_fifo_poll-tx | 10080 MHz, 1 run | |||||||||||||||||
| g3519-port-wwdt_interval_timer_lfosc_standby | ||||||||||||||||||
| g3519-port-wwdt_interval_timer_lfxt_standby | ||||||||||||||||||
| g3519-port-wwdt_window_mode_periodic_reset | ||||||||||||||||||
| mcu-plus-sdk-26.01-lp | 118 to 208400 MHz, 1 run | |||||||||||||||||
| mcux-26.09.00 | 97.796 MHz, 1 run | |||||||||||||||||
| mspm0-sdk-2.11 | 10032 MHz, 1 run | 10032 MHz, 1 run | 10024 MHz, 1 run | 10080 MHz, 1 run | 90.880 MHz, 1 run | |||||||||||||
| mspm33-sdk-1.04 | 99.432 MHz, 1 run | |||||||||||||||||
| mspm33-sdk-1.04-second-pass | 10032 MHz, 1 run | |||||||||||||||||
| pico-sdk-2.3.1 | ||||||||||||||||||
| ported-g3507-adc-to-uart | ||||||||||||||||||
| ported-g3507-adc12-monitor-supply | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-adc12-sequence-conversion | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-adc12-single-conversion | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-adc12-single-conversion-vref-external | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-adc12-single-conversion-vref-internal | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-adc12-window-comparator | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-blinky-asm | 024 MHz, 1 run | |||||||||||||||||
| ported-g3507-cinit-bypass | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-cmsis-dsp-empty | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-comp-analog-filter | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-dma-block-transfer | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-driverlib-timg-qei-mode | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-driverlib-uart-extend-irda-receive-packet | ||||||||||||||||||
| ported-g3507-driverlib-uart-extend-irda-send-packet | ||||||||||||||||||
| ported-g3507-driverlib-uart-extend-manchester-echo | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-driverlib-uart-extend-manchester-send-packet | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-driverlib-uart-external-loopback-interrupt | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-driverlib-uart-rs485-receive-packet | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-drivers-uart-echo | ||||||||||||||||||
| ported-g3507-eeprom-eeprom-emulation-type-a | ||||||||||||||||||
| ported-g3507-eeprom-eeprom-emulation-type-a-test | ||||||||||||||||||
| ported-g3507-eeprom-eeprom-emulation-type-b | ||||||||||||||||||
| ported-g3507-eeprom-eeprom-emulation-type-b-test | ||||||||||||||||||
| ported-g3507-eeprom-emulation-type-a | ||||||||||||||||||
| ported-g3507-eeprom-emulation-type-a-test | ||||||||||||||||||
| ported-g3507-eeprom-emulation-type-b | ||||||||||||||||||
| ported-g3507-eeprom-emulation-type-b-test | ||||||||||||||||||
| ported-g3507-empty | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-empty-asm | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-empty-cpp | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-empty-driverlib-src | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-empty-non-sysconfig | 024 MHz, 1 run | |||||||||||||||||
| ported-g3507-i2c-controller | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-iqmath-iqmath-rts-ops-test | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-iqmath-rts-ops-test | ||||||||||||||||||
| ported-g3507-mpesti-mpesti-target | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-mpesti-target | ||||||||||||||||||
| ported-g3507-msp-subsystems-adc-to-uart | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-msp-subsystems-pwm-led-driver | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-msp-subsystems-uart-to-i2c-bridge | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-opa-burnout-current-source-to-adc | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-opa-general-purpose-rri | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-opa-inverting-pga-with-dac | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-opa-non-inverting-pga | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-out-of-box | 024 MHz, 1 run | |||||||||||||||||
| ported-g3507-pmbus-pmbus-target | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-pmbus-target | ||||||||||||||||||
| ported-g3507-pwm-led-driver | ||||||||||||||||||
| ported-g3507-smbus-controller | ||||||||||||||||||
| ported-g3507-smbus-controller-arp | ||||||||||||||||||
| ported-g3507-smbus-smbus-controller | ||||||||||||||||||
| ported-g3507-smbus-smbus-controller-arp | ||||||||||||||||||
| ported-g3507-smbus-smbus-target | ||||||||||||||||||
| ported-g3507-smbus-smbus-target-arp | ||||||||||||||||||
| ported-g3507-smbus-target | ||||||||||||||||||
| ported-g3507-smbus-target-arp | ||||||||||||||||||
| ported-g3507-sram-parity | 024 MHz, 1 run | |||||||||||||||||
| ported-g3507-sysctl-mclk-syspll | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-tima-timer-mode-pwm-dead-band | 024 MHz, 1 run | |||||||||||||||||
| ported-g3507-timg-qei-mode | ||||||||||||||||||
| ported-g3507-uart-controller | 10024 MHz, 1 run | |||||||||||||||||
| ported-g3507-uart-echo | ||||||||||||||||||
| ported-g3507-uart-extend-irda-receive-packet | ||||||||||||||||||
| ported-g3507-uart-extend-irda-send-packet | ||||||||||||||||||
| ported-g3507-uart-extend-manchester-echo | ||||||||||||||||||
| ported-g3507-uart-extend-manchester-send-packet | ||||||||||||||||||
| ported-g3507-uart-external-loopback-interrupt | ||||||||||||||||||
| ported-g3507-uart-rs485-receive-packet | ||||||||||||||||||
| ported-g3507-uart-to-i2c-bridge | ||||||||||||||||||
| ported-l1306-battery-gauge-gauge-level1 | ||||||||||||||||||
| ported-l1306-battery-gauge-self-calibrate-current-detection | ||||||||||||||||||
| ported-l1306-cmsis-dsp-cmsis-dsp-empty | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-demos-blood-pressure-monitor | ||||||||||||||||||
| ported-l1306-demos-out-of-box | ||||||||||||||||||
| ported-l1306-driverlib-adc12-monitor-supply | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-adc12-sequence-conversion | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-adc12-single-conversion | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-adc12-single-conversion-vref-external | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-adc12-single-conversion-vref-internal | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-adc12-window-comparator | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-blinky-asm | ||||||||||||||||||
| ported-l1306-driverlib-cinit-bypass | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-comp-analog-filter | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-dma-block-transfer | ||||||||||||||||||
| ported-l1306-driverlib-empty | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-empty-asm | ||||||||||||||||||
| ported-l1306-driverlib-empty-cpp | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-empty-driverlib-src | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-empty-non-sysconfig | ||||||||||||||||||
| ported-l1306-driverlib-flashctl-blank-verify | ||||||||||||||||||
| ported-l1306-driverlib-flashctl-dynamic-memory-protection | ||||||||||||||||||
| ported-l1306-driverlib-flashctl-multiple-size-read-verify | ||||||||||||||||||
| ported-l1306-driverlib-flashctl-multiple-size-write | ||||||||||||||||||
| ported-l1306-driverlib-gpio-toggle-output-hiz | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-i2c-controller-rw-multibyte-fifo-interrupts | ||||||||||||||||||
| ported-l1306-driverlib-i2c-controller-rw-multibyte-fifo-poll | ||||||||||||||||||
| ported-l1306-driverlib-i2c-multicontroller-arbitration | ||||||||||||||||||
| ported-l1306-driverlib-i2c-target-rw-multibyte-fifo-interrupts | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-i2c-target-rw-multibyte-fifo-interrupts-stop | ||||||||||||||||||
| ported-l1306-driverlib-i2c-target-rw-multibyte-fifo-poll | ||||||||||||||||||
| ported-l1306-driverlib-opa-burnout-current-source-to-adc | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-opa-general-purpose-rri | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-opa-non-inverting-pga | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-spi-controller-command-data-control | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-spi-controller-echo-interrupts | 10024 MHz, 1 run | |||||||||||||||||
| ported-l1306-driverlib-spi-controller-fifo-dma-interrupts | ||||||||||||||||||
| ported-l1306-driverlib-spi-controller-internal-loopback-poll | Not for this chip | |||||||||||||||||
| ported-l1306-driverlib-spi-controller-multibyte-fifo-poll | ||||||||||||||||||
| ported-l1306-driverlib-spi-controller-register-format | ||||||||||||||||||
| ported-l1306-driverlib-spi-peripheral-echo-interrupts | ||||||||||||||||||
| ported-l1306-driverlib-spi-peripheral-fifo-dma-interrupts | ||||||||||||||||||
| ported-l1306-driverlib-spi-peripheral-multibyte-fifo-poll | ||||||||||||||||||
| ported-l1306-driverlib-spi-peripheral-register-format | ||||||||||||||||||
| ported-l1306-driverlib-spi-peripheral-repeated-fifo-dma-interrupts | ||||||||||||||||||
| ported-l1306-driverlib-sysctl-frequency-clock-counter | ||||||||||||||||||
| ported-l1306-driverlib-systick-periodic-timer | ||||||||||||||||||
| ported-l1306-driverlib-uart-echo-interrupts-standby | ||||||||||||||||||
| ported-l1306-driverlib-uart-extend-manchester-echo | ||||||||||||||||||
| ported-l1306-driverlib-uart-extend-manchester-send-packet | ||||||||||||||||||
| ported-l1306-driverlib-uart-external-loopback-interrupt | ||||||||||||||||||
| ported-l1306-driverlib-uart-rw-multibyte-fifo-poll | ||||||||||||||||||
| ported-l1306-driverlib-uart-rx-hw-flow-control | ||||||||||||||||||
| ported-l1306-driverlib-uart-rx-multibyte-fifo-dma-interrupts | ||||||||||||||||||
| ported-l1306-driverlib-uart-tx-hw-flow-control | ||||||||||||||||||
| ported-l1306-driverlib-uart-tx-multibyte-fifo-dma-interrupts | ||||||||||||||||||
| ported-l1306-driverlib-wwdt-interval-timer-lfosc-standby | ||||||||||||||||||
| ported-l1306-eeprom-eeprom-emulation-type-a | ||||||||||||||||||
| ported-l1306-eeprom-eeprom-emulation-type-a-test | ||||||||||||||||||
| ported-l1306-eeprom-eeprom-emulation-type-b | ||||||||||||||||||
| ported-l1306-eeprom-eeprom-emulation-type-b-test | ||||||||||||||||||
| ported-l1306-iqmath-iqmath-rts-ops-test | ||||||||||||||||||
| ported-l1306-msp-subsystems-adc-to-i2c-target | ||||||||||||||||||
| ported-l1306-msp-subsystems-adc-to-spi-peripheral | ||||||||||||||||||
| ported-l1306-msp-subsystems-adc-to-uart | ||||||||||||||||||
| ported-l1306-msp-subsystems-digital-mux | ||||||||||||||||||
| ported-l1306-msp-subsystems-io-expander-i2c-host | ||||||||||||||||||
| ported-l1306-msp-subsystems-io-expander-uart-i2c-spi | ||||||||||||||||||
| ported-l1306-msp-subsystems-transimpedance-amplifier | ||||||||||||||||||
| ported-l1306-msp-subsystems-uart-to-i2c-bridge | ||||||||||||||||||
| ported-l1306-sasi-smoke-detector-air-quality-sensing | Not for this chip | |||||||||||||||||
| ported-l1306-sasi-smoke-detector-sasi-smoke-detector | Not for this chip | |||||||||||||||||
| ported-l1306-smbus-smbus-controller | ||||||||||||||||||
| ported-l1306-smbus-smbus-controller-arp | ||||||||||||||||||
| ported-l1306-smbus-smbus-target | ||||||||||||||||||
| ported-l1306-smbus-smbus-target-arp | Not for this chip | |||||||||||||||||
| r5-twins-behavior-checked | 66.796 MHz, 1 run | |||||||||||||||||
| r5-twins-f3-9.21 | 10096 MHz, 1 run | |||||||||||||||||
| sdk-f3-9.21 | 98.81 run | |||||||||||||||||
| stm32cubeu0-1.3.0 | 10048 MHz, 1 run | |||||||||||||||||
| wifi-sdk-10.20.00.39 | 93.5160 MHz, 1 run | |||||||||||||||||
| (one way) |
Sources
data/benchmark-suite.json, docs/experiments/2026-10-24-cc2340r5-cc35x1-driver-twins.md
Examples that build after moving to another chip %, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | NUCLEO-U083RC | FRDM-MCXA153 | LP-MSPM33C321A |
|---|---|---|---|---|---|---|---|---|---|---|---|
| cc1407p-host-c28x-no-shim | 01 run | ||||||||||
| cc1407p-host-c28x-shim | 1001 run | ||||||||||
| from-cc1354p10-to-cc2340r5-unchanged | |||||||||||
| from-f280015x-device-only | 76.71 run | ||||||||||
| from-f280015x-pin-unlock | 79.11 run | ||||||||||
| from-mspm0c1104-way3 | 81.31 run | ||||||||||
| from-mspm0g3507-agent | |||||||||||
| from-mspm0g3507-shim | 501 run | ||||||||||
| from-mspm0g3507-way3 | 68.51 run | 31.11 run | |||||||||
| from-mspm0g3519-driverlib-fresh-config | 64.81 run | ||||||||||
| from-mspm0g3519-way3 | 54.71 run | ||||||||||
| mspm0g3519-to-mspm33-config-port-12 | 66.71 run | ||||||||||
| mspm33-to-mspm0g3519-config-port-12 | 66.71 run | ||||||||||
| to-cc1354p10-unchanged | 1001 run | ||||||||||
| to-cc2340r5-shim | 1001 run | ||||||||||
| to-cc2340r5-unchanged | 01 run | ||||||||||
| to-cc2755p10-unchanged | 1001 run | ||||||||||
| to-mspm0c1104-device-only | 4.81 run | 17.61 run | |||||||||
| to-mspm0c1104-lines-dropped | 17.81 run | 44.71 run | |||||||||
| to-mspm0c1104-pin-unlock | 5.91 run | 36.51 run | |||||||||
| to-mspm0c1104-way3 | 34.11 run | ||||||||||
| to-mspm0g3507-device-only | 59.41 run | 48.41 run | |||||||||
| to-mspm0g3507-lines-dropped | 79.41 run | 71.41 run | |||||||||
| to-mspm0g3507-pin-unlock | 77.61 run | 71.41 run | |||||||||
| to-mspm0g3507-shim | 1001 run | ||||||||||
| to-mspm0g3507-unchanged | 501 run | ||||||||||
| to-mspm0g3507-way3 | 77.51 run | 431 run | |||||||||
| to-mspm0g3519-shim | 10080 MHz, 1 run | ||||||||||
| to-mspm0g3519-way3 | 48.81 run | ||||||||||
| to-mspm0l1306-device-only | 8.11 run | 441 run | |||||||||
| to-mspm0l1306-lines-dropped | 35.61 run | 62.61 run | |||||||||
| to-mspm0l1306-pin-unlock | 9.61 run | 62.61 run | |||||||||
| (one way) |
Sources
portability/README.md, portability/matrix.csv
A TI driver example from another chip's SDK shows the behavior its source defines yes/no
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| arduino-zephyr-analogwrite-duty | Not for this chip | |||||||||||
| arduino-zephyr-analogwrite-leds | 148 MHz, 1 run | |||||||||||
| arduino-zephyr-analogwrite-pwm-output | 180 MHz | |||||||||||
| arduino-zephyr-attachinterrupt-first-mode | 180 MHz | |||||||||||
| arduino-zephyr-attachinterrupt-mode-change | Not for this chip | |||||||||||
| arduino-zephyr-attachinterrupt-pinmode-flip | Not for this chip | |||||||||||
| arduino-zephyr-attachinterrupt-pull-flip | 148 MHz, 1 run | |||||||||||
| arduino-zephyr-spi-loopback | ||||||||||||
| arduino-zephyr-spi-transfer | 148 MHz, 1 run | |||||||||||
| arduino-zephyr-spi-transfer-buffer | Not for this chip | |||||||||||
| arduino-zephyr-spi-transfer-loopback | 180 MHz | |||||||||||
| arduino-zephyr-spi-wire-loopback | ||||||||||||
| arduino-zephyr-wire-ft6336u | 180 MHz, 1 run | |||||||||||
| arduino-zephyr-wire-hdc2080 | Not for this chip | |||||||||||
| arduino-zephyr-wire-opt3001 | 148 MHz, 1 run | |||||||||||
| arduino-zephyr-wire-scan-empty | 148 MHz, 1 run | |||||||||||
| arduino-zephyr-wire-scan-pack | Not for this chip | |||||||||||
| cc2340r5-to-cc1354p10-adcsinglechannel | 148 MHz, 1 run | |||||||||||
| cc2340r5-to-cc1354p10-empty | ||||||||||||
| cc2340r5-to-cc1354p10-gpiointerrupt | ||||||||||||
| cc2340r5-to-cc1354p10-i2ctmp | 148 MHz, 1 run | |||||||||||
| cc2340r5-to-cc1354p10-spicontroller | 148 MHz, 1 run | |||||||||||
| cc2340r5-to-cc1354p10-spiperipheral | 148 MHz, 1 run | |||||||||||
| cc2340r5-to-cc1354p10-uart2callback | 148 MHz, 1 run | |||||||||||
| cc2340r5-to-cc1354p10-uart2echo | 148 MHz, 1 run | |||||||||||
| doomgeneric-fbdev-4x3-aspect-by-eye | 11250 MHz, 1 run | |||||||||||
| doomgeneric-fbdev-pad-buttons-console-layout | 11250 MHz, 1 run | |||||||||||
| doomgeneric-fbdev-pad-stick-up-walks | 11250 MHz, 1 run | |||||||||||
| driverlib | 132 MHz, 1 run | 124 MHz, 1 run | 132 MHz, 1 run | 132 MHz, 1 run | ||||||||
| driverlib-am13 | 1200 MHz, 1 run | |||||||||||
| driverlib-am13-adc-pa16 | Not for this chip | |||||||||||
| driverlib-hsadc | 132 MHz, 1 run | |||||||||||
| driverlib-pa25-floating | 132 MHz, 1 run | |||||||||||
| from-cc35x1-adcsinglechannel | yes1 run | |||||||||||
| from-cc35x1-empty | yes1 run | |||||||||||
| from-cc35x1-exception | yes1 run | |||||||||||
| from-cc35x1-gpiointerrupt | yes1 run | |||||||||||
| from-cc35x1-i2ccontroller | yes1 run | |||||||||||
| from-cc35x1-pwmled1 | ||||||||||||
| from-cc35x1-sha2hash | yes1 run | |||||||||||
| from-cc35x1-spicontroller | yes1 run | |||||||||||
| from-cc35x1-spiperipheral | yes1 run | |||||||||||
| from-cc35x1-uart2echo | yes1 run | |||||||||||
| from-cc35x1-watchdog | yes1 run | |||||||||||
| from-mspm0g3519-adc12_single_conversion | Not for this chip | |||||||||||
| from-mspm0g3519-crcp_calculate_checksum | yes1 run | |||||||||||
| from-mspm0g3519-gpio_toggle_output | yes1 run | |||||||||||
| from-mspm0g3519-i2c_controller_rw_multibyte_fifo_poll | Not for this chip | |||||||||||
| from-mspm0g3519-spi_controller_internal_loopback_poll | yes1 run | |||||||||||
| from-mspm0g3519-systick_periodic_timer | yes1 run | |||||||||||
| from-mspm0g3519-timx_timer_mode_periodic_sleep | yes1 run | |||||||||||
| from-mspm0g3519-timx_timer_mode_pwm_edge_sleep | yes1 run | |||||||||||
| from-mspm0g3519-uart_external_loopback_interrupt | ||||||||||||
| from-mspm0g3519-uart_internal_loopback_standby_restore | Not for this chip | |||||||||||
| from-mspm0g3519-uart_rw_multibyte_fifo_poll | yes1 run | |||||||||||
| from-mspm0g3519-uart_tx_console_multibyte_repeated_fifo_dma | Not for this chip | |||||||||||
| from-mspm33-crcp_calculate_checksum | yes1 run | |||||||||||
| from-mspm33-gpio_toggle_output | yes1 run | |||||||||||
| from-mspm33-hsadc_single_conversion | Not for this chip | |||||||||||
| from-mspm33-i2c_controller_rw_byte_poll | Not for this chip | |||||||||||
| from-mspm33-spi_controller_internal_loopback_poll | yes1 run | |||||||||||
| from-mspm33-systick_periodic_timer | yes1 run | |||||||||||
| from-mspm33-timx_timer_mode_periodic_sleep | yes1 run | |||||||||||
| from-mspm33-timx_timer_mode_pwm_edge_sleep | yes1 run | |||||||||||
| from-mspm33-uart_internal_loopback_spgss0_uc1 | yes1 run | |||||||||||
| from-mspm33-uart_internal_loopback_with_interrupt_spgss0_uc1 | yes1 run | |||||||||||
| from-mspm33-uart_rx_rw_multibyte_fifo_poll | Not for this chip | |||||||||||
| from-mspm33-uart_tx_rw_multibyte_fifo_poll | yes1 run | |||||||||||
| micropython-zephyr-adc | Not for this chip | |||||||||||
| micropython-zephyr-i2c-hdc2080 | Not for this chip | |||||||||||
| micropython-zephyr-i2c-opt3001 | 148 MHz, 1 run | |||||||||||
| micropython-zephyr-i2c-read | Not for this chip | |||||||||||
| micropython-zephyr-i2c-scan-empty | 148 MHz, 1 run | |||||||||||
| micropython-zephyr-i2c-scan-pack | Not for this chip | |||||||||||
| micropython-zephyr-i2c-write | 1160 MHz, 1 run | |||||||||||
| micropython-zephyr-loop-10000 | 1160 MHz, 1 run | |||||||||||
| micropython-zephyr-pin-irq-init-flip | Not for this chip | |||||||||||
| micropython-zephyr-pin-irq-pull-flip | 148 MHz, 1 run | |||||||||||
| micropython-zephyr-pin-pull-up-down | 1160 MHz, 1 run | |||||||||||
| micropython-zephyr-pin-value-readback | Not for this chip | |||||||||||
| micropython-zephyr-pwm | Not for this chip | |||||||||||
| micropython-zephyr-pwm-duty-ns | 148 MHz, 1 run | |||||||||||
| micropython-zephyr-pwm-duty-u16 | Not for this chip | |||||||||||
| micropython-zephyr-pwm-duty-u16-patched | 148 MHz, 1 run | |||||||||||
| micropython-zephyr-spi-i2c-together | ||||||||||||
| micropython-zephyr-spi-loopback | ||||||||||||
| micropython-zephyr-spi-write-readinto | 148 MHz, 1 run | 1160 MHz, 1 run | ||||||||||
| pico-blink_simple | yes32 MHz | |||||||||||
| pico-bus_scan | yes32 MHz | |||||||||||
| pico-hello_adc | yes32 MHz, 1 run | |||||||||||
| pico-hello_serial | yes32 MHz, 1 run | |||||||||||
| pico-led_fade | yes32 MHz, 1 run | |||||||||||
| renesas-adc | yes32 MHz, 1 run | |||||||||||
| renesas-adc_gpt_periodic_sampling | no32 MHz, 1 run | |||||||||||
| renesas-adc_gpt_periodic_sampling-dtc-chain | Not for this chip | |||||||||||
| renesas-adc_gpt_periodic_sampling-event-link | yes32 MHz, 1 run | |||||||||||
| renesas-adc_gpt_periodic_sampling-group-b-trigger | Not for this chip | |||||||||||
| renesas-adc_gpt_periodic_sampling-one-channel | yes32 MHz, 1 run | |||||||||||
| renesas-gpt | yes32 MHz, 1 run | |||||||||||
| renesas-gpt-one-shot | yes32 MHz | |||||||||||
| renesas-gpt-periodic-period | yes32 MHz | |||||||||||
| renesas-gpt-pwm-duty | yes32 MHz, 1 run | |||||||||||
| renesas-iic_master-ft6336u | yes32 MHz | |||||||||||
| renesas-iic_master-unchanged | no32 MHz, 1 run | |||||||||||
| renesas-sci_uart | yes32 MHz, 1 run | |||||||||||
| renesas-sci_uart-pwm-duty | yes32 MHz, 1 run | |||||||||||
| silent-twins-uart | ||||||||||||
| three-ways-app-c2000ware | yes120 MHz, 1 run | |||||||||||
| three-ways-app-linux-sysfs | 11250 MHz, 1 run | |||||||||||
| three-ways-app-tidrivers | 148 MHz, 1 run | 196 MHz, 1 run | 1160 MHz, 1 run | |||||||||
| twin-f3-adcsinglechannel | Not for this chip | |||||||||||
| twin-f3-empty | yes32 MHz, 1 run | |||||||||||
| twin-f3-gpiointerrupt | ||||||||||||
| twin-f3-i2ccontroller | ||||||||||||
| twin-f3-i2ctarget | ||||||||||||
| twin-f3-i2ctmp | ||||||||||||
| twin-f3-spicontroller | ||||||||||||
| twin-f3-spiperipheral | ||||||||||||
| twin-f3-uart2callback | yes32 MHz, 1 run | |||||||||||
| twin-f3-uart2echo | yes32 MHz, 1 run | |||||||||||
| x47-wire-packer | yes120 MHz, 1 run | |||||||||||
| zephyr-board-pinctrl-tima1-ccp1-pb27 | Not for this chip | |||||||||||
| zephyr-mspm0-i2c-hdc2080 |
Sources
docs/experiments/2026-10-24-cc2340r5-cc35x1-driver-twins.md, portability/arduino/zephyr/README.md, portability/cc1407p-host/wire/README.md, portability/three-ways/README.md, portability/zephyr-mspm0/README.md, ports/doom/linux-fb/README.md, ports/micropython/zephyr-cc2340r5/README.md
Glue lines the portable three-ways app needs on one board and software layer lines, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| c2000ware-driverlib | 35120 MHz, 1 run | ||||||||||
| driverlib | 3932 MHz, 1 run | 3924 MHz, 1 run | 3932 MHz, 1 run | 3932 MHz, 1 run | |||||||
| driverlib-am13 | 38200 MHz, 1 run | ||||||||||
| driverlib-hsadc | 3732 MHz, 1 run | ||||||||||
| linux-sysfs | 661250 MHz, 1 run | ||||||||||
| three-ways-app-tidrivers | 481 run | ||||||||||
| tidrivers-f3-sdk | 481 run | ||||||||||
| tidrivers-wifi-sdk | 481 run |
Sources
portability/three-ways/README.md, portability/three-ways/c2000/glue_c2000.c, portability/three-ways/linux/glue_linux.c, portability/three-ways/tidrivers/cc2755p10/glue_tidrivers_cc2755p10.c, portability/three-ways/tidrivers/cc35x1/glue_tidrivers_cc35x1.c
Configuration lines the portable three-ways app needs on one board and software layer lines, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|
| c2000ware-driverlib | 29120 MHz, 1 run | ||||||||||
| driverlib | 3432 MHz, 1 run | 3024 MHz, 1 run | 3432 MHz, 1 run | 3332 MHz, 1 run | |||||||
| driverlib-am13 | 35200 MHz, 1 run | ||||||||||
| driverlib-hsadc | 4132 MHz, 1 run | ||||||||||
| linux-sysfs | 51250 MHz, 1 run | ||||||||||
| three-ways-app-tidrivers | 141 run | ||||||||||
| tidrivers-f3-sdk | 141 run | ||||||||||
| tidrivers-wifi-sdk | 141 run |
Sources
portability/three-ways/README.md, portability/three-ways/c2000/glue_c2000.c, portability/three-ways/driverlib/g3519.syscfg, portability/three-ways/linux/config_am62l.h, portability/three-ways/tidrivers/cc2340r5/app.syscfg, portability/three-ways/tidrivers/cc2755p10/app.syscfg, portability/three-ways/tidrivers/cc35x1/app.syscfg
Flash used by an outside project ported to the board, with its shim B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 | TMDS62LEVM (AM62L EVM) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| arduboy-crate-confusion-edumkii | 20 kB32 MHz, 1 run | |||||||||||
| arduboy-snake-edumkii | 20.2 kB32 MHz, 1 run | |||||||||||
| arduboy-tileworld-edumkii | 16.4 kB32 MHz, 1 run | |||||||||||
| arduboy2-crate-confusion | 9.4 kB1 run | 9.4 kB1 run | 9.4 kB1 run | 9.6 kB1 run | ||||||||
| arduboy2-snake | 7.7 kB1 run | 7.7 kB1 run | 7.7 kB1 run | 8.2 kB1 run | ||||||||
| arduboy2-tileworld | 5.5 kB1 run | 5.5 kB1 run | 5.5 kB1 run | 5.8 kB1 run | ||||||||
| arduino-layer-analogreadserial | Not for this chip | |||||||||||
| arduino-layer-blink | 2.6 kB32 MHz, 1 run | |||||||||||
| arduino-zephyr-analogreadserial | 22.8 kB80 MHz, 1 run | 27.8 kB48 MHz, 1 run | ||||||||||
| arduino-zephyr-blink | 22.8 kB80 MHz, 1 run | 27.7 kB48 MHz, 1 run | ||||||||||
| arduino-zephyr-buttoninterrupt | 31.7 kB80 MHz, 1 run | |||||||||||
| arduino-zephyr-fadecheck | 32.9 kB48 MHz, 1 run | |||||||||||
| arduino-zephyr-fadepwm | 32.1 kB80 MHz, 1 run | |||||||||||
| arduino-zephyr-interruptselftest | 32.9 kB48 MHz, 1 run | |||||||||||
| arduino-zephyr-spiloop | 32 kB48 MHz, 1 run | |||||||||||
| arduino-zephyr-spiloopback | 31.5 kB80 MHz, 1 run | |||||||||||
| arduino-zephyr-wire-ft6336u | 31.1 kB80 MHz, 1 run | |||||||||||
| arduino-zephyr-wirescan | 37.4 kB48 MHz, 1 run | |||||||||||
| cc1407p-host-fake-radio-bench | 10.6 kB1 run | 10.8 kB1 run | ||||||||||
| chip8-bench | 14.1 kB80 MHz, 1 run | |||||||||||
| chip8-play | 13.5 kB80 MHz, 1 run | |||||||||||
| doom-m33whx | 230.8 kB160 MHz, 1 run | |||||||||||
| doom-m33whx-edumkii-c8 | 298.6 kB160 MHz, 1 run | |||||||||||
| doom-m33whx-page-cache | 304.1 kB160 MHz, 1 run | |||||||||||
| doom-s3 | Not for this chip 134 kB short | 262 kB calc. | 281.6 kB160 MHz, 1 run | |||||||||
| doom-s3-wad-xip | 4.3 MB160 MHz, 1 run | |||||||||||
| doom-whx-panel-xip | 1.99 MB160 MHz, 1 run | |||||||||||
| doom-whx-xip | 1.97 MB160 MHz, 1 run | |||||||||||
| driverlib | 2.3 kB32 MHz, 1 run | 2.3 kB24 MHz, 1 run | 2.3 kB32 MHz, 1 run | 2.4 kB32 MHz, 1 run | ||||||||
| driverlib-am13 | 9.2 kB200 MHz, 1 run | |||||||||||
| driverlib-hsadc | 2.8 kB32 MHz, 1 run | |||||||||||
| llama2c-on-edumkii-screen | 554 kB160 MHz, 1 run | |||||||||||
| llama2c-tinystories-260k-float32 | Not for this chip 7.8 kB short | |||||||||||
| llama2c-tinystories-260k-int8 | 543.6 kB1 run | |||||||||||
| micropython-full | Not for this chip 45.9 kB short | 174.1 kB1 run | ||||||||||
| micropython-full-spi | 175.6 kB1 run | |||||||||||
| micropython-min | 72.9 kB1 run | 73.1 kB1 run | ||||||||||
| micropython-min-heap16k | 73.1 kB1 run | |||||||||||
| micropython-zephyr-basic-heap20k | 174.8 kB48 MHz, 1 run | |||||||||||
| micropython-zephyr-basic-heap20k-pwmfix | 174.9 kB48 MHz, 1 run | |||||||||||
| micropython-zephyr-extra-heap16k | 213.6 kB48 MHz, 1 run | |||||||||||
| micropython-zephyr-stock-prj-gpio | 292.3 kB160 MHz, 1 run | |||||||||||
| micropython-zephyr-stock-prj-i2c | 294.5 kB160 MHz, 1 run | |||||||||||
| micropython-zephyr-stock-prj-spi | 294.4 kB160 MHz, 1 run | |||||||||||
| minimp3-bench | 146.8 kB1 run | 153.4 kB160 MHz, 1 run | ||||||||||
| minmea | 5.7 kB1 run | 5.6 kB1 run | ||||||||||
| moonlight-embedded-f32e415 | 157.8 kB1250 MHz, 1 run | |||||||||||
| msp430-fram-persist | 4.5 kB32 MHz, 1 run | 12.6 kB200 MHz, 1 run | ||||||||||
| msp430-lpm3-wake | 2 kB32 MHz, 1 run | 8.5 kB200 MHz, 1 run | ||||||||||
| msp430-uart-echo | 1.2 kB32 MHz, 1 run | 7.6 kB200 MHz, 1 run | ||||||||||
| peanut-gb-code | 12.5 kB1 run | 12.5 kB1 run | 12.5 kB1 run | 13 kB1 run | ||||||||
| peanut-gb-dmg-acid2 | 44.5 kB1 run | 44.5 kB1 run | 44.5 kB1 run | 45 kB1 run | ||||||||
| peanut-gb-tobu | Not for this chip 140.4 kB short | 268.5 kB1 run | Not for this chip 140.4 kB short | 269 kB1 run | ||||||||
| peanut-gb-tobu-edumkii | 281.1 kB32 MHz, 1 run | |||||||||||
| peanut-gb-tobu-edumkii-160mhz-skip | 284.6 kB160 MHz, 1 run | |||||||||||
| pico-blink_simple | 2.4 kB32 MHz, 1 run | |||||||||||
| pico-bus_scan | 10.6 kB32 MHz, 1 run | |||||||||||
| pico-hello_adc | 10.4 kB32 MHz, 1 run | |||||||||||
| pico-hello_serial | 1.8 kB32 MHz, 1 run | |||||||||||
| pico-led_fade | 3.3 kB32 MHz, 1 run | |||||||||||
| renesas-adc | 13.3 kB32 MHz, 1 run | |||||||||||
| renesas-adc_gpt_periodic_sampling | 15.5 kB32 MHz, 1 run | |||||||||||
| renesas-gpt | 14.9 kB32 MHz, 1 run | |||||||||||
| renesas-iic_master-ft6336u | 12.6 kB32 MHz, 1 run | |||||||||||
| renesas-sci_uart | 13.1 kB32 MHz, 1 run | |||||||||||
| rust-uart-hello | 3.7 kB32 MHz, 1 run | |||||||||||
| sharp128-hello | 12.2 kB32 MHz, 1 run | 4.3 kB32 MHz, 1 run | 12.2 kB32 MHz, 1 run | 29.4 kB160 MHz, 1 run | ||||||||
| sharp128-hello-bands | 4.8 kB24 MHz, 1 run | |||||||||||
| sharp128-player-pff | 7.2 kB24 MHz, 1 run | |||||||||||
| three-ways-app-c2000ware | 4.9 kB120 MHz, 1 run | |||||||||||
| three-ways-app-linux-dynamic-stripped | 66.1 kB1250 MHz, 1 run | |||||||||||
| three-ways-app-linux-static-stripped | 583.9 kB1250 MHz, 1 run | |||||||||||
| three-ways-app-tidrivers | 18.4 kB48 MHz, 1 run | 19.7 kB96 MHz, 1 run | 20.7 kB160 MHz, 1 run | |||||||||
| touch-games-bench | 10.8 kB1 run | 11 kB80 MHz | 8.1 kB1 run | |||||||||
| touch-games-play | 9.7 kB80 MHz, 1 run | |||||||||||
| ulisp-4.9a | 98.8 kB80 MHz, 1 run | 99 kB80 MHz, 1 run | 98.8 kB80 MHz, 1 run | |||||||||
| wasm3-v0.9.0 | 55.6 kB1 run | 76.4 kB1 run | ||||||||||
| wasm3-v0.9.0-tiny | 55.4 kB1 run | |||||||||||
| x47-wire-packer | 1.3 kB120 MHz, 1 run | |||||||||||
| xiaozhi | 1.5 MB160 MHz, 1 run | |||||||||||
| zx48-sram-testimage | 62.5 kB80 MHz, 1 run |
Sources
docs/experiments/2026-10-20-doom-smallest-ti-chip.md, portability/arduino/zephyr/README.md, portability/boosterpacks/edumkii/build.sh, portability/boosterpacks/sharp128/README.md, portability/cc1407p-host/wire/README.md, portability/three-ways/README.md, ports/chip8/README.md, ports/doom/target-cc35x1-whx/PANEL-WIRING.md, ports/llama2c/README.md, ports/micropython/zephyr-cc2340r5/README.md, ports/minimp3/README.md, ports/msp430-to-mspm0/fram-persist/PORT.md, ports/msp430-to-mspm0/lpm3-wake/PORT.md, ports/msp430-to-mspm0/uart-echo-lpm3/PORT.md, ports/rust-mspm0/README.md, ports/touch-games/README.md, ports/zx-spectrum/README.md
RAM used by an outside project ported to the board, with its shim B, lower is better
| Variant | LP-MSPM0G3507 | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | LP-MSPM33C321A | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| arduboy-crate-confusion-edumkii | 6.3 kB32 MHz, 1 run | ||||||||||
| arduboy-snake-edumkii | 6.6 kB32 MHz, 1 run | ||||||||||
| arduboy-tileworld-edumkii | 6.1 kB32 MHz, 1 run | ||||||||||
| arduboy2-crate-confusion | 3.4 kB1 run | 3.4 kB1 run | 3.4 kB1 run | 3.4 kB1 run | |||||||
| arduboy2-snake | 3.8 kB1 run | 3.8 kB1 run | 3.8 kB1 run | 3.8 kB1 run | |||||||
| arduboy2-tileworld | 3.3 kB1 run | 3.3 kB1 run | 3.3 kB1 run | 3.3 kB1 run | |||||||
| arduino-layer-blink | 6.2 kB32 MHz, 1 run | ||||||||||
| arduino-zephyr-analogreadserial | 4.8 kB80 MHz, 1 run | 5.2 kB48 MHz, 1 run | |||||||||
| arduino-zephyr-blink | 4.8 kB80 MHz, 1 run | 5.2 kB48 MHz, 1 run | |||||||||
| arduino-zephyr-buttoninterrupt | 6.3 kB80 MHz, 1 run | ||||||||||
| arduino-zephyr-fadecheck | 6.1 kB48 MHz, 1 run | ||||||||||
| arduino-zephyr-fadepwm | 6.4 kB80 MHz, 1 run | ||||||||||
| arduino-zephyr-interruptselftest | 6.1 kB48 MHz, 1 run | ||||||||||
| arduino-zephyr-spiloop | 6.1 kB48 MHz, 1 run | ||||||||||
| arduino-zephyr-spiloopback | 6.3 kB80 MHz, 1 run | ||||||||||
| arduino-zephyr-wire-ft6336u | 6.3 kB80 MHz, 1 run | ||||||||||
| arduino-zephyr-wirescan | 6.1 kB48 MHz, 1 run | ||||||||||
| cc1407p-host-fake-radio-bench | 5.8 kB1 run | 5.8 kB1 run | |||||||||
| chip8-play | 10.4 kB80 MHz, 1 run | ||||||||||
| doom-m33whx | Not for this chip 166 kB short | Not for this chip 70 kB short | |||||||||
| doom-m33whx-board-page-cache-16kb | 253.3 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-board-page-cache-8kb | 245.3 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-edumkii-c8 | 247.7 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-linked-44kb-zone | 242 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-page-cache-12kb | 248.6 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-page-cache-16kb | 252.7 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-page-cache-19kb | 255.7 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-page-cache-8kb | 244.6 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-static | 198 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-total | 228 kB calc. | ||||||||||
| doom-m33whx-zone-finishes | 30 kB160 MHz, 1 run | ||||||||||
| doom-m33whx-zone-hw | 28.9 kB160 MHz, 1 run | ||||||||||
| doom-s3 | Not for this chip 132.1 kB short | Not for this chip 36.1 kB short | Not for this chip 707.8 kB short | ||||||||
| doom-s3-linked-80kb-zone | 243.8 kB160 MHz, 1 run | ||||||||||
| doom-s3-static | 163.8 kB160 MHz, 1 run | ||||||||||
| doom-s3-static-and-rtos | 187.1 kB160 MHz, 1 run | ||||||||||
| doom-s3-zone | 480 kB160 MHz, 1 run | ||||||||||
| doom-s3-zone-finishes | 800 kB160 MHz, 1 run | ||||||||||
| doom-s3-zone-floor | 593 kB160 MHz, 1 run | ||||||||||
| doom-whx-panel-static-and-zone | 494.2 kB160 MHz, 1 run | ||||||||||
| doom-whx-panel-zone | 31 kB160 MHz, 1 run | ||||||||||
| doom-whx-static-and-rtos | 220.2 kB160 MHz, 1 run | ||||||||||
| doom-whx-zone | 40 kB160 MHz, 1 run | ||||||||||
| doom-whx-zone-hw | 28.9 kB160 MHz, 1 run | ||||||||||
| driverlib | 27232 MHz, 1 run | 8024 MHz, 1 run | 27232 MHz, 1 run | 27232 MHz, 1 run | |||||||
| driverlib-am13 | 9 kB200 MHz, 1 run | ||||||||||
| driverlib-hsadc | 27232 MHz, 1 run | ||||||||||
| driverlib-stack-highwater | 18424 MHz, 1 run | ||||||||||
| llama2c-on-edumkii-screen | 192.8 kB160 MHz, 1 run | ||||||||||
| llama2c-tinystories-260k-int8 | 192.6 kB1 run | ||||||||||
| micropython-full | 5.7 kB1 run | ||||||||||
| micropython-min | 2.9 kB1 run | 3 kB1 run | |||||||||
| micropython-min-heap16k | 19 kB1 run | ||||||||||
| micropython-zephyr-basic-heap20k | 29.9 kB48 MHz, 1 run | ||||||||||
| micropython-zephyr-basic-heap20k-pwmfix | 29.9 kB48 MHz, 1 run | ||||||||||
| micropython-zephyr-extra-heap16k | 26 kB48 MHz, 1 run | ||||||||||
| micropython-zephyr-stock-prj | Not for this chip 46.8 kB short | ||||||||||
| micropython-zephyr-stock-prj-gpio | 83.6 kB160 MHz, 1 run | ||||||||||
| micropython-zephyr-stock-prj-i2c | 83.6 kB160 MHz, 1 run | ||||||||||
| micropython-zephyr-stock-prj-spi | 83.7 kB160 MHz, 1 run | ||||||||||
| minimp3-bench | 33.3 kB1 run | 33.2 kB160 MHz, 1 run | |||||||||
| minmea | 6281 run | 3721 run | |||||||||
| msp430-fram-persist | 36532 MHz, 1 run | ||||||||||
| msp430-lpm3-wake | 26032 MHz, 1 run | ||||||||||
| msp430-uart-echo | 26832 MHz, 1 run | ||||||||||
| peanut-gb-code | 30.8 kB1 run | 30.8 kB1 run | 30.8 kB1 run | 30.8 kB1 run | |||||||
| peanut-gb-dmg-acid2 | 30.8 kB1 run | 30.8 kB1 run | 30.8 kB1 run | 30.8 kB1 run | |||||||
| peanut-gb-tobu | 30.8 kB1 run | 30.8 kB1 run | |||||||||
| peanut-gb-tobu-edumkii | 31.6 kB32 MHz, 1 run | ||||||||||
| peanut-gb-tobu-edumkii-160mhz-skip | 32.8 kB160 MHz, 1 run | ||||||||||
| pico-blink_simple | 2.1 kB32 MHz, 1 run | ||||||||||
| pico-bus_scan | 2.4 kB32 MHz, 1 run | ||||||||||
| pico-hello_adc | 2.4 kB32 MHz, 1 run | ||||||||||
| pico-hello_serial | 2.1 kB32 MHz, 1 run | ||||||||||
| pico-led_fade | 2.1 kB32 MHz, 1 run | ||||||||||
| renesas-adc | 53532 MHz, 1 run | ||||||||||
| renesas-adc_gpt_periodic_sampling | 4.7 kB32 MHz, 1 run | ||||||||||
| renesas-gpt | 58132 MHz, 1 run | ||||||||||
| renesas-iic_master-ft6336u | 51632 MHz, 1 run | ||||||||||
| renesas-sci_uart | 56732 MHz, 1 run | ||||||||||
| rust-uart-hello | 14832 MHz, 1 run | ||||||||||
| sharp128-hello | 5.5 kB32 MHz, 1 run | 3.1 kB32 MHz, 1 run | 5.5 kB32 MHz, 1 run | 3.7 kB160 MHz, 1 run | |||||||
| sharp128-hello-bands | 60924 MHz, 1 run | ||||||||||
| sharp128-player-pff | 77924 MHz, 1 run | ||||||||||
| three-ways-app-c2000ware | 1 kB120 MHz, 1 run | ||||||||||
| three-ways-app-tidrivers | 13.6 kB48 MHz, 1 run | 37.8 kB96 MHz, 1 run | 43.4 kB160 MHz, 1 run | ||||||||
| touch-games-bench | 3.3 kB1 run | 3.4 kB80 MHz | 3.3 kB1 run | ||||||||
| touch-games-play | 3.4 kB80 MHz, 1 run | ||||||||||
| ulisp-4.9a | 23.1 kB80 MHz, 1 run | 71.6 kB80 MHz, 1 run | 23.1 kB80 MHz, 1 run | ||||||||
| wasm3-v0.9.0 | 24.2 kB1 run | 24.5 kB1 run | |||||||||
| wasm3-v0.9.0-standard | 24.1 kB1 run | ||||||||||
| wasm3-v0.9.0-tiny | 11.1 kB1 run | ||||||||||
| xiaozhi | 189.6 kB160 MHz, 1 run | ||||||||||
| zx48-sram-testimage | 61 kB80 MHz, 1 run |
Sources
docs/experiments/2026-10-20-doom-smallest-ti-chip.md, docs/experiments/2026-10-21-mspm33c321a-qspi-dump-doom-data.md, portability/arduino/zephyr/README.md, portability/boosterpacks/edumkii/build.sh, portability/boosterpacks/sharp128/README.md, portability/three-ways/README.md, ports/chip8/README.md, ports/doom/target-cc35x1-whx/PANEL-WIRING.md, ports/llama2c/README.md, ports/micropython/zephyr-cc2340r5/README.md, ports/minimp3/README.md, ports/msp430-to-mspm0/fram-persist/PORT.md, ports/msp430-to-mspm0/lpm3-wake/PORT.md, ports/msp430-to-mspm0/uart-echo-lpm3/PORT.md, ports/rust-mspm0/README.md, ports/touch-games/README.md, ports/zx-spectrum/README.md
SDK examples built with GCC that ran on the board with no fault examples, higher is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 |
|---|---|---|---|
| gcc-12.2-zephyr-sdk | 8732 MHz, 1 run | 3180 MHz, 1 run | 6580 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
GCC-built SDK examples that faulted on the board examples, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 |
|---|---|---|---|
| gcc-12.2-zephyr-sdk | 032 MHz, 1 run | 080 MHz, 1 run | 080 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
GCC-built SDK examples whose pin or serial behavior matched the ticlang build examples, higher is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 | LP-MSPM0G5187 |
|---|---|---|---|
| gcc-12.2-zephyr-sdk | 2432 MHz, 1 run | 580 MHz, 1 run | 1580 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Flash used by the ported UART DMA ring-buffer echo (MaJerle stm32-usart-uart-dma-rx-tx) B, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|
| gcc-14.3-os | 4.7 kB48 MHz, 1 run | |||||||
| ticlang-5.1.1-o2 | 2.9 kB32 MHz, 1 run | 2.2 kB32 MHz, 1 run | 3 kB32 MHz, 1 run | 2.5 kB32 MHz, 1 run | 2.9 kB32 MHz, 1 run | 9.6 kB1 run | ||
| ticlang-5.1.1-o2-run3 | 2.6 kB32 MHz, 1 run | |||||||
| ticlang-5.1.1-o2-run4 | 2.5 kB32 MHz, 1 run | |||||||
| ticlang-5.1.1-o2-skill | 2.6 kB32 MHz, 1 run | |||||||
| (one way) |
Sources
Run records are in the notebook, not this copy.
Static RAM (data + bss) of the ported UART DMA ring-buffer echo B, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|
| gcc-14.3-os | 2.3 kB48 MHz, 1 run | |||||||
| ticlang-5.1.1-o2 | 63632 MHz, 1 run | 63232 MHz, 1 run | 63632 MHz, 1 run | 63232 MHz, 1 run | 63232 MHz, 1 run | 9.3 kB1 run | ||
| ticlang-5.1.1-o2-run3 | 63232 MHz, 1 run | |||||||
| ticlang-5.1.1-o2-run4 | 63232 MHz, 1 run | |||||||
| ticlang-5.1.1-o2-skill | 63232 MHz, 1 run | |||||||
| (one way) |
Sources
Run records are in the notebook, not this copy.
Packets per second answered for 500 back-to-back 5-byte packets, console UART pps, higher is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|
| baud-115200 | 2,248.532 MHz | 2,293.832 MHz | 2,245.532 MHz | 2,284.432 MHz | 2,259.448 MHz | 2,28432 MHz | 2,273.7 | |
| baud-115200-run3 | 2,279.332 MHz | |||||||
| baud-115200-run4 | 2,291.332 MHz | |||||||
| baud-115200-skill | 2,281.132 MHz | |||||||
| baud-921600 | 9,131.132 MHz | 979.332 MHz | 9,142.832 MHz | 9,012.832 MHz | 15,252.848 MHz | 6,285.232 MHz | 9,194.7 | |
| baud-921600-skill | 5,938.332 MHz | |||||||
| (one way) |
Sources
Run records are in the notebook, not this copy.
Counting lines read on the host after the banner from TI's UART console example count, higher is better
| Variant | LP-MSPM0G3519 |
|---|---|
| uart_tx_console_multibyte_repeated_fifo_dma | 632 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Replies lost out of 500 back-to-back packets count, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|
| baud-115200 | 032 MHz | 032 MHz | 032 MHz | 032 MHz | 048 MHz | 032 MHz | 0 | |
| baud-115200-run3 | 032 MHz | |||||||
| baud-115200-run4 | 032 MHz | |||||||
| baud-115200-skill | 032 MHz | |||||||
| baud-921600 | 032 MHz | 447 to 45232 MHz | 032 MHz | 032 MHz | 048 MHz | 152 to 18132 MHz | 0 | |
| baud-921600-skill | 164 to 23832 MHz | |||||||
| (one way) |
Sources
Run records are in the notebook, not this copy.
Median host-measured round trip of one packet to its 4-byte reply ms, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0C1104 | LP-MSPM0G3519 | LP-MSPM0G5187 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 | LP-MSPM33C321A | LP-AM13E230 |
|---|---|---|---|---|---|---|---|---|
| baud-115200 | 2.8532 MHz | 1.5332 MHz | 2.8632 MHz | 1.8532 MHz | 1.7248 MHz | 1.832 MHz | 1.41 | |
| baud-921600 | 28.532 MHz | 28.932 MHz | 28.732 MHz | 28.532 MHz | 0.9248 MHz | 28.632 MHz | 28.4 | |
| (one way) |
Sources
Run records are in the notebook, not this copy.
Flash used by the ported BLE gamepad report core (lemmingDev ESP32-BLE-Gamepad, generic mode) and its console glue B, lower is better
| Variant | LP-MSPM0G3519 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 |
|---|---|---|---|---|---|
| arduino-nimble-library | 702.1 kB160 MHz, 1 run | ||||
| core-arduino | 270.9 kB160 MHz, 1 run | ||||
| core-cl2000-o2-ram | 8.1 kB120 MHz, 1 run | ||||
| core-gcc-os | 3.6 kB16 MHz, 1 run | ||||
| core-ticlang | 9.9 kB32 MHz, 1 run | ||||
| core-ticlang-ble-hogp-build-only | 189.4 kB to 189.4 kB48 MHz |
Sources
Run records are in the notebook, not this copy.
Static RAM used by the same image (bss plus data, stack not counted) B, lower is better
| Variant | LP-MSPM0G3519 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 |
|---|---|---|---|---|---|
| arduino-nimble-library | 24 kB160 MHz, 1 run | ||||
| core-arduino | 15.5 kB160 MHz, 1 run | ||||
| core-cl2000-o2-ram | 1.5 kB120 MHz, 1 run | ||||
| core-gcc-os | 88016 MHz, 1 run | ||||
| core-ticlang | 2 kB32 MHz, 1 run | ||||
| core-ticlang-ble-hogp-build-only | 33.8 kB to 33.9 kB48 MHz |
Sources
Run records are in the notebook, not this copy.
Average time to build the HID report descriptor, 200 builds, on the board's own timer us, lower is better
| Variant | LP-MSPM0G3519 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 |
|---|---|---|---|---|---|
| arduino-nimble-library | 5 to 9160 MHz | ||||
| core-arduino | 14160 MHz | ||||
| core-cl2000-o2-ram | 8120 MHz, 1 run | ||||
| core-gcc-os | 38916 MHz, 1 run | ||||
| core-ticlang | 3532 MHz, 1 run | ||||
| core-ticlang-ble-hogp | 20748 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Average time to pack one 19-byte input report, 1000 packs, on the board's own timer us, lower is better
| Variant | LP-MSPM0G3519 | LP-EM-CC2340R5 | LAUNCHXL-F2800137 | NUCLEO-U083RC | ESP32-C6-DevKitC-1-N8 |
|---|---|---|---|---|---|
| arduino-nimble-library | 112 to 131160 MHz | ||||
| core-arduino | 1160 MHz | ||||
| core-cl2000-o2-ram | 5.64120 MHz, 1 run | ||||
| core-gcc-os | 4116 MHz, 1 run | ||||
| core-ticlang | 1732 MHz, 1 run | ||||
| core-ticlang-ble-hogp | 1748 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Flash used by the ported UART bootloader (ferenc-nemeth/stm32-bootloader), text plus data B, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| ticlang-5.1.1-os | 3.2 kB32 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Static RAM (data + bss, including the stack the linker reserves) of the ported UART bootloader B, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| ticlang-5.1.1-os | 4.1 kB32 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Host checks passed out of 6 for the ported UART bootloader (prompt, update, flash content, reset jump, bad CRC retry, abort and recovery) count, higher is better
| Variant | LP-MSPM0G3519 |
|---|---|
| fresh-agent-port | 632 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Seconds from the first Xmodem packet to the ACK of EOT, including the erase of the application area s, lower is better
| Variant | LP-MSPM0G3519 |
|---|---|
| 1024-byte-packets-4480-b | 1.5432 MHz |
| 128-byte-packets-1416-b | 1.1932 MHz |
Sources
Run records are in the notebook, not this copy.
DNS sinkhole answers a blocked name with the fixed address yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| fixed-a-record | yes1 run |
Sources
ports/dns-sinkhole/measure.py
Median DNS reply time for a blocked name, from a Mac on the same network ms, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| 71492-domains | 6 |
Sources
ports/dns-sinkhole/measure.py
95th percentile DNS reply time for a blocked name ms, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| 71492-domains | 20 |
Sources
ports/dns-sinkhole/measure.py
Median DNS reply time for an allowed name (forwarded to the upstream resolver) ms, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| 71492-domains | 70 |
Sources
ports/dns-sinkhole/measure.py
95th percentile DNS reply time for an allowed name ms, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| 71492-domains | 172 |
Sources
ports/dns-sinkhole/measure.py
DNS transaction IDs come from the chip hardware random generator yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| psa_generate_random | yes1 run |
Sources
ports/dns-sinkhole/firmware/dns_sinkhole.c
Flash taken by the blocklist table per 10,000 domains B, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| 40-bit-hash | 48.8 kB1 run |
Sources
ports/dns-sinkhole/gen_blocklist.py
Static RAM of the DNS blocker code B, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| full | 7301 run |
Sources
ports/dns-sinkhole/build.sh
Flash of the whole image with the blocklist table B, lower is better
| Variant | LP-EM-CC35X1 |
|---|---|
| 71492-domains | 1.5 MB1 run |
Sources
ports/dns-sinkhole/build.sh
Largest blocklist the application slot holds (link arithmetic) count, higher is better
| Variant | LP-EM-CC35X1 |
|---|---|
| flash-slot | 304,2981 run |
Sources
ports/dns-sinkhole/README.md
Expected console lines the MicroPython image printed in the Cortex-M0 emulator (host only) count, higher is better
| Variant | LP-MSPM0G3507 | LP-MSPM0G3519 |
|---|---|---|
| full-unicorn-cortex-m0 | 111 run | |
| min-unicorn-cortex-m0 | 71 run | 71 run |
Sources
Run records are in the notebook, not this copy.
MicroPython REPL banner on the real UART yes/no
| Variant | LP-MSPM0G3507 | LP-MSPM0G3519 |
|---|---|---|
| full | yes80 MHz, 1 run | |
| min |
Sources
ports/micropython/README.md
machine.Pin toggle read back on the pin yes/no
| Variant | LP-MSPM0G3519 |
|---|---|
| full |
Sources
ports/micropython/README.md
Pystone iterations per second at 80 MHz iter/s, higher is better
| Variant | LP-MSPM0G3519 |
|---|---|
| full |
Sources
ports/micropython/README.md
The data file the port reads in place hashes to the expected SHA-1 at boot yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| doom-s3-wad-xip | yes160 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Checksum of the first 400 rendered frames equals the reference build yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| doom-demo1 | yes160 MHz, 1 run |
| doom-demo2 | |
| doom-demo3 | no160 MHz, 1 run |
| doom-whx-attract | yes160 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Frames per second of a ported engine running a timedemo, no screen output fps, higher is better
| Variant | LP-EM-CC35X1 |
|---|---|
| doom-demo1 | 61.5160 MHz |
| doom-demo3 | 42.6160 MHz, 1 run |
| doom-whx-all-after400 | 22.5160 MHz, 1 run |
| doom-whx-crc-every-frame | 20.3160 MHz, 1 run |
| doom-whx-panel | |
| doom-whx-xip-fast-ram | 36.7160 MHz, 1 run |
| doom-whx-xip-fast-ram-o2 | 39.2160 MHz, 1 run |
| doom-whx-xip-tcm-statics-only | 34.5160 MHz, 1 run |
Sources
docs/experiments/2026-10-20-doom-smallest-ti-chip.md, ports/doom/target-cc35x1-whx/PANEL-WIRING.md
A byte sent over the serial port reaches the firmware (demo select) yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| doom | no160 MHz |
Sources
Run records are in the notebook, not this copy.
Disk used by downloaded crates and one release build MB, lower is better
| Variant | LP-MSPM0L1306 |
|---|---|
| embassy-cache | 23132 MHz, 1 run |
Sources
ports/rust-mspm0/README.md
A recorded demo plays to its end on the board yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| doom-whx-demo1 | yes160 MHz, 1 run |
| doom-whx-demo2 | yes160 MHz, 1 run |
| doom-whx-demo3 | yes160 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
CRC chain over all frames of a run equals the emulator run yes/no
| Variant | LP-EM-CC35X1 |
|---|---|
| doom-whx-attract | yes160 MHz, 1 run |
| doom-whx-o2-all-frames | yes160 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Disk used by the Rust toolchain for the target MB, lower is better
| Variant | LP-MSPM0L1306 |
|---|---|
| rustup-minimal | 60232 MHz, 1 run |
Sources
ports/rust-mspm0/README.md
WebAssembly interpreter slowdown against the same C (fib 20, instruction counts) x, lower is better
| Variant | LP-MSPM0G3519 | LP-MSPM33C321A |
|---|---|---|
| wasm3-v0.9.0 | 37.1 calc. | 27.6 calc. |
| wasm3-v0.9.0-board | 43.580 MHz, 1 run |
Sources
ports/wasm3/README.md
WebAssembly interpreter slowdown against the same C (20k-iteration loop, instruction counts) x, lower is better
| Variant | LP-MSPM0G3519 | LP-MSPM33C321A |
|---|---|---|
| wasm3-v0.9.0 | 18.6 calc. | 21 calc. |
| wasm3-v0.9.0-board | 28.980 MHz, 1 run |
Sources
ports/wasm3/README.md
Stored count survives a software reset storm yes/no
| Variant | LP-MSPM0L1306 | LP-EM-CC35X1 |
|---|---|---|
| msp430-fram-persist | yes32 MHz, 1 run | |
| wifi-credentials-nvocmp |
Sources
ports/wifi-provisioning-ble/README.md
Stored count survives a program load that leaves the data sector alone yes/no
| Variant | LP-MSPM0L1306 |
|---|---|
| msp430-fram-persist | yes32 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Stored count survives power removed yes/no
| Variant | LP-MSPM0L1306 |
|---|---|
| msp430-fram-persist | yes32 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Time to store one word in non-volatile memory us, lower is better
| Variant | LP-MSPM0L1306 |
|---|---|
| msp430-fram-persist | 5632 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Time to erase the flash sector that holds the stored data us, lower is better
| Variant | LP-MSPM0L1306 | LP-MSPM0G3519 |
|---|---|---|
| msp430-fram-persist | 1,98632 MHz, 1 run | |
| zephyr-flash-driver | 2,625 to 2,62680 MHz |
Sources
Run records are in the notebook, not this copy.
Bytes of a burst echoed correctly while the chip sleeps between bytes bytes, higher is better
| Variant | LP-MSPM0L1306 |
|---|---|
| msp430-uart-echo-bus-standby0 | 19032 MHz, 1 run |
| msp430-uart-echo-lfclk-standby0 | 532 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Test programs or checks whose output on the board equals the host reference count, higher is better
| Variant | LP-MSPM0G3519 |
|---|---|
| chip8-test-suite-frame-buffer | 580 MHz, 1 run |
| zx48-screen-bytes-vs-host | 280 MHz, 1 run |
Sources
ports/chip8/tools/verify_board.py, ports/zx-spectrum/tools/verify_board.py
Interactive interpreter checks that pass on the board count, higher is better
| Variant | LP-MSPM0G5187 | LP-EM-CC2340R5 | LP-MSPM33C321A |
|---|---|---|---|
| micropython-zephyr-basic-heap20k | 648 MHz, 1 run | ||
| micropython-zephyr-stock-prj-gpio | 7160 MHz, 1 run | ||
| ulisp-4.9a | 1980 MHz |
Sources
ports/ulisp/tests/repl_check.py
Endless recursion ends in an error message and the next line still runs yes/no
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a | 180 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
LED pin changes seen by a pin read while a program blinks it count, higher is better
| Variant | LP-MSPM0G5187 |
|---|---|
| ulisp-4.9a-autoexec | 680 MHz, 1 run |
Sources
Run records are in the notebook, not this copy.
Restoring a board's saved flash image after a test (done, or waiting with the reason) yes/no
| Variant | LP-MSPM0C1104 | LP-EM-CC2340R5 | LP-CC1354P10-1 | LP-AM13E230 | LP-EM-CC2755P10 | LP-EM-CC35X1 |
|---|---|---|---|---|---|---|
| digital-lab-node-saci | 196 MHz, 1 run | |||||
| flash-1mb-ccfg-2kb | 11 run | |||||
| frl-ccs13 | 113.548 MHz, 1 run | |||||
| frl-main-and-ccfg | 148 MHz | |||||
| frl-toolbox-hashed-copy | 11 run | |||||
| frl-toolbox-reprogram | 56.9 | |||||
| main-restore-hex | ||||||
| oob-after-factory-reset | 124 MHz, 1 run | |||||
| oob-after-factory-reset-3 | 124 MHz, 1 run | |||||
| oob-after-factory-reset-4 | 124 MHz, 1 run |
Sources
docs/frl.md, portability/boosterpacks/audio/tools/am13_algos_quiet.py
What is left to run, per board
LP-MSPM0G3507 56 of 301 tests measured
Could work Loop rate with 20 percent of the period free (computed, superseded)
Dhrystone 2.1; 256-point complex FFT; Minimal tasks that fit
Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration; Energy per occupancy inference; The part works on this board from this repo's driver; MicroPython REPL banner on the real UART
LP-MSPM0L1306 88 of 265 tests measured
Could work Loop rate with 20 percent of the period free (computed, superseded)
n/a Hardware AES against software (ratio at one message size); DAC to ADC loop error; Energy per BLE connection (BlueJoule job); Energy per radio transmit event (one advertisement or one packet)
Not for this chip Vendor AI example, one inference
Energy per occupancy inference; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; Energy per ADC sample at 1 ksps from sleep; Energy per 1 kB flash write
LP-MSPM0C1104 34 of 213 tests measured
Not for this chip CoreMark; CoreMark per MHz; Dhrystone 2.1; 256-point complex FFT
Not for this chip One step of frl's connect ladder reaches the chip on its own (frl identify --connect-step)
n/a sin plus cos; Divide; Hardware AES against software (ratio at one message size); DAC to ADC loop error
Not for this chip Zephyr upstream support
Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration
LP-MSPM0G3519 121 of 301 tests measured
Could work Touch to changed pixel (computed from measured parts, or measured with a real finger); Interpreter speed divided by the pace a typical program needs; Mean CPU cycles to encode one 10 ms LC3 frame (value is the mean; the note holds the worst frame); Mean CPU cycles to decode one 10 ms LC3 frame
Not for this chip openssl speed, EVP, 8 KB blocks
Dominant frequency the pack microphone hears from a DAC8311 test tone (1000 Hz expected; about 60 Hz is the silent mains floor); Pystone iterations per second at 80 MHz
Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration; Active current per MHz running CoreMark (slope between two clocks); Lightest sleep, CPU off, clocks on (SLEEP); STOP-class mode, low-speed clock kept; Deepest mode, RAM lost, pin wake; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; Energy per ADC sample at 1 ksps from sleep; Energy per 1 kB flash write; machine.Pin toggle read back on the pin; MicroPython: a finger drag is tracked on screen (a person looked); Serial console shows the program banner and a running count; A finger on the panel pad reaches the program as a key press; A finger on the touch keyboard reaches the program as a typed character
LP-MSPM0G5187 103 of 278 tests measured
Could work NPU time against the same graph as NNC CPU code, or against hand-written C; Signal to error ratio of the 8-bit graph against the float reference
Not for this chip ML-DSA-44 sign (FIPS 204), mean over 100 messages; openssl speed, EVP, 8 KB blocks
n/a DAC to ADC loop error; Dominant frequency the pack microphone hears from a DAC8311 test tone (1000 Hz expected; about 60 Hz is the silent mains floor)
Energy per block on the NPU against the CPU; Streaming with the taps-1 overlap carried between blocks works; Share of CPU time left free while the NPU runs a block; The same graph on the AM13E230; Repeat runs without a reflash; The Lisp interpreter reads an ADC channel; The Lisp interpreter saves its workspace to flash and restores it
Not for this chip Zephyr upstream support
Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration; Active current per MHz running CoreMark (slope between two clocks); Lightest sleep, CPU off, clocks on (SLEEP); STOP-class mode, low-speed clock kept; Deepest mode, RAM lost, pin wake; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; Days on a CR2032 (225 mAh) at the reference duty cycle: wake once a minute, 50 ms active at top clock, deepest sleep with RAM kept between; The part works on this board from this repo's driver
LP-EM-CC2340R5 80 of 305 tests measured
Could work Loop rate with 20 percent of the period free (computed, superseded)
n/a Hardware CRC against a table; DAC to ADC loop error
Fastest clean UART loopback; Vendor AI example, one inference; Packet loss over one hour; Vendor examples that build from a terminal
Not for this chip The part works on this board from this repo's driver
Time on air for one packet; Charge per radio event at 3.0 V; Average current at one event per 1000 ms, 3.0 V; Distance at which packet error rate stays under 1%; Deepest sleep with RAM kept (STANDBY-class); Energy per BLE connection (BlueJoule job); Energy per CoreMark iteration; Energy per occupancy inference; Active current per MHz running CoreMark (slope between two clocks); Lightest sleep, CPU off, clocks on (SLEEP); STOP-class mode, low-speed clock kept; Deepest mode, RAM lost, pin wake; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; Energy per ADC sample at 1 ksps from sleep; Energy per 1 kB flash write; Energy per radio transmit event (one advertisement or one packet); Days on a CR2032 (225 mAh) at the reference duty cycle: wake once a minute, 50 ms active at top clock, deepest sleep with RAM kept between; Button press on a Bluetooth LE HID device to the host's action (a media key changing the player), median of 20
LP-CC1354P10-1 65 of 305 tests measured
n/a Hardware CRC against a table
Blink example build time; Blink flash time; DAC to ADC loop error; Fastest clean UART loopback; Vendor AI example, one inference; Payload throughput board to board; BLE echo round trip, 20 bytes; Over-the-air update completed; Examples run with no crash; Loop rate with 20 percent of the period free (computed, superseded); ECDH P-256 shared secret (the classical step ML-KEM replaces)
Not for this chip Zephyr upstream support
Time on air for one packet; Charge per radio event at 3.0 V; Average current at one event per 1000 ms, 3.0 V; Distance at which packet error rate stays under 1%; Deepest sleep with RAM kept (STANDBY-class); Energy per BLE connection (BlueJoule job); Energy per CoreMark iteration; Energy per occupancy inference; Active current per MHz running CoreMark (slope between two clocks); Lightest sleep, CPU off, clocks on (SLEEP); STOP-class mode, low-speed clock kept; Deepest mode, RAM lost, pin wake; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; Energy per ADC sample at 1 ksps from sleep; Energy per 1 kB flash write; Energy per radio transmit event (one advertisement or one packet); Days on a CR2032 (225 mAh) at the reference duty cycle: wake once a minute, 50 ms active at top clock, deepest sleep with RAM kept between
LAUNCHXL-F2800137 64 of 261 tests measured
Could work Loop rate with 20 percent of the period free (computed, superseded)
n/a Hardware AES against software (ratio at one message size); Hardware CRC against a table
Box or plug-in to a changed blink
Not for this chip Zephyr upstream support; RTOS task switch round trip; Minimal tasks that fit
DAC to ADC loop error
NUCLEO-G071RB 0 of 278 tests measured
NUCLEO-U083RC 44 of 278 tests measured
Not for this chip DAC to ADC loop error; Fastest clean UART loopback
n/a Energy per BLE connection (BlueJoule job); Energy per radio transmit event (one advertisement or one packet)
BitNetMCU handwritten digit, one inference; Vendor AI example, one inference; Examples that build after moving to another chip
Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration; Energy per occupancy inference; Active current per MHz running CoreMark (slope between two clocks); Lightest sleep, CPU off, clocks on (SLEEP); STOP-class mode, low-speed clock kept; Deepest mode, RAM lost, pin wake; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; Energy per ADC sample at 1 ksps from sleep; Energy per 1 kB flash write; Days on a CR2032 (225 mAh) at the reference duty cycle: wake once a minute, 50 ms active at top clock, deepest sleep with RAM kept between; Digital-power PID loop, trigger to duty write (mean); Flash used by a hobby part's driver plus its demo; RAM used by a hobby part's driver plus its demo; The part works on this board from this repo's driver; SSD1306 OLED full-frame time (128x64, I2C); Highest control-loop trigger rate with no missed period in 1,000; Control-loop CPU load, interrupt entry to exit, as a percent of a 100 kHz period; Digital-power loop worst case, trigger to duty write, as a percent of a 100 kHz period; Digital-power loop jitter, worst minus best trigger to duty write; Highest digital-power loop rate with no missed period in 1,000; Digital-power loop CPU load, interrupt entry to exit, as a percent of a 100 kHz period; ML-KEM-768 key generation (FIPS 203); ML-KEM-768 encapsulation; ML-KEM-768 decapsulation; ML-DSA-44 key generation (FIPS 204); ML-DSA-44 sign (FIPS 204), mean over 100 messages; ML-DSA-44 verify; Peak stack of one post-quantum call, by painting; SHA-256 of 1 kB, cycles per byte
FRDM-MCXA153 26 of 278 tests measured
n/a Hardware AES against software (ratio at one message size)
PWM or timer trigger to first line of ISR; Trigger, ADC, control step, new PWM value (mean)
DAC to ADC loop error; Fastest clean UART loopback; Deepest sleep with RAM kept (STANDBY-class); Examples that build after moving to another chip; Active current per MHz running CoreMark (slope between two clocks)
Raspberry Pi Pico 2 H 24 of 278 tests measured
Not for this chip Hardware AES against software (ratio at one message size)
DAC to ADC loop error; Fastest clean UART loopback; Examples run with no crash
ESP32-C6-DevKitC-1-N8 36 of 290 tests measured
n/a Hardware CRC against a table
Flash used by the ported UART DMA ring-buffer echo (MaJerle stm32-usart-uart-dma-rx-tx); Static RAM (data + bss) of the ported UART DMA ring-buffer echo; Packets per second answered for 500 back-to-back 5-byte packets, console UART; Replies lost out of 500 back-to-back packets; Median host-measured round trip of one packet to its 4-byte reply
LP-MSPM33C321A 138 of 301 tests measured
Could work WebAssembly interpreter slowdown against the same C (fib 20, instruction counts); WebAssembly interpreter slowdown against the same C (20k-iteration loop, instruction counts); CPU cycles per instruction of a whole program, from its time and an emulator instruction count
Not for this chip openssl speed, EVP, 8 KB blocks
Dominant frequency the pack microphone hears from a DAC8311 test tone (1000 Hz expected; about 60 Hz is the silent mains floor); Cycles per frame of an audio algorithm on the chip (DWT counter); An audio algorithm runs live on the BoosterPack (heard or read back); The S2 button starts a new story on the screen; The decoded clip plays out of a DAC or speaker
DAC to ADC loop error; Fastest clean UART loopback; Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration; Energy per occupancy inference; Power-up to SPI screen initialized and on; Active current per MHz running CoreMark (slope between two clocks); Lightest sleep, CPU off, clocks on (SLEEP); STOP-class mode, low-speed clock kept; Deepest mode, RAM lost, pin wake; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; Days on a CR2032 (225 mAh) at the reference duty cycle: wake once a minute, 50 ms active at top clock, deepest sleep with RAM kept between
LP-AM13E230 111 of 278 tests measured
Interrupt pend to first line of handler; GPIO toggle; Fastest ADC with DMA; Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration; Energy per occupancy inference; Active current per MHz running CoreMark (slope between two clocks); Deepest mode, RAM lost, pin wake; Cycles per frame of an audio algorithm on the chip (DWT counter); An audio algorithm runs live on the BoosterPack (heard or read back); LED pin toggles under the Rust build (probe GPIO read, changes counted); Restoring a board's saved flash image after a test (done, or waiting with the reason)
LP-EM-CC2755P10 66 of 305 tests measured
Not for this chip openssl speed, EVP, 8 KB blocks
n/a Hardware CRC against a table; DAC to ADC loop error
Digital-power PID loop, trigger to duty write (mean); Digital-power loop worst case, trigger to duty write, as a percent of a 100 kHz period; Digital-power loop jitter, worst minus best trigger to duty write; Highest digital-power loop rate with no missed period in 1,000; Digital-power loop CPU load, interrupt entry to exit, as a percent of a 100 kHz period
Not for this chip Vendor AI example, one inference
LP-EM-CC35X1 64 of 305 tests measured
Not for this chip openssl speed, EVP, 8 KB blocks; RAM the software H.264 decode needs: decoder heap peak plus input buffer plus RGB565 strip
Not for this chip Embench programs that fit and pass; PWM or timer trigger to first line of ISR; Trigger, ADC, control step, new PWM value (mean)
Data-cache hit and miss counters readable from the application; External flash read mode or clock changeable from the application
Not for this chip Hardware CRC against a table; Zephyr upstream support
Interrupt pend to first line of handler; GPIO toggle; 256-point complex FFT; sin plus cos; Divide; Hardware AES against software (ratio at one message size); RTOS task switch round trip; Minimal tasks that fit; DAC to ADC loop error; One field-oriented control step; Setpoint or state change still works with the internet cable pulled; Controllers that hold one device at once and all still control it; Setup again after a reflash and factory reset, per platform; Deepest sleep with RAM kept (STANDBY-class); Active current per MHz running CoreMark (slope between two clocks); Lightest sleep, CPU off, clocks on (SLEEP); STOP-class mode, low-speed clock kept; Deepest sleep with a 1 s timer wake and nothing to do; Deepest sleep with RAM kept to first instruction; AES-128 CBC encrypt of 1 kB in software (tiny-AES-c); Control loop worst case, trigger to new PWM value, as a percent of a 100 kHz period; Control loop jitter, worst minus best trigger to new PWM value; Highest control-loop trigger rate with no missed period in 1,000; Control-loop CPU load, interrupt entry to exit, as a percent of a 100 kHz period; AES-128 in hardware, cycles per byte; AES-128 in software (tiny-AES-c), cycles per byte; ML-KEM-768 key generation (FIPS 203); ML-KEM-768 encapsulation; ML-KEM-768 decapsulation; ML-DSA-44 key generation (FIPS 204); ML-DSA-44 sign (FIPS 204), mean over 100 messages; ML-DSA-44 verify; Peak stack of one post-quantum call, by painting; Flash used by the post-quantum code in a linked image; SHA-256 of 1 kB, cycles per byte; ECDSA P-256 sign of a 32-byte digest; ECDSA P-256 verify; ECDH P-256 shared secret (the classical step ML-KEM replaces); Software H.264 decode (baseline profile, no video hardware): frames per second; Stored count survives a software reset storm; Whether a ported display driver brought the panel up (yes or no)
LAUNCHXL-F28P65X 12 of 138 tests measured
Box or plug-in to a changed blink; Blink flash time
IWRL6432BOOST 7 of 99 tests measured
Not for this chip Box or plug-in to a changed blink; Zephyr upstream support
CoreMark; Host-side code for a radio or sensor: flash and RAM on this host; Box open to the first valid radar frame parsed on the Mac (TI image, a custom parser); Average power against update rate; Deep-sleep power with memory retained; Reset release to the first frame, application booting from flash; Raw ADC samples streamed over SPI to a host, frames lost; Hardware accelerator FFT against the Cortex-M4F software FFT; Zone on-events in an empty room; Cue to a zone lighting (detect) or clearing (clear), from a timed walk-through; Radar frame to Home Assistant state change
LP-AM263P 28 of 168 tests measured
n/a Blink image flash
Minimal tasks that fit
Fastest ADC with DMA; DAC to ADC loop error; Fastest clean UART loopback; Deepest sleep with RAM kept (STANDBY-class); Energy per CoreMark iteration; Active current per MHz running CoreMark (slope between two clocks)
SK-TDA4VM 31 of 212 tests measured
n/a Vendor examples that build from a terminal
Box or plug-in to a changed blink; Embench programs that fit and pass; OpenGL ES on the GPU: kmscube or glmark2 frames per second
TMDS62LEVM (AM62L EVM) 37 of 85 tests measured
Dhrystone 2.1
Not for this chip AES-128 in hardware, cycles per byte
The rows as CSV, one file per board: AM13E230, AM263P, CC1354P10-1, CC2340R5, CC2755P10, CC35X1, ESP32-C6 (Espressif), F2800137, F28P65X, FRDM-MCXA153 (NXP), IWRL6432BOOST, MSPM0C1104, MSPM0G3507, MSPM0G3519, MSPM0G5187, MSPM0L1306, MSPM33C321A, NUCLEO-U083RC (ST), Pico 2 (RPi), SK-TDA4VM, TMDS62LEVM (AM62L EVM).
Method
Each test is a program that reports its own cycle count or time, and a script reads it back from the chip. A benchmark that checks its own answer, such as CoreMark's CRC, the AES known answer or a model's test vectors, gives no number when the check fails. Three runs give a median. A row marked 1 run is a single run, which can be off by whatever the Mac, the supply or the radio did that minute: cycle counts from a self-checking benchmark barely move, wall-clock times and radio latencies move a lot. Every number is a row in the results store with its source file, date, clock and build. The full rules are in the method above.
Calculated numbers. A number read from a board is measured. These are worked out from other numbers, and each says so where it appears:
- Interrupt response in nanoseconds: the best-case cycle count divided by the clock. The chart note says so; the cycles are measured.
- The outlined bars in the radio RAM chart, marked "calculated" in its legend: the chip's RAM plus the bytes the linker said a stack that did not link was short.
- Table cells marked "calc.", computed from other rows:
- CPU cycles per instruction of a whole program, from its time and an emulator instruction count
- Days on a CR2032 (225 mAh) at the reference duty cycle: wake once a minute, 50 ms active at top clock, deepest sleep with RAM kept between
- Driver current-sense output, cached ADC sample (not a calibrated phase current)
- Emulated machine speed as per mille of the real machine, 159 meaning 15.9 percent
- Flash used by an outside project ported to the board, with its shim
- Host-side code for a radio or sensor: flash and RAM on this host
- Interpreter speed divided by the pace a typical program needs
- LVGL demo screen refreshes per second
- Loop rate with 20 percent of the period free (computed, superseded)
- Mean CPU cycles to decode one 10 ms LC3 frame
- Mean CPU cycles to encode one 10 ms LC3 frame (value is the mean; the note holds the worst frame)
- NPU time against the same graph as NNC CPU code, or against hand-written C
- RAM left after linking a stack
- RAM used by an outside project ported to the board, with its shim
- Signal to error ratio of the 8-bit graph against the float reference
- Tokens per second of a small language model
- Touch to changed pixel (computed from measured parts, or measured with a real finger)
- WebAssembly interpreter slowdown against the same C (20k-iteration loop, instruction counts)
- WebAssembly interpreter slowdown against the same C (fib 20, instruction counts)
Ranks. Control loop and interrupt ranks use the times drawn in the charts. Boards whose times match at the digits shown share a rank: two boards tied for third both read 3 of 11, and the next is 5.
Probe floors. Current figures come from the kit's own EnergyTrace probe. It reads about 1.5 mA on the MSPM0 L1306 with the chip shut down, so every chip figure on that board is the raw reading minus that floor, and one probe count is about 0.1 mA. Very small currents sit at the edge of what the probe can resolve.
Model names. The AI models carry plain names on this site. The ids behind them stay in the data and in the hover text:
| Name on this site | Model id in the data |
|---|---|
| Room occupancy: tiny | occ_cnn_500 |
| Room occupancy: small | occ_cnn_2k |
| Room occupancy: medium | occ_cnn_8k |
| Room occupancy: large | occ_cnn_30k |
| Object detection, small (lite) | yolox-nano-lite-416 |
| Object detection, small | yolox-nano-416 |
| Face detection | yolox-s-lite-widerface-640 |
| Object detection, medium | yolox-s-lite-640 |
| Pose estimation | yolox-s-pose-640 |
| Image classification (RegNetX 200MF) | regnetx-200mf-224 |
| Object detection (SSD-Lite MobileNetV2) | ssd-lite-mobv2-512 |
| Segmentation (DeepLabV3-Lite) | deeplabv3lite-mobv2-ade20k-512 |
| Segmentation (DeepLabV3-Lite, 768x432) | deeplabv3lite-mobv2-robokit-768x432 |
Coverage: tests measured per board
Questions this page raises
- Which numbers can I compare straight across boards?
- Cycle counts and per-MHz scores from the same build at the same compiler level: CoreMark per MHz with
ticlang-bare-o3, interrupt latencybare, the model cells in the "fastest plain-C" chart. Milliseconds and absolute CoreMark depend on the clock, so divide by the MHz first. Rows built a different way on each board are not like for like. - Why is the MSPM0 L1306's sleep current 6.2 µA when the data sheet says 1.0?
- The board's own probe reads 1.500 mA with the chip shut down, and that is subtracted from every figure. The 6.2 µA is a mean of 36k samples, at the edge of what the probe can resolve, so the probe is the likely cause of the gap.
- Why is the MSPM0 L1306's control step so much slower than the LAUNCHXL-F2800137's?
- In clock cycles it is about 30 to 45 times (a mean of 12,851 against 286 to 439). In time it is about 108 to 167 times (401.6 µs against 2.4 to 3.7 µs), because the L1306 runs at 32 MHz and the F2800137 at 120 MHz. The Cortex-M0+ has no floating-point unit, so the same C runs in software float there, while the C28x has an FPU. The F2800137's own software-against-TMU rows show its trig unit adds another 2 times on top.
- What does "does not fit" mean, and why does it have a number?
- The program linked but needed more RAM than the chip has; the number is how many bytes short, from the linker. It is a build result for one configuration built with local changes, not a measurement on the board.
- Why are some radio rows "failed"?
- The CC2340R5's Zigbee update from Home Assistant starts and then stops: the best of nine transfers reached 88.74%. Every long transfer ended on lost block replies, which points at the radio environment. Its Bluetooth on TI's Zephyr fork boots but sent nothing on the air. Each has a write-up on its project page.
- Why do the two Zigbee "command latency" cells differ by 16 times?
- They measure different things: a light being switched (CC2340R5, 95 ms) and a sleepy sensor being read, which waits for the sensor's 3 s poll (CC1354P10-1, 1,574 ms). The difference is in what each row times, not in the chips.
- Why is the STOP0 current not the data sheet's 151 µA?
- The data sheet measures STOP0 with the main oscillator slowed to 4 MHz. The program left it at 32 MHz, so the 329 µA is a different configuration, not a worse chip.
- Why is the LAUNCHXL-F2800137's CoreMark not a score?
- CoreMark assumes an 8-bit byte; the C28x core's smallest addressable unit is 16 bits, so three of CoreMark's four self-checks fail unpatched. The patched build runs the same work but is not a certified score. Details in
c2000-launchpad/bench/general-benchmarks.md. - Why does CoreMark per MHz on the MSPM0 G3507 drop from 32 MHz to 80 MHz?
- Flash cannot answer at 80 MHz without the core waiting; it needs two wait states per flash read, so each iteration takes about 7% more cycles. Code copied to RAM would not pay that.
Sources
data/results/<board>.csv: one row per number, with its source file, date, clock and conditionsdata/benchmark-suite.json: the test list, units and which way is betterdata/boards.csv: the boards, their cores, clocks and RAM- Toolchain for most rows: Intel Mac, macOS 15.7, CCStudio 21.0.1, TI Arm Clang 5.1.1, Zephyr 4.4.2. The variant on each row names anything different.
- Last measurement 2026-11-02. 1 kB = 1,024 bytes.