Title :
Towards an Effective Unified Programming Model for Many-Cores
Author :
Varbanescu, Ana Lucia ; Hijma, Pieter ; Van Nieuwpoort, Rob ; Bal, Henri
Author_Institution :
Comput. Syst. Group, Vrije Univ. Amsterdam, Amsterdam, Netherlands
Abstract :
Building an effective programming model for many-core processors is challenging. On the one hand, the increasing variety of platforms and their specific programming models force users to take a hardware-centric approach not only for implementing parallel applications, but also for designing them. This approach diminishes portability and, eventually, limits performance. On the other hand, to effectively cope with the increased number of large-scale workloads that require parallelization, a portable, application-centric programming model is desirable. Such a model enables programmers to focus first on extracting and exploiting parallelism from their applications, as opposed to generating parallelism for specific hardware, and only second on platform-specific implementation and optimizations. In this paper, we first present a survey of programming models designed for programming three families of many-cores: general purpose many-cores (GPMCs), graphics processing units (GPUs), and the Cell/B.E.. We analyze the usability of these models, their ability to improve platform programmability, and the specific features that contribute to this improvement. Next, we also discuss two types of generic models: parallelism-centric and application-centric. We also analyze their features and impact on platform programmability. Based on this analysis, we recommend two application-centric models (OmpSs and OpenCL) as promising candidates for a unified programming model for many-cores and we discuss potential enhancements for them.
Keywords :
application program interfaces; computer graphic equipment; coprocessors; multiprocessing systems; Cell/B.E; GPMC; GPU; OmpS; OpenCL; application-centric programming model; general purpose many-cores; graphics processing units; many-core accelerators; many-core processors; multicore processors; parallelism generation; parallelism-centric model; unified programming model; Computational modeling; Computer architecture; Concurrent computing; Data models; Parallel processing; Productivity; Programming;
Conference_Titel :
Parallel and Distributed Processing Workshops and Phd Forum (IPDPSW), 2011 IEEE International Symposium on
Conference_Location :
Shanghai
Print_ISBN :
978-1-61284-425-1
Electronic_ISBN :
1530-2075
DOI :
10.1109/IPDPS.2011.210