[Tinyos Core WG] gcc 3 vs 4 shootout

Kevin Klues klueska at gmail.com
Mon Nov 19 13:33:37 PST 2007


How did you calculate the cpu duty and dynamic stack numbers? avrora?

Kevin

On Nov 7, 2007 9:53 PM, John Regehr <regehr at cs.utah.edu> wrote:
> Folks-
>
> Please see the attached results for gcc3 vs gcc4 for a few TinyOS 2.0.2
> apps on mica2.  The news seems mainly good.  The measured stack depths are
> probably not very informative since these tend to be timing dependent.
>
> John
>
> (1)
> gcc3: avr-gcc3.4.3, GNU Binutils 2.15, avr-libc-1.2.3
> gcc4: avr-gcc4.1.2, GNU Binutils 2.17, avr-libc-1.4.6
>
> (2) Compilation options:
>
> gcc3: -mmcu=atmega128 -Os -fdollars-in-identifiers -Winline --param inline-unit-growth=1000000 --param large-function-growth=1000000 -D_GNUCC
>
> gcc4: -mmcu=atmega128 -Os -Wall -Wshadow -v --param max-inline-insns-single=100000
>
> (3) Test Results:
> ***********************************************************************
> AntiTheft/Nodes:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            46449         42636        -8.209%
> -----------------------------------------------------------------------
> avr-size-text        24114         22144        -8.170%
> -----------------------------------------------------------------------
> avr-size-data        18            18           0%
> -----------------------------------------------------------------------
> cpu duty             3.90445       3.54735      -9.146%
> -----------------------------------------------------------------------
> dynamic stack        196           185          -5.612%
>
>
> ***********************************************************************
> BaseStation:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            26876         26955        0.294%
> -----------------------------------------------------------------------
> avr-size-text        12852         12292        -4.357%
> -----------------------------------------------------------------------
> avr-size-data        18            18           0%
> -----------------------------------------------------------------------
> cpu duty             8.3891        6.6564       -20.654%
> -----------------------------------------------------------------------
> dynamic stack        63            77           22.222%
>
>
> ***********************************************************************
> Blink:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            7472          7345         -1.700%
> -----------------------------------------------------------------------
> avr-size-text        2364          2230         -5.668%
> -----------------------------------------------------------------------
> avr-size-data        0             0            0%
> -----------------------------------------------------------------------
> cpu duty             0.4592        0.4495       -2.112%
> -----------------------------------------------------------------------
> dynamic stack        28            27           -3.571%
>
>
> ***********************************************************************
> MultihopOscilloscope:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            46157         42621        -7.661%
> -----------------------------------------------------------------------
> avr-size-text        24620         22094        -10.260%
> -----------------------------------------------------------------------
> avr-size-data        22            22           0%
> -----------------------------------------------------------------------
> cpu duty             8.947875      7.611875     -14.931%
> -----------------------------------------------------------------------
> dynamic stack        175           163          -6.857%
>
>
> ***********************************************************************
> MViz:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            50142         50490        0.694%
> -----------------------------------------------------------------------
> avr-size-text        22100         21020        -4.887%
> -----------------------------------------------------------------------
> avr-size-data        22            22           0%
> -----------------------------------------------------------------------
> cpu duty             9.05445       7.044725     -22.196%
> -----------------------------------------------------------------------
> dynamic stack        176           171          -2.841%
>
>
> ***********************************************************************
> Oscilloscope:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            22106         22306        0.905%
> -----------------------------------------------------------------------
> avr-size-text        10454         9958         -4.745%
> -----------------------------------------------------------------------
> avr-size-data        12            12           0%
> -----------------------------------------------------------------------
> cpu duty             8.5191        6.7714       -20.515%
> -----------------------------------------------------------------------
> dynamic stack        149           144          -3.356%
>
>
> ***********************************************************************
> Powerup:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            5262          5006         -4.865%
> -----------------------------------------------------------------------
> avr-size-text        840           800          -4.762%
> -----------------------------------------------------------------------
> avr-size-data        0             0            0%
> -----------------------------------------------------------------------
> cpu duty             0.362         0.362        0%
> -----------------------------------------------------------------------
> dynamic stack        2             3            50.000%
>
>
> ***********************************************************************
> RadioCountToLeds:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            21248         21393        0.682%
> -----------------------------------------------------------------------
> avr-size-text        9872          9372         -5.065%
> -----------------------------------------------------------------------
> avr-size-data        12            12           0%
> -----------------------------------------------------------------------
> cpu duty             9.337475      7.462725     -20.078%
> -----------------------------------------------------------------------
> dynamic stack        150           145          -3.333%
>
>
> ***********************************************************************
> RadioSenseToLeds:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            21476         21676        0.931%
> -----------------------------------------------------------------------
> avr-size-text        10104         9608         -4.909%
> -----------------------------------------------------------------------
> avr-size-data        12            12           0%
> -----------------------------------------------------------------------
> cpu duty             9.30495       7.43225      -20.126%
> -----------------------------------------------------------------------
> dynamic stack        133           134          0.752%
>
>
> ***********************************************************************
> Sense:
>                      gcc3          gcc4         %(gcc4-gcc3)/gcc3
> -----------------------------------------------------------------------
> file_size            8724          8709         -0.171%
> -----------------------------------------------------------------------
> avr-size-text        3140          3026         -3.631%
> -----------------------------------------------------------------------
> avr-size-data        2             2            0%
> -----------------------------------------------------------------------
> cpu duty             0.601         0.5795       -3.577%
> -----------------------------------------------------------------------
> dynamic stack        25            27           8.000%
>
>
>
> _______________________________________________
> Tinyos-2.0wg mailing list
> Tinyos-2.0wg at Mail.Millennium.Berkeley.EDU
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-2.0wg
>



-- 
~Kevin


More information about the Tinyos-2.0wg mailing list