This is an automated email from the ASF dual-hosted git repository.

rec pushed a commit to branch feature/UIMA-5823-Add-basic-benchmarking-module-v3
in repository https://gitbox.apache.org/repos/asf/uima-uimafit.git

commit f98cb364d0bf2c9d44411a1c2dae287a9a75b01e
Author: Richard Eckart de Castilho <[email protected]>
AuthorDate: Sun Jul 15 19:13:22 2018 +0200

    [UIMA-5823] Add basic benchmarking module
    
    - Added a benchmark for select/indexCovering
---
 .../uima/fit/benchmark/CasUtilBenchmark.java       | 29 ++++++++++++++++++++--
 1 file changed, 27 insertions(+), 2 deletions(-)

diff --git 
a/uimafit-benchmark/src/test/java/org/apache/uima/fit/benchmark/CasUtilBenchmark.java
 
b/uimafit-benchmark/src/test/java/org/apache/uima/fit/benchmark/CasUtilBenchmark.java
index 8254048..569b884 100644
--- 
a/uimafit-benchmark/src/test/java/org/apache/uima/fit/benchmark/CasUtilBenchmark.java
+++ 
b/uimafit-benchmark/src/test/java/org/apache/uima/fit/benchmark/CasUtilBenchmark.java
@@ -18,12 +18,16 @@
  */
 package org.apache.uima.fit.benchmark;
 
-import static org.apache.uima.fit.factory.TypeSystemDescriptionFactory.*;
 import static 
org.apache.uima.fit.benchmark.CasInitializationUtils.initRandomCas;
+import static 
org.apache.uima.fit.factory.TypeSystemDescriptionFactory.createTypeSystemDescription;
+import static org.apache.uima.fit.util.CasUtil.getType;
 import static org.apache.uima.fit.util.CasUtil.indexCovered;
+import static org.apache.uima.fit.util.CasUtil.indexCovering;
 import static org.apache.uima.fit.util.CasUtil.select;
 import static org.apache.uima.fit.util.CasUtil.selectAll;
-import static org.apache.uima.fit.util.CasUtil.*;
+import static org.apache.uima.fit.util.CasUtil.selectCovered;
+import static org.apache.uima.fit.util.CasUtil.selectCovering;
+import static org.apache.uima.fit.util.CasUtil.selectFS;
 
 import org.apache.uima.cas.CAS;
 import org.apache.uima.cas.Type;
@@ -134,4 +138,25 @@ public class CasUtilBenchmark {
           .forEach((s, l) -> l.forEach(t -> {})))
       .run();
   }
+  
+  @Test
+  public void benchmarkSelectCovering() {
+    Benchmark template = new Benchmark("TEMPLATE")
+      .initialize(n -> initRandomCas(cas, n))
+      .magnitude(10)
+      .magnitudeIncrement(count -> count * 10)
+      .incrementTimes(3);
+    
+    new Benchmark("JCas selectCovering", template)
+      .measure(() -> {
+        Type sentenceType = getType(cas, TYPE_NAME_SENTENCE);
+        Type tokenType = getType(cas, TYPE_NAME_TOKEN);
+        select(cas, tokenType).forEach(s -> selectCovering(sentenceType, s));
+      })
+      .run();
+
+    new Benchmark("JCas indexCovering", template)
+      .measure(() -> indexCovering(cas, getType(cas, TYPE_NAME_TOKEN), 
getType(cas, TYPE_NAME_SENTENCE)))
+      .run();
+  }
 }

Reply via email to