avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-gcc-list] AVR atmega128 GCC 4.3.3 Testresults comparision


From: Paulo Marques
Subject: Re: [avr-gcc-list] AVR atmega128 GCC 4.3.3 Testresults comparision
Date: Thu, 05 Nov 2009 15:24:28 +0000
User-agent: Thunderbird 2.0.0.21 (X11/20090310)

Boyapati, Anitha wrote:
> 
>> Try the files and simulator craeted as part of  WINAVR
>>
>> http://winavr.cvs.sourceforge.net/viewvc/winavr/avrtest/
>>
>> Edit some paths to  match your filespace.
> 
> Thanks Andy. I think avrtest worked much better. I managed to get 42K passes!

BTW, I recently did an update on avrtest to include "cycle counters".
The wrappers to use them are in dejagnuboards/exit.c.

It allows you to write code like:

start_perf_counter(0);
...
  start_perf_counter(1);
  ...do stuff...
  stop_perf_counter(1);
  ...
  start_perf_counter(2);
  ...do more stuff...
  start_perf_counter(2);
...
stop_perf_counter(0);

The output would be something like:

counter 1: 1453 cycles
counter 2: 532 cycles
counter 0: 3274 cycles

So in a single run you can profile several functions and you have up to
256 counters to chose from.

Starting/stopping the counters consists of writing a single byte to a
port. This isn't exactly free, but if you use mostly counter 0, since
there is a __zero_reg__ always available, it will take a single cycle.
This cycle can be subtracted later to find the exact number of cycles
between start/stop.

Happy benchmarking,

-- 
Paulo Marques
Software Development Department - Grupo PIE, S.A.
Phone: +351 252 290600, Fax: +351 252 290601
Web: www.grupopie.com

"As far as we know, our computer has never had an undetected error."
Weisert




reply via email to

[Prev in Thread] Current Thread [Next in Thread]