Here's some very simple floating point tests, primary use here being to compare performance across boards. The speed difference here looks appropriate given the clock speeds of the two M4 boards. ALL running CircuitPython 5.3.1.
Feather M4 Express
- Code: Select all | TOGGLE FULL SIZE
Adafruit CircuitPython 5.3.1 on 2020-07-13; Adafruit Feather M4 Express with samd51j19
>>>
>>> import simple_benchmarks
>>> simple_benchmarks.run()
platform: MicroChip SAMD51
version: 3.4.0
modules: {'simple_benchmarks': <module 'simple_benchmarks' from 'simple_benchmarks.py'>}
001AdditionA: 1.511477s (330802.226067Hz)
002MultiplicationA: 1.517326s (329526.972771Hz)
003DivisionA: 1.584962s (315464.997292Hz)
>>> simple_benchmarks.run()
platform: MicroChip SAMD51
version: 3.4.0
modules: {'simple_benchmarks': <module 'simple_benchmarks' from 'simple_benchmarks.py'>}
001AdditionA: 1.511183s (330866.622925Hz)
002MultiplicationA: 1.517409s (329509.019852Hz)
003DivisionA: 1.584792s (315498.876572Hz)
CLUE (alpha hardware)
- Code: Select all | TOGGLE FULL SIZE
Adafruit CircuitPython 5.3.1 on 2020-07-13; Adafruit CLUE nRF52840 Express with nRF52840
>>>
>>> import simple_benchmarks
>>> simple_benchmarks.run()
platform: nRF52840
version: 3.4.0
modules: {'simple_benchmarks': <module 'simple_benchmarks' from 'simple_benchmarks.py'>}
001AdditionA: 3.610917s (138468.933105Hz)
002MultiplicationA: 3.594544s (139099.681854Hz)
003DivisionA: 3.706118s (134912.061691Hz)
>>> simple_benchmarks.run()
platform: nRF52840
version: 3.4.0
modules: {'simple_benchmarks': <module 'simple_benchmarks' from 'simple_benchmarks.py'>}
001AdditionA: 3.612694s (138400.876999Hz)
002MultiplicationA: 3.606740s (138629.317284Hz)
003DivisionA: 3.705397s (134938.311577Hz)
Circuit Playground Express (CPX)
- Code: Select all | TOGGLE FULL SIZE
Adafruit CircuitPython 5.3.1 on 2020-07-13; Adafruit CircuitPlayground Express with samd21g18
>>>
>>> import simple_benchmarks
>>> simple_benchmarks.run()
platform: Atmel SAMD21
version: 3.4.0
modules: {'simple_benchmarks': <module 'simple_benchmarks' from 'simple_benchmarks.py'>}
001AdditionA: 9.364471s (53393.297195Hz)
002MultiplicationA: 10.113869s (49437.060356Hz)
003DivisionA: 13.884789s (36010.622978Hz)
>>> simple_benchmarks.run()
platform: Atmel SAMD21
version: 3.4.0
modules: {'simple_benchmarks': <module 'simple_benchmarks' from 'simple_benchmarks.py'>}
001AdditionA: 9.364391s (53393.750191Hz)
002MultiplicationA: 10.113922s (49436.793327Hz)
003DivisionA: 13.884777s (36010.656357Hz)
Code is in https://github.com/kevinjwalters/circui ... chmarks.py