Let's step back and discuss what you'd like to happen. You are looking for some arbitrary text in 10 files. When you do a basic search for a file using grep, some data is slurped into memory from disc (usually) and then the text is searched for in memory.
If you can split this into many jobs, even using 10 egrep processes, you may be able to do better. In any modern OS, when one process is using a disc, the cpu is kinda idle for that moment. Another process could grab the cpu for that time and "do stuff".
Have you tried running searches in parallel? I doubt, though I wouldn't rule it out, that egrep doesn't do multiprocess/threaded searching.
----
Give me strength for today..
I will not talk it away..
Just for a moment..
It will burn through the clouds..
and shine down on me.