ebook img

Speculative Runtime Parallelization of Loop Nests PDF

50 Pages·2015·1.79 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Speculative Runtime Parallelization of Loop Nests

Speculative Runtime Parallelization of Loop Nests: Towards Greater Scope and E�ciency Aravind Sukumaran-Rajam, Luis Esteban Campostrini, Juan Manuel Martinez Caaman˜o, Philippe Clauss 25 May, 2015 HIPS Inria APOLLO 25May,2015 1/47 Apollo What is this talk about ? A dynamic and speculative optimizer Optimization of loop nests that cannot be handled statically Dynamic application of polyhedral model Non linear extensions to polyhedral model Inria APOLLO 25May,2015 2/47 Motivation Static approaches are limited due to intractable control and memory instructions Indirect memory accesses (A[B[i]]) Pointers (ptr = ptr-> next) While loops (While (ptr!=NULL)) Dynamic approaches can overcome these limitations by using run-time information Inria APOLLO 25May,2015 3/47 Motivation Dynamic approaches require to be speculative to enlarge their scope (Thread level speculation) Traditional TLS system relies on centralized verification which is not scalable due to the high memory tra�c Apollo uses a prediction model based on the polytope model and on linear approximations introduced in this talk Inria APOLLO 25May,2015 4/47 Generic automatic and speculative code optimization Predict an optimization Verify that the prediction holds A fail-safe system to recover from a mis-prediction Inria APOLLO 25May,2015 5/47 Traditional TLS system Inria APOLLO 25May,2015 6/47 Traditional thread level speculation while (cond) { a[i] = ...; .. .. .. x = a[j]; } Inria APOLLO 25May,2015 7/47 Traditional thread level speculation Sequential execution order a[1] = ... x = a[100] a[201] = ... x = a[101] a[100] = ... x = a[102] a[250] = ... x = a[103] Inria APOLLO 25May,2015 8/47 How is this a↵ected ? Missed parallelization opportunities Higher mis-prediction rates Huge centralization overhead Traditional thread level speculation What is missing ? A dependence prediction model Inria APOLLO 25May,2015 9/47 Traditional thread level speculation What is missing ? A dependence prediction model How is this a↵ected ? Missed parallelization opportunities Higher mis-prediction rates Huge centralization overhead Inria APOLLO 25May,2015 9/47

Description:
Optimization of loop nests that cannot be handled statically Non linear extensions to polyhedral model. Inria. APOLLO. 25 May, 2015. 2 / 47
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.