You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

A place to collect ideas and observations about a re-write of the internals of UIMA to modernize it in several dimension.

These include

  • Allowing more parallelism - e.g. running a pipeline with multiple independent Annotators working together in the same CAS
  • Shifting the space / speed tradeoffs - the current design has ways to minimize the memory footprint, but is potentially slower than designs not so focussed on this
    • Because of the relative speed of CPUs and Memory, much improved performance can be obtained by improving locality-of-reference (LOR); often done by duplicating things (taking more memory)
  • Removing parts of UIMA not used (e.g., the CAS Data Object protocols and related things like the NetworkCasProcessorImpl
  • Switching from custom implementations of various functions to more standard Java libraries implementation
    • to reduce the code size
    • to make it more maintainable
    • to take advantage of core Java / core Library improvements going forward
  • Handling backward compatibility - how much, how faithful, etc.

A prototype in this direction, called Cas-obj, has been offered in UIMA-4329

 

  • No labels