Update:

It appears that the issue I was having with jiffies was misdirection...of
another issue that I was able to workaround but not specifically identify.

The problem was that I was using work queues to schedule a delayed task at
a fixed period. However, whatever timer that the work queue was using
appears to be bad: I was scheduling a task periodically every 200ms, but it
was executing multiple times per 1ms (simulator times). It leads me to
believe the workqueue might have been using my host's clock. So jiffies may
actually be behaving as intended. Regardless, I converted to using ktime
instead and all is well!

-Donny

On Thu, Feb 22, 2018 at 9:38 PM, Bryan Donyanavard <bdony...@uci.edu> wrote:

> Hi all;
>
> I was wondering if anyone could shed some light on how the ARM system
> clock is implemented in the CPU models. I am trying to do some performance
> monitoring, and I noticed there is a PMU interface for v8, which is
> awesome. However, when I try to use jiffies in Linux to measure time in the
> kernel, it appears that the value is rarely updated. I suspect there is
> some shortcut being taken (to increase simulation performance) that causes
> jiffies to stay mostly static. I would like to avoid having to hook into
> the simulator to read 'ticks' as an alternative, but if that is necessary,
> any information on the "correct" way to do this would be appreciated.
>
> FYI, I have tried both Simple Atomic and Detailed O3 ARM CPUs, using the
> legacy 32-bit Linux ARM kernel (that's linked on the wiki).
>
> Thanks
>
> -Donny
>
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to