September 14th, 2009

Free ideas for gimp

Here's an idea I idly pondered a couple days ago. I ran out of steam investigating it.

When GIMP starts up, it queries all its plugins to register them within the application. It does that by opening a pipe to /whatever/path/plugin --query and reading serialized registration info from the plugin.

This is pretty slow on my system, and it always bugs me to wait for them all to scan every time I start GIMP. So my idea is that GIMP should multiplex this operation across N plugins at a time, where N is 10 or 50 or 42 or something, and query multiple plugins in parallel via select() or whatever glib exposes these days.

Also, if the parallel fork+exec of gimp is a bottleneck, fork a tiny helper that is cheap to fork+exec.

How about it, Internet?!

update Actually, I just started gimp 2.6.1, and it took about 3 seconds, and that long pause of plugin querying isn't a visible part of it. The most visible pause comes at "starting extension script-fu". So this seems a little moot.