Linked by Eugenia Loli on Thu 26th Apr 2007 06:36 UTC, submitted by RJop
Linux Linux Kernel 2.6.21 has been announced. Linus writes: "So the big change during 2.6.21 is all the timer changes to support a tickless system (and even with ticks, more varied time sources). Thanks (when it no longer broke for lots of people ;) go to Thomas Gleixner and Ingo Molnar and a cadre of testers and coders." More info here and here.
Thread beginning with comment 234084
To read all comments associated with this story, please click here.
Tickless?
by murloc on Thu 26th Apr 2007 07:52 UTC
murloc
Member since:
2007-03-12

What is a tickless system?

Reply Score: 4

RE: Tickless?
by flanque on Thu 26th Apr 2007 07:55 in reply to "Tickless?"
flanque Member since:
2005-12-15

You know when you stop your car after a long drive, it "ticks" for a while after whilst it cools down..? Well, some servers were doing that too, so this prevents that now.

Edited 2007-04-26 07:55

Reply Parent Score: 1

RE[2]: Tickless?
by Shannara on Thu 26th Apr 2007 15:57 in reply to "RE: Tickless?"
Shannara Member since:
2005-07-06

Modded up for humor ;)

Reply Parent Score: 2

RE: Tickless?
by timl on Thu 26th Apr 2007 08:23 in reply to "Tickless?"
timl Member since:
2005-12-06

As far as I understand it (but please bear in mind I'm no expert), tickless means that the kernel will not necessarily wake up periodically anymore.

Originally, a timer was programmed to generate an interrupt ("timer tick") a fixed number of times per second, usually in the range of 100-1000 Hz. That also meant the processor would possibly wake from sleep that many times per second, causing unnecessary power consumption on a lightly loaded system.

A tickless system might disable the timer interrupt altogether when entering an idle state, so it will only wake up when an I/O device demands the attention of the kernel. Of course it would be re-enabled again as soon as multiple processes are competing for processor resources.

If anyone has corrections to the information stated above, please don't hesitate to post them. I'm curious about the exact implications as well.

Reply Parent Score: 5

RE[2]: Tickless?
by Ford Prefect on Thu 26th Apr 2007 17:10 in reply to "RE: Tickless?"
Ford Prefect Member since:
2006-01-16

Well some part is missing. There are processes that want to be woken up after X milliseconds.

So the system has also to make sure to wake up at the next of these events.

A reasonable solution would be to disable the timer interrupt only of no process waits for a timing event, but if so, change the interrupt's frequency according to it.

It is explained here: http://kernelnewbies.org/Linux_2_6_21#head-8547911895fda9cdff32a947...

Edited 2007-04-26 17:14

Reply Parent Score: 4

RE: Tickless?
by haugland on Thu 26th Apr 2007 08:27 in reply to "Tickless?"
haugland Member since:
2005-07-07

I haven't studied the tickless kernel, but I ASSUME that this explains the basics:

Normally the kernel is issuing an interrupt every X milliseconds in order to preempt processes. These interrupts are (normally?) fired at a constant rate. These ticks can influence the power states, and make the CPU etc. change to a more active power state even though no preemption is needed.

The tickless kernel will not fire new clock-interrupts unless there are active processes and a need for preemption. The tickless kernel will only wait for external interrupts when all processes are idle.

Reply Parent Score: 5

RE: Tickless?
by SEJeff on Thu 26th Apr 2007 18:51 in reply to "Tickless?"
SEJeff Member since:
2005-11-05

This isn't exactly how it works because I don't know the number of times / second the kernel wakes up, but it is something like this...

Before:
1000 times / second, the kernel will wakeup and say, "Is there anything for me to do?" Each wakeup is called a 'tick'. If there is nothing for it to do, it goes back to sleep. This wastes energy and cpu power.

Now:
Instead of polling every so often the kernel will only wakeup when there is actually something to do. Once more drivers are taking advantage of the tickless feature in the kernel, there will be less wakeups and less power used. This will be a *huge* gain in powersavings and battery life on laptops. It will also help with virtualization by speeding up virtualized guests.

Does that help any?

Reply Parent Score: 2

RE[2]: Tickless?
by butters on Thu 26th Apr 2007 21:04 in reply to "RE: Tickless?"
butters Member since:
2005-07-08

The phoronix test (a very, very simplistic test) suggests the the power savings is very small, but it's measurable. I'd like to see a testcase that shows a significant (i.e. >10%) decrease in idle power consumption. My guess is that tickless will have a greater impact on virtualization performance than on power consumption. In any case, it's a smart enhancement that should provide advantages without regressions, but the scale of these benefits remains to be seen.

Reply Parent Score: 2