Skip to content

Conversation

aentinger
Copy link
Contributor

No description provided.

@aentinger aentinger added the type: enhancement Proposed improvement label Apr 27, 2021
@aentinger aentinger self-assigned this Apr 27, 2021
@codecov-commenter
Copy link

codecov-commenter commented Apr 27, 2021

Codecov Report

Merging #244 (621c1a3) into master (e5a6256) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #244   +/-   ##
=======================================
  Coverage   95.15%   95.15%           
=======================================
  Files          24       24           
  Lines         867      867           
=======================================
  Hits          825      825           
  Misses         42       42           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e5a6256...621c1a3. Read the comment docs.

@aentinger aentinger marked this pull request as ready for review April 28, 2021 08:09
@arduino-libraries arduino-libraries deleted a comment from github-actions bot Apr 28, 2021
@arduino-libraries arduino-libraries deleted a comment from github-actions bot Apr 28, 2021
@arduino-libraries arduino-libraries deleted a comment from github-actions bot Apr 28, 2021
@facchinm
Copy link
Contributor

I think the big overhead could be due to pow() or std::min. Can we use arduino's min or a simplified version of pow() based on bitshift?

@arduino-libraries arduino-libraries deleted a comment from github-actions bot Apr 28, 2021
@arduino-libraries arduino-libraries deleted a comment from github-actions bot Apr 28, 2021
@aentinger
Copy link
Contributor Author

Hi @facchinm 👋
I was wondering too why such a large increase of flash consumption happened. Good catch! I've replaced it with bit-shift mechanics although I don't particularly like that due to readability. However, the reduction in flash speaks for itself 👍

With regards to std::min - that was a workaround to allow compilation on all platforms, I've also dropped it (the whole commit).

@github-actions
Copy link

Memory usage change @ c543d14

Board flash % RAM for global variables %
arduino:mbed:envie_m4 🔺 +128 - +192 +0.01 - +0.02 🔺 +8 - +8 0.0 - 0.0
arduino:mbed:envie_m7 🔺 +184 - +192 +0.02 - +0.02 🔺 +8 - +8 0.0 - 0.0
arduino:mbed_nano:nanorp2040connect 🔺 0 - +104 0.0 - 0.0 🔺 0 - +8 0.0 - 0.0
arduino:samd:mkr1000 🔺 +152 - +152 +0.06 - +0.06 🔺 +8 - +8 +0.02 - +0.02
arduino:samd:mkrgsm1400 🔺 +160 - +160 +0.06 - +0.06 🔺 +8 - +8 +0.02 - +0.02
arduino:samd:mkrnb1500 🔺 +152 - +152 +0.06 - +0.06 🔺 +8 - +8 +0.02 - +0.02
arduino:samd:mkrwan1300 0 - 0 0.0 - 0.0 0 - 0 0.0 - 0.0
arduino:samd:mkrwifi1010 🔺 0 - +152 0.0 - +0.06 🔺 0 - +8 0.0 - +0.02
arduino:samd:nano_33_iot 🔺 0 - +152 0.0 - +0.06 🔺 0 - +8 0.0 - +0.02
esp32:esp32:esp32 🔺 +164 - +164 +0.01 - +0.01 🔺 +8 - +8 0.0 - 0.0
esp8266:esp8266:huzzah 🔺 +156 - +172 +0.01 - +0.02 🔺 +52 - +52 +0.06 - +0.06
Click for full report table
Board examples/ArduinoIoTCloud-Advanced
flash
% examples/ArduinoIoTCloud-Advanced
RAM for global variables
% examples/ArduinoIoTCloud-Basic
flash
% examples/ArduinoIoTCloud-Basic
RAM for global variables
% examples/utility/ArduinoIoTCloud_Travis_CI
flash
% examples/utility/ArduinoIoTCloud_Travis_CI
RAM for global variables
% examples/utility/Provisioning
flash
% examples/utility/Provisioning
RAM for global variables
% examples/utility/SelfProvisioning
flash
% examples/utility/SelfProvisioning
RAM for global variables
%
arduino:mbed:envie_m4 128 0.01 8 0.0 192 0.02 8 0.0 184 0.02 8 0.0 192 0.02 8 0.0
arduino:mbed:envie_m7 192 0.02 8 0.0 184 0.02 8 0.0 184 0.02 8 0.0 192 0.02 8 0.0
arduino:mbed_nano:nanorp2040connect 104 0.0 8 0.0 104 0.0 8 0.0 104 0.0 8 0.0 96 0.0 8 0.0 0 0.0 0 0.0
arduino:samd:mkr1000 152 0.06 8 0.02 152 0.06 8 0.02 152 0.06 8 0.02 152 0.06 8 0.02
arduino:samd:mkrgsm1400 160 0.06 8 0.02 160 0.06 8 0.02 160 0.06 8 0.02 160 0.06 8 0.02
arduino:samd:mkrnb1500 152 0.06 8 0.02 152 0.06 8 0.02 152 0.06 8 0.02 152 0.06 8 0.02
arduino:samd:mkrwan1300 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
arduino:samd:mkrwifi1010 152 0.06 8 0.02 152 0.06 8 0.02 152 0.06 8 0.02 144 0.05 8 0.02 0 0.0 0 0.0
arduino:samd:nano_33_iot 152 0.06 8 0.02 152 0.06 8 0.02 152 0.06 8 0.02 152 0.06 8 0.02 0 0.0 0 0.0
esp32:esp32:esp32 164 0.01 8 0.0 164 0.01 8 0.0 164 0.01 8 0.0
esp8266:esp8266:huzzah 156 0.01 52 0.06 172 0.02 52 0.06 156 0.01 52 0.06
Click for full report CSV
Board,examples/ArduinoIoTCloud-Advanced<br>flash,%,examples/ArduinoIoTCloud-Advanced<br>RAM for global variables,%,examples/ArduinoIoTCloud-Basic<br>flash,%,examples/ArduinoIoTCloud-Basic<br>RAM for global variables,%,examples/utility/ArduinoIoTCloud_Travis_CI<br>flash,%,examples/utility/ArduinoIoTCloud_Travis_CI<br>RAM for global variables,%,examples/utility/Provisioning<br>flash,%,examples/utility/Provisioning<br>RAM for global variables,%,examples/utility/SelfProvisioning<br>flash,%,examples/utility/SelfProvisioning<br>RAM for global variables,%
arduino:mbed:envie_m4,128,0.01,8,0.0,192,0.02,8,0.0,184,0.02,8,0.0,192,0.02,8,0.0
arduino:mbed:envie_m7,192,0.02,8,0.0,184,0.02,8,0.0,184,0.02,8,0.0,192,0.02,8,0.0
arduino:mbed_nano:nanorp2040connect,104,0.0,8,0.0,104,0.0,8,0.0,104,0.0,8,0.0,96,0.0,8,0.0,0,0.0,0,0.0
arduino:samd:mkr1000,152,0.06,8,0.02,152,0.06,8,0.02,152,0.06,8,0.02,152,0.06,8,0.02,,,,
arduino:samd:mkrgsm1400,160,0.06,8,0.02,160,0.06,8,0.02,160,0.06,8,0.02,160,0.06,8,0.02,,,,
arduino:samd:mkrnb1500,152,0.06,8,0.02,152,0.06,8,0.02,152,0.06,8,0.02,152,0.06,8,0.02,,,,
arduino:samd:mkrwan1300,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,,,,,,,,
arduino:samd:mkrwifi1010,152,0.06,8,0.02,152,0.06,8,0.02,152,0.06,8,0.02,144,0.05,8,0.02,0,0.0,0,0.0
arduino:samd:nano_33_iot,152,0.06,8,0.02,152,0.06,8,0.02,152,0.06,8,0.02,152,0.06,8,0.02,0,0.0,0,0.0
esp32:esp32:esp32,164,0.01,8,0.0,164,0.01,8,0.0,164,0.01,8,0.0,,,,,,,,
esp8266:esp8266:huzzah,156,0.01,52,0.06,172,0.02,52,0.06,156,0.01,52,0.06,,,,,,,,

@aentinger aentinger merged commit d0cf80d into master Apr 29, 2021
@aentinger aentinger deleted the exponential-retry branch April 29, 2021 05:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants