The pages linked below show some benchmark results on a collection of regexp benchmarks.
Tables show relative performance, with the actual time for the fastest run shown on the left. So, by default, 1 is the fastest, but select any implementation to normalize the table with respect to that implementation's speed. A -- appears when a benchmark didn't run in an implementation (either due to a missing feature, a very long run time, or stack overflow).
Run times are averaged over three runs. All reported times are CPU time (system plus user). The times for MzScheme, Perl, and Python use the language's sime function to record the times before and after a loop within the language; the PCRE times are based on calls a timed MzScheme loop using calling PCRE via (lib "foreign.ss").
A benchmark name name/N/M means that the input size was roughly 10N and roughly 10M iterations were used. The name part can be matched to actual patterns and inputs in the source (see link below).
The stress- benchmarks were taken from the CL-PPCRE benchmark suite. Most others were written to test specific regexp features, although a few were taken from useful code.
Versions and performance notes:
For further details on the benchmarks here, see the benchmark source and infrastructure, which is available form the PLT SVN repository:
http://svn.plt-scheme.org/plt/trunk/collects/tests/mzscheme/benchmarks/rx/