| Willing-to-wait misses | This
measures the latch contention for requests that were willing
to wait to acquire a latch. The value of this metric
represents the ratio of the number of requests that could not acquire
a latch, to those that could acquire a latch. | Percent | Both
the above metrics should be 1% or less. For redo allocation
latches, if the Willing-to-wait misses is high, consider
decreasing the LOG_SMALL_ENTRY_MAX_SIZE parameter in the
INIT.ORA file. By making the max size for a redo allocation latch
smaller, more redo log buffer writes qualify for a redo copy latch
instead, thus better utilizing multiple CPU's for the redo
log buffer writes. Even though memory structure manipulation
times are measured in nanoseconds, a larger write still
takes longer than a smaller write. If the size for remaining
writes done via redo allocation latches is small enough,
they can be completed with little or no redo allocation
latch contention. On
a single CPU node, all log buffer writes are done via redo
allocation latches. If log buffer latches are a significant
bottleneck, performance can benefit from additional CPU's
(thus enabling redo copy latches) even if the CPU utilization
is not an operating system level bottleneck. If the values for redo copy latches is > 1%, consider
increasing the LOG_SIMULTANEOUS_COPIES parameter in the
INIT.ORA file. This initialization parameter is the number
of redo copy latches available. It defaults to the number of
CPU's (assuming a multiple CPU node). Oracle recommends
setting it as large as 2 times the number of CPU's on the
particular node, although quite a bit of experimentation may
be required to get the value adjusted in a suitable manner
for any particular instance's workload. Depending on CPU
capability and utilization, it may be beneficial to set this
initialization parameter smaller or larger than 2 X #CPU's. Note
that the LOG_SIMULTANEOUS_COPIES parameter obsolete from Oracle 8i
onwards. Hence, if you are monitoring Oracle 8i (or higher), use the
hidden parameter _LOG_SIMULTAENOUS_COPIES instead. Recall
that the assignment of log buffer writes to either redo
allocation latches or redo copy latches is controlled by the
maximum log buffer write size allowed for a redo allocation
latch, and is specified in the LOG_SMALL_ENTRY_MAX_SIZE
initialization parameter. Recall also that redo copy latches apply
only to multiple CPU hosts. Note that the LOG_SMALL_ENTRY_MAX-SIZE parameter is not supported from Oracle 9i onwards. |