O Bash não usa vfork
e o bash é enorme.
Isso faz com que muitos garfos consumam muita memória virtual.
Este é provavelmente um problema causado pelos recursos de memória real no sistema do que por algo que você pode controlar via ulimit
.
Você tentou usar o Bourne Shell ou o ksh93? Ambos usam vfork()
para otimizar o desempenho.