V8bench Info
This info is for v8-v5.
v8-crypto
Almost all the time is spent in the function am3(), which is an integer arithmetic kernel that operates on arrays.
JM generates good code for am3().
Type specialization (Crankshaft/TI) is expected to give a big perf boost here.
See also bug 643565.
v8-deltablue
The benchmark builds a system of constraints and runs a solver. The constraints are represented by object-oriented data structures with several levels of wrapping. The bottom level is 'function OrderedCollection', which wraps a JS array.
Because of the many small functions that wrap each other in Java-esque style, this benchmark benefits strongly from fast method calls (o.f()) and/or inlining.
This benchmark also creates many objects and arrays, so allocation speed is also important. GC mark/sweep speed is not critical, but matters somewhat.
The benchmark does a lot of |array.length|, equality comparisons, and Array.push/pop, so making those faster would also help.
See also [1]
v8-earley-boyer
v8-raytrace
v8-regexp
Description. Numerous kernels stuck together. A collection of regexp operations gathered from 50 popular websites, lightly modified, and run in succession.
Key features. Ninety-four different regexps are used in many calls to RegExp.exec() and String.replace(). The return values of these calls are never used.
Mozilla-specific things. We convert RegExp.exec() to RegExp.test() if the result isn't used, or is only tested for null (bug 581595). This speeds the test up by about 1.8x.