P. (Saday) Sadayappan
Department of Computer Science and Engineering at Ohio State University.
Heterogeneity is ubiquitous in computing systems today, and this trend can be expected to continue into the future. While heterogeneous systems can offer energy and performance benefits over homogeneous systems, with opportunities to match domain characteristics of the application to the architectural characteristics of the target platform, they pose a significant challenge to the productive development of portable high-performance software. This talk will discuss two themes pertinent to this challenge:
1) Pattern-specific optimization: Domain-specific languages and frameworks can be much more effective than general-purpose compilers in optimized code generation for multiple target platforms because high-level semantic properties and important computational patterns for the domain can be exploited. The power of domain-specific frameworks will be illustrated using stencil computations and tensor contractions.
2) Characterization of data movement complexity: The relative cost of data movement to computational operations continues to increase, both in terms of time and energy. Therefore computational complexity can no longer be the primary basis for algorithm choice. However, while the computational complexity of algorithms is well understood, data movement complexity is not. Prospects and challenges in the context of domain-specific optimization will be discussed.