Re: How to get CPU frequency range at early boot time?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>
>On 10/24/05, Thorsten Moellers <kernelliste@xxxxxxxxxxx> wrote:
>> Hi, all!
>> I'm working on a DVS scheduling algorithm. To initialize the 
>> scheduler, I need to get the maximum available CPU frequency 
>> as early as possible.
>> Since the scheduler is not only for DVS relevant but also for fixed
>> frequency desktop systems, it would be great to get the information
>> withouth utilizing the cpufreq module. Is there a source for that
>> information?
>
>What does /proc/cpuinfo do to get the information it outputs? I'm
>assuming you could do something similar (might be as little as
>querying the CPU during boot, but I have no idea). Are you asking if
>this is possible in userspace or kernelspace? It's a bit hard to tell
>from your mail.

I'm now at work and can only use a webmail access to my email,
sorry if the layout of the mail suffers from it.

First a general description of my plans, answers to your 
questions follow:

I'm currently working on a scheduler for the plugsched framework.
My scheduler implements a scheduling hierarchy, where a process 
can anounce in advance how many cycles it will need per period 
(for real time processes), or if it is an interactive process 
(will be scheduled by round robin) or a batch process 
(will be scheduled by fifo).
Processes which do not use this interface are scheduled by a default policy (some kind of intelligent guessing might be implemented later, 
but I don't know). The scheduler provides the total amount of cycles required per period to a frequency govener, and the govener will set the lowest frequency which supplies the required cycles.

Since the scheduler should already on proces start decide if there are enough resources left to guarantee the requested amount of cycles, the scheduler should know the maximum frequency of the system at early boot time.

So, it's kernel space and I need to know before the first fork occures, since otherwise I have to reevaluate all forked tasks later on. Plugsched supplies a sched_init interface which is called before memory management is initialized. If possible I would love to utilize this function to initialize my max-frequency value.

Kind regards
Thorsten Moellers

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux