Eric Saxe wrote: > Changing the CPU clock frequency is a fairly light weight operation, I > believe.
In that case let?s return to the scenario of many short-lived threads whose number fluctuates stochastically, and the system needs to decide whether performance degradation that will result from using fewer than the maximum number (N) of CPUs at any particular time is compensated by the power saving benefits. If the application SLA is structured so as to receive a guarantee that the task response time will be less than T, then the system might get away with using fewer than N CPUs and still meet the SLA. However, this scenario requires the system to receive feedback from the application regarding its task response times. Are there any applications now that can provide such a feedback? Another relevant example is that of an application that has a stochastically fluctuating number of medium-lived threads that processes incoming transactions, and the application scales the number of such threads according to the backlog of received transactions (more threads will process the same number of transactions faster). A possible SLA structure for this case is the one where the application is charged at every time unit for the number of threads it has running. Do you think this is the scenario we can study? Finally, there is the case of a CMT server where the number of running threads is less than the total number of cores in the server. The point of learning here would be to figure out whether the potential disadvantages of migrating several threads together on one core are more than sufficiently compensated by the possibility of clocking down the extra idle CPUs that appear as a result of this thread migration. In order to make such a tradeoff, however, we need to know the effect of different scheduling policies on performance in CMT systems, which I am now studying with Sasha Fedorova. David
