3 ms·
Note that clock speed hasn't been zooming ahead recently, compared to the astonishing past, which you can see a lovely illustration of at: http://www.dailytech.
by Nomentatus 11y ago
Note that clock speed hasn't been zooming ahead recently, compared to the astonishing past, which you can see a lovely illustration of at:
http://www.dailytech.com/A+Supercomputer+on+Your+Wrist+Infographic+Series+Shows+Moores+Law+in+Action/article37369.htm http://www.dailytech.com/A+Supercomputer+on+Your+Wrist+Infog...
Instead we mostly get more cores, but there's no general solution to the Von Neumann bottleneck, so that's of limited help to the majority of software. A.I. is benefiting, though. Building a safe, self-driving car using one core would be rather difficult. So some software IS vastly improved.
And then there's Parkinson's Law, "work expands to fill the time allotted to it". Just substitute "sloppiness" for "work" and "bandwith" or "CPU cycles" for "time". Programmers haven't become cheaper or less in demand, so "sloppy" (resource heavy) code is way cheaper than tight-and-hard-to-debug-and-maintain. If you must hire more programmer hours to analyze bottlenecks or use a lower-level language you do. But only if you must. So homeostasis sets in (Parkinson's Law is all about effort-related-homeostasis.)"The hardware giveth and the software taketh away" because that's cheapest for competitive software businesses.
Part of that situation, too, is that the more the software/hardware is capable of, the more kinds of tasks get done with it; but that also means way more demand for programmers, so now you really can't waste their time "optimizing" everything. And as a result we have word processors that are actually slower at times now, than back when the monitor screens were green dots on black backgrounds. So that's homeostasis at work, too.
And then there's multitasking. There are dozens of pages and programs open right now on my desktop, so a tragedy of the commons is taking place within the humming innards of my PC; a prisoner's dilemma in which each program (and the firm that made it) can hope that the others will only sip resources so that they can steal more cycles and download fatter ads in a browser tab and use sloppier code. They can be wasteful because the user won't usually know which code is being piggy, and because they know others will be piggy if they aren't. On the other hand, if they optimize like hell the customer probably won't notice (given the other piggy programs the customer is running in the background) so the software company has just thrown that money (a lot of money) away. More homeostasis.
- J_Darnley 11y agoClock speed might not have been increasing but have you looked at how quick newer processors execute the same instructions?
- Nomentatus 11y agoYou're right, there are complexities, and parallelism within each core, too - but again, some instructions will benefit from this a lot more than others (Von Neuman bottleneck, again.)