[OpenSIPS-Users] OpenSIPS timers

Bogdan-Andrei Iancu bogdan at opensips.org
Thu Mar 31 14:27:52 UTC 2022


Hi Ovidiu,

As warnings from the timer_ticker, do you get only for the tm-utimer 
task ? I'm asking as the key question here is where the bottleneck is : 
in the whole "timer" subsystem, or in the tm-utimer task only?

The TM "timer_partitions" creates multiple parallel timer lists, to 
avoid having large "amounts" of transactions handled at a moment in a 
single tm-utimer task (but rather split/partition the whole of amount of 
handled transactions into smaller chunks, to be handled one at a time in 
the timer task.

The "timer_workers" creates  more than one dedicated processes for 
handling the timer tasks (so scales up the timer sub-system).

If you get warnings only on tm-utimer, I suspect the bottleneck is TM 
related, mainly on performing re-transmissions (that's what that task is 
doing). So the increasing the timer-partitions should be the way to help.

Best regards,

Bogdan-Andrei Iancu

OpenSIPS Founder and Developer
   https://www.opensips-solutions.com
OpenSIPS eBootcamp 23rd May - 3rd June 2022
   https://opensips.org/training/OpenSIPS_eBootcamp_2022/

On 3/24/22 12:54 AM, Ovidiu Sas wrote:
> Hello all,
>
> I'm working on tuning an opensips server. I get this pesky:
> WARNING:core:utimer_ticker: utimer task <tm-utimer> already scheduled
> I was trying to get rid of them by playing with the tm
> timer_partitions parameter and the timer_workers core param.
> By increasing any of them doesn't increase performance.
> By increasing both of them, it actually decreases performance.
> The server is not at limit, the load on the UDP workers is around
> 50-60 with some spikes.
> I have around 3500+ cps sipp traffic.
>
> My understanding is that by increasing the number of timer_partitions,
> we will have more procs walking in parallel over the timer structures.
> If we have on timer structure, we have one proc walking over it.
> How is this working for two timer structures? What is the difference
> between the first and the second timer structure? Should we expect
> less work for each proc?
>
> For now, to reduce the occurrence of the warning log, I increased the
> timer interval for tm-utimer from 100ms to 200ms. This should be ok as
> the timer has the TIMER_FLAG_DELAY_ON_DELAY flag set.
>
> Thanks,
> Ovidiu
>




More information about the Users mailing list