From e70fddaf4bd5d85edd8b3e9a551dc8c9c101f10a Mon Sep 17 00:00:00 2001 From: "Benjamin J. Culkin" Date: Sun, 3 Jun 2018 20:02:14 -0300 Subject: Minor updates This does some minor updates to things, as well as adding some performance tracking --- src/main/java/bjc/rgens/parser/RGrammarTest.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/main/java/bjc/rgens/parser/RGrammarTest.java') diff --git a/src/main/java/bjc/rgens/parser/RGrammarTest.java b/src/main/java/bjc/rgens/parser/RGrammarTest.java index 4b1f283..02a32f7 100755 --- a/src/main/java/bjc/rgens/parser/RGrammarTest.java +++ b/src/main/java/bjc/rgens/parser/RGrammarTest.java @@ -28,9 +28,21 @@ public class RGrammarTest { /* Generate rule suggestions for all the grammars in the set. */ for (String gramName : gramSet.getGrammars()) { + long startSuggTime = System.nanoTime(); + gramSet.getGrammar(gramName).generateSuggestions(); + + long endSuggTime = System.nanoTime(); + + long suggDur = endSuggTime - startSuggTime; + + if(gramSet.PERF) + System.err.printf("PERF: Generated rule suggestions for %s in %d ns (%f s)\n", gramName, suggDur, suggDur / 1000000000.0); } + if(gramSet.PERF) + System.err.printf("\n\n"); + /* Generate for each exported rule. */ for (String exportName : gramSet.getExportedRules()) { /* Where we loaded the rule from. */ @@ -40,6 +52,7 @@ public class RGrammarTest { System.out.printf("Generating for exported rule '%s' from file '%s'\n", exportName, loadSrc); RGrammar grammar = gramSet.getExportSource(exportName); + long startGenTime = System.nanoTime(); for (int i = 0; i < 100; i++) { try { String res = grammar.generate(exportName); @@ -62,6 +75,12 @@ public class RGrammarTest { System.out.println(); } } + long endGenTime = System.nanoTime(); + + long genDur = endGenTime - startGenTime; + + if(gramSet.PERF) + System.err.printf("PERF: Generated %s 100 times in %d ns (%f s)\n", exportName, genDur, genDur / 1000000000.0); } } catch (IOException ioex) { ioex.printStackTrace(); -- cgit v1.2.3