University of Cambridge > Talks.cam > Computer Laboratory Programming Research Group Seminar >  Concise analysis using implication algebras for task-local memory optimisation

Concise analysis using implication algebras for task-local memory optimisation

Add to your list(s) Download to your calendar using vCal

If you have a question about this talk, please contact Raoul-Gabriel Urma.

OpenMP is a pragma-based extension to C to support parallelism. The OpenMP standard recently added support for task-based parallelism but in a richer way than languages such as Cilk. Naive implementations give each task its own stack for task-local memory, which is very inefficient.

We detail a program analysis for OpenMP to enable tasks to share stacks without synchronisation—-either unconditionally or dependent on some cheap run-time condition which is very likely to hold in busy systems.

The analysis is based on a novel implication-algebra generalisation of logic programming which allows concise but easily readable encodings of the various constraints. The formalism enables us to show that the analysis has a unique solution and polynomial-time complexity.

We conclude with performance figures.

This talk is part of the Computer Laboratory Programming Research Group Seminar series.

Tell a friend about this talk:

This talk is included in these lists:

Note that ex-directory lists are not shown.

 

© 2006-2024 Talks.cam, University of Cambridge. Contact Us | Help and Documentation | Privacy and Publicity