Megacore: Megafast, Megacool? – Kevin Hammond – Erlang User Conference 2015
More info and slides: erlang-factory.com/euc2015/kevin-hammond
Multicore is just the start of an ongoing revolution in computer hardware. Manycore machines with hundreds of cores are already being produced, and future systems may well have thousands or even millions of cores, a true megacore era. Dealing with the scale and complexity of megacore (even manycore) systems is incredibly hard using the typical, concurrency-based, approaches that are used today. It becomes almost impossible if a system mixes e.g. CPU and GPU cores. Fortunately, functional programming languages, like Haskell and Erlang, offer huge potential for easy, scalable, and bug-free parallelism. This talk will explore current hardware trends, highlight some recent research results, and show how easy-to-use functional programming techniques can help achieve long-term portability, with built-in scalability, across both current and emerging computer architectures. It will also consider how to balance energy usage against execution time. There may be occasional references to types.
The talk aims to expose the audience to new ideas and research results in an easy to digest way, explaining key trends in multicore/manycore programming and showing how functional programming helps with scalability. The concepts are general and transferrable.
The talk should appeal to anyone who is facing scalability issues or who is interested in recent hardware developments and how functional programming can deal with them.
Professor of Computer Science, Haskell designer, parallel programmer, implementor