[DGD] Weird time deltas

Dread Quixadhal quixadhal at gmail.com
Mon Dec 4 10:53:08 CET 2017


Since 1/20th of a second, or 50ms, I would guess this is an artifact of either the timer itself, or the method used to initiate call_out’s.

I don’t know which way DGD uses to handle timed events, but there are a few different options out there.  One way is to just check scheduled event times against the current time on each trip around the main event loop, doing any that are due or overdue.  Another way is to make use of an OS signal mechanism, such as the UNIX signal VTALARM to setup events to be processed.

Since your “lag” seems to be around 20ms, sometimes less, sometimes more, it’s not unreasonable to think that either the event processing loop rolls around at a regular interval, or there’s a delay involved in propagating the event (likely if an alarm signal is used), or the hardware clock isn’t reporting a high enough resolution time to get anything more accurate.

Sent from Mail for Windows 10

From: Raymond Jennings
Sent: Monday, December 4, 2017 3:35
To: All about Dworkin's Game Driver
Subject: Re: [DGD] Weird time deltas

Of note, the delay actually specified in the call_out() is 0.05
exactly, with a reciprocal of 20.

On Mon, Dec 4, 2017 at 12:32 AM, Raymond Jennings <shentino at gmail.com> wrote:
> I've got a tight thread running.
>
> Every 1/20th or so of a second, it uses the kernel library's wiztool
> to generate a status report, including resources and the status
> command.
>
> As a minor performance metric to track lag, I also keep track of the
> exact time elapsed since the previous cycle was started, basically
> motivated to see how "late" the report callout fired.
>
> Oddly, instead of a buttery-smooth interval where the elapsed time is
> reported pretty close to the requested delay, I'm getting mega
> seriously weird millitime deltas that often appear to end in 5's, and
> the digits look suspiciously like multiples of a negative power of
> two.
>
> I run gentoo linux on kernel 4.14, is this some sort of artifact of
> the kernel or am I running some funky timer hardware or what?
>
> I noticed that all the actually reported deltas have reciprocals of
> 16, 32, or 21.333333333
____________________________________________
https://mail.dworkin.nl/mailman/listinfo/dgd




More information about the DGD mailing list