It is widely recognized that a major disruption is under way in computer hardware as processors strive to extend, and go beyond , the end - game of Moore's Law. This disruption will include new forms of hetero- genous processor s, heterogeneous memories, near - memory computation structures , and, in some cases, Non - von Neumann computing elements.
In this talk, we summarize the software challenges for these levels of "extreme heterogeneity", with a fo- cus on the role of programming systems, which encompass programming models, compilers and related tools, and runtime systems. These challenges anticipate a new vision for programming systems that goes beyond their traditional role of mapping a specific subcomputation to a specific hard ware platform, to an expanded world view in which programming systems manage the global selection of computation and data mappings of subcomputations on heterogeneous subsystems.
We will discuss recent trends in programming models, compilers, and runtime systems that point the way towards addressing the challenges of extreme heterogeneity.