Re:Python 3.2 Eases Concurrent Development
by wladimir on Thursday December 09, 2010 @05:18AM
(#1986878)
The shared-nothing approach (for example, implemented by using processes instead of threads) is also more scalable.
After all, if you design your parallelism architecture to not rely on a shared memory space, you can later parallelize over multple machines as well as cores.
The only thing I wonder about is that processes might be more heavy-weight than threads with respect to memory usage. Then again, if you only create a fixed amount of processes, equal to the number of cores, as you should for "perfect" parallelism, the overhead is pretty much zero.
Processes in Python does have a different set of limitations in it's own right, but for most applications they aren't too disastrous.