Attached is a patch that parallelizes thumbnail generation in the thumbbar.
* It uses processes instead of of threads because of the GIL in python.
* It uses NumPy arrays to exchange data between processes because GTK's pixbuf doesn't support pickle. To exchange data the pixbuf is first transformed into a NumPy array.
* In tests with a 2-cores processor I gained an average speedup of 1.68.
It was a pretty interesting exercise, maybe you could suggest other parts of the program that could benefit from parallelization? I would love to help.
Log in to post a comment.