That'd be my other concern. ack is perl, as far as I can tell. I have no idea how perl performs at these tasks. But grep is written in C, and there're fun examples of how exactly it gets to be so fast (http://ridiculousfish.com/blog/posts/old-age-and-treachery.h... comes to mind).
- grep uses by default the same regular expressions as sed, which is another frequently used tool.
- grep also supports perl regular expressions.
- grep is available on every linux/bsd/*nix system out there, so it just works and make your scripts work.
- We use grep to search through gigabyte sized files (ie logs). You didn't show us how well ack performs there.