. .

YAPC::EU 2010 - The Renaissance of Perl



Perl on Speed: Multicore Programming for Mortals

Perl on Speed: Multicore Programming for Mortals

By Aaron Crane (‎arc‎) from Edinburgh.pm
Date: Friday, 6 August 2010 12:30
Duration: 20 minutes
Target audience: Intermediate
Language: English
Tags: concurrent efficiency fast fork multicore multiprocessor parallel performance processor programming smp speed unix

You can find more information on the speaker's site:

As multi-core and multi-processor systems become ever more widespread, programmers are faced with a new challenge: writing software that can take full advantage of the parallelism in the hardware.

Concurrent code has a reputation for being tricky to get right, but with the right tools, that needn’t be true. This talk is a case study of how a vanilla serial-execution Perl program was parallelised, using Unix’s fork as the fundamental primitive rather than threads. The simplicity of programming with fork meant that the work only took an evening, but the result is also efficient — we got a near-linear speedup in the number of CPU cores.

If you’ve got code you’d like to run faster on multi-core hardware, this talk will open your eyes to simple, powerful, stable approaches to writing parallel software.

Attended by: Sébastien Aperghis-Tramoni (‎Maddingue‎), Nicholas Clark, Alberto Simões (‎ambs‎), Marco Masetti (‎grubert‎), Léon Brocard (‎acme‎), Aaron Crane (‎arc‎), JJ Allen, Lars Thegler (‎tagg‎), Martin Vorländer (‎mvorl‎), Smylers, Salvador Fandiño (‎salva‎), Paul van Eldijk (‎pavel‎), Casiano Rodriguez-Leon (‎casiano‎), Diego Kuperman (‎diegok‎), Tina Müller (‎tinita‎), Dmitry Karasik (‎McFist‎), Karl Rune Nilsen (‎krunen‎), Roman Baumer (‎rba‎), Chisel Wright, Damian Conway (‎damian‎), Erik Johansen (‎uniejo‎), Imre Saling (‎pelagic‎), Alexander Hartmaier (‎abraxxa‎), Dave Rolsky (‎autarch‎), Anders Nielsen (‎anielsen‎), Adam Bartosik, Jan Henning Thorsen (‎batman‎), Thomas Heine, Daniel Brunkhorst, Joel Bernstein (‎joel‎), Clinton Gormley (‎DrTech‎), Ronald Blaschke (‎rblasch‎), Steffen Schwigon (‎renormalist‎), David Faux, Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 (‎daxim‎), Marco Fontani (‎mfontani‎), Maciej Czekay (‎Bruno‎), Nigel Metheringham (‎nigelm‎), Alexey Surikov (‎ksurent‎), Steffen Mueller, Joerg Meltzer (‎codeacrobat‎), Vincent Pit (‎vincent‎), Nils Grunwald, Henrik Hald Nørgaard, Michele Valzelli, Reini Urban (‎rurban‎), Oliver Thieke (‎o-thieke‎), Adrian Arnautu, Markus Wichmann (‎telemorphix‎), J. Nick Koston (‎bdraco‎), Alan Haggai Alavi (‎alanhaggai‎), Gabi Hack (‎gabimuc‎), simotrone, Squeeky, Marko Zagožen (‎mzagozen‎), Michal Gawlik, Giacomo Gaddini, Giel Goudsmit, Heinz Knutzen, Fulvio Scapin (‎trantorvega‎),

Our sponsors


  • Booking.Com
  • YAPC::Europe 2009
  • cPanel


  • Shadowcat
  • 123 people
  • Venda
  • Dada


  • YAPC::Europe Foundation
  • Smart Open Software
  • MySQL
  • Exonetric
  • pair Networks


  • GitHub
  • Italpro
  • Geoesse
  • $foo Perl Magazin
  • Lokku
  • Apress
  • No Starch Press
  • O'Reilly Media

Media Partners

  • Linux Magazine


  • Regione Toscana
  • Comune di Pisa