Previous Topic

Next Topic

Server Memory Calculations

The c-treeACE Server startup memory requirements can be reasonably approximated with the following equation:

Base line Memory =
    Server EXE size + 1 MB +
    Communications Library size (if applicable) +
    Data cache (DAT_MEMORY) +
    Index buffer (IDX_MEMORY) +
    (900 bytes * Number of files (FILES)) +
    (325 bytes * Maximum number of connections (CONNECTIONS)) +
    (4 bytes * Maximum number of connections (CONNECTIONS)
             * Maximum number of connections (CONNECTIONS)) +
    (16000 bytes * Number of actual connections) +
    (256 bytes per connection per file actually opened))

Note the following points:

  • DAT_MEMORY and IDX_MEMORY defaults vary based on the type of Server (Standard vs. SQL) and the PAGE_SIZE. See "Basic Configuration Options" for details.
  • FILES defaults to 1000.
  • CONNECTIONS default to 128.
  • IDX_MEMORY is the MAX of:

The following locking/transaction processing related items should be considered when approximating the c-treeACE Server dynamic memory requirements:

  • Each record locked consumes 24 bytes.

For transaction processing files only:

  • Each data record written consumes (record length + 42) bytes.
  • Each index operation consumes (key length + 42) bytes.

Note: Some operating systems offer virtual RAM (VRAM) which swaps data from memory to the hard drive. VRAM is usually automatically invoked if RAM gets full. Since data is being moved to and from the hard drive by VRAM, applications will often slow. If your system suddenly slows, examine this possible cause with your system administrator.