How did the story end up?
I had a similar excercise this summer and it's crucial to monitor physical server load and increase number of Report Services (that'll generate more BIBus processes and even the load a bit). Errors are usually triggered when a single BIBus gets more request than it can handle and dies under the load. Having more BIBuses means less errors and, from some point, slower server reponse, since they're racing for the same physical resource.