summaryrefslogtreecommitdiff
path: root/src/main/java/bjc/rgens/parser/RGrammarTest.java
diff options
context:
space:
mode:
authorBenjamin J. Culkin <bjculkin@mix.wvu.edu>2018-06-03 20:02:14 -0300
committerBenjamin J. Culkin <bjculkin@mix.wvu.edu>2018-06-03 20:02:14 -0300
commite70fddaf4bd5d85edd8b3e9a551dc8c9c101f10a (patch)
treee87568e612e9d97381ad0592270b29a668f2ddc8 /src/main/java/bjc/rgens/parser/RGrammarTest.java
parentaea83f40c087ee32cbc1ad4e7940d53f887fbff8 (diff)
Minor updates
This does some minor updates to things, as well as adding some performance tracking
Diffstat (limited to 'src/main/java/bjc/rgens/parser/RGrammarTest.java')
-rwxr-xr-xsrc/main/java/bjc/rgens/parser/RGrammarTest.java19
1 files changed, 19 insertions, 0 deletions
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();