3 ms·
Moore's law is more of an implementation detail than anything else. Nobody really cares about transistors. What we all care about is computational density, co
by Expez 11y ago
Moore's law is more of an implementation detail than anything else. Nobody really cares about transistors. What we all care about is computational density, computational efficiency, and exponential progress. Thus the interesting metrics are something like flops/m^3 and flops/Watt. The cool thing about Moore's law is that by just shrinking transistors we would get both smaller and more energy efficient chips.
I think that economical forces will continue to drive progress, and probably exponential progress like we've enjoyed in the past, for at least another decade. Probably several.
The way this is going to happen is through a paradigm shift. To the layman this seems weird, but to anyone in the business this should be expected. We've already been through quite a few. The first computing devices were mechanical, then they were based on electrical relays, then came the vacuum tubes and finally we entered the era of the transistor. We can argue about what the next paradigm will be, but I have no doubt there will be one. And soon.
- pjc50 11y agoThis is all very "something will come up" without any kind of technological foundation. It's not a simple process of money in, changes to the laws of physics out. This is why we've seen only small incremental improvements to batteries over the years rather than doubling every 18 months. VLSI has been very lucky that a single process parameter, lambda, can be incrementally refined to give such huge benefits. The MHz race has already slowed dramatically. There's now a push to software developers to take advantage of multicore, which is advancing only very slowly. Remember that many HN readers write single-threaded (but maybe asynchronous) Javascript.
- Joeri 11y agoMaybe we'll see a paradigm shift to functional programming, to take advantage of all those cores. Or maybe we'll see the adoption of auto-parallellizing languages and frameworks. A paradigm shift can happen in software as well as hardware. We could also gain a few orders of magnitude in real world performance of many use cases by having bulk storage with the performance characteristics of RAM.
- pohl 11y agoWhile we're fantasizing, maybe the world will stop typing in qwerty, and we'll be able to buy Dvorak keyboards at the corner store. People are much harder to move.
- mpweiher 11y agoThe "FP for multi-core" trope is a red-herring, at least so far. Yes, immutability makes parallelizing easier. It also makes things in general so much more expensive that we're still net-negative by a large margin. For example, Simon Peyton Jones gave a talk[1] about Data Parallel Haskell, which after many years of development was still slower on 6 cores than C on a single core. [1] https://www.youtube.com/watch?v=NWSZ4c9yqW8 https://www.youtube.com/watch?v=NWSZ4c9yqW8
- Symmetry 11y agoI think the state of the art for Haskell has improved a lot in terms of scientific computing since 2010? http://research.microsoft.com/en-us/um/people/simonpj/papers/ndp/haskell-beats-C.pdf http://research.microsoft.com/en-us/um/people/simonpj/papers...
- mpweiher 11y agoGlad to hear that they've improved enough to look good on their own benchmarks :-)
- ilzmastr 11y agoFrom my experience with CUDA, parallelism doesn't require any functional like programming. CUDA is very non functional from my perspective since parallel units of work have no return values and their only way of persisting information is to write to a global namespace. Also parallel algorithms are often clever and sometimes take advantage of domain specific details to cut corners for more performance. It seems to me that eventually people will have to use a more complex programming model to get past performance hits. One question is whether the majority of programmers will encounter performance hits in the future
- mpweiher 11y agoI am not so sure. The thing is that computers are already very very fast for most of the tasks we have for them. So fast, in fact, that most of the excess compute power nowadays goes into completely avoidable inefficiency. As long as more compute power was effectively free, at least for users, with each new generation of computers, this was a tradeoff that people were willing to make, as it wasn't really much of a tradeoff. I think this was Myhrvold's law: "Software is like a gas, it expands to fill its container". Once the container doesn't expand so freely, the economic pressures you mention may act on software to take out some of the bloat. [1] http://thegambitplayer.blogspot.de/2011/02/interesting-article-nathan-myhrvolds.html http://thegambitplayer.blogspot.de/2011/02/interesting-artic...
- AnimalMuppet 11y ago> Thus the interesting metrics are something like flops/m^3 and flops/Watt. Also flops/$.