Two features of OpenVMS Alpha and Integrity servers
provide dramatically improved I/O performance: Fast I/O and Fast Path.
These features are designed to promote OpenVMS as a leading platform
for database systems. Performance improvement results from reducing
the CPU cost per I/O request and improving symmetric multiprocessing
(SMP) scaling of I/O operations. The CPU cost per I/O is reduced by
optimizing code for high-volume I/O and by using better SMP CPU memory
cache. SMP scaling of I/O is increased by reducing the number of spinlocks
taken per I/O and by substituting finer-granularity spinlocks for
global spinlocks.
The improvements follow a natural division that
already exists between the device-independent and device-dependent
layers in the OpenVMS I/O subsystem. The device-independent overhead
is addressed by Fast I/O, which is a set of lean system services that
can substitute for certain $QIO operations. Using these services requires
some coding changes in existing applications, but the changes are
usually modest and well contained. The device-dependent overhead is
addressed by Fast Path, which is an optional performance feature that
creates a “fast path” to the device. It requires no
application changes.
Fast I/O and Fast Path can be used independently;
however, together they can provide a 45 percent reduction in CPU cost
per I/O on uniprocessor systems and a 52 percent reduction on multiprocessor
systems.