arduino / ArduinoCore-avr

The Official Arduino AVR core
https://www.arduino.cc
1.25k stars 1.06k forks source link

Shorten critical section in micros() #552

Open edgar-bonet opened 10 months ago

edgar-bonet commented 10 months ago

The critical section in micros() is longer than it needs to be. The interrupt flag register has to be read within the critical section, but testing whether the overflow count should be incremented can be done with interrupts enabled.

Without this pull request, compiling for an UNO I get this critical section:

    in   r19, SREG
    cli
    lds  r24, timer0_overflow_count
    lds  r25, timer0_overflow_count+0x1
    lds  r26, timer0_overflow_count+0x2
    lds  r27, timer0_overflow_count+0x3
    in   r18, TCNT0
    sbis TIFR0, 0
    rjmp 1f
    cpi  r18, 255
    breq 1f
    adiw r24, 0x01
    adc  r26, r1
    adc  r27, r1
1:  out  SREG, r19

With the pull request applied, this becomes:

    in   r20, SREG
    cli
    lds  r24, timer0_overflow_count
    lds  r25, timer0_overflow_count+0x1
    lds  r26, timer0_overflow_count+0x2
    lds  r27, timer0_overflow_count+0x3
    in   r18, TCNT0
    in   r19, TIFR0
    out  SREG, r20

which saves us between 2 and 7 cycles of critical section.

github-actions[bot] commented 10 months ago

Memory usage change @ 7b7d61dfbfcfbde06d60aef49e6d360e874beb1e

Board flash % RAM for global variables %
arduino:avr:LilyPadUSB :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:atmegang:cpu=atmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:atmegang:cpu=atmega8 0 - 0 0.0 - 0.0 0 - 0 0.0 - 0.0
arduino:avr:bt:cpu=atmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:bt:cpu=atmega328 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:chiwawa :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:circuitplay32u4cat :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 N/A
arduino:avr:diecimila:cpu=atmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:diecimila:cpu=atmega328 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:esplora :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:ethernet :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:fio :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:gemma 0 - 0 0.0 - 0.0 0 - 0 N/A
arduino:avr:leonardo :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:leonardoeth :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:lilypad:cpu=atmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:lilypad:cpu=atmega328 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:mega:cpu=atmega1280 :small_red_triangle: 0 - +2 0.0 - 0.0 0 - 0 0.0 - 0.0
arduino:avr:mega:cpu=atmega2560 :small_red_triangle: 0 - +2 0.0 - 0.0 0 - 0 0.0 - 0.0
arduino:avr:megaADK :small_red_triangle: 0 - +2 0.0 - 0.0 0 - 0 0.0 - 0.0
arduino:avr:micro :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:mini:cpu=atmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:mini:cpu=atmega328 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:nano:cpu=atmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:nano:cpu=atmega328 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:nano:cpu=atmega328old :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:one :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:pro:cpu=16MHzatmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:pro:cpu=16MHzatmega328 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:pro:cpu=8MHzatmega168 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:pro:cpu=8MHzatmega328 :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:robotControl :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:robotMotor :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:uno :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:unomini :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:unowifi :small_red_triangle: 0 - +2 0.0 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:yun :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
arduino:avr:yunmini :small_red_triangle: +2 - +2 +0.01 - +0.01 0 - 0 0.0 - 0.0
Click for full report table Board|`libraries/EEPROM/examples/eeprom_clear`
flash|%|`libraries/EEPROM/examples/eeprom_clear`
RAM for global variables|%|`libraries/EEPROM/examples/eeprom_iteration`
flash|%|`libraries/EEPROM/examples/eeprom_iteration`
RAM for global variables|%|`libraries/EEPROM/examples/eeprom_update`
flash|%|`libraries/EEPROM/examples/eeprom_update`
RAM for global variables|%|`libraries/EEPROM/examples/eeprom_write`
flash|%|`libraries/EEPROM/examples/eeprom_write`
RAM for global variables|%|`libraries/EEPROM/examples/eeprom_crc`
flash|%|`libraries/EEPROM/examples/eeprom_crc`
RAM for global variables|%|`libraries/EEPROM/examples/eeprom_get`
flash|%|`libraries/EEPROM/examples/eeprom_get`
RAM for global variables|%|`libraries/EEPROM/examples/eeprom_put`
flash|%|`libraries/EEPROM/examples/eeprom_put`
RAM for global variables|%|`libraries/EEPROM/examples/eeprom_read`
flash|%|`libraries/EEPROM/examples/eeprom_read`
RAM for global variables|%|`libraries/SPI/examples/BarometricPressureSensor`
flash|%|`libraries/SPI/examples/BarometricPressureSensor`
RAM for global variables|%|`libraries/SPI/examples/DigitalPotControl`
flash|%|`libraries/SPI/examples/DigitalPotControl`
RAM for global variables|%|`libraries/Wire/examples/SFRRanger_reader`
flash|%|`libraries/Wire/examples/SFRRanger_reader`
RAM for global variables|%|`libraries/Wire/examples/digital_potentiometer`
flash|%|`libraries/Wire/examples/digital_potentiometer`
RAM for global variables|%|`libraries/Wire/examples/i2c_scanner`
flash|%|`libraries/Wire/examples/i2c_scanner`
RAM for global variables|%|`libraries/Wire/examples/master_reader`
flash|%|`libraries/Wire/examples/master_reader`
RAM for global variables|%|`libraries/Wire/examples/master_writer`
flash|%|`libraries/Wire/examples/master_writer`
RAM for global variables|%|`libraries/Wire/examples/slave_receiver`
flash|%|`libraries/Wire/examples/slave_receiver`
RAM for global variables|%|`libraries/Wire/examples/slave_sender`
flash|%|`libraries/Wire/examples/slave_sender`
RAM for global variables|%|`libraries/SoftwareSerial/examples/SoftwareSerialExample`
flash|%|`libraries/SoftwareSerial/examples/SoftwareSerialExample`
RAM for global variables|%|`libraries/SoftwareSerial/examples/TwoPortReceive`
flash|%|`libraries/SoftwareSerial/examples/TwoPortReceive`
RAM for global variables|% -|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|- `arduino:avr:LilyPadUSB`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:atmegang:cpu=atmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:atmegang:cpu=atmega8`|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|||||||| `arduino:avr:bt:cpu=atmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:bt:cpu=atmega328`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:chiwawa`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:circuitplay32u4cat`|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A|2|0.01|0|N/A `arduino:avr:diecimila:cpu=atmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:diecimila:cpu=atmega328`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:esplora`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:ethernet`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:fio`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:gemma`|0|0.0|0|N/A|0|0.0|0|N/A|0|0.0|0|N/A|0|0.0|0|N/A|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| `arduino:avr:leonardo`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:leonardoeth`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:lilypad:cpu=atmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:lilypad:cpu=atmega328`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:mega:cpu=atmega1280`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:mega:cpu=atmega2560`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:megaADK`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|2|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:micro`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:mini:cpu=atmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:mini:cpu=atmega328`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:nano:cpu=atmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:nano:cpu=atmega328`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:nano:cpu=atmega328old`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:one`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:pro:cpu=16MHzatmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:pro:cpu=16MHzatmega328`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:pro:cpu=8MHzatmega168`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:pro:cpu=8MHzatmega328`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:robotControl`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|||||||| `arduino:avr:robotMotor`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|||||||| `arduino:avr:uno`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:unomini`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:unowifi`|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|0|0.0|0|0.0|0|0.0|0|0.0 `arduino:avr:yun`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0 `arduino:avr:yunmini`|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0|2|0.01|0|0.0
Click for full report CSV ``` Board,libraries/EEPROM/examples/eeprom_clear
flash,%,libraries/EEPROM/examples/eeprom_clear
RAM for global variables,%,libraries/EEPROM/examples/eeprom_iteration
flash,%,libraries/EEPROM/examples/eeprom_iteration
RAM for global variables,%,libraries/EEPROM/examples/eeprom_update
flash,%,libraries/EEPROM/examples/eeprom_update
RAM for global variables,%,libraries/EEPROM/examples/eeprom_write
flash,%,libraries/EEPROM/examples/eeprom_write
RAM for global variables,%,libraries/EEPROM/examples/eeprom_crc
flash,%,libraries/EEPROM/examples/eeprom_crc
RAM for global variables,%,libraries/EEPROM/examples/eeprom_get
flash,%,libraries/EEPROM/examples/eeprom_get
RAM for global variables,%,libraries/EEPROM/examples/eeprom_put
flash,%,libraries/EEPROM/examples/eeprom_put
RAM for global variables,%,libraries/EEPROM/examples/eeprom_read
flash,%,libraries/EEPROM/examples/eeprom_read
RAM for global variables,%,libraries/SPI/examples/BarometricPressureSensor
flash,%,libraries/SPI/examples/BarometricPressureSensor
RAM for global variables,%,libraries/SPI/examples/DigitalPotControl
flash,%,libraries/SPI/examples/DigitalPotControl
RAM for global variables,%,libraries/Wire/examples/SFRRanger_reader
flash,%,libraries/Wire/examples/SFRRanger_reader
RAM for global variables,%,libraries/Wire/examples/digital_potentiometer
flash,%,libraries/Wire/examples/digital_potentiometer
RAM for global variables,%,libraries/Wire/examples/i2c_scanner
flash,%,libraries/Wire/examples/i2c_scanner
RAM for global variables,%,libraries/Wire/examples/master_reader
flash,%,libraries/Wire/examples/master_reader
RAM for global variables,%,libraries/Wire/examples/master_writer
flash,%,libraries/Wire/examples/master_writer
RAM for global variables,%,libraries/Wire/examples/slave_receiver
flash,%,libraries/Wire/examples/slave_receiver
RAM for global variables,%,libraries/Wire/examples/slave_sender
flash,%,libraries/Wire/examples/slave_sender
RAM for global variables,%,libraries/SoftwareSerial/examples/SoftwareSerialExample
flash,%,libraries/SoftwareSerial/examples/SoftwareSerialExample
RAM for global variables,%,libraries/SoftwareSerial/examples/TwoPortReceive
flash,%,libraries/SoftwareSerial/examples/TwoPortReceive
RAM for global variables,% arduino:avr:LilyPadUSB,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:atmegang:cpu=atmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:atmegang:cpu=atmega8,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,,,,,,,, arduino:avr:bt:cpu=atmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:bt:cpu=atmega328,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:chiwawa,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:circuitplay32u4cat,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A,2,0.01,0,N/A arduino:avr:diecimila:cpu=atmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:diecimila:cpu=atmega328,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:esplora,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:ethernet,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:fio,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:gemma,0,0.0,0,N/A,0,0.0,0,N/A,0,0.0,0,N/A,0,0.0,0,N/A,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, arduino:avr:leonardo,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:leonardoeth,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:lilypad:cpu=atmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:lilypad:cpu=atmega328,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:mega:cpu=atmega1280,0,0.0,0,0.0,0,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:mega:cpu=atmega2560,0,0.0,0,0.0,0,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:megaADK,0,0.0,0,0.0,0,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,2,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:micro,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:mini:cpu=atmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:mini:cpu=atmega328,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:nano:cpu=atmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:nano:cpu=atmega328,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:nano:cpu=atmega328old,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:one,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:pro:cpu=16MHzatmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:pro:cpu=16MHzatmega328,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:pro:cpu=8MHzatmega168,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:pro:cpu=8MHzatmega328,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:robotControl,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,,,,,,,, arduino:avr:robotMotor,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,,,,,,,, arduino:avr:uno,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:unomini,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:unowifi,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0 arduino:avr:yun,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 arduino:avr:yunmini,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0,2,0.01,0,0.0 ```