Kbase 19905: How much memory does a BI or AI buffer use?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  16/10/2008 |
|
Status: Verified
GOAL:
How much memory does a BI or AI buffer use?
GOAL:
How memory is allocated for -bibufs and -aibufs
FIX:
The -bibufs and -aibufs values are database startup parameters which set the number of bi and ai buffers respectively at database startup.
The default value for -bibufs is 5 and the default for -aibufs is 1 pre Progress 9.x and 5 post Progress 9.x.
When PROGRESS allocates memory at startup, each Before Image (BI) or After Image (AI) buffer uses 16 KB of memory per buffer,
ie the maximum possible value for -biblocksize / -aiblocksize(16K) multiplied by the value for -bibufs or -aibufs.
Each buffer also uses 100 bytes of additional memory to store other Progress internal information that is associated with the buffer.
Example:
Suppose the following conditions exist.
-bibufs 50
The total memory allocated for the bi buffers would be: 824,200 bytes ((16,384 X 50)+(50*100)).
Progress recommends -aibufs are set to a value of 1.5 to 2 times the value of the BI (-bibufs) parameter on the source database, if after-imaging is enabled and especially if Fathom Replication is enabled, otherwise they are not needed and the default can be ignored. -bibufs can be tuned by monitoring % bi buffer waits in the promon Activity Screen. Typically, values don't need to be higher than 30, but each application environment will have it's ideal value above which adding more is not going to make any difference and will only waste memory
How many -bibufs or -aibufs the database has been started with can be determined by the following methods:
1. Review the database startup parameters for -bibufs or -aibufs . If these are absent, then the defaults listed above are in use.
2. Progress records this information in the database log file (dbname.lg) as follows:
BROKER 0: Number of Before-Image Buffers (-bibufs): 5. (4252)
BROKER 0: Number of After-Image Buffers (-aibufs): 5. (4256)
3. While the database is running shared-memory, from a command prompt, start a promon dbname session connection and choose "6. Shared Resources" from the menu presented.
Look for the lines below (the default values are shown here):
Number of before image buffers (-bibufs): 5
Number of after image buffers (-aibufs): 1