Unified programming models can effectively improve program portability on various heterogeneous high-performance computers.Existing unified programming models put a lot of effort to code portability but are still far ...Unified programming models can effectively improve program portability on various heterogeneous high-performance computers.Existing unified programming models put a lot of effort to code portability but are still far from achieving good performance portability.In this paper,we present a preliminary design of a performance-portable unified programming model including four aspects:programming language,programming abstraction,compilation optimization,and scheduling system.Specifically,domain-specific languages introduce domain knowledge to decouple the optimizations for different applications and architectures.The unified programming abstraction unifies the common features of different architectures to support common optimizations.Multi-level compilation optimization enables comprehensive performance optimization based on multi-level intermediate representations.Resource-aware lightweight runtime scheduling system improves the resource utilization of heterogeneous computers.This is a perspective paper to show our viewpoints on programming models for emerging heterogeneous systems.展开更多
基金partially supported by the National Natural Science Foundation of China under Grant No.62225206.
文摘Unified programming models can effectively improve program portability on various heterogeneous high-performance computers.Existing unified programming models put a lot of effort to code portability but are still far from achieving good performance portability.In this paper,we present a preliminary design of a performance-portable unified programming model including four aspects:programming language,programming abstraction,compilation optimization,and scheduling system.Specifically,domain-specific languages introduce domain knowledge to decouple the optimizations for different applications and architectures.The unified programming abstraction unifies the common features of different architectures to support common optimizations.Multi-level compilation optimization enables comprehensive performance optimization based on multi-level intermediate representations.Resource-aware lightweight runtime scheduling system improves the resource utilization of heterogeneous computers.This is a perspective paper to show our viewpoints on programming models for emerging heterogeneous systems.