5 ms·
>With the hardware being multiple times faster, why doesn't software follow suit? Because software has to be written in a way that leverages the new hardware.
by juststeve 6y ago
>With the hardware being multiple times faster, why doesn't software follow suit?
Because software has to be written in a way that leverages the new hardware. The optimization is not automatic. If you haven't read this[1] then it may provide some insight.
[1] https://lwn.net/Articles/250967/ https://lwn.net/Articles/250967/ (see parts 5 and 6)
- Someone 6y agoThe part where you need to do work to really use the new hardware typically is for stuff computers didn’t use to do at all. For parts where you think “my computer from 10 years ago did that, too, and at the same speed” I think it’s more because software gets written to use the new hardware. It seems there’s an equivalent of Marchetti’s constant (https://en.wikipedia.org/wiki/Marchetti's_constant https://en.wikipedia.org/wiki/Marchetti's_constant: “Marchetti posits that although forms of urban planning and transport may change, and although some live in villages and others in cities, people gradually adjust their lives to their conditions (including location of their homes relative to their workplace) such that the average travel time stays approximately constant”) for the speed of personal computers. As computers get faster, programs get more resource-hungry. Some of that has tangible benefits. Screens have higher resolution, icons are much larger, spell checkers get better, emojis are added, text anti-aliasing is improved, support for perceptual color spaces ais added, video codecs get better compression, but at the price of decompression speed, etc. (often, the law of diminishing returns is harsh, but there is progress) Some of it is invisible; programs grow in resource usage in exchange for a shorter time to market. Growth comes from using more resource-hungry languages, from using large libraries, and from not spending (‘wasting’) time to find performance bottlenecks.
- viraptor 6y agoThis can be seen when installing an old OS for example. This is as controlled situation as you can get - no background tasks, bare metal operation. Installing XP and updating it to SP2 took half an hour or so. Doing exactly the same thing on a system produced 10 years later... takes a comparable amount of time (slightly improved by SSD write speed)
- juststeve 6y agoPerfect example. And now we have SIMD/AVX-512, as well as the M1 ... the compilers/runtimes need to be able to output the optimized instructions to make applications really fly. Also, OP photoshop might be slow because it's dialing into the cloud?