How big should the voice cache be?

The voice cache should be large enough for your commonly used voice segments. Assuming that all your applications could be in use simultaneously, any of your voice segments might be required at any time. Note that the voice cache does not apply to voice objects played directly from Java.

For single system image environments, by making the client's cache large enough to hold voice segments played from within prompts you can reduce network traffic.

The Maximum Cache Buffers system parameter specifies the maximum number of buffers to be used for the voice cache. When the number of buffers used for the voice cache exceeds this limit, voice segments are removed from the cache, starting with the least-recently used. However, provided that the number of buffers in the cache is below the limit, no segments are removed.

Table 1 shows the system defaults and maximum values you can configure for Maximum Cache Buffers. You need 1600 bytes for each second of compressed voice data, or 8000 bytes for each second of uncompressed voice data. The more physical RAM that is available, the less paging, and the better the performance.

Redefining the size of the voice cache

To change the number of buffers in the voice cache, click Configuration —> System Configuration —> Change —> Application Server Interface —> Maximum Cached Buffers. Type in the new number of buffers to be allocated to the voice cache. Make sure it is less than the total number of buffers. Then click OK. Save your changes before you close the System Configuration window.

How long does a voice segment stay in the cache?

When the number of buffers used by the cache reaches the Maximum Cache Buffers limit, the least recently used voice segments will be removed from the cache until the number of buffers used is below the Maximum Cache Buffers limit. Only voice segments that are currently not being played are eligible for removal.

How many buffers are required for state tables?

State tables are cached in pool buffers for use by channel processes. Each state table uses at least two buffers: possibly more, depending on the number of states. A rule of thumb is that the number required is one, plus one for roughly 40 states. For example, a state table with 110 states requires 4 buffers:

110 / 40 = 3
     + 1 = 4

This works for most state tables, but because different state table actions require different amounts of space, you may need more buffers for some state tables.

How many buffers are required for prompts and voice tables?

Prompts and voice tables are cached in pool buffers for use by channel processes. Each prompt directory uses at least two buffers. If the prompt directory contains a very large number of prompts (more than 50), or there are some large prompts, more buffers may be required. You also require approximately three buffers per language for your voice tables, unless there are a lot of tables, or the tables are very large.

How big should the buffer pool be?

To calculate roughly how many buffers you need, add together:

The number of buffers required for state tables

 

The number of buffers required for prompts and voice tables

 

The number of channels (simultaneous calls)

 

The number of custom server and 3270 server sessions that might be open simultaneously

 

The number of server requests that might be in progress simultaneously (SendData-ReceiveData)

 

Voice Cache Buffers required (see How big should the voice cache be?)

 

Total

 

To this total, add 10% or, if you use many custom servers, 30%

 

Total (Number of Pool Buffers value)

 
Redefining the size of the buffer pool:

To change the total number of buffers in the buffer pool, click Configuration —> System Configuration —> Change —> Application Server Interface —> Number of Pool Buffers. Type in the total number of buffers. Then click OK. Save your changes before you close the System Configuration window.

The system does not create the new number of buffers until you shut it down and restart it. To stop and restart the system, use the procedure in Shutting down and restarting Blueworx Voice Response. To temporarily free existing buffers, use the procedure in Quiescing telephone channels.

When the buffer pool indicator light turns yellow

When the indicator light turns yellow, the system is in danger of running out of buffers. The immediate solution is to free some of the buffers for the system to use (see Quiescing telephone channels). To avoid the problem recurring, consider increasing the number of buffers in the buffer pool (see How big should the buffer pool be?) or decreasing the timeout defined for buffers holding voice segments (see How long does a voice segment stay in the cache?).

Quiescing telephone channels:

Use this procedure to quiesce telephone channels and release buffers from the buffer pool immediately. Quiescing a channel means that once the call on that channel has completed, Blueworx Voice Response blocks the channel to prevent another call from using it. Quiescing channels reduces the system's need for buffers by reducing the requirement for processing. You can either quiesce all of the channels assigned to a trunk, or you can quiesce individual channels until enough buffers are freed to turn the indicator light green again. To put the channels back in service, see Monitoring and changing channel operating status.

  1. Start: At the Welcome window, select Operations —> System Monitor
  2. Selecting a trunk : Click the number of the trunk on which you want to quiesce channels.

    The system lists all of the available actions on the trunk graphic.

  3. Quiescing all of the channels : To quiesce all channels, click Quiesce.

    The system quiesces all the channels on the trunk.

  4. Quiescing selected channels : To quiesce selected channels, click Channels.

    The system displays the status of each channel.

  5. For each channel you want to quiesce, click the status and Quiesce.

    The system prompts you for confirmation.

  6. Click OK.

Don't forget to reactivate the channels when enough buffers have been freed.