Don't forget forking.
To benchmark the maximum shell script performance (in terms of calls to other tools per second), try this micro-benchmark:
while true; do date; done | uniq -c
Unix shells under Windows (with cygwin, etc.) run about 25 times slower than OS X. replies(1):