This paper proposes a technique to specify and verify whether a loop can be parallelised. Our ap-proach can be used as an additional step in a parallelising compiler to verify user annotations about loop dependences. Essentially, our technique requires each loop iteration to be specified with the locations it will read and write. From the loop iteration specifications, the loop (in)dependences can be derived. Moreover, the loop iteration specifications also reveal where synchronisation is needed in the parallelised program. The loop iteration specifications can be verified using permission-based separation logic.
[[abstract]]It is well known that extracting parallel loops plays a significant role in designing pa...
Loops are the main source of parallelism in scientific programs. Hence, several techniques were dev...
Synchronisation constructs lie at the heart of any reliable concurrent program. Many such constructs...
This paper proposes a technique to specify and verify whether a loop can be parallelised. Our approa...
Writing correct parallel programs becomes more and more difficult as the complexity and heterogeneit...
This thesis presents a set of verification techniques based on permission-based separation logic to ...
Abstract. Loops and other unbound control structures constitute a major bottleneck in formal softwar...
This work leverages an original dependency analysis to parallelize loops regardless of their form i...
This paper presents a fully automatic approach to loop paralleliza-tion that integrates the use of s...
AVA (similar comments apply to C, C++, or C#). Hence, not only isthere a lack of heuristic technique...
Thesis (Ph. D.)--University of Rochester. Dept. of Computer Science, 2012.Speculative parallelizatio...
Parallelization of programs relies on sound and precise analysis of data dependences in the code, sp...
[[abstract]]The main function of parallelizing compilers is to analyze sequential programs, in parti...
A simple but general parallel programming language is considered. The semantics of programs is defin...
This thesis explores two kinds of program logics that have become important for modern program verif...
[[abstract]]It is well known that extracting parallel loops plays a significant role in designing pa...
Loops are the main source of parallelism in scientific programs. Hence, several techniques were dev...
Synchronisation constructs lie at the heart of any reliable concurrent program. Many such constructs...
This paper proposes a technique to specify and verify whether a loop can be parallelised. Our approa...
Writing correct parallel programs becomes more and more difficult as the complexity and heterogeneit...
This thesis presents a set of verification techniques based on permission-based separation logic to ...
Abstract. Loops and other unbound control structures constitute a major bottleneck in formal softwar...
This work leverages an original dependency analysis to parallelize loops regardless of their form i...
This paper presents a fully automatic approach to loop paralleliza-tion that integrates the use of s...
AVA (similar comments apply to C, C++, or C#). Hence, not only isthere a lack of heuristic technique...
Thesis (Ph. D.)--University of Rochester. Dept. of Computer Science, 2012.Speculative parallelizatio...
Parallelization of programs relies on sound and precise analysis of data dependences in the code, sp...
[[abstract]]The main function of parallelizing compilers is to analyze sequential programs, in parti...
A simple but general parallel programming language is considered. The semantics of programs is defin...
This thesis explores two kinds of program logics that have become important for modern program verif...
[[abstract]]It is well known that extracting parallel loops plays a significant role in designing pa...
Loops are the main source of parallelism in scientific programs. Hence, several techniques were dev...
Synchronisation constructs lie at the heart of any reliable concurrent program. Many such constructs...