Messages in this thread | | | Date | Mon, 08 Sep 2003 19:01:21 -0400 | From | Timothy Miller <> | Subject | Re: Use of AI for process scheduling |
| |
Felipe Alfaro Solana wrote: > On Mon, 2003-09-08 at 21:28, Timothy Miller wrote: > > >>Basically, we need to write and install into the kernel an AI engine >>which uses user feedback about the "feel" of the system to adjust >>heuristics dynamically. For instance, if the user sees that the system >>is misbehaving, they can pause the system in the kernel debugger, >>examine process priorities, and indicate what "outputs" from the AI >>engine are wrong. It then learns from that. Heuristics can be tweaked >>until things run as desired. At that point, scheduler developers trade >>emails in the AI heuristic language. > > > I'm no kernel expert but I think that doing what you suggest would take > an enormous amount of time and resources to do. Also, the scheduler must > be a real-time piece of software, and needs to take decisions as fast > and as accurately as possible. I think that implementing an IA-like > engine would take an great deal of resources. By the time the IA-like > scheduler has taken its decision, the whole world could have changed > since.
The AI scheduler is only used for _development_.
For deployment, the rules learned from the AI scheduler are converted to C code (or compiled directly to machine language) and used in real-time. I don't expect the rules to be so complex that the C version would use much more CPU than the current interactive schedulers being worked on by Con, Ingo, and Nick.
During development, the AI scheduler would be used in real-time, and that would have a significant effect on the performance of the system. But since it's a constant, the relative interactive behavior should be about the same between AI and deployed versions, even though the AI version uses a lot more CPU time in the kernel. That is, if the system works well with the AI scheduler, it'll work even BETTER with the compiled version.
- 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/
| |