lkml.org 
[lkml]   [2004]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: How is user space notified of CPU speed changes?
From
Date
On Sad, 2004-10-23 at 23:42, Lee Revell wrote:
> > - The kernel doesn't always know
>
> OK, this one seems like the hard one. Wouldn't this cause weird
> behavior though? For example Linux only calculates the delay loop once,
> at boot time. Does this render *delay() useless?

Such systems you do need to run with notsc - although 2.6 autodetects
this prints complaints and does the job itself.

> > - CPU speed is meaningless in hyper-threading since performance is not
> > x2 for two cores but instead varies
>
> Doesn't matter. As long as they are both the same speed, JACK's
> calculations will be correct. We calculate the CPU speed at startup.
> Then we just read the TSC and do the math.

Are you trying to use tsc for delays or measure CPU speed. The original
question you asked was about CPU speed and the two are very different.

> > - It doesn't handle split CPU speed SMP - where CPU speeds vary
>
> We don't have to support this. If someone wants to do it they will have
> to bind jackd to one CPU or the other.

If you are trying to do tsc stuff remember tsc synchronization between
processors is not guaranteed and works on most boards today as a quirk
of design.

> Does anyone know how OSX/CoreAudio handles the situation? Apparently
> realtime apps work flawlessly on speed scaling laptops under OSX.

Presumably they use the other timers that Apple designed into their
hardware as they control both ends. You've got a good 48Khz or so clock
in the audio device too so many games clock off the audio clock anyway.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:07    [W:0.111 / U:0.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site