Core statement calculations

The amount of shared memory that D3 can allocate for itself (that will be some fraction of the total amount of physical memory) can be changed by modifying the core statement value in the D3 configuration file.

The maximum size for 32bit D3 is 2.0 GB . The maximum size for 64bit D3 is limited to the amount of physical RAM on the system, minus a reasonable amount for AIX. This calculation determines the amount of required shared memory for D3:

core = D3 ABS size + (Total D3 processes * nnKB) + D3 application memory

Parameter Description
D3 ABS size Size of the D3 ABS.
  • D3 will run faster if the ABS (the D3 database system code) is loaded in memory at all times. See the D3 configuration file abslock statement if the ABS is not to be loaded in memory.
  • Also, consider if the system is running standard D3 ABS or a custom ABS. Custom ABS might be considerably larger. Determine the size of any custom ABS. The D3 ABS uses approximately 4096 KB.
Total D3 processes D3 processes that are being executed. D3 processes include:
  • Maximum number of concurrently running D3 (terminal and modem) users
  • Total number of printers on the D3 system
  • Maximum number of concurrently running D3 phantom processes
  • Maximum number of concurrently running D3 processes executing UNIX shell processes

It should not include the total number of users and processes, but rather the maximum number of users that are consistently logged on at one time and the maximum number of processes that are consistently executing at the same time.

For the multiplying factor nn:

  • For non-FlashBASIC applications, use a factor of 350 KB.
  • For FlashBASIC applications, use a factor of only 50 KB.
(FlashBASIC applications transfer memory requirements to the UNIX side of shared memory and to UNIX swap space.)
D3 application memory Amount of memory required by the application to perform its operation, that is, the amount of memory required to obtain suitable performance during file searching and sorting operations.

This value can be estimated according to the size of the database as follows:

Database Size Memory Requirements
< 100 MB 2500 KB
100 - 200 MB 3000 KB
200 - 300 MB 4000 KB
300 - 400 MB 5000 KB
400 - 500 MB 6000 KB
500 - 600 MB 6500 KB
600 - 750 MB 7500 KB
> 750 MB 1 % of the database size