A Study of Energy and Locality Effects using Space-filling Curves
Nico Reissmann, Jan Christian Meyer, Magnus Jahre

TL;DR
This paper explores how space-filling curves like Hilbert and Morton can optimize energy efficiency in HPC by improving data locality during matrix multiplication, revealing trade-offs between computation overhead and energy savings.
Contribution
It provides an empirical analysis of the energy and locality effects of using space-filling curves in matrix operations, highlighting their advantages and limitations.
Findings
Morton curve balances index computation overhead with energy efficiency.
Hilbert curve's overhead outweighs its locality benefits on tested system.
Space-filling curves can improve data locality without architecture-specific tuning.
Abstract
The cost of energy is becoming an increasingly important driver for the operating cost of HPC systems, adding yet another facet to the challenge of producing efficient code. In this paper, we investigate the energy implications of trading computation for locality using Hilbert and Morton space-filling curves with dense matrix-matrix multiplication. The advantage of these curves is that they exhibit an inherent tiling effect without requiring specific architecture tuning. By accessing the matrices in the order determined by the space-filling curves, we can trade computation for locality. The index computation overhead of the Morton curve is found to be balanced against its locality and energy efficiency, while the overhead of the Hilbert curve outweighs its improvements on our test system.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
