Using Software Refactoring to Form Parallel Programs(...): Chris Brown, Kevin Hammond
254 views · Published 28 June 2012 · 34:23 · Indexed 28 September 2026
Channel: Erlang Solutions · 2012 · Science & Technology
Erlang User Conference 2012 erlang-solutions.com erlang-factory.com "Despite Moore's ``law'', uniprocessor clock speeds have now stalled. Rather than using single processors running at ever higher clock speeds, it is common to find dual-, quad- or even hexa-core processors, even in consumer laptops and desktops. Future hardware will not be slightly parallel, however, as in today's multicore systems, but will be massively parallel, with manycore and perhaps even megacore systems becoming mainstream. This means that programmers need to start thinking parallel from the outset of their program development rather than treating parallelism as a bolt-on afterthought. This talk introduces the Paraphrase approach to constructing parallel programs, a new approach that uses formally-defined refactoring transformations based around strong parallel patterns and associated skeleton implementations, and directly exploits functional programming concepts. We show how complex parallel programs can be built from primitive Erlang building blocks, and describe some new software refactorings for parallel Erlang programs that capture common parallel abstractions, such as divide-and-conquer and data parallelism, using these building blocks. The ParaPhrase approach is both flexible and scalable, capable of covering both GPU and CPU computations, scaling from multi-core to mega-core processors, and covering a variety of parallel programming paradigms. " Follow us on Twitter @Erlangfactory twitter.com/#!/erlangfactory Join our group on Linkedin Erlang Factory linkedin.com/groups/Erlang-Factory-2003110?trk=myg_ugrp_ovr
More from this channel
-
30:33
Erlang Application Metrics with Folsom: Joe Williams
-
40:49
Accelerated Erlang Development with e2: Garrett Smith
-
49:37
Erlang metaprogramming made easy: Richard Carlsson
-
39:13
Erlang on Xen - a quest for lower instance startup latency: Maxim Kharchenko
-
30:36
Migrating a C++ team to using Erlang to deliver a real-time bidding ad system: Ken Wilson
-
22:04
The Openflow Soft Switch: Krzysztof Rutka
-
12:17
Mnesia Backend Plugin Framework and a LevelDB-based Plugin: Roland Karlsson, Malcolm Matalka
-
26:14
Scalable ejabberd: Konstantin Tcepliaev