Before I "jumped to the conclusion" that the overhead of launching a Perl interpreter is the actual cause, I would suggest trying to get some actual instrumentation from the app: a chronology of exactly what scripts were launched, how long each one ran and if possible what resources it consumed. It very well may be that there are a few "hot spot" scripts among the 500. A fairly straightforward statistical analysis might reveal a lot of unexpected insights, which might lead to unexpected gains. "Don't Assume."