You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@uima.apache.org by "D. Heinze" <dh...@gnoetics.com> on 2016/01/14 01:28:25 UTC

UIMA memory management and persistence

I have a couple questions that I have only been able to find vague or
partial answers to on line:
1. Does UIMA still use C for implementing the CAS or is it all Java now?
2. Does UIMA use the file system to implement the CAS persistence layer
during runtime?
    a. I'm curious because my engine loads all its resources into memory,
but between the time that it reads in a document and when it outputs the
results, the system profiler shows a lot of disk activity.  This is plain
UIMA, not UIMA-AS

Thanks / Dan


Re: UIMA memory management and persistence

Posted by Richard Eckart de Castilho <re...@apache.org>.
On 14.01.2016, at 01:28, D. Heinze <dh...@gnoetics.com> wrote:
> 
> I have a couple questions that I have only been able to find vague or
> partial answers to on line:
> 1. Does UIMA still use C for implementing the CAS or is it all Java now?

The UIMA Java SDK is written in Java (no C). Although the way that UIMA-J
manages the CAS internally using various heaps is more C-like than
Java-like.

> 2. Does UIMA use the file system to implement the CAS persistence layer
> during runtime?

Core UIMA doesn't use the file system unless asked to (i.e. when you serialize
to disk). The framework internally keeps all its data in memory. Although,
I have to admit, I don't know how the checkpoints that I believe are supported
by the CPE are implemented (never used that feature).

If you see massive disk IO, it might be due to the OS swapping?

>    a. I'm curious because my engine loads all its resources into memory,
> but between the time that it reads in a document and when it outputs the
> results, the system profiler shows a lot of disk activity.  This is plain
> UIMA, not UIMA-AS

Cheers,

-- Richard