•Using the
•Performing large sequential writes to the drive
For more details on using the
Increasing outstanding requests allowed by the kernel (Linux only)
This section applies to running the 2.0 driver series and later on Linux, with the default value (3) for the use_workqueue driver option.
The I/O schedulers limit the number of outstanding I/O requests issued to a block device to 128. This might limit achievable performance for small block random I/O. This limit can be adjusted dynamically. For example, to increase the number of allowed requests to 4096 per block device, use the following command:
$ echo 4096 > /sys/block/<fio name>/queue/nr_requests
where <fio name> is the block device name, such as fioa.
For some workloads, increasing this parameter might increase I/O latency.
Pre-allocating memory
The driver allocates memory as needed at runtime. If you need to keep memory allocations to a minimum, such as when using the IO Accelerator as a swap or page file, enable preallocation with the driver options described below.
You can further tune memory allocation for your IO Accelerator devices by using the following module parameters:
•preallocate_memory
•preallocate_mb
•expected_io_size
NOTE: Improper use of the preallocate_mb or expected_io_size module parameters might cause the driver to have insufficient memory in the
preallocate_memory
Description
Causes the driver to
This module parameter does not normally need to be invoked if swap has been enabled. If the memory
General tuning techniques 18