Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(429)

Unified Diff: dart/lib/compiler/implementation/scanner/scanner_bench.dart

Issue 10857005: Clean up the scanner directory (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: dart/lib/compiler/implementation/scanner/scanner_bench.dart
diff --git a/dart/lib/compiler/implementation/scanner/scanner_bench.dart b/dart/lib/compiler/implementation/scanner/scanner_bench.dart
deleted file mode 100644
index a33e94b15c17c0d68ce5fb2afdc8fad53453a8d8..0000000000000000000000000000000000000000
--- a/dart/lib/compiler/implementation/scanner/scanner_bench.dart
+++ /dev/null
@@ -1,150 +0,0 @@
-// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-
-#library('scanner_bench');
-#import('scannerlib.dart');
-#import('scanner_implementation.dart');
-#source('source_list.dart');
-
-/**
- * A common superclass for scanner benchmarks.
- */
-class ScannerBench {
- void main(List<String> arguments) {
- for (String argument in arguments) {
- checkExistence(argument);
- }
- tokenizeAll(print, 10, arguments);
- tokenizeAll((x) {}, 1000, arguments);
- tokenizeAll(print, 10, arguments);
- }
-
- void tokenizeAll(void log(String s), int iterations, List<String> arguments) {
- VerboseProgressBar bar = new VerboseProgressBar(iterations);
- bar.begin();
- for (int i = 0; i < iterations; i++) {
- bar.tick();
- Stopwatch timer = new Stopwatch();
- timer.start();
- int charCount = 0;
- for (final String argument in arguments) {
- charCount += tokenizeOne(argument);
- }
- timer.stop();
- bar.recordScore(charCount / timer.elapsedInMs());
- log("Tokenized ${arguments.length} files "
- "(total size = ${charCount} chars) "
- "in ${timer.elapsedInMs()}ms");
- }
- bar.end();
- }
-
- int tokenizeOne(String filename) {
- return getBytes(filename, (bytes) {
- Scanner scanner = makeScanner(bytes);
- try {
- printTokens(scanner.tokenize());
- } catch (MalformedInputException e) {
- print("${filename}: ${e}");
- }
- });
- }
-
- void printTokens(Token token) {
- // TODO(ahe): Turn this into a proper test.
- return;
- StringBuffer sb = new StringBuffer();
- for (; token != null; token = token.next) {
- if (token.kind < 127) {
- sb.add(new String.fromCharCodes([token.kind]));
- } else {
- sb.add(token.kind);
- }
- sb.add(":");
- sb.add(token);
- sb.add(" ");
- }
- print(sb.toString());
- }
-
- abstract int getBytes(String filename, void callback(bytes));
- abstract Scanner makeScanner(bytes);
- abstract void checkExistence(String filename);
-}
-
-class ProgressBar {
- static final String hashes = "##############################################";
- static final String spaces = " ";
- static final int GEOMEAN_COUNT = 50;
-
- final String esc;
- final String up;
- final String clear;
- final int total;
- final List<num> scores;
- int ticks = 0;
-
- ProgressBar(int total) : this.escape(total, new String.fromCharCodes([27]));
-
- ProgressBar.escape(this.total, String esc)
- : esc = esc, up = "$esc[1A", clear = "$esc[K", scores = new List<num>();
-
- void begin() {
- if (total > 10) {
- print("[$spaces] 0%");
- print("$up[${hashes.substring(0, ticks * spaces.length ~/ total)}");
- }
- }
-
- void tick() {
- if (total > 10 && ticks % 5 === 0) {
- print("$up$clear[$spaces] ${ticks * 100 ~/ total}% ${score()}");
- print("$up[${hashes.substring(0, ticks * spaces.length ~/ total)}");
- }
- ++ticks;
- }
-
- void end() {
- if (total > 10) {
- print("$up$clear[$hashes] 100% ${score()}");
- }
- }
-
- void recordScore(num newScore) {
- scores.addLast(newScore);
- }
-
- int score() {
- num geoMean = 1;
- int count = Math.min(scores.length, GEOMEAN_COUNT);
- for (int i = scores.length - count; i < scores.length; i++) {
- geoMean *= scores[i];
- }
- geoMean = Math.pow(geoMean, 1/Math.max(count, 1));
- return geoMean.round().toInt();
- }
-}
-
-class VerboseProgressBar {
- final int total;
- int ticks = 0;
-
- VerboseProgressBar(int this.total);
-
- void begin() {
- }
-
- void tick() {
- ++ticks;
- }
-
- void end() {
- }
-
- void recordScore(num score) {
- if (total > 10) {
- print("$ticks, $score, ${ticks * 100 ~/ total}%");
- }
- }
-}
« no previous file with comments | « dart/lib/compiler/implementation/scanner/parser_bench.dart ('k') | dart/lib/compiler/implementation/scanner/source_list.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698