|
| EPSRC Reference: |
GR/R65169/01 |
| Title: |
Software and Hardware for Efficient Speculative Multithreading |
| Principal Investigator: |
Dr M Cintra |
| Other Investigators: |
|
| Researcher Co-investigator: |
|
| Project Partner: |
|
| Department: |
Sch of Informatics |
| Organisation: |
University of Edinburgh |
| Scheme: |
Fast Stream |
| Starts: |
01 October 2001 |
Ends: |
30 September 2004 |
Value (£): |
62,607
|
| EPSRC Research Topic Classifications: |
|
| EPSRC Industrial Sector Classifications: |
|
| Related Grants: |
|
| Panel History: |
|
|
Summary |
Single-chip multiprocessor and multithreaded architectures provide a future alternative path to ever more powerful and complex wide issue out-of-order superscalar processors. Parallelising compilers have shown good automatic parallelisation coverage for numerical applications, but still fail to parallelis general purpose applications due to compile-time intractability. Speculative parallelisation can overcome the compiler's limitations by aggressively executing in parallel programs that cannot be fully parallelised by the compiler. Currently, however, there is no existing compiler theory or technology t< exploit speculative multi-processor parallelism. Also, there is no clear architectural design for a speculative multiprocessor or multithreaded processor. This project aims to develop novel compiler techniques for automatic speculative parallel isation, and to explore a series of architectural design configurations, including speculative multiprocessors and multithreaded processors.
|
| Final Report Summary |
|
The Scope of this project was speculative parallelisation , a technique that allows parallel execution of parts of a sequential program even when traditional automatic compiler parallelisation fails. This project contributed within this topic in two research directions: compiler support and software-only speculative support parallelisation. Within the research diretion of compiler support, this project developed a novel compiler framework for statically estimating the speedups, or slowdowns, obtained through speculative parallelisation of candidate loops. Our framework was the first (and at the time of writing this report, the only) in the followinf aspects: the execution cost model can incorporate all speculative parallelisation overheads, and the framework produces a quantitive estimate of the overall speedup. Within the research direction of software-only speculative parallelisation, this project developed a highly optimised software-only speculative parallelisation scheme for shared-memory multiprocessors. A major contribution of this work was to sho, for thie first time, that speculative loads and stores can proceed concurrently without mutual exclusion. Additionally, we have used our software scheme to speculatively parallelise a randomised incremental algorithm in computational geometry. Sch algorithms give the best sequential solutions but are very hard to parallelise with any other compile-time or run-time technique.
|
| Further Information: |
http://www.homepages.inf.ed.ac.uk/mc/Projects/VESPA/vespa.html |
| Organisation Website: |
http://www.ed.ac.uk |
|
|