A 2nd Core to Keep Windows Chugging Along?
Eh-Wire writes "Almost every hardware junkie I know would give most anything to take a spin in the new dual core hot rods from Dell or one of the custom system builders. But what if you actually needed that second core to run your anti-virus, spyware detection software and firewall just to get a little gaming or Internet surfing done on the first core. Would that really be a good reason to bring home a shiny new machine? I can think of a couple of different things I could use a second core for but running an iron lung on it just to keep the machine chugging along just isn't one of them. Curiously enough, PCMag thinks that's a perfectly good reason."
More power just gives developers an excuse to use more resources. There is no reason a word processing program should lag on a 2+ ghz processor... but there is so much bloat in the program because software vendors feel the need to use up all that extra processing juice that it does...
Yeah, Windows users need the second core to run all that spyware. It'll probably help a lot!
Good god. More seriously, just seeing people put ideas like that out makes me cringe, not because it's not necessary but because it seems to me that thinking like that will only lead companies like Microsoft to dedicate the second core to nothing but fixing problems that shouldn't be there in the first place. I suppose it's inevitable, though. Programming, especially of the bad, lazy or bloated variety, always seems to expand to fill and tax whatever hardware is available to it.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
The example of being able to play games smoothly with anti-virus scanning in the background was just that... an EXAMPLE of a situation where a dual core system might excel. The author mentions a ton of others, like encoding tv input in the background. I think it's rather sensational to say that the author thinks that's the only use or the primary use. The story submitter really needs to get a grip. The article was just trying to make the point that general responsiveness of a dual core system in the face of multiple tasks should be better, and I don't think anyone would disagree with that.
Seriously, what in the world is this article about?
Amazing revelation: dual core processors can do two things at the same time?! You must be kidding me. Any properly threaded application can take advantage of dual cores--there's no need to dream up scenarios where someone could be *gasp* doing multiple things at once.
I don't mean to sound harsh, but I'm confused as to why this is newsworthy.
I don't do PC's anymore outside of work where we have everyone clamped down pretty tight so I had kind of lost touch with how bad it really was out there. Last week I had one of my users bring in his PC that was locking up on him and doing the usual "strange stuff" that users talk about. I really never did get around to trying to fix anything though.
I sat in awe as the thing, with no programs open and nobody touching it spent most of the day fighting it's own little virus/spyware battle. Between Symantec and the (easily) half a dozen anti-spyware programs he had installed the computer sent a constant stream of pop-up windows coming at me warning me about assorted files and registry keys it thought suspicious and busily scanning it's ass off.
I wondered how he got any work done on the thing with it spending so much in the way of resources on "self defense". This is the answer in Windows world, they're going to eventually sell you a PC that's really two in one with the first one dedicated to just running the OS and all this crap you have to buy to keep from being bent over by the virus writers and the other virus writers who create spyware/adware.
Appended to the end of comments you post. 120 chars.
One Core for me and one Core for all my dead homies.
http://www.getfirefox.com/
Actually, I think the PC mag article hits the nail right on the head. The point of of a dual core machine is to run simulanious processes that need to execute side by side.
Now, we all know that most of our processes are input bound, not compute bound. They spend the vast majority of their time waiting for user input. Game are an exception: they both continually process changing data and wait for user input (that's why they are such good benchmarks). Most everything else, however, is input bound. However, many of the processes that run in the background are compute bound, input has little effect on them.
Now in my mind the best way to use a second core is to a) lump all your input bound processes on one core, and your background compute bound processes on the other (like anti-virus, firewall, maybe music, etc.) or b) run compute bound processes on each at the same time (game on one, factor large prime numbers on the other). Either way, there is almost no point in placing seperating the input bound processes between the two cores. This means that unless you are clever about how you divide the work, you aren't going to get much out of it.
...En að Besta Sem Guð Hefur Skapað Er Nýr Dagur
hint: web sites should not need instructions.
A lot of the systems folks that I've been hearing from and things that I've been reading have suggested that, like it or not, multi-core systems are the way of the future. The argument is that the clock-speed aspect of Moore's law has been slowing down for the past couple of years and that we've seen single processors that are as fast as they'll go with current chip design and fabrication technology. (Barring fundamental breakthroughs, of course.) Hence parallelism and multi-core systems.
I think the point is that it's not really a choice between clock speed and parallelism. You may still have a choice at the moment, but don't expect that to continue. Developers will have to start learning to deal with parallelism if they don't want to fall off the performance curve. I expect we'll start seeing methods, tools, languages and libraries to help developers manage it easily while avoid the common dangers of deadlock and inconsistency. There's some interesting research in the area and we may start seeing some of that find its way into production systems. And of course once developers start adopting parallelism, consumers will in turn begin to see the benefits of it.
In some ways its an obvious message if you look at supercomputers. No one's running serial code on petahertz machines! They're all just systems with large numbers of fairly pedestrian processors with custom fast, low-latency interconnects. As always, this is just the natural trickling down of that to the desktop level.
>> Or get a router
You can buy a router, and it is a really good idea, but most users will still click "yes" on whatever dialogue pops up on the screen. Your average user doesn't know what a "binary" is...
It might I think if you did devote a second core purely to spyware/virus/babysitting it would only reduce the problem but not remove it.
smarter PC usage is the answer, not more hardware...
http://request-header.info
He probably has 25+ pieces of unnessesary crap running at startup.
Why does every coder that writes a Windows app think it has to run at sartup?
The only things that should ever run at startup, in the background, are: AV, mobo, video, sound, and anti spyware. Anything else is a waste of resources.
Professional Politicians are not the solution, they ARE the problem.
maybe it's just me, but I like having gaim start up when I login.
Funny you should say that on today of all days. I spent a big chunk of the afternoon finalizing some of the documentation for launchd.
The traditional UNIX startup model calls for a lot of tasks to be fired off at boot time, one after the other. Whether you use init scripts or rc scripts or whatever, the model is the same.
In Panther, we created a fairly sophisticated system for firing off these tasks in parallel instead of serially. The net result was a decrease in cold-start times of about 100%.
Now we've got launchd. The idea now is that instead of making the user wait for a bunch of services to start, we let launchd fire them both in parallel and asynchronously.
I don't want to get extremely specific here for reasons I hope are obvious, but on modern (i.e., dual-G5) hardware, the time from the end of power-on tests and the initialization of Open Firmware to the menu bar and dock appearing and the system accepting user input is as little as four seconds.
Four seconds to cold-boot the operating system.
Pretty impressive, no? All it takes is a willingness to look at the traditional way of doing things, recognize massive stupidity, and correct it.
Rather than bitching, why not spend a little time figuring it out? It's pretty obvious, if you think about it. Here we go. First, choose the Tools menu, because Tools always contains configuration menu options. Next, choose Customize under tools, because Customize in is where you customize menus and toolbars in Office applications (and many other Microsoft apps as well). Click over to the Options tab, because you're looking for options (the other two, Toolbars and Commands, are obviously not what you want). Looky there! I see a checkbox for "Always show full menus"! I wonder what that could do?
Yes, it's "buried", but it's buried in a logical place if you're familiar with Office products. (disclaimer: The above steps are for Word 2003. They may be different on older versions, but probably not.)
The 244 watts figure is the power consumption of the entire system, not the chip itself.
"Yes, it's "buried", but it's buried in a logical place if you're familiar with Office products."
I think it's also worth mentioning that one DOES need to learn to use software. It's really strange that people think the computer should know exactly what they need, display it on the screen, and nothing else.
And when they want to change something, they shouldn't need to learn to do it.
What happened there? Everything in life takes some learning, and software is certainly no exception.
- It's not the Macs I hate. It's Digg users. -
As far as I can tell, it's a problem that was created from both sides. Users are always lazy (for anything and everything -- for instance, if you didn't have to pass a test to get a driver's license, nobody would ever take driving lessons and learn how to drive properly), but the industry is just as much to blame for humoring such beliefs. For example, this menu-hiding functionality was spawned directly from the belief that, "The user shouldn't need to learn how to use the software." Menu items that a user never uses, or uses rarely, will get hidden in an attempt to simplify the interface (hide functionality from users that don't use that functionality). Of course, it then pisses off the user the one or two times they do need to use that hidden functionality. I wonder how often this causes a user to believe that the software can't do what they want (when it really can, but the option is hidden), so they switch to a different application? Probably not a big problem with Word or Excel, but if TurboTax hid the option to itemize how many people do you think would switch over to TaxCut? (obligatory tax-related example, given the time of year)
In my opinion, this mind set needs to change. If you don't know how to work on your car, and you don't want to learn, then you go pay a mechanic to do it for you. The same thing should apply to softare. If you don't know how to user Word and you don't want to learn, you should be able to pay someone to do what you need. If you're too cheap to pay, then you'd better be willing to learn.
On a related topic, we geeks need to stop doing free tech support for friends and family simply because we're the people they know who "know computers". If you must help your friends and family with their computer problems, charge them money. Even better, you should refuse to help unless they've exhausted all their options. Otherwise, they'll never learn and just keep coming back every time they get a popup window they don't understand. It's the age old, "Teach a man to fish," problem.
As for spreadsheets, I see them more as a rapid prototyping tool (if even that). When I want to get anything done that involves large lists of data, I write a Perl script to do the job. Mind you, Perl is a lot more powerful than spreadsheet programs, and it, too, takes a lot less system resources than any given contemporary spreadsheet program.
Of course, every (wo)man has his/her own preferences, and I don't write this to encourage everyone to use emacs/LaTeX/perl, but rather to spread the fact that you don't need even a 350 MHz PII or even 64 MBs of RAM to be productive, and that it is most certainly program design that makes Open/Microsoft Office take much more resources than really necessary. While you may not need a 2 GHz machine like the GP said, you do certainly need a lot more because of the fancy GUIs and stuff.