dart-sdk/benchmarks/SoundSplayTreeSieve/dart
Kallen Tu 1db1a837f8 Added SoundSplayTreeSieve benchmark for variantly sound interfaces.
Dart2JS
sdk/bin/dart2js_developer sieve.dart --enable-experiment=variance --experiment-new-rti --omit-implicit-checks --out=soundsplay.js --lax-runtime-type-to-string
CollectionSieves-SplayTreeSet-removeLoop(RunTime): 4307.52688172043 us.
CollectionSieves-SoundSplayTreeSet-removeLoop(RunTime): 4344.902386117137 us.

sdk/bin/dart2js_developer sieve.dart --enable-experiment=variance --experiment-new-rti --out=soundsplay.js
CollectionSieves-SplayTreeSet-removeLoop(RunTime): 73714.28571428572 us.
CollectionSieves-SoundSplayTreeSet-removeLoop(RunTime): 73714.28571428572 us.

DDK
pkg/dev_compiler/tool/ddb -d -r chrome --enable-experiment=variance -k sieve.dart
CollectionSieves-SplayTreeSet-removeLoop(RunTime): 29097.17391304348
CollectionSieves-SoundSplayTreeSet-removeLoop(RunTime): 22948.409090909092 us.

Change-Id: Ie78febebe57295d7d5fd10e07d95da118f285cce
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/129303
Commit-Queue: Kallen Tu <kallentu@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
2019-12-20 23:54:15 +00:00
..
iterable.dart Added SoundSplayTreeSieve benchmark for variantly sound interfaces. 2019-12-20 23:54:15 +00:00
README.md Added SoundSplayTreeSieve benchmark for variantly sound interfaces. 2019-12-20 23:54:15 +00:00
sound_splay_tree.dart Added SoundSplayTreeSieve benchmark for variantly sound interfaces. 2019-12-20 23:54:15 +00:00
SoundSplayTreeSieve.dart Added SoundSplayTreeSieve benchmark for variantly sound interfaces. 2019-12-20 23:54:15 +00:00

SoundSplayTreeSieve

The SoundSplayTreeSieve benchmark reports the runtime of the sieve9 Golem benchmark for a SplayTreeSet from dart:collection and a SoundSplayTreeSet that declares variance modifiers for its type parameters.

Running the benchmark

These are instructions for running the benchmark, assuming you are in the sdk directory.

These benchmarks print a result similar to this (with varying runtimes):

CollectionSieves-SplayTreeSet-removeLoop(RunTime): 4307.52688172043 us.
CollectionSieves-SoundSplayTreeSet-removeLoop(RunTime): 4344.902386117137 us.

Dart2JS

$ sdk/bin/dart2js_developer benchmarks/SoundSplayTreeSieve/dart/SoundSplayTreeSieve.dart --enable-experiment=variance --experiment-new-rti --out=soundsplay_d2js.js
$ third_party/d8/linux/d8 soundsplay_d2js.js

Dart2JS (Omit implicit checks)

$ sdk/bin/dart2js_developer benchmarks/SoundSplayTreeSieve/dart/SoundSplayTreeSieve.dart --enable-experiment=variance --experiment-new-rti --omit-implicit-checks --out=soundsplay_d2js_omit.js --lax-runtime-type-to-string
$ third_party/d8/linux/d8 soundsplay_d2js_omit.js

DDK

$ pkg/dev_compiler/tool/ddb -d -r chrome --enable-experiment=variance -k benchmarks/SoundSplayTreeSieve/dart/SoundSplayTreeSieve.dart