Andrew Chien - UpDown Project

Jun 29, 20261 min

There’s plenty of room at the Top: What will drive computer performance after Moore’s law? https://www.science.org/doi/10.1126/science.aam9744

  • Problem: Co-design (customization) often produces "high-Q" accelerators
    • Hardware for software has been customization focused
    • Most accelerators are high-Q filters
      • CPU: must have lots of data reuse for CPU to be "high performance"
      • GPU: must have data parallelism, regular control, lots of reuse, dense matrix operations (small) - to get "high performance"
      • TPU: must have dense matrix operations (large) - to get "high performance"
  • Impact of Hi-Q systems on software and algorithms:
    • Existing programs don't run well - need new software
      • Many algorithms & data structures don't match the structure (don't use, even if they're good)
        • Hierarchical parallelism, irregular parallelism
        • Conditional control, irregular memory access, low data resuse
        • Interesting data movement (doesn't match prefetcher)
      • Don't match the machine
        • Hardwired specific formats and operations
        • "Restructure" computation to match → programming complexity
    • Worse - destroys software portability
      • Tuned for one platform's "Q", not generally
      • Death of general-purpose multi-platform software?
  • Accelerator for top of stack software innovation?
    • Lower Q, but still high performance
    • Enables software and algo innovation for even higher performancehigh Q.png
  • UpDown approach: orthogonalize program development
    • UpDown makes it easy to express and manage max parallelism
      • Efficient parallelism mechanisms - fine grained, natural vertex/edge parallelism
      • Global naming enables separate expression of computation
      • Flexible tuning of data layout, efficient translation
      • Makes tuning and interactive exploration efficient
  • Key aspects of UpDown programming view:
updown 1.png updown 2.png