Module drivers

Module drivers 

Source
Expand description

Support for pluggable copy drivers.

Two drivers are currently supported:

  • parfile: Parallelise copying at the file level. This can improve speed on modern NVME devices, but can bottleneck on larger files.
  • parblock: Parallelise copying at the block level. Block-size is configurable. This can have better performance for large files, but has a higher overhead.

Drivers are configured with the Config struct. A convenience function load_driver() is provided to load a dynamic-dispatched instance of each driver.

§Example

See the example in top-level module.

Modules§

parblock
Parallelise copying at the block level. Block-size is configurable. This can have better performance for large files, but has a higher overhead.
parfile
Parallelise copying at the file level. This can improve speed on modern NVME devices, but can bottleneck on larger files.

Enums§

Drivers
An enum specifing the driver to use. This is just a helper for applications to use with load_driver(). FromStr is implemented to help with this.

Traits§

CopyDriver
The trait specifying driver operations; drivers should implement this.

Functions§

load_driver
Load and configure the given driver.