[Devel] core timer and TM retransmission timers
Jean-François SMIGIELSKI
jf-smig at ibelgique.com
Wed Dec 27 10:49:19 CET 2006
The patch affects a bit the performance.
I tested the new openser with a SIPp that sent message that where statefully forwarded and voluntarily not answered (so, message stay as long as possible in memory). Then I compared the results with those about a regular 1.1.0 openser.
I started 300 new transactions/second (the limit came from the shared memory limited to 128MB, and with the size of the messages I sent it maid quite 20000 transactions in memory). I observed an increase of the CPU of about 25%.
To reduce this overhead, I decided to loose precision by snapping wake up time on a "5ms grid". So, I could wake up less often for more work. It worked and reduced the CPU usage, but not below the threshold of the regular OpenSER.
I made this test on a weak machine, and real benchmarks are surely necessary.
I prepare the patch and I post it as soon as possible.
Thanks!
Klaus Darilion:
> Hi Jean-François!
>
> Please post your patch on the bug tracker on sourceforge:
> http://sourceforge.net/tracker/?group_id=139143&atid=743022
>
> thanks for your work.
>
> Do you know how your patch affects the timer performance of openser?
>
> regards
> klaus
>
>
>
> > Hello again,
> >
> > I proposed several weeks ago to change the core timer in OpenSER to get more precision.
> > This work is now done and my openser seems to work fine.
> > It was achieved with precise 'select' sleeps and the expirations are now evaluated on timeval structures.
> > The previous "jiffies" timer now registers on the "select" timer.
> >
> > I also proposed to use this precise timer to manage the TM retransmission timers.
> > This is also done and seems to work fine. TM now conforms to the RFC3261 (with a different INVITE retransmission management).
> > This was done with a direct registration of TM on the precise timer (no more on the jiffies timer), and with timer lists only for INVITE.
> >
> > But I had to do it first for openser 1.1.0, and I am preparing a port on the cvs sources. There is no real problem with that, I wrote new files and changed only a few.
> >
> > I would submit my evolution to your analysis, but I don't know how.
> > Can I post a patch on this list?
> >
> > JF Smigielski
> >
> >
> > ________________________________________________________________________
> > iBELGIQUE, exprimez-vous !
> > http://web.ibelgique.com/
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Devel mailing list
> > Devel at openser.org
> > http://openser.org/cgi-bin/mailman/listinfo/devel
>
>
> --
> Klaus Darilion
> nic.at
>
>
________________________________________________________________________
iBELGIQUE, exprimez-vous !
http://web.ibelgique.com/
More information about the Devel
mailing list