Many scientific applications involve array operations that are sparse in nature, ie array elements depend on the values of relatively few elements of the same or another array. When parallelised in the shared-memory model, there are often inter-thread dependencies which require that the individual array updates are protected in some way. Possible strategies include protecting all the updates, or having each thread compute local temporary results which are then combined globally across threads. However, for the extremely common situation of sparse array access, neither of these approaches is particularly efficient. The key point is that data access patterns usually remain constant for a long time, so it is possible to use an inspector/execut...
This is a post-peer-review, pre-copyedit version of an article published in Lecture Notes in Compute...
Poor scalability on parallel architectures can be attributed to several factors, among which idle ti...
Abstract. A loop with irregular assignment computations contains loopcarried output data dependences...
Many scientific applications involve array operations that are sparse in nature, ie array elements d...
Sparse and unstructured computations are widely used in Scientific and Engineering Applications. Suc...
In prior work, we have proposed techniques to extend the ease of shared-memory parallel programming ...
In prior work, we have proposed techniques to extend the ease of shared-memory parallel programming ...
In previous work, we have proposed techniques to extend the ease of shared-memory parallel programmi...
A program analysis tool can play an important role in helping users understand and improve OpenMP co...
This paper presents a combined compile-time and runtime loop-carried dependence analysis of sparse m...
OpenMP has emerged as an important model and language extension for shared-memory parallel programmi...
In this paper, we present two new run-time algorithms for the parallelization of loops that have ind...
International audienceParallelization of existing sequential programs to increase their performance ...
Many large-scale computational applications contain irregular data access patterns related to unstru...
Abstract-We propose an approach by integrating static and dynamic program analyses to detect threads...
This is a post-peer-review, pre-copyedit version of an article published in Lecture Notes in Compute...
Poor scalability on parallel architectures can be attributed to several factors, among which idle ti...
Abstract. A loop with irregular assignment computations contains loopcarried output data dependences...
Many scientific applications involve array operations that are sparse in nature, ie array elements d...
Sparse and unstructured computations are widely used in Scientific and Engineering Applications. Suc...
In prior work, we have proposed techniques to extend the ease of shared-memory parallel programming ...
In prior work, we have proposed techniques to extend the ease of shared-memory parallel programming ...
In previous work, we have proposed techniques to extend the ease of shared-memory parallel programmi...
A program analysis tool can play an important role in helping users understand and improve OpenMP co...
This paper presents a combined compile-time and runtime loop-carried dependence analysis of sparse m...
OpenMP has emerged as an important model and language extension for shared-memory parallel programmi...
In this paper, we present two new run-time algorithms for the parallelization of loops that have ind...
International audienceParallelization of existing sequential programs to increase their performance ...
Many large-scale computational applications contain irregular data access patterns related to unstru...
Abstract-We propose an approach by integrating static and dynamic program analyses to detect threads...
This is a post-peer-review, pre-copyedit version of an article published in Lecture Notes in Compute...
Poor scalability on parallel architectures can be attributed to several factors, among which idle ti...
Abstract. A loop with irregular assignment computations contains loopcarried output data dependences...