Multi-core programming with Python

Talks | Submit a talk
Authors Keerthi Shankar
Level Advanced
Topic Concurrency
Tags Multi-core, Concurrency, Stackless, Threads
Summary

With the ever increasing processing power available to desktop users, applications should be able to leverage the power to deliver quality to the users. Languages like C/C++ have enough multi-threading libraries that enable the users of those languages to benefit from the latest multi-core processors available on the desktop. Python has always been left out when it comes to multi-core processing. This talk explains the approaches a Python programmer could take to write code that runs simultaneously on multiple processing cores. A short tour of the current implementations of Python and their impact on multi-threading will be discussed.

Outline

1) Why should I care about multi-core processors? 2) CPython's GIL and its impact on threading. 3) Latest modules available in Python for multi threading. 4) Alternatives to CPython for multi threading:

  • Stackless Python
  • Parallel Python
  • IronPython

5) A best approach (or my approach) for multi threading in Python!

Notes
Profile of the authors

Keerthi Shankar has over 7 years of experience in software development and is currently an architect and lead engineer for several digital cinema products at Real Image Media Technologies, Chennai. He has extensively worked on parallelization of video encoding/decoding and has been using Python for the last couple of years in interesting ways. He had given a talk on IronPython at PyCon India 2009. He sparingly writes at http://keerthishankar.blogspot.com.

Files
file size uploaded comment
1000.rnd.txt 4.8 KB september 27, 2010 A file containing random numbers
mp_sort.py 983 bytes september 27, 2010 Multi-threaded way of sorting
sp_sort.py 416 bytes september 27, 2010 The single threaded way of sorting
sort_helpers.py 260 bytes september 27, 2010 Helpers to load input and save sorted output
merge_sort.py 521 bytes september 27, 2010 The merge sort algorithm
gen_rand.py 345 bytes september 27, 2010 Psuedo-random number generator
Multi_core_programming_with_Python.pdf 302.0 KB september 19, 2010

You can upload or delete a file if you are author of this talk.