Since the flag is now enabled by default, there should be no mention of it.
There are still some uses in front_end/testcases that are not just removable
(it also uses `no-non-nullable`). There migth be more uses that are not
as easily found as grepping for `--enable-experiment
Removes two VM tests where fixing them meant they were just duplicating
the corresponding non *_2/ tests.
Fixes#44941
TEST= Large number of tests chaged.=(no-)?non-nullable`.
Change-Id: Ief755981ccde9a5482fcdf408c2929c74433a710
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/183688
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
This change synchronizes the try_benchmarks script with the commands
currently used to build for benchmarking and adds a test that the
IsolateSpawn benchmark continues to work.
Change-Id: I37066fb8a246e0003bdccd7c4dbb5b84060b30f6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170982
Reviewed-by: Martin Kustermann <kustermann@google.com>
- Fixes broken benchmarks in ddc because the benchmarks run in
d8 with the ddc module system can handle conflicting library
names more gracefully than es6.
- In the future we need to update the source of truth for
dart_library.js so we can keep the file in sync.
- Removes the ability for ddb to run with any precompiled sdk.js
from a dart installation. Now you must run a build first and
the sdk.js files from that build will be used. This means the
`--debug` flag no longer changes which sdk.js files are used.
Change-Id: Icaf78956f93ff643d23e68001354ec08c9c28b12
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/166926
Reviewed-by: Mark Zhou <markzipan@google.com>
Commit-Queue: Nicholas Shahan <nshahan@google.com>
The pkg/front_end/tool/fasta_perf.dart benchmark used to require
runtime/lib in order to run but this directory is no longer required.
This change removes the check for whether it exists and then removes the
directory in SDK benchmark builds to avoid VM source code littering the
benchmark builds and blurring the distinction between build inputs and
build outputs.
Change-Id: Ibb02ce3bd6e4a65421c2bdd444ef0f78887fffa1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/164966
Reviewed-by: Johnni Winther <johnniwinther@google.com>
This change tests that run_vm_tests runs correctly when provided with
the kernel service snapshot, which is needed to run benchmarks like
UseDartApi.
Test building the kernel-service.dart.snapshot.
Change-Id: I1cb750a16e32daba2eee46e245cc7d4e7d230165
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151395
Reviewed-by: Alexander Aprelev <aam@google.com>
This change updates tools/bots/try_benchmarks.sh to exclude the front_end
testcases directory, which contains very large binary files (186 MB) that
are not needed to run benchmarks. It also fixes the exclusion pattern for
the very large tensorflow language models (116 MB) that moved to another
directory.
While here, also synchronize back the removal of the profile tarball step
which was removed 3 months ago.
Change-Id: I76260eaf8db95d59be3b57eaecc86548c9d21b9c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/126723
Reviewed-by: Martin Kustermann <kustermann@google.com>
The benchmark spawns an isolate that compiles hello world app with dart2js, measures time it takes for spawned isolate to get up and running, measures delta rss when isolate is spawned.
This also adds analysis_options.yaml that helps with keeping the code lint-free.
Change-Id: I5f1ffa9706766cd00bf1ea3fdad76957952de8a1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/119538
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Alexander Aprelev <aam@google.com>
This change adds the required support to benchmark DDC just like dart2js.
The ddb tool gains the following options:
--compile-vm-options=VM-OPTIONS
The value of the DART_VM_OPTIONS environment variable set when running
dartdevc. This option is required to measure the memory use of
dartdevc while compiling.
--packages=PACKAGES-FILE
The .packages file to use when compiling. This option is required for
special benchmarks with a .packages in a subdirectory and is generally
useful.
--out=OUTPUT-FILE
Write the compiled javascript to this path and the other generated
files along it. This option makes the benchmark configuration easier
and is generally useful.
The dartdevc and dartdevc.bat scripts in the released Dart SDK now gains
support for the DART_VM_OPTIONS environment variable, just like the dart2js
scripts. This feature is needed to measure the memory usage of the Dart VM
executing dartdevc.
tools/bots/try_benchmarks.sh now tests that ddb can compile and run
benchmarks using the needed features.
Change-Id: Ib1ef07b0888a8c0cf900fe2fbb5697aab733db08
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118440
Reviewed-by: Nate Bosch <nbosch@google.com>
Commit-Queue: Jonas Termansen <sortie@google.com>
This mode is no longer relevant and doesn't need to be benchmarked.
I didn't remove the legacy entry points in
* pkg/front_end/tool/fasta_perf.dart
* pkg/front_end/tool/incremental_perf.dart
as that would allow a cascade of simplifications that's probably better done
by the front end team.
Change-Id: Iffd977cfdf322aa181025920423083f4ab9de75f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113688
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
Adds micro benchmarks to measure low level (1) C memory reads and writes from Dart and (2) calls from Dart into C. This CL also adds a macro benchmark to measure overall performance using BoringSSL to digest data. The shared libraries are precompiled for Linux and live in cipd packages. The benchmarks run on all hardware architectures (with the exception of Linux'es hardfp on Arm32: https://github.com/dart-lang/sdk/issues/36309).
Issue: https://github.com/dart-lang/sdk/issues/36247
Change-Id: I8dfb30cc66a26a2942bb09194c5eb0da0b6ca1b5
Cq-Include-Trybots: luci.dart.try:benchmark-linux-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108724
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
Auto-Submit: Daco Harkes <dacoharkes@google.com>
Benchmarks are checked in as benchmarks/<Benchmark>/dart/<Benchmark>.dart.
This scheme is compatible with our existing benchmarking infrastructure
and will aid migrating the benchmarks with minimal breakage.
This change adds an Example benchmark to show how it is done.
The benchmarks directory is now added to the Dart benchmarking builds.
Change-Id: I25971ba3b219194fa9cfea6b938372d877477e28
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108414
Commit-Queue: Jonas Termansen <sortie@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
This change adds a commit queue test that the bytecode benchmarks continue
to work in order to avoid any future unintended breakage.
The new linux-x64-bytecode build is exactly the same as the linux-x64 build
except without the SIMDBC build.
This change also moves the build from the script out to the test matrix,
which let's Goma work correctly, speeding the builder considerably up.
Change-Id: Ifc275c55e405f8dcd7e98a8f15c651602a6dfc4f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/98326
Reviewed-by: Alexander Markov <alexmarkov@google.com>
runtime_kernel is now the same as just runtime.
Confirm the gen_snapshot build target continues to work.
Change-Id: Ia282d7ba63c53ae8b35dad947d3dbbb671309e26
Reviewed-on: https://dart-review.googlesource.com/c/77801
Reviewed-by: Siva Annamalai <asiva@google.com>
- Remove all code that generates the corelib and dart:io library sources into C++ arrays and link them into dart_bootstrap
- Remove the executable dart_bootstrap and all uses of it
- Remove bootstrap_nolib.cc and builtin_nocore.cc
- Remove the Dart 1 code in core lib bootstrap path
Change-Id: Ifd33496204285a08b42fe09e39428e7a92b416b6
Reviewed-on: https://dart-review.googlesource.com/c/77241
Commit-Queue: Siva Annamalai <asiva@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
This was needed back when we thought the front end would be based on
the analyzer, and so we thought its performance characteristics would
depend on those of the analyzer summary mechanism. But since the
front end is not based on the analyzer, and the performance of the
analyzer summary mechanism is performance tested elsewhere, we can
remove this code. Removing it will make it easier to do some re-work
of summaries that is needed for Dart 2.1 support.
Change-Id: I4aa8b5251f26ba7fd59b99d325c66da642d410ed
Reviewed-on: https://dart-review.googlesource.com/71661
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>