We couldn’t really have achieved this degree of power efficiency on 80’s tech though. Likewise, we couldn’t have gotten to 2020’s tech (always-on wrist-watch displays that last days), without increased power efficiency. Advancements in either one facilitate advancements in the other.
As a fun example, I’ve been simulating core memory at the level of electric/magnetic fields lately. It takes literally trillions of floating point operations to simulate just 1 nanosecond of a single bit of core memory. In doing this, I can identify things like “if we were to arrange the cores like <this>, we could reduce the peak magnitude of the radiated fields when a core flips, thus we could get by with using slightly softer ferrites (which use less energy when switching state) without encountering noise problems.”
But of course, a trillion fp operations was a lot more back then! Having more advanced tech made it substantially easier to optimize the earlier tech. Optimizing compilers are maybe a more direct, but limited, example of this. The faster a CPU can run your code, the more cycles you can have your compiler spend making that code run even faster. I’m not sure there’s a good term for these “mutual feedback loops”, but they seem to pop up a lot.