cdad90dfb8
Generally the test loads a big dill thats 90+% the same content as the previous load, then verifies it. This CL loads smarter and verifies less. Before this CL, locally, running pkg/frontend_server/test/frontend_server_flutter.dart took real 24m56.080s user 48m42.422s sys 1m2.360s and the suite edition (using 4 shards in isolates) took real 15m9.196s user 53m41.118s sys 1m30.045s With this CL, locally running pkg/frontend_server/test/frontend_server_flutter.dart takes real 5m0.206s user 9m23.933s sys 0m20.984s and the suite edition takes real 3m24.243s user 12m0.069s sys 0m28.131s On the try-bot the runtime seems to have gone from ~40 minutes to ~20 minutes, the "compile flutter tests" step from ~30 minutes to ~10 minutes and the portion of time actually running the dart-code that compiles, loads and verifies, from ~26 minutes to ~7 minutes. Change-Id: I6db225c33e1c0ee817f3880327e720446150ad7d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/347282 Reviewed-by: Johnni Winther <johnniwinther@google.com> Commit-Queue: Jens Johansen <jensj@google.com> |
||
---|---|---|
.. | ||
bin | ||
doc | ||
lib | ||
test | ||
tool | ||
.gitignore | ||
analysis_options.yaml | ||
AUTHORS | ||
binary.md | ||
codereview.settings | ||
LICENSE | ||
OWNERS | ||
PRESUBMIT.py | ||
problems.md | ||
pubspec.yaml | ||
README.md |
Dart Kernel
Dart Kernel is a small high-level language derived from Dart. It is designed for use as an intermediate format for whole-program analysis and transformations, and to be consumed by codegen and execution backends.
The kernel language has an in-memory representation in Dart and can be serialized as binary or text.
Both the kernel language and its implementations are unstable and are under development.
This package contains the Dart part of the implementation and contains:
- A transformable IR for the kernel language
- Serialization of kernel code
Note: The APIs in this package are in an early state; developers should be careful about depending on this package. In particular, there is no semver contract for release versions of this package. Please depend directly on individual versions.
See ast.dart for the in-memory IR, or binary.md for a description of the binary format. For now, the textual format is very ad-hoc and cannot be parsed back in.