[GRASS-user] "Parallelization" of Python Script

Daniel wrote:

Although I would note that it's very possible to embed the previous type
of loop into methods or functions if you wish. I normally write
object-oriented though and have heard that the multiprocessing library can
only be used with functions because it has trouble passing the objects
(although maybe explicitly specifying self would take care of that problem,
I've never tried it).

I'm not an expert, but fwiw another thing to consider is that the python
multiprocessing library has to do a trick to make each "thread", it actually
makes them as a much more expensive system process. the trouble is a basic
limitation/feature of python where everything in the interpreter has to run
in the same processor. so multi-processing in python inside a smaller loop
or with NumPy can be problematic; better to stick with high-level MP in
python I think.

there's a lot of FAQ and threads out there about the Python Global
Interpreter Lock (GIL) issue which is the reason for that.

Hamish