Multicore clusters provide cost-effective platforms for running CPU-intensive and data-intensive parallel applications. To effectively utilise these platforms, sharing their resources is needed amongst the applications rather than dedicated environments. When such computational platforms are shared, user applications must compete at runtime for the same resource so the demand is irregular and hence the load is changeable and unpredictable. This thesis explores a mechanism to exploit shared multicore clusters taking into account the external load. This mechanism seeks to reduce runtime by finding the best computing locations to serve the running computations. We propose a generic algorithmic data-parallel skeleton which is aware of its computat...
These days, the popularity of technologies such as machine learning, augmented reality, and big data...
The proliferation of widely available, but very different, parallel architectures makes the ability...
This is a post-peer-review, pre-copyedit version of an article published in Cluster Computing. The ...
Computational environments, such as clusters and grids, provide a cost-effective platform for runnin...
Parallel and heterogeneous systems are ubiquitous. Unfortunately, both require significant complexit...
High performance architectures are increasingly heterogeneous with shared and distributed memory co...
The task parallel programming model allows programmers to express concurrency at a high level of abs...
Algorithmic skeletons abstract commonly-used patterns of parallel computation, communication, and in...
Pervasive computing software helps to manage information and reduce the complexity of available comp...
Improving program performance through the use of multiple homogeneous processing elements, or cores...
The widespread adoption of traditional heterogeneous systems has substantially improved the computin...
This paper addresses the problem of load balancing data-parallel computations on heterogeneous and t...
A programmable Java distributed system, which adapts to available resources, has been developed to ...
The widespread adoption of traditional heterogeneous systems has substantially improved the computin...
Load imbalance is a major source of performance degradation in parallel scientific applications. Loa...
These days, the popularity of technologies such as machine learning, augmented reality, and big data...
The proliferation of widely available, but very different, parallel architectures makes the ability...
This is a post-peer-review, pre-copyedit version of an article published in Cluster Computing. The ...
Computational environments, such as clusters and grids, provide a cost-effective platform for runnin...
Parallel and heterogeneous systems are ubiquitous. Unfortunately, both require significant complexit...
High performance architectures are increasingly heterogeneous with shared and distributed memory co...
The task parallel programming model allows programmers to express concurrency at a high level of abs...
Algorithmic skeletons abstract commonly-used patterns of parallel computation, communication, and in...
Pervasive computing software helps to manage information and reduce the complexity of available comp...
Improving program performance through the use of multiple homogeneous processing elements, or cores...
The widespread adoption of traditional heterogeneous systems has substantially improved the computin...
This paper addresses the problem of load balancing data-parallel computations on heterogeneous and t...
A programmable Java distributed system, which adapts to available resources, has been developed to ...
The widespread adoption of traditional heterogeneous systems has substantially improved the computin...
Load imbalance is a major source of performance degradation in parallel scientific applications. Loa...
These days, the popularity of technologies such as machine learning, augmented reality, and big data...
The proliferation of widely available, but very different, parallel architectures makes the ability...
This is a post-peer-review, pre-copyedit version of an article published in Cluster Computing. The ...