Hello,
I have some performance issues with a current application. The profiler
tells me that over 80% of the execution time was spent on the about 200
calls of the method CASImpl.createFilteredIterator(). These 80% are
sometimes more than 1000s for one AE.process() and there is a lot more
moving on the index going on within those 20%.
I can't investigate the cause for this performace hot spot any further,
also because I am missing the source plugins for UIMA runtime plugin.
The application is running within Eclipse. My first question: Is there
an easy way to get/create a source plugin for the UIMA core/runtime? At
best without using maven? Any best practices for profiling UIMA in Eclipse?
My second question: Is that a normal behavior or can anyone give me a
hint how I could increase the performance?
Some exemplary information about the usage of the method:
The CAS contains about 40 pages of plain text with about 50 lines per
page. Part of the text (maybe 3 pages) is annotated and for each line of
the segment the methods createFilteredIterator() is called with some
constraints about types and of course about the window of the iterator
(that is the line). I also tried the replace the filtered iterator with
a window constraint with a filtered iterator of a subiterator of the
annotation index resulting in no real improvement of performance. The
UIMA version is 2.2.2
Looking forward to some hint or directions.
Peter
--
Peter Klügl
[email protected]