Much hot air over blinking cursors
...that the request for objections would yield few responses. What ensued instead was a lengthy discussion (to put it charitably) which made it clear that some users value their by-default blinking cursor far above any other considerations.
Blinking cursors have been targeted by developers concerned about power consumption for some time now. Every transition requires that the system wake up to make the cursor change, and wakeups increase power usage. Beyond that, though, Matthew has written a graphics driver patch that allows the system to put the graphics processor into a sleeping state as well - as long as the screen does not change. Once again, every cursor transition requires powering up the GPU; that is where much of the excess power usage comes from.
This power savings comes at "idle" times, so some detractors pointed out that, on most systems, the screen saver will quickly power down everything when the system is idle. But "idle" in this context means something different: it describes times when nothing is being drawn to the screen. Such periods of idleness come about, for example, during each of your editor's frequent pauses as he ponders what to write next, what to make for lunch, or whether it wouldn't be better to just drop everything and go for a bike ride. It is a different time scale than the screen saver operates on. Idle displays will not come about if frequently-updating applications are running, but, otherwise, it's a common occurrence even on systems which are nominally busy.
Accurate counts of Fedora installations are hard to come by, but most estimates seem to be in the millions. A two-watt power savings over millions of systems implies a total power savings in the megawatt range. Even if the power savings estimates are way off (and there are those who assert that this is the case), it seems like something worth reaching for. After all, it's a simple default change, and anybody who is truly attached to a blinking cursor can change it back - even if Fedora has helpfully hidden the toggle under Preferences/Hardware/Keyboard in the main menu.
Besides, your editor came to a thoroughly objective conclusion many years ago that blinking cursors are an annoying distraction and that any developer implementing such behavior should be sentenced to ten years of COBOL coding under a strobe light.
The arguments against this change seem to fall into two categories. One of those is that users are unable to find their cursor if it does not blink. For example:
The other argument seems to be along the lines of "but we've always had a blinking cursor." Example:
We might as well change the slogan to: Fedora: stupid and proud of it!
Numerous other developers have come out in favor of the change. This seems
like one of those issues where a full consensus will never develop; so, if
this change is to be made, somebody has to just do it despite the flames.
It would appear that Matthew has done
exactly that. One can only wonder how many more carbon emissions would
have been avoided if he hadn't asked for objections first.
Posted Feb 5, 2009 1:31 UTC (Thu)
by jgsack@san.rr.com (guest, #33287)
[Link]
Did anyone suggest a "locate cursor" feature (similar to gnome's "locate mouse"), where a ctrl keypress would flash the cursor for a few seconds before it returned to its steady state?
~jim
Posted Feb 5, 2009 1:43 UTC (Thu)
by imcdnzl (guest, #28899)
[Link] (1 responses)
But agree it is worth while fixing still the same.
Posted Feb 5, 2009 5:05 UTC (Thu)
by elanthis (guest, #6227)
[Link]
What exactly did you think that little indicator of your cursor position was when you were typing up your post? :p
Posted Feb 5, 2009 1:43 UTC (Thu)
by qg6te2 (guest, #52587)
[Link] (10 responses)
The blinking cursor issue wouldn't have arisen if Gnome simply had more easily accessible options (in intuitive places). Going through the UI for gconf, or searching for options in places like described above, is like pulling teeth.
I do realise that Gnome's current philosophy is a "streamlined" desktop with less options, however this particular spartan approach is too much. I am not advocating the sea of options ala KDE (which is an insanity in itself), but there has to be a middle ground.
Posted Feb 5, 2009 3:30 UTC (Thu)
by jdub (guest, #27)
[Link] (9 responses)
Or are you suggesting that we put the burden of understanding intricate concepts about computing hardware and power saving on users, and leave them to deal with it themselves?
Sorry, but this was not a particularly good angle for your whinge. :-)
Posted Feb 5, 2009 6:04 UTC (Thu)
by qg6te2 (guest, #52587)
[Link] (3 responses)
I support the default behaviour of non-blinking cursors. My "whinge" is that configuring many things in Gnome is painful. Perhaps there would have been less objections to this useful default if there was an easily found toggle switch to begin with, for those who really want the blinking.
Posted Feb 5, 2009 6:22 UTC (Thu)
by jdub (guest, #27)
[Link] (2 responses)
Everyone else (who isn't whinging about their favourite bugbear) knows that it's just the kind of thing you find at the top of a very slippery slope, and further investigation of the slope generally leads to the kind of vomitous mess we laugh about in other software. You know, like Windows... and all the hilarious crap you see on DailyWTF.
It's what we call an "un-break-me option".
An option which says "[x] blink cursor" actually means "[x] make my computer pointlessly waste power and drain my battery so i can't watch a complete DVD on the train ride to Berlin".
I'm totally behind all that "power to the people" stuff, but it needs to be balanced by a very healthy disgust for "stupid to the people".
Posted Feb 5, 2009 9:49 UTC (Thu)
by russell (guest, #10458)
[Link]
And that's my whinge. GNOME never listens.
Posted Feb 18, 2009 17:15 UTC (Wed)
by occ (guest, #38482)
[Link]
Except that when you watch a DVD, there is no 'blinking' cursor to be seen anyway, and event if you are twisted enough to watch you dvd in a windows while to focus is in another windows, in an edit-field, it is still unlikely that the blinking cursor would cause a wake-up of the CPU, which is already busy playing your DVD.
In other words the 'actually means' above is a Red-Herring, and whether or not you battery has the charge to allow you to watch a DVD is completely unrelated with the blinking-cursor drama.
Posted Feb 6, 2009 11:18 UTC (Fri)
by arafel (subscriber, #18557)
[Link] (4 responses)
Congratulations - I think you win a prize for the shortest path to misunderstanding someone's comment (at least in this thread).
There is no connection between "more easily accessible options" and "mjg59 applying a patch to change the default behaviour". Having accessible options does not in any way prevent defaults being change. Suggesting that it does is, frankly, bizarre.
Posted Feb 6, 2009 17:33 UTC (Fri)
by hppnq (guest, #14462)
[Link] (3 responses)
More to the point, all discussions about energy-saving that ignore the law of conservation of energy are a waste of my time.
Posted Feb 7, 2009 20:26 UTC (Sat)
by giraffedata (guest, #1954)
[Link] (2 responses)
I don't get your point. "Saving" doesn't mean increasing or decreasing the total amount of something; it means reserving it in some particular place. In the case of energy saving, these days we're usually talking about saving it in high-enthalpy carbon compounds such as coal, oil, and wood because a side effect of moving it out of there is that the carbon atoms go into low-enthalpy CO2 in the atmosphere.
On the other hand, when people talk about "conserving energy," I can see how that might sound like something that doesn't require any effort.
Posted Feb 9, 2009 14:27 UTC (Mon)
by hppnq (guest, #14462)
[Link] (1 responses)
I think "saving" energy in general refers to not using it to do work that is "not needed". Even in these practical terms, it is intimately related to the law of conservation of energy, which says that in any closed system, the total amount of energy remains constant over time.
Singling out a particular part of a closed system and making guesses about the energy flowing in and out in absolute terms is bound to be silly, especially if you want to point out where other people are completely wrong and you are absolutely right in terms of what is needed and what not, and in short definitely a waste of that other difficult to grasp natural phenomenon, time.
Posted Feb 18, 2009 23:30 UTC (Wed)
by occ (guest, #38482)
[Link]
[Singling out a particular part of a closed system and making guesses]
[about the energy flowing in and out in absolute terms is bound to be silly,]
Posted Feb 5, 2009 2:25 UTC (Thu)
by JoeBuck (subscriber, #2330)
[Link] (1 responses)
Posted Feb 5, 2009 4:11 UTC (Thu)
by Kamilion (subscriber, #42576)
[Link]
This would be a big win for laptop users, as there's already a behavior in newer machines of dimming the display after a few moments of mouse inactivity, why not halt the GPU as well?
This way, both sides are appeased with a sane default, and toggling to either extreme can be accommodated.
Posted Feb 5, 2009 5:46 UTC (Thu)
by dirtyepic (guest, #30178)
[Link] (2 responses)
Posted Feb 5, 2009 14:03 UTC (Thu)
by incase (guest, #37115)
[Link] (1 responses)
Posted Feb 8, 2009 9:49 UTC (Sun)
by dirtyepic (guest, #30178)
[Link]
Posted Feb 5, 2009 6:08 UTC (Thu)
by cpeterso (guest, #305)
[Link] (4 responses)
Posted Feb 5, 2009 7:49 UTC (Thu)
by tzafrir (subscriber, #11501)
[Link] (3 responses)
xterm/uxterm
here (Debian Lenny)
Posted Feb 5, 2009 15:50 UTC (Thu)
by mb (subscriber, #50428)
[Link] (2 responses)
I like the not-blinking-cursor.
Posted Feb 5, 2009 22:36 UTC (Thu)
by pr1268 (guest, #24648)
[Link] (1 responses)
and Konsole (Debian Lenny, at least). Also on KDE 3.5.10 in Slackware 12.2. It's easy to make it blink, if you prefer (Settings → Configure Konsole). Of course, I'm using a konsolerc file that has persisted through several upgrades, so maybe I so configured this several Slackware releases ago. I like the not-blinking-cursor. I do, too. Although, considering one is running Konsole in the GUI/WM, I suppose that a lot of other activity is keeping the CPU awake, likely making the power savings a moot point. Does a non-blinking cursor in a GUI-based console actually contribute to measurable power savings?
Posted Feb 6, 2009 5:43 UTC (Fri)
by njs (subscriber, #40338)
[Link]
Well if you're curious, run powertop and find out :-).
In my experience, if I'm not touching the computer, then the CPU pretty much just goes to sleep, waking up only a few times per second.
Unless firefox is running. Sigh. (Maybe this is the fault of random people's annoying javascript, I don't know.) But *every other* app I run is fine...
Posted Feb 5, 2009 8:03 UTC (Thu)
by jengelh (guest, #33263)
[Link] (4 responses)
Posted Feb 5, 2009 9:31 UTC (Thu)
by epa (subscriber, #39769)
[Link] (1 responses)
Posted Feb 8, 2009 21:00 UTC (Sun)
by jengelh (guest, #33263)
[Link]
Posted Feb 8, 2009 20:44 UTC (Sun)
by mikov (guest, #33179)
[Link] (1 responses)
Posted Feb 8, 2009 20:46 UTC (Sun)
by mikov (guest, #33179)
[Link]
Posted Feb 5, 2009 11:16 UTC (Thu)
by NAR (subscriber, #1313)
[Link] (3 responses)
Like updating of the seconds value in the clock applet?
Posted Feb 5, 2009 13:52 UTC (Thu)
by jamesh (guest, #1159)
[Link] (1 responses)
Posted Feb 5, 2009 15:48 UTC (Thu)
by NAR (subscriber, #1313)
[Link]
Posted Feb 5, 2009 16:59 UTC (Thu)
by nix (subscriber, #2304)
[Link]
Posted Feb 5, 2009 19:20 UTC (Thu)
by ncm (guest, #165)
[Link] (1 responses)
I'll start worrying about cursor-blink wakeups when the wakeup rate on my laptop goes below 50/sec.
Posted Feb 5, 2009 20:07 UTC (Thu)
by jlokier (guest, #52227)
[Link]
Which begs the question - Do you really need the GPU to do something as trivial as draw a tiny line or rectangle? The answer is no.
Text editors and terminals since time immemorial have had "special hacks" for efficient single-character updates and cursor drawing, bypassing the slower, fully general methods of screen refresh.
Posted Feb 5, 2009 22:20 UTC (Thu)
by nlucas (guest, #33793)
[Link]
Much like the monitor brightness option, the user can configure what brightness value should be if on battery or on AC. Add it an option to blink or not the cursor according to the user wish.
I don't see how people would not like it if the default was to disable blinking when one wants to save every mW, but stay on by default when the power-saving is not important.
For the others where it is really a question of taste, just disable/enable it, knowing they will reduce the battery life by their selection (much like the decision on the monitor brightness).
Posted Feb 7, 2009 2:42 UTC (Sat)
by jwb (guest, #15467)
[Link] (11 responses)
Posted Feb 7, 2009 3:45 UTC (Sat)
by dlang (guest, #313)
[Link]
300w isn't impossible
that being said, I agree that it seems very high.
Posted Feb 7, 2009 16:20 UTC (Sat)
by mjg59 (subscriber, #23239)
[Link] (9 responses)
Posted Feb 8, 2009 2:44 UTC (Sun)
by dimi (subscriber, #2732)
[Link] (8 responses)
When all of these are put together, the "load factor" of savings are very small, probably just a few percentages over a typical session. Even if you waste 2W as claimed (while the cursor is blinking on an otherwise idle box), that would translate to maybe 0.05-0.1W in real life.
Maybe that's significant somewhere, but please stop claiming we're saving 2W. We are not.
Posted Feb 8, 2009 7:43 UTC (Sun)
by PaulWay (guest, #45600)
[Link] (7 responses)
> Maybe that's significant somewhere, but please stop claiming we're
So what you're saying is that Matthew Garrett measuring this with a meter is wrong and your unsupported and unjustified guesses are right. Matthew Garrett, who knows exactly what kind of hardware he's working with and what kind of power it consumes, is wrong and you, who offer no proof or knowledge of any kind, are right.
Yeah. Thanks for your useless contribution.
Matthew Garrett gave a talk on this at LCA, in which he basically pointed out that the GPU can be switched from updating at 60Hz to updating at 0Hz, also switching most of its functions off, whenever the graphics driver detects that we're not updating the screen regularly. It's basically about 90% of the power usage of that chip turned off in one go. The start up speed is faster than 1/60th of a second, so you can do it in the time the screen would normally refresh anyway. If that chip's using 5W - and I'd be surprised if even the Intel 915 GPUs use less than that - then that's easily going to deliver 2W of power.
Hope these facts help you,
Paul
Posted Feb 8, 2009 14:33 UTC (Sun)
by dimi (subscriber, #2732)
[Link] (6 responses)
What Matthew measured is the difference in power usage for an *idle* computer with and without a blinking cursor. Great. But from here to say that we'll be saving 2W over an entire user session is balderdash. It's like measuring the power needed to do the actual blink (which may be 20W over 10ms) and claiming we'll be saving 20W.
There is this notion of a "load factor". First we applied it to the blinking itself, and reduced the 20W instantaneous power usage to about 2W average for and idle computer with a blinking cursor.
To calculate real power savings over a user session you have to ask yourself: out of a typical session (8h?) how long would the computer have a blinking cursor and be totally idle? Not a lot (please re-read my original comment). The 2W savings would easily drop to 0.2W, likely even more.
Hope this helps,
Posted Feb 8, 2009 22:29 UTC (Sun)
by PaulWay (guest, #45600)
[Link] (5 responses)
Oh, good. Then you know that most Linux installs these days have six text screens sitting in virtual space, waking up twice a second to turn their unseen cursor on and off. Yes, that's not a hardware feature. Matthew's been complaining about that one since LCA 2007. As far as I know it's still the case. Whether those wake-ups are coalesced by the kernel these days is anyone's guess.
Right now I have a terminal with two tabs underneath my Firefox window. I'd be more than happy to see any evidence that X, GNOME and gnome-terminal is smart enough to not have that wake-up still occurring twice a second given that the window is completely obscured. Likewise when I stop typing in this text field the bar cursor blinks on and off. I think you're underestimating the ubiquity of cursors in our GUIs.
The real problem here is that, as I understand what Matthew said in his talk, the only way to know for sure that we didn't write anything to the screen is by having no display code entered during the period. It would require much more extensive surgery on X (that no-one wants to do) to know that no pixels were touched even though display code was entered. So from what I understand of this, putting in a patch to turn off blinking cursors really can save 2W or more.
And I'd still be happy with a 0.2W saving totalled across millions of laptops.
Have fun,
Paul
Posted Feb 8, 2009 22:48 UTC (Sun)
by dimi (subscriber, #2732)
[Link] (4 responses)
Of course I am aware. I have addressed this problem in my first post:
Moreover, only _one_ windows at a time has focus.
This is trivial to test -- just put your six terminals side-by-side.
So your entire argument is based on a false premise. Considering this,
How often does that happen?
Continuing claiming the 2W saving is like saying we save in fact 20W because there is a spike of 20W every few seconds. It's ridiculous.
Dimi.
Posted Feb 8, 2009 23:36 UTC (Sun)
by jwb (guest, #15467)
[Link] (3 responses)
Posted Feb 8, 2009 23:42 UTC (Sun)
by dimi (subscriber, #2732)
[Link] (2 responses)
BTW, I'm not even sure if the change under discussion here applies to real consoles...
Posted Feb 9, 2009 0:46 UTC (Mon)
by nix (subscriber, #2304)
[Link] (1 responses)
Posted Feb 9, 2009 1:11 UTC (Mon)
by dimi (subscriber, #2732)
[Link]
Nevertheless, *nobody* argued against a patch to fix this brain-dead behaviour. Obviously there would be no point in blinking a cursor on a hidden console...
The entire discussion was about turning off blinking on the regular cursor used in X, something that users are used to for a long time.
Posted Feb 12, 2009 17:20 UTC (Thu)
by chojrak11 (guest, #52056)
[Link]
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Fedora has helpfully hidden the toggle under Preferences/Hardware/Keyboard in the main menu.
Much hot air over blinking cursors
Much hot air over blinking cursors
If GNOME had "more easily accessible options" the cursor would still be blinking by default, power would still be consumed needlessly on devices around the world, and mjg59 would still be suggesting that the default behaviour be fixed.
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
> blinking by default, power would still be consumed needlessly on devices
> around the world, and mjg59 would still be suggesting that the default
> behaviour be fixed.
Personally I find this complete thread bizarre, and a complete and utter waste of energy, but your comment must be the most bizarre and pointless one of all. I don't mean this in an offending way, I am truly flabbergasted.
Much hot air over blinking cursors
Conservation of energy
More to the point, all discussions about energy-saving that ignore the law of conservation of energy are a waste of my time.
Conservation of energy
"Saving" doesn't mean increasing or decreasing the total amount of something; it means reserving it in some particular place.
Conservation of energy
you computer is not a closed system... at least from a thermodynamic point of view.
there was measurement involved, not guesses...
Good luck convincing your Electric Utility compagny that their meters are silly...
Currently, the cursor on the terminal (or Emacs screen, or other window as appropriate) that has the focus blinks, and others are open blocks. Suppose that if there is no activity for T seconds (say 10), the cursor changes to a solid block (so yes, you can see it). If the mouse moves or a character is struck it turns back on.
That should save most of the power and still help people find the cursor.
Much hot air over blinking cursors
Much hot air over blinking cursors
Why not blink the cursor only during/ just after mouse movement?
If the mouse is moving, 99.8% of the time(cats) it's a human moving it and interacting with the machine. Elsewise, if the user's just blankly staring at the screen, why not stare back if it'll save the GPU from waking so frequently?
One of those is that users are unable to find their cursor if it does not blink.Much hot air over blinking cursors
O_o
I'm betting these are the same people who are to blame for those godawful radioactive hockey pucks back in the nineties.
radioactive? You got something wrong
radioactive? You got something wrong
What Would Steve Jobs Do?
What Would Steve Jobs Do?
mlterm
mrxvt
What Would Steve Jobs Do?
What Would Steve Jobs Do?
What Would Steve Jobs Do?
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
* text mode cursor (80x25 and such)
* CGA/EGA/VGA video mode cursor ('mode 13h' and thelike)
* FB-generated cursor
* X11 programs' cursor
Much hot air over blinking cursors
Much hot air over blinking cursors
Every transition requires that the system wake up to make the cursor change, and wakeups increase power usage.
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
machine run hotter. :)
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
* if a computer is idle for ~10min, screensaver kicks in
* the cursor blinks only on windows with editor, so if you browse the web, read email, or read a PDF document there is no such blinking
* you have to be idle at the computer for the savings to happen since you type faster than the cursor blinks
Much hot air over blinking cursors
> otherwise idle box), that would translate to maybe 0.05-0.1W in real life.
> saving 2W. We are not.
Much hot air over blinking cursors
Dimi.
Much hot air over blinking cursors
> that Matthew took, but with the _implied_ power savings.
Much hot air over blinking cursors
> text screens sitting in virtual space, waking up twice a second to turn
> their unseen cursor on and off.
A cursor blinks only in a windows that has the following properties:
- it has focus
- it's waiting for keyboard input
now you can see that the 2W savings can happen only when:
- the focus is on a window that has an editor
(not that common in a typical session)
- the computer is totally idle, like the mouse is not moving,
not playing music or video, etc
- the screensaver hasn't kicked in
Much hot air over blinking cursors
Much hot air over blinking cursors
Much hot air over blinking cursors
including non-technical users, but *even though they're not visible* and
are on different virtual consoles, they *still* wake up the video card
twice a second to blink their invisible cursors on and off.
Much hot air over blinking cursors
Much hot air over blinking cursors
it appears :-)