> At the cost of significantly increased work for the programmer, yeah.
It's more a language issue. Parallelism is tricky because of all the unexpected interactions between multiple executions referring to the same data. FP eases that.
The physics problem is heat dissipation. When you double the clock, the heat output increases 4x (IIRC, it's been a long time and, by the time I was graduating, we thought Moore's Law would hit us at 100 MHz).
It's more a language issue. Parallelism is tricky because of all the unexpected interactions between multiple executions referring to the same data. FP eases that.
The physics problem is heat dissipation. When you double the clock, the heat output increases 4x (IIRC, it's been a long time and, by the time I was graduating, we thought Moore's Law would hit us at 100 MHz).