Algorithms in new application areas like machine learning and data analytics usually operate on unstructured sparse graphs. Writing efficient parallel code to implement these algorithms is very challenging for a number of reasons. First, there may be many algorithms to solve a problem and each algorithm may have many implementations. Second, synchronization, which is necessary for correct parallel execution, introduces potential problems such as data-races and deadlocks. These issues interact in subtle ways, making the best solution dependent both on the parallel platform and on properties of the input graph. Consequently, implementing and selecting the best parallel solution can be a daunting task for non-experts, since we have few perfo...
Parallel computing promises several orders of magnitude increase in our ability to solve realistic c...
This paper presents a new technique for introducing and tuning parallelism for heterogeneous shared-...
The last several years have seen multicore architectures become ascendant in the computing world. As...
Parallel computing hardware is ubiquitous, ranging from cell-phones with multiple cores to super-com...
Efficiently processing large graphs is challenging, since parallel graph algorithms suffer from poor...
Irregular algorithms such as graph algorithms, sorting, and sparse matrix multiplication, present nu...
textA programming model which allows users to program with high productivity and which produces high...
In this thesis we examine three problems in graph theory and propose efficient parallel algorithms f...
The present state of electronic technology is such that factors affecting computation speed have alm...
Dissertação apresentada na Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa para ob...
Thesis: Ph. D., Massachusetts Institute of Technology, Department of Electrical Engineering and Comp...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
Today's hardware is becoming more and more parallel. While embarrassingly parallel codes, such as hi...
The goal of this dissertation is to give programmers the ability to achieve high performance by focu...
Four paradigms that can be useful in developing parallel algorithms are discussed. These include com...
Parallel computing promises several orders of magnitude increase in our ability to solve realistic c...
This paper presents a new technique for introducing and tuning parallelism for heterogeneous shared-...
The last several years have seen multicore architectures become ascendant in the computing world. As...
Parallel computing hardware is ubiquitous, ranging from cell-phones with multiple cores to super-com...
Efficiently processing large graphs is challenging, since parallel graph algorithms suffer from poor...
Irregular algorithms such as graph algorithms, sorting, and sparse matrix multiplication, present nu...
textA programming model which allows users to program with high productivity and which produces high...
In this thesis we examine three problems in graph theory and propose efficient parallel algorithms f...
The present state of electronic technology is such that factors affecting computation speed have alm...
Dissertação apresentada na Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa para ob...
Thesis: Ph. D., Massachusetts Institute of Technology, Department of Electrical Engineering and Comp...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
Today's hardware is becoming more and more parallel. While embarrassingly parallel codes, such as hi...
The goal of this dissertation is to give programmers the ability to achieve high performance by focu...
Four paradigms that can be useful in developing parallel algorithms are discussed. These include com...
Parallel computing promises several orders of magnitude increase in our ability to solve realistic c...
This paper presents a new technique for introducing and tuning parallelism for heterogeneous shared-...
The last several years have seen multicore architectures become ascendant in the computing world. As...