From 1f9208dc6681c286949ce81b1642cf0fe0e2500a Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Fri, 1 Feb 2019 10:49:32 -0500 Subject: [PATCH] docs: Update benchmarks Signed-off-by: Kevin O'Connor --- docs/Debugging.md | 52 ++++++++++++++++++++++++----------------------- docs/Features.md | 25 ++++++++++++----------- 2 files changed, 40 insertions(+), 37 deletions(-) diff --git a/docs/Debugging.md b/docs/Debugging.md index bd637a4e..ee6539e0 100755 --- a/docs/Debugging.md +++ b/docs/Debugging.md @@ -283,10 +283,10 @@ config_stepper oid=2 step_pin=PA21 dir_pin=PC30 min_stop_interval=0 invert_step= finalize_config crc=0 ``` -The test was last run on commit `b161a69e` with gcc version +The test was last run on commit `9f3517fd` with gcc version `arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0`. The best single -stepper result is `SET ticks 207`, the best dual stepper result is -`SET ticks 205`, and the best three stepper result is `SET ticks 317`. +stepper result is `SET ticks 388`, the best dual stepper result is +`SET ticks 423`, and the best three stepper result is `SET ticks 636`. ### Duet Maestro step rate benchmark ### @@ -299,10 +299,10 @@ config_stepper oid=2 step_pin=PC26 dir_pin=PB4 min_stop_interval=0 invert_step=0 finalize_config crc=0 ``` -The test was last run on commit `8e0eb0d5` with gcc version +The test was last run on commit `9f3517fd` with gcc version `arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0`. The best single -stepper result is `SET ticks 72`, the best dual stepper result is `SET -ticks 73`, and the best three stepper result is `SET ticks 99`. +stepper result is `SET ticks 563`, the best dual stepper result is +`SET ticks 543`, and the best three stepper result is `SET ticks 683`. ### Duet Wifi step rate benchmark ### @@ -315,11 +315,11 @@ config_stepper oid=2 step_pin=PD8 dir_pin=PD13 min_stop_interval=0 invert_step=0 finalize_config crc=0 ``` -The test was last run on commit `34c3cb5c` with gcc version -`arm-none-eabi-gcc (15:5.4.1+svn241155-1) 5.4.1 20160919`. The best -single stepper result is `SET ticks 295`, the best dual stepper result -is `SET ticks 264`, and the best three stepper result is `SET ticks -282`. +The test was last run on commit `9f3517fd` with gcc version +`arm-none-eabi-gcc 7.3.1 20180622 (release) +[ARM/embedded-7-branch revision 261907]`. The best single stepper +result is `SET ticks 526`, the best dual stepper result is `SET ticks +524`, and the best three stepper result is `SET ticks 552`. ### Beaglebone PRU step rate benchmark ### @@ -349,10 +349,10 @@ config_stepper oid=2 step_pin=PA4 dir_pin=PB7 min_stop_interval=0 invert_step=0 finalize_config crc=0 ``` -The test was last run on commit `b161a69e` with gcc version +The test was last run on commit `9f3517fd` with gcc version `arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0`. The best single -stepper result is `SET ticks 41`, the best dual stepper result is `SET -ticks 48`, and the best three stepper result is `SET ticks 80`. +stepper result is `SET ticks 345`, the best dual stepper result is +`SET ticks 365`, and the best three stepper result is `SET ticks 606`. ### LPC176x step rate benchmark ### @@ -365,14 +365,14 @@ config_stepper oid=2 step_pin=P1.23 dir_pin=P1.18 min_stop_interval=0 invert_ste finalize_config crc=0 ``` -The test was last run on commit `b161a69e` with gcc version +The test was last run on commit `9f3517fd` with gcc version `arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0`. For the 100Mhz -LPC1768, the best single stepper result is `SET ticks 119`, the best -dual stepper result is `SET ticks 118`, and the best three stepper -result is `SET ticks 154`. The 120Mhz LPC1769 results were obtained by +LPC1768, the best single stepper result is `SET ticks 448`, the best +dual stepper result is `SET ticks 450`, and the best three stepper +result is `SET ticks 523`. The 120Mhz LPC1769 results were obtained by overclocking an LPC1768 to 120Mhz - the best single stepper result is -`SET ticks 140`, the best dual stepper result is `SET ticks 137`, and -the best three stepper result is `SET ticks 154`. +`SET ticks 525`, the best dual stepper result is `SET ticks 526`, and +the best three stepper result is `SET ticks 545`. ### SAMD21 step rate benchmark ### @@ -385,7 +385,7 @@ config_stepper oid=2 step_pin=PA17 dir_pin=PA21 min_stop_interval=0 invert_step= finalize_config crc=0 ``` -The test was last run on commit `b161a69e` with gcc version +The test was last run on commit `9f3517fd` with gcc version `arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0`. The best single stepper result is `SET ticks 277`, the best dual stepper result is `SET ticks 410`, and the best three stepper result is `SET ticks 664`. @@ -398,14 +398,16 @@ allocate_oids count=3 config_stepper oid=0 step_pin=PA22 dir_pin=PA20 min_stop_interval=0 invert_step=0 config_stepper oid=1 step_pin=PA22 dir_pin=PA21 min_stop_interval=0 invert_step=0 config_stepper oid=2 step_pin=PA22 dir_pin=PA19 min_stop_interval=0 invert_step=0 +config_stepper oid=3 step_pin=PA22 dir_pin=PA18 min_stop_interval=0 invert_step=0 finalize_config crc=0 ``` -The test was last run on commit `8cd83b4c` with gcc version +The test was last run on commit `9f3517fd` with gcc version `arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0` on a SAMD51G19A -micro-controller. The best single stepper result is `SET ticks 114`, -the best dual stepper result is `SET ticks 114`, and the best three -stepper result is `SET ticks 119`. +micro-controller. The best single stepper result is `SET ticks 516`, +the best dual stepper result is `SET ticks 520`, the best three +stepper result is `SET ticks 519`, and the best four stepper result is +`SET ticks 655`. ## Command dispatch benchmark ## diff --git a/docs/Features.md b/docs/Features.md index 5e7f9f9e..bc5cf81a 100755 --- a/docs/Features.md +++ b/docs/Features.md @@ -131,18 +131,19 @@ represent total number of steps per second on the micro-controller. | --------------------------- | ----------------- | ----------------- | | 16Mhz AVR | 151K | 100K | | 20Mhz AVR | 189K | 125K | -| Arduino Zero (ARM SAMD21) | 234K | 217K | -| STM32F103 | 333K | 300K | -| Arduino Due (ARM SAM3X8E) | 410K | 397K | -| SAM4S8C ARM | 455K | 455K | -| Smoothieboard (ARM LPC1768) | 487K | 487K | -| Smoothieboard (ARM LPC1769) | 584K | 584K | -| SAMD51 ARM | 630K | 630K | -| SAM4E8E ARM | 638K | 638K | +| Arduino Zero (SAMD21) | 234K | 217K | +| "Blue Pill" (STM32F103) | 395K | 356K | +| Arduino Due (SAM3X8E) | 397K | 396K | +| SAM4S8C | 527K | 527K | +| Smoothieboard (LPC1768) | 574K | 574K | +| Duet2 Wifi/Eth (SAM4E8E) | 652K | 652K | +| Smoothieboard (LPC1769) | 661K | 661K | | Beaglebone PRU | 680K | 680K | +| Adafruit Metro M4 (SAMD51) | 733K | 733K | On AVR platforms, the highest achievable step rate is with just one -stepper stepping. On the STM32F103, Arduino Zero, and Due, the highest -step rate is with two simultaneous steppers stepping. On the PRU, -SAMD51, SAM4S8C, SAM4E8E, and LPC176x the highest step rate is with -three simultaneous steppers. +stepper stepping. On the SAMD21, STM32F103, and SAM3X8E, the highest +step rate is with two simultaneous steppers stepping. On the SAM4S8C, +SAM4E8E, LPC176x, and PRU the highest step rate is with three +simultaneous steppers. On the SAMD51, the highest step rate is with +four simultaneous steppers.