GNOME Bugzilla – Bug 357247
Multithreaded processing
Last modified: 2008-05-17 12:27:24 UTC
Make it possible to have multiple evaluations of the graph happening at the same time. (both the way the visitor pattern is implemented, and the reference counting for immediate freeing of buffers assumes a single thread of operation at the moment.) The multithreading would allow splitting the image up into rectangular "work sections", that are requested for rendering.
At the moment evaluation state is stored in nodes (needed regions, provided regions etc). This probably needs to be stored in a seperate state, or the graph itself be cloned per processing thread.
This is no longer the case, there is a seperate context per evaluation of the graph now. This is stored in GeglNodeDynamic, which evaluation context is specified in the operations thorugh the context_id in some methods.
Changed the title of the bug to reflect general parallel processing, since this framework also should support farming out work tasks to slave renderers in a network.
Changed title of bug to multithreaded processing, opening a separate bug for distributed processing.
Will close this bug and add a reference to it in a the general paralell procesisng bug.