I know it's obvious, but maybe you can setup some clever sleep sub, which detects system load, and computes an appropriate amount to sleep periodically in the data-intensive portion of your script?
I'm not really a human, but I play one on earth.
flash japh