3 ms·
What would the impact be on battery life compared to native execution? Can one get it just as power efficient as native execution, only slower? For computationa
by fsiefken 5y ago
What would the impact be on battery life compared to native execution? Can one get it just as power efficient as native execution, only slower? For computationally less intensive applications browser portability might be an excellent tradeoff.
It gives a new meaning to the slogan "write once, run everywhere".
- eklitzke 5y agoGenerally things that run faster are more power efficient, because the CPU has to run for less time to do the same work. There might be a few odd exceptions here and there, e.g. certain AVX instructions can use a lot of power, but they're not common.
- mhh__ 5y agoThose AVX instructions use more power at least in part because they massively better utilize the silicon, so you're making a tradeoff between speed and efficiency as per usual.
- deathanatos 5y agoSorry, but to be pedantic for a second: do they consume more energy, which is really what I care about for battery life? (Let's assume I'm committed to asking the machine to do whatever work it is that I asked it to do, so the required computation is constant, for discussion.) My understanding of AVX is that it consumes more power, yes — but the point the parent makes is a good one: if it finishes faster, where does the energy use come out? More power over less time can mean less energy. (Or more. Depends on the additional power vs. the time saved…)
- mhh__ 5y ago1. This all depends massively on the actual workload and chip, a lot of people are basically winging it when it comes to AVX power consumption stories. The rub is also that, especially on laptops, you can get convexity in all the scaling problems e.g. you do more work, good, but then the laptop throttles then stays throttled for a while etc. 2. The original (real) power issues with the original/early AVX-512 desktop chips have basically gone away. It's not far off the timescale that you'd looking back to be bashing AMD for bulldozer. I'd measure it for you on my machine but I don't have an accurate power-o-meter for my computer.
- astrange 5y agoI've seen several student projects that try to find "more energy efficient" compilations through random searches of compiler flags etc., but they never get any results. In a JIT language you might be able to save time by running the JIT less often though.
- MaxBarraclough 5y agoHave any of these attempts taken a profile-guided approach?
- fulafel 5y agoUsers of computationally intensive applications aren't such efficiency freaks much of the time, they tend to take "good enough" in that dpartment, like it is in other areas. In addition to cross platform portability they appreciate outcomes that stem from development performance/productivity (timely app delivery, app correctness and robustness, low cost, features, adaptability to feature requests, usabiity, etc).