Commit Graph

111 Commits

Author SHA1 Message Date
Mike Stanton
c633282daf [builtins] Array.map should transition output arrays.
If the input array is small, then the cost of a trip to the
runtime to transition the ElementsKind is too expensive.

Bug: 
Change-Id: Ib04f8567674a6f1f66f4c7263eba5fb4c58987aa
Reviewed-on: https://chromium-review.googlesource.com/544866
Commit-Queue: Michael Stanton <mvstanton@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46417}
2017-07-05 14:08:08 +00:00
Maya Lekova
02ce935ad3 Implement micro-benchmark for Proxies constructor
Bug: 
Change-Id: I95285260b0848c4c876498bfef0b13ffbe6855ad
Reviewed-on: https://chromium-review.googlesource.com/558297
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Maya Lekova <mslekova@google.com>
Cr-Commit-Position: refs/heads/master@{#46415}
2017-07-05 13:36:10 +00:00
Benedikt Meurer
01f6d352c9 [test] Add micro-benchmarks for Map and Set iterators.
Change-Id: I5fc90147ee7526b8b66d04f38e5e225741cf4642
Bug: v8:6571
Reviewed-on: https://chromium-review.googlesource.com/559342
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46412}
2017-07-05 12:22:17 +00:00
Mike Stanton
aa5852a294 Add JSPerf tests for more 2nd-order Array builtins
Every, Some, Reduce, ReduceRight. Added a test that should improve
when TurboFan inlines these builtins. Updated Map and Filter tests
to include a TurboFan inline test.

Bug: v8:2229
Change-Id: Ie84d414fdcccea23c734caca55a3344f9442547f
Reviewed-on: https://chromium-review.googlesource.com/558935
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Michael Stanton <mvstanton@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46395}
2017-07-04 09:10:01 +00:00
Mathias Bynens
26c00f4a4c [elements] Rename FAST elements kinds
The `FAST_` prefix doesn’t make much sense — they’re all just different cases
with their own optimizations. Packedness being implicit (e.g. `FAST_ELEMENTS`
vs. `FAST_HOLEY_ELEMENTS`) is not ideal, either.

This patch renames the FAST elements kinds as follows:

- e.g. FAST_ELEMENTS => PACKED_ELEMENTS
- e.g. FAST_HOLEY_ELEMENTS => HOLEY_ELEMENTS

The following exceptions are left intact, for lack of a better name:

- FAST_SLOPPY_ARGUMENTS_ELEMENTS
- SLOW_SLOPPY_ARGUMENTS_ELEMENTS
- FAST_STRING_WRAPPER_ELEMENTS
- SLOW_STRING_WRAPPER_ELEMENTS

This makes it easier to reason about elements kinds, and less confusing to
explain how they’re used.

R=jkummerow@chromium.org, cbruni@chromium.org
BUG=v8:6548

Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
Change-Id: Ie7c6bee85583c3d84b730f7aebbd70c1efa38af9
Reviewed-on: https://chromium-review.googlesource.com/556032
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46361}
2017-06-30 13:31:44 +00:00
Alexey Kozyatinskiy
fade4a46ae [inspector] added simple js-perf-test for inspector
This test checks how much time we spent for generating Debugger.paused notification.

R=machenbach@chromium.org

Bug: chromium:688036
Change-Id: Ie8a52aafe6c8d93401b0b2a90a202ddff7de78ef
Reviewed-on: https://chromium-review.googlesource.com/538584
Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46035}
2017-06-20 10:32:05 +00:00
Ross McIlroy
40f9cf49d7 [Perf] Add ExpressionDepth test.
Adds a 'performance' test which tracks the number of expressions
which can be nested before the compiler runs out of stack space.
This isn't really a performance test, but is created as a js-perf-test
to enable regression tracking in the dashboards.

Change-Id: Iee0c00df53b38b083e2dde09676ac9b13e439461
Reviewed-on: https://chromium-review.googlesource.com/539419
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46019}
2017-06-19 20:50:00 +00:00
Michael Starzinger
4c79e6f9ec [test] Remove remaining "noTF" variants of js-perf-tests.
R=machenbach@chromium.org
BUG=v8:6408

Change-Id: I3c785acd30d8feb0541e9acdf0c44225a01cb71c
Reviewed-on: https://chromium-review.googlesource.com/533154
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45936}
2017-06-14 08:12:15 +00:00
Mythri
05b9778d12 Sub-categorize bytecode handler benchmarks in test/js-perf-test.
All the bytecode handlers were added a one test, so we would get a
total on all of the bytecode handler benchmarks. It is not a good
indicator when we total unrelated benchmarks. So added more categories
to group only related benchmarks together. This also makes it easier
to look at the results.

Bug: chromium:730628
Change-Id: I1c5858f40c1ce584c4b7bd833a7f3c52a43d07c6
Reviewed-on: https://chromium-review.googlesource.com/527436
Commit-Queue: Mythri Alle <mythria@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45808}
2017-06-09 10:43:49 +00:00
Mythri
3965c54879 [Interpreter] Add micro-benchmarks for arithmetic and bitwise operations.
Bug: v8:4280
Change-Id: Iedd3182301ad6cde4e63c65dca6cd280e3f05198
Reviewed-on: https://chromium-review.googlesource.com/524044
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45707}
2017-06-05 15:28:21 +00:00
Ross McIlroy
5acdb557a4 [Interpreter] Add micro-benchmarks for string concatentation.
BUG=v8:6243

Change-Id: Ia6dfa407591d1b06d5b014627bb44413540aecb3
Reviewed-on: https://chromium-review.googlesource.com/516984
Reviewed-by: Mythri Alle <mythria@chromium.org>
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45542}
2017-05-26 13:59:58 +00:00
Michael Achenbach
c3f8b503ef Revert "[Interpreter] Improve handling of a === true / false."
This reverts commit bdf70aa0e2.

Reason for revert: Breaks perf testing. Comma missing in json.

Original change's description:
> [Interpreter] Improve handling of a === true / false.
> 
> Add support for direct jumping on True/False for strict equals of boolean
> literals. This improves the score for such comparisons by around 75% on
> baseline code, and by around 40x on optimized code for the added performance
> test.
> 
> Bug=v8:6403
> 
> Change-Id: I81ea16a057e081eb6d159cd64c8e8615f65f9abb
> Reviewed-on: https://chromium-review.googlesource.com/509570
> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
> Reviewed-by: Mythri Alle <mythria@chromium.org>
> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#45450}

TBR=rmcilroy@chromium.org,mythria@chromium.org,bmeurer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Bug=v8:6403

Change-Id: I12b1868ba22354d056f38fe36e3c1e5fae5aa1b5
Reviewed-on: https://chromium-review.googlesource.com/509577
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45459}
2017-05-22 13:14:44 +00:00
Ross McIlroy
bdf70aa0e2 [Interpreter] Improve handling of a === true / false.
Add support for direct jumping on True/False for strict equals of boolean
literals. This improves the score for such comparisons by around 75% on
baseline code, and by around 40x on optimized code for the added performance
test.

Bug=v8:6403

Change-Id: I81ea16a057e081eb6d159cd64c8e8615f65f9abb
Reviewed-on: https://chromium-review.googlesource.com/509570
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Mythri Alle <mythria@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45450}
2017-05-22 10:41:44 +00:00
Georg Neis
e92c52ba8a [test] Remove obsolete variants of generator JSTests.
R=adamk@chromium.org

Bug: 
Change-Id: I47087c6a15beceb7084079dcf644de7e9ede772c
Reviewed-on: https://chromium-review.googlesource.com/505620
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45342}
2017-05-16 14:53:32 +00:00
jkummerow
1cda1732a7 [js-perf-tests] Fix PropertyQueries test for fast-delete
Forcing an object into dictionary mode now requires deleting
a property that's not the last property.

BUG=chromium:718816
NOTRY=true

Review-Url: https://codereview.chromium.org/2860403002
Cr-Commit-Position: refs/heads/master@{#45140}
2017-05-05 15:57:36 +00:00
Mythri
51a5b23331 [Interpreter] Fix compare bytecodehandler benchmarks for equals.
Bug:v8:4280

Change-Id: I83dfd26b47d554406d3ede633bbefc92db6a4faf
Reviewed-on: https://chromium-review.googlesource.com/487964
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44924}
2017-04-27 11:14:21 +00:00
Mythri
2c460f6a26 [Interpreter] Update the js-perf-test json file with the newly added tests.
Update the json file in js-perf-test with compare bytecode handler tests.
This cl (https://chromium-review.googlesource.com/c/485522/) adds new
tests but not all of them are updated in the json file.

Bug:v8:4280

Change-Id: Ifd1f479b770a4277fbba1de51ca2f7cbc26003cb
Reviewed-on: https://chromium-review.googlesource.com/487961
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44879}
2017-04-26 08:50:49 +00:00
Mythri
e480b2b29d [Interpreter] Add js-perf-test benchmark for compare bytecode handlers.
Adds a micro benchmark in js-perf-test to measure the performance of
compare bytecode handlers.

Bug:v8:4280

Change-Id: Ic86d670f8f09147076a22cfeff2e1ec052afe20c
Reviewed-on: https://chromium-review.googlesource.com/485522
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Commit-Queue: Mythri Alle <mythria@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44843}
2017-04-25 11:41:57 +00:00
neis
6c0e81bd48 [modules] Add a simple micro-benchmark for import/export accesses.
R=adamk@chromium.org
BUG=v8:1569

Review-Url: https://codereview.chromium.org/2833773002
Cr-Commit-Position: refs/heads/master@{#44811}
2017-04-24 18:52:02 +00:00
bmeurer
b161581947 [js-perf-tests] Add classes benchmarks from SixSpeed.
In particular the Babel generated code for simple constructors is
of interest here, since that's what we hit in the wild most often
currently.

BUG=v8:6275
R=yangguo@chromium.org

Review-Url: https://codereview.chromium.org/2822203004
Cr-Commit-Position: refs/heads/master@{#44719}
2017-04-19 11:23:48 +00:00
bmeurer
06d2e8128a [js-perf-tests] Add super benchmarks from SixSpeed.
R=yangguo@chromium.org

Review-Url: https://codereview.chromium.org/2824383003
Cr-Commit-Position: refs/heads/master@{#44717}
2017-04-19 10:19:04 +00:00
bmeurer
07e163bd5a [js-perf-test] Add microbenchmarks for materialized rest parameters.
Functions that take mandatory parameters plus a number of optional
parameters, that need to be materialized as an Array are quite common.
The simplest possible case of this is essentially:

  function foo(mandatory, ...args) { return args; }

Babel translates this to something like:

  function foo(mandatory) {
    "use strict";
    for (var _len = arguments.length,
             args = Array(_len > 1 ? _len - 1 : 0),
             _key = 1; _key < _len; _key++) {
      args[_key - 1] = arguments[_key];
    }
    return args;
  }

The key to great performance here is to make sure that we don't
materialize the (unmapped) arguments object in this case, plus that we
have some kind of fast-path for the Array constructor and the
initialization loop.

This microbenchmark ensures that we have decent performance even in the
case where the assignment to args is polymorphic, i.e. the arguments
have seen different elements kinds, starting with FAST_HOLEY_ELEMENTS
and then FAST_HOLEY_SMI_ELEMENTS.

R=yangguo@chromium.org
BUG=v8:6262

Review-Url: https://codereview.chromium.org/2823343004
Cr-Commit-Position: refs/heads/master@{#44709}
2017-04-19 05:25:40 +00:00
Sathya Gunasekaran
2e4b86b0de [benchmarks] Add ES6 Map/Set benchmarks from SixSpeed
Bug: v8:5717
Change-Id: I92c6d897ae7701e6c778590709f6f1c8a16295b0
Reviewed-on: https://chromium-review.googlesource.com/478591
Reviewed-by: Franziska Hinkelmann <franzih@chromium.org>
Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44696}
2017-04-18 17:05:58 +00:00
Caitlin Potter
e2670e80a5 [js-perf-test] add microbenchmarks for C-style for loops
Adds some benchmarks copied from v8:4762.

BUG=v8:4762, v8:5460
R=adamk@chromium.org

Change-Id: I0b96080042781c2c46c0c8a3896a921bde97c1e5
Reviewed-on: https://chromium-review.googlesource.com/475934
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Cr-Commit-Position: refs/heads/master@{#44629}
2017-04-12 21:56:43 +00:00
Peter Marshall
9679a3661f [test] Add a benchmark for constructing all types of TypedArrays.
This constructs different typed arrays from different types of other
typed arrays, hopefully countering microbenchmarks which are able to
optimize for exactly one pair of types.

Bug: v8:5977
Change-Id: Ie3b07d6ecaaca6db0be410e902e437a2a643d71c
Reviewed-on: https://chromium-review.googlesource.com/474748
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44576}
2017-04-11 13:46:10 +00:00
Peter Marshall
d45e92bf6d [Tests] Update resources for SixSpeed and JSTest tests.
The resources list is required for android, where these files are
pushed to the device. The android bots have been failing due to these
missing resources, as the files are not available on the devices.

NOTRY=true
Change-Id: Ibef3cfc10e01250cb380128013e3c304927b5459

Change-Id: Ibef3cfc10e01250cb380128013e3c304927b5459
Reviewed-on: https://chromium-review.googlesource.com/463266
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44291}
2017-03-31 07:57:51 +00:00
Peter Marshall
1c8760c6b5 [Tests] Add a test for constructing a TypedArray from the same kind.
This should be the fastest case, as we can just copy the backing store
directly. Adding this test so that we can monitor if upcoming changes
regress this path.

BUG=v8:5977

Change-Id: I021a199061ac845f265a906bda68b7ad3e8d5708
Reviewed-on: https://chromium-review.googlesource.com/461183
Reviewed-by: Franziska Hinkelmann <franzih@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44225}
2017-03-29 13:02:51 +00:00
mvstanton
7e08a77deb [JSPerfTests] New tests for Array.prototype.filter and map.
BUG=

Review-Url: https://codereview.chromium.org/2769973005
Cr-Commit-Position: refs/heads/master@{#44115}
2017-03-24 17:39:34 +00:00
Peter Marshall
a6e6160e48 [Test] Fix the regex in array JSPerfTest.
The regex was slightly off, meaning the results would not
display properly.

Change-Id: Ie3b2bf54a50bffde9b64663d7b8b8c0ad39a1212
Reviewed-on: https://chromium-review.googlesource.com/458416
Reviewed-by: Franziska Hinkelmann <franzih@chromium.org>
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44007}
2017-03-22 10:09:45 +00:00
mvstanton
da511d3349 Error in JSTests.json prevented uploads.
TBR=machenbach@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review-Url: https://codereview.chromium.org/2770623002
Cr-Commit-Position: refs/heads/master@{#44003}
2017-03-22 09:07:47 +00:00
Peter Marshall
0feed731d0 [Test] Add a perf test for TypedArray construct by typed array.
BUG=v8:5977

Change-Id: Ic756fd44a945f98d51c0914dcc6c3b82111d170d
Reviewed-on: https://chromium-review.googlesource.com/456419
Reviewed-by: Franziska Hinkelmann <franzih@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#43978}
2017-03-21 12:01:28 +00:00
mvstanton
1e03479c64 [builtins] Array.prototype.filter implemented as a TurboFan code stub.
BUG=

Review-Url: https://codereview.chromium.org/2680153005
Cr-Commit-Position: refs/heads/master@{#43965}
2017-03-21 08:56:56 +00:00
Michael Achenbach
f58177dd92 [test] Switch future/no-turbo perf configs for js-tests
BUG=chromium:682617
NOTRY=true
R=mvstanton@chromium.org,petermarshall@chromium.org

Change-Id: I5902c4ac3c8fb4230142896addbb75a9e7d28fbb
Reviewed-on: https://chromium-review.googlesource.com/451378
Reviewed-by: Michael Stanton <mvstanton@chromium.org>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#43694}
2017-03-09 13:38:02 +00:00
Peter Marshall
45dfd76a9c [Test] Add perf tests for TypedArray constructors.
Adds a perf test for constructing a TypedArray from a regular array,
and from a pre-made ArrayBuffer. Runs both new tests with default and
future configurations for comparison.

BUG=v8:5977

Change-Id: Idd132ca879702c54b2947a0e57ed8fe782f2767f
Reviewed-on: https://chromium-review.googlesource.com/446342
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#43412}
2017-02-24 13:06:10 +00:00
cwhan.tunz
693b741f6d [tests] Add js-perf-test for %TypedArray%.prototype.sort
- Add benchmark for sorting of Float64Array
- Rename existing typedarray.js to copywithin.js

BUG=v8:5953
R=bmeurer@chromium.org, caitp@chromium.org, petermarshall@chromium.org

Review-Url: https://codereview.chromium.org/2691423003
Cr-Commit-Position: refs/heads/master@{#43217}
2017-02-15 14:48:42 +00:00
Peter Marshall
88df7dcaf4 [Test] Add TypedArray constructor benchmarks.
Add a simple benchmark for a TypedArray constructor. Run once with the
default pipeline and once with turbofan so that we can compare the
performance.

Also fixes a typo in the Regex for the result of the CopyWithin
benchmark which stopped the results showing up in the perf
dashboard.

BUG=

Change-Id: Ic2eb0bd1e02b458c1163e97130abd0e7531c2e1c
Reviewed-on: https://chromium-review.googlesource.com/440225
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#43087}
2017-02-10 09:30:28 +00:00
Peter Marshall
de700757ff [Test] Fix typo so that SixSpeed/SpreadLiteral/Babel is actually run.
BUG=v8:5940

Change-Id: Ibf4061244fbde2fabf2a13307a8f646258c9efc6
Reviewed-on: https://chromium-review.googlesource.com/439309
Commit-Queue: Peter Marshall <petermarshall@chromium.org>
Reviewed-by: Franziska Hinkelmann <franzih@chromium.org>
Cr-Commit-Position: refs/heads/master@{#43004}
2017-02-07 16:40:05 +00:00
petermarshall
bc6b87cf0d [Test] Add SixSpeed tests for spread literals.
This will give us a baseline for upcoming perf work.

BUG=v8:5940

Review-Url: https://codereview.chromium.org/2680763002
Cr-Commit-Position: refs/heads/master@{#42987}
2017-02-07 11:25:21 +00:00
petermarshall
54a14005fd [Test] Update 'default' SixSpeed benchmark to use different processes.
The results are unreliable as-is, because es5 and es6 run in the same d8
process consecutively. The graph also shows a huge amount of noise,
which seems to be mostly resolved with this change.

Review-Url: https://codereview.chromium.org/2675263002
Cr-Commit-Position: refs/heads/master@{#42961}
2017-02-06 11:51:35 +00:00
petermarshall
d6f76908c8 [Test] Enable turbofan for spread call SixSpeed tests.
In preparation for more perf work in turbofan, so that we can actually
see the results on the graph.

BUG=v8:5932

Review-Url: https://codereview.chromium.org/2676263002
Cr-Commit-Position: refs/heads/master@{#42960}
2017-02-06 11:16:05 +00:00
petermarshall
b69b24a2a2 [Test] Update all SixSpeed tests to run in separate processes.
BUG=v8:5922

Review-Url: https://codereview.chromium.org/2674873002
Cr-Commit-Position: refs/heads/master@{#42954}
2017-02-06 10:19:24 +00:00
hablich
a0b7db1b0c [Tests] Add microbenchmark for defaults
R=franzih@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2676773004
Cr-Commit-Position: refs/heads/master@{#42946}
2017-02-06 07:03:20 +00:00
caitp
d36f14a73d [tests] add microbenchmark for %TypedArray%.prototype.copyWithin
Add a simple microbenchmark for calling copyWithin on a moderately large
Float64Array with 10,000 elements.

BUG=v8:5925, v8:5929, v8:4648
R=cbruni@chromium.org, adamk@chromium.org, littledan@chromium.org

Review-Url: https://codereview.chromium.org/2676193002
Cr-Commit-Position: refs/heads/master@{#42944}
2017-02-06 04:20:09 +00:00
petermarshall
98ca77a0e1 [Test] Reconfigure SuperSpread benchmarks to run in separate processes.
BUG=v8:5922

Review-Url: https://codereview.chromium.org/2669223002
Cr-Commit-Position: refs/heads/master@{#42929}
2017-02-03 14:07:16 +00:00
petermarshall
bfc8dc12e9 Revert of [Test] Do a set number of runs to trigger optimisation for SuperSpread. (patchset #1 id:1 of https://codereview.chromium.org/2669523002/ )
Reason for revert:
Causes test timeouts.

Original issue's description:
> [Test] Do a set number of runs to trigger optimisation for SuperSpread.
>
> BUG=v8:5895
>
> Review-Url: https://codereview.chromium.org/2669523002
> Cr-Commit-Position: refs/heads/master@{#42811}
> Committed: d4c22c3084

TBR=bmeurer@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:5895

Review-Url: https://codereview.chromium.org/2669553002
Cr-Commit-Position: refs/heads/master@{#42812}
2017-01-31 12:52:29 +00:00
petermarshall
d4c22c3084 [Test] Do a set number of runs to trigger optimisation for SuperSpread.
BUG=v8:5895

Review-Url: https://codereview.chromium.org/2669523002
Cr-Commit-Position: refs/heads/master@{#42811}
2017-01-31 09:51:01 +00:00
petermarshall
f87ce44f52 [Test] Perform warmup first on SixSpeed super_spread benchmarks.
The graphs don't show any performance bump for
https://codereview.chromium.org/2659623002, which I do see a much better result for
locally. I suspect the function isn't being optimized in turbofan when the
benchmarks run. Maybe this warmup flag will trigger that.

BUG=v8:5895

Review-Url: https://codereview.chromium.org/2664783002
Cr-Commit-Position: refs/heads/master@{#42776}
2017-01-30 13:58:57 +00:00
petermarshall
2db0e8cbcf [Test] Add micro-benchmarks for super-calls with spread.
We compare ES5, ES6 and a Babel transpilation of the ES6 test.

BUG=v8:5894

Review-Url: https://codereview.chromium.org/2655063003
Cr-Commit-Position: refs/heads/master@{#42689}
2017-01-26 11:31:05 +00:00
jgruber
1c26e0a493 [js-perf-test] Specify AsyncAwait tests in JSTests.json
BUG=v8:5805

Review-Url: https://codereview.chromium.org/2619753002
Cr-Commit-Position: refs/heads/master@{#42127}
2017-01-09 09:30:25 +00:00
jgruber
9feefafa66 [js-perf-test] Add a basic async-await microbenchmark
These benchmarks are intended to compare the overhead of async-await vs.
a naive promise implementation vs. the babel async-await transformation.
The functions in the benchmark don't do any work themselves, so results
should reflect only overhead of the chosen implementation.

Current numbers on my local machine (higher is better):

BaselineES2017-AsyncAwait(Score): 2006
BaselineNaivePromises-AsyncAwait(Score): 7470
Native-AsyncAwait(Score): 3640

BUG=v8:5639

Review-Url: https://codereview.chromium.org/2577393002
Cr-Commit-Position: refs/heads/master@{#41860}
2016-12-20 13:10:07 +00:00