Glossary

burstiness

The extent to which the I/O data rate for an application or node tends to vary suddenly, over short intervals of time. Contrast with an application that issues its I/O smoothly to the filesystem, with little variation in the rate at which it submits I/O. For example, an application that buffered a data flow in its internal buffers then periodically flushed that data to disk through multiple I/O worker threads would produce a highly bursty data flow.

ceiling allocation

A node-level allocation for which GRIO ensures that the node receives at most the configured bandwidth.

cluster volume

An XVM volume configured for shared access via a CXFS filesystem

cluster volume domain

An XVM concept that refers to the entire set of configured cluster volumes

device-level qualification model

The maximum sustainable bandwidth is measured for each hardware component in the I/ O path, a user reservation for I/O resources is then processed for each hardware component, and is refused if any one component would become oversubscribed.

See Also filesystem-level qualification model..

distributed bandwidth allocator (DBA)

The functionality of the ggd2 daemon that periodically adjusts the amount of bandwidth allocated to the individual non-GRIO streams for its managed filesystems. The DBA is responsible for determining how unreserved bandwidth is distributed among the nodes with access to the filesystem.

filesystem-level qualification model

A qualified bandwidth for the entire filesystem is determined empirically by verifying that the required QoS is delivered to all of the applications running a range of realistic workloads.

The maximum sustainable bandwidth is measured across the entire filesystem under a realistic application workload.

See Also device-level qualification model..

floor allocation

A node-level allocation for which GRIO ensures that the node receives at least the configured bandwidth. While there is any unallocated bandwidth, and the node is issuing I/O, ggd2 will allocate it additional bandwidth.

GRIO

Guaranteed-rate I/O. GRIOv1 is GRIO version 1, GRIOv2 is GRIO version 2. GRIOv1 is a legacy product available on IRIX only.

GRIO I/O

I/O for applications that have made an explicit GRIO reservation.

See Also non-GRIO I/O..

GRIO server

The CXFS server-capable administration node on which the active ggd2 daemon is running. All cluster volumes are managed by this single instance of ggd2. There is one GRIO server per cluster.

guarantee

The assurance made by the system to a user process that it will deliver data from a storage device at the reserved rate regardless of any other I/O activity on the system or on other nodes within its cluster.

jitter

The variation in individual service times. As the storage system approaches saturation, service-time jitter will typically increase.

local volume

An XVM volume that is dedicated for the sole use of one node.

local volume domain

An XVM concept that refers to the entire set of configured local volumes

non-GRIO I/O

All buffered and system I/O other than I/O for applications that have made an explicit GRIO reservation.

See Also GRIO I/O.

non-GRIO stream

A dedicated system stream created for a filesystem by a node when ggd2 begins managing that filesystem. All non-GRIO I/O issued by a node is automatically attached to and managed by this stream.

owning process

The user process that initially reserves bandwidth by calling grio_reserve() or grio_reserve_fd() .

qualified bandwidth

The maximum bandwidth that can be delivered by a filesystem (and the XVM volume on which it resides) in a given configuration under a realistic application workload such that all applications are delivered an adequate QoS.

quality of service (QoS)

The performance properties of a system service (such as worst-case bandwidth or I/O service time).

reservation

The set of QoS parameters requested by a user application. Reservation requests are forwarded to the ggd2(1M) bandwidth management daemon.

reservation interval

For GRIO functions where the reservation is expressed as a number of bytes delivered every number of milliseconds, that time in milliseconds is referred to as the reservation interval. It gives GRIO an indication as to the request's sensitivity to I/O jitter.

stream

The object within the kernel that encodes the reservation's QoS parameters and maintains the necessary scheduling and monitoring state required to fulfill the guarantee.

stream creation latency

The delay resulting when the grio_reserve() and grio_reserve_fd() calls block while bandwidth is reallocated.