Previous | Next --- Slide 42 of 60
Back to Lecture Thumbnails
wkorbe

If an application consists of mostly moving data, say something like a HTTP Server, is high energy usage just inherent and unavoidable?

gmukobi

@wkorbe, yeah I think so. However, that's less of an issue for big web servers set up in a cluster. The big point of this slide is contextualized by the fact that energy cost is usually the limiting factor in mobile computation because the more power you use (e.g. by inefficiently reading from memory a lot), the hotter your phone will get and the shorter its battery life will be which users don't like. Servers that are always plugged in with large heatsinks and in well-ventilated rooms don't care about those issues as much.

jtguibas

It seems like a common theme throughout parallel programming is that often we are memory-bound more than compute-bound by processors. Something cool for people to checkout is https://sambanova.ai, which directly optimizes for kernel placement for data movement optimization on processors.

ecb11

As an important conclusion from this slide, we see that recomputation and any time when we are bandwidth bound, it's optimal to recompute those values (e.g. as shown in Lecture 17 on graph compression) to take advantage of burning processor instructions—this is particularly applicable in the case of multi-core, BW-bound software/hardware.

timothy

Odd question, but I'm wondering why is data movement so expensive in terms of power, as these numbers are actually surprisingly high to me! Are there physical limitations we can point to here?

jasonalouda

What are common ways to reduce the amount of data transferred from memory? Is it through caching?

fractal1729

I think the reason that data movement is so expensive is a combination of (1) physical limitations of the hardware for a memory bus vs. a chip, (2) data is not just moved between memory and registers on a chip, but also between many levels of caches.

According to a paper I found, over a third of total device energy consumption is spent "moving data from one level of the memory hierarchy to the next level for interactive smart phone workloads". Furthermore, the paper found that the energy cost to perform a memory load instruction whose data is not found in the processor caches is 115 times higher than that of an add operation.

Paper: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6983056

Please log in to leave a comment.