system slowdown

Alex Gonzalez langabe@gmail.com
Fri Mar 31 00:28:00 GMT 2006


Hi, thanks for your answers.

I'll try to give more details although we are at an early development
stage and details are always a bit hairy.

I have ported newlib to a propietary real time minimal OS. I am using
libnosys for the syscalls and yet I have only provided our own version
of write. The rest of the calls are as default.

The minimal OS have just exception/interrupt handling, timers and a
basic scheduler. On top of this I am developing the ethernet driver.
The driver can already receive and send packets and I can time events
with a global system tick based on the processor timer interrupt.

What I am seeing, and I realize how strange this sounds, is that the
first packet processed by the driver is processed (received, relayed
and sent) in less than 1us, and then suddenly the system slows down
hugely.

As an example, this is an extract of a trace, with the system tick in
us being the first number,

First packet,

2 PVETH_receive(1)
2 PVFTR_processPacket(1)
2 pvforward()
2 PV_UDP_raw_send()
2 PVFTR_processPacket(2)
2 PVETH_receive(2)
-------

Next packet

3 PVETH_receive(1)
1185 PVFTR_processPacket(1)
2647 pvforward(1)
4182 PV_UDP_raw_send(1)
8597 PV_UDP_raw_send(5)
9612 PVFTR_processPacket(2)

The slowdown kicks in suddenly and then never recovers.

I am just starting to look into it. I am thinking along the lines of
something happening inside newlib. Maybe problems with the heap as was
last suggested, I am looking into it.

Thanks a lot,
Alex

On 3/29/06, Dave Korn <dave.korn@artimi.com> wrote:
> On 29 March 2006 13:32, Alex Gonzalez wrote:
>
> > Hi,
> >
> > I am seeing a strange slowdown in my system and I am wondering whether
> > it could be caused by newlib's floating point support.
>
>   Well, did you just recompile and install a new version of newlib?
>
>   Your post is not very clear.  If you are seeing a "slowdown", you must mean
> than it is slower than it was at some time previously.  So it is something
> that you have done since then that has caused the slowdown.  Unless you
> changed newlib, newlib will not have changed.  So it's hard to see how it
> could be the cause of your system being slower than before.
>
>   What did you change?  What are you comparing it to in order to be able to
> say it is slower?  More details, please!
>
>     cheers,
>       DaveK
> --
> Can't think of a witty .sigline today....
>
>



More information about the Newlib mailing list