Abstract EN: In this talk I'll take you on a whirlwind tour of the world of
parallelism. Why is it a hot topic? How do we screw it up and get
horrible performance and lack of scalability? What are the hot new
technologies that aim to make it easier? And what does Perl 6 have to
say about parallelism? Topics I will cover will include:
* Why we can't just make faster CPUs
* Task vs Data Parallelism
* Mutexes, semaphores and threads: the assembly language of concurrency
* Issues: deadlock, risk of unsafe data access, stupid numbers of
threads, etc.
* It's about the cache, stupid: bus protocols and false sharing
* Software Transactional Memory and its application in Perl 6
* Data parallelism in Perl 6
* Other futuristic ideas and research, including lock free data
structures
No experience of thread programming in Perl or any other language is
required - this is a "big picture" talk rather than digging into the
gory details.