BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Talks.cam//talks.cam.ac.uk//
X-WR-CALNAME:Talks.cam
BEGIN:VEVENT
SUMMARY:Multi-core programming with automatic parallelisation - Tim Harris
 \, Microsoft Research\, Cambridge
DTSTART:20071031T141500Z
DTEND:20071031T151500Z
UID:TALK8144@talks.cam.ac.uk
CONTACT:Timothy G. Griffin
DESCRIPTION:\nThe "free lunch" of exponentially increasing sequential soft
 ware\nperformance is said to be over: all major processor manufacturers\na
 re chasing increasing degrees of hardware parallelism instead\nof ever-hig
 her clock speeds.  We need parallel software to make\ngood use of these pr
 ocessors\, but parallel programming has a\nnotoriously steep learning curv
 e.  What can the computer science\nresearch community do to make things ea
 sier?\n\nOne tempting approach is to automatically build parallel\nimpleme
 ntations from sequential programs. This led to a\nlot of work in the 1980s
  in the functional programming\ncommunity\, and the exploration of data-fl
 ow processor\narchitectures that could exploit the very fine grained\npara
 llelism that was achieved.  In this talk I'll describe\nsome work we've be
 en doing returning to this question and\ninvestigating whether we can achi
 eve automatic parallelisation\nof software when using today's multi-core p
 rocessors.\n\nOur approach is to (i) profile the execution of a program\, 
 (ii)\nfrom this to identify pieces of work which are promising\nsources of
  parallelism\, (iii) use spare processor cores to\nspeculatively perform t
 his work\, (iv) detect at run-time\nany attempt to perform operations that
  would reveal the\npresence of speculation.  Our results show 10-80% speed
 -ups\non several programs.  This is clearly not a replacement for\ncareful
  manual parallelisation\, but may provide a way of\nsqueezing out a little
  extra performance without much\neffort: free coffee\, if not a free lunch
 .
LOCATION:Lecture Theatre 1\, Computer Laboratory
END:VEVENT
END:VCALENDAR
