As noted in other threads here, for heavy work on multi GPU setup, it seems to be a requirement to have 1 CPU core pr GPU. The irony of this is that for a 3 x 5970 setup, one is forced to choose an Intel CPU isgust; (ex i7)
The problem seems to be rooted in the fact that there aren't any Posix type signals (on Linux) at least that the CPU threads can wait for to get notification that a GPU operation has completed.
I could try to code around this limitation by having more GPU jobs in the pipeline, and guessing how long usleep() it is safe to call before awaking. But this far from an ideal situation.
But perhaps there is such a signal available, of which the documentation has eluded me ?