Re: [vpp-dev] Timer expiry spikes in TW timer implementation

2018-12-12 Thread shaligram.prakash
Thanks Dave!!!. I could see precision was indeed the problem. I think it is because the slots are missed due to below check in tw_timer_expire_timers_internal(...) when now time is behind the calculated next_run_time. * /* Shouldn't happen */* * if (PREDICT_FALSE (now < tw->next_run_time))* *

Re: [vpp-dev] Timer expiry spikes in TW timer implementation

2018-12-08 Thread Dave Barach via Lists.Fd.Io
Probably due to the vpp process sitting in an epoll_pwait(). See .../src/vlib/unix/input.c:linux_epoll_input_inline(...). The tw_timer code does its best, but if you don’t call the tw_timer_expire_timers_XXX(...) method precisely it won’t yield the sort of precision you’re looking for. If you