gcache
—
control utility for CACHE GEOM
class
gcache |
create [-v ]
[-b blocksize]
[-s size]
name prov |
gcache |
configure [-v ]
[-b blocksize]
[-s size]
name |
gcache |
destroy [-fv ]
name |
gcache |
label [-v ]
[-b blocksize]
[-s size]
name prov |
gcache |
stop [-fv ]
name ... |
gcache |
clear [-v ]
prov ... |
The gcache
utility is used to control GEOM cache, which
can speed up read performance by sending fixed size read requests to its
consumer. It has been developed to address the problem of a horrible read
performance of a 64k blocksize FS residing on a RAID3 array with 8 data
components, where a single disk component would only get 8k read requests,
thus effectively killing disk performance under high load.
Caching can be configured using two different methods:
“manual” or “automatic”. When using the
“manual” method, no metadata are stored on the devices, so the
cached device has to be configured by hand every time it is needed. The
“automatic” method uses on-disk metadata to detect devices.
Once devices are labeled, they will be automatically detected and
configured.
The first argument to gcache
indicates an
action to be performed:
create
- Cache the given devices with specified name. This is
the “manual” method. The kernel module
geom_cache.ko will be loaded if it is not loaded
already.
label
- Cache the given devices with the specified name.
This is the “automatic” method, where metadata are stored in
every device's last sector. The kernel module
geom_cache.ko will be loaded if it is not loaded
already.
stop
- Turn off existing cache device by its name. This
command does not touch on-disk metadata!
destroy
- Same as
stop
.
clear
- Clear metadata on the given devices.
dump
- Dump metadata stored on the given devices.
list
- See geom(8).
status
- See geom(8).
load
- See geom(8).
unload
- See geom(8).
Additional options:
-f
- Force the removal of the specified cache device.
-v
- Be more verbose.
The following
sysctl(8) variables can be used to control the behavior of the
CACHE
GEOM class. The default value is shown next to
each variable.
- kern.geom.cache.used_hi:
20
-
- kern.geom.cache.used_lo:
5
-
- kern.geom.cache.idletime:
5
-
- kern.geom.cache.timeout:
10
-
- kern.geom.cache.enable:
1
-
- kern.geom.cache.debug:
0
- Debug level of the
CACHE
GEOM class. This can be
set to a number between 0 and 3 inclusive. If set to 0 minimal debug
information is printed, and if set to 3 the maximum amount of debug
information is printed.
Exit status is 0 on success, and 1 if the command fails.
The gcache
utility appeared in
FreeBSD 7.0.