Hardware compression for caches has been shown to give considerable performance increases in code which is memory-intensive but slow down code which does have these same attributes due to the added overhead cost. The way this problem is being solved is by dynamically determining where the bottleneck of the system is and having compression be on a case by case basis.
The idea of expend computation to save bandwidth is mentioned more than once in the class. The motivation is, if our program is bandwidth-bounded, take advantage of computation power to try to reduce bandwidth pressure, since the CPU is idle at that time anyway.
Is it always better to compress data? Any bad example? (Assuming that even compressed cache hit latency is low)
@haboric I think the slide shows the bad example while compressing and decompressing is time consuming that result in increasing the cache hit latency.