FSCL: Homogeneous programming, scheduling and execution on heterogeneous platforms

Gabriele Cocco
Department of Computer Science, University of Pisa
University of Pisa, 2015


   title={Homogeneous programming, scheduling and execution on heterogeneous platforms},

   author={Cocco, Gabriele and Cisternino, Dott Antonio},



The last few years has seen activity towards programming models, languages and frameworks to address the increasingly wide range and broad availability of heterogeneous computing resources through raised programming abstraction and portability across different platforms. The effort spent in simplifying parallel programming across heterogeneous platforms is often outweighed by the need for low-level control over computation setup and execution and by performance opportunities that are missed due to the overhead introduced by the additional abstraction. Moreover, despite the ability to port parallel code across devices, each device is generally characterised by a restricted set of computations that it can execute outperforming the other devices in the system. The problem is therefore to schedule computations on increasingly popular multi-device heterogeneous platforms, helping to choose the best device among the available ones each time a computation has to execute. Our Ph.D. research investigates the possibilities to address the problem of programming and execution abstraction on heterogeneous platforms while helping to dynamically and transparently exploit the computing power of such platforms in a device-aware fashion. The Thesis in structured in four parts. In the first part we present the today’s situation in heterogeneous systems, we identify the major issues induced by the spreading heterogeneity and we discuss the relative implications. We analyse the most recent and relevant works in high-level programming, scheduling and execution on heterogeneous platforms, which represent the starting point of our Ph.D. research. The part is concluded with the formalization of the Thesis proposal. In the second part we present the research conducted. We define the context of our work and we discuss the approaches adopted to reach the goals that our proposal entails. The presentation is organized following the timeline and the structure of our research and the inter-dependencies between the goals. In the third part we validate the results obtained against the state of the art in heterogeneous programming and execution. We evaluate the benefits of our work and we identify the principal limitations. In the fourth part we summarise the work conducted and the relevant outcomes. We briefly propose again the statement of the Thesis and we match it against the results obtained. Finally, we present the implications of our work, the possible refinements and the potential future researches.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2017 hgpu.org

All rights belong to the respective authors

Contact us: