On my computer:
1) If creating a Set from a list mapping simply adding
each entry to the set seems faster.
2) When mapping a list to a new list using `List.generate`
seems to be the fastest. Prefer `growable: false` if not
needing it to be growable.
3) When creating a new list `.of` seems faster than `.from`.
Change-Id: I7f3d66100246e170cf09431dddf64b3ec39579f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/228643
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
This CL adds an initial framework for testing performance of programming
patterns. Included is a test of the pattern used to choose
implementation based on a runtime type, using either an if-then-else
sequence, dynamic dispatch on the runtime object, or visitor pattern.
The test framework runs the patterns on a range of inputs using a
predefined set of scenarios and outputs a table of the measurements which
can be copied into Google Sheets to visualize the results.
Further work is to use statistics to quantify the results, and expand
the framework to be used to detect asymptotic performance of algorithms
used in the compiler itself.
Change-Id: Ic99588d13adead309715957e1bc0aa6def46c9dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/226104
Reviewed-by: Jens Johansen <jensj@google.com>