Well, it's possible this may not work in your particular case, but I wanted to offer this -- are you certain that you can't move your CGI script code into modules of some sort? If you were capable of doing that -- instead of using an expensive fork call, you could do a simple subroutine call, and just pass parameters that way.
in reply to Running multiple CGI programs
Another benefit of that method is that it makes it even simpler to move to something like mod_perl. If you're calling 20 CGI programs, the cost of that could be huge.. but if they were Perl modules loaded in mod_perl, the cost of that would actually be quite negligable, aside from RAM considerations. Slashdot uses more modules then that, and they were about the only news site that survived last Tuesday :-)
If this doesn't work for you, perhaps you could give some more details about the project you are working on. Good luck!