[argyllcms] Re: Multithreading support

  • From: Graeme Gill <graeme@xxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Mon, 21 Apr 2014 17:50:53 +1000

Michael Darling wrote:
> Any thoughts of making Argyll threaded?

Hi,
        well it's certainly possible - lots of things in the
profiling process are highly parallel in nature.

> It's bouncing between 12% and 13% CPU usage.  8 logical cores on  my
> machine, so looks like it isn't threaded.  I'm assuming the operation here
> has parallel elements to benefit from threading, but I could of course be
> wrong.

If you are talking about the B2A lookup step, then there are two parts,
setting up the acceleration structure and actually doing the inverse
lookups. I haven't really thought about what's involved in threading
the former. Threading the latter is complicated by the computation cache
- updates to the cache would have to be protected, and it might be a challenge
to make sure that this didn't become the bottleneck. Coordinating
threads could be interesting too - there would be quite different execution
times, and what do you do about grid points that depend on a cache entry that is
in the process of being computed ? - ie. how do you not end up starving
threads ? etc.

I have no plans to try and do such work though - I currently have many much
more urgent tasks.

Graeme Gill.

Other related posts: