Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 May 2016 12:51:50 +0200
From:      Johan Hendriks <joh.hendriks@gmail.com>
To:        Warren Block <wblock@wonkity.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: FreeBSD Quarterly Status Report - First Quarter 2016 (fwd)
Message-ID:  <38091325-b0c9-ac6d-d6e9-efc29c814e0a@gmail.com>
In-Reply-To: <alpine.BSF.2.20.1605011847390.44343@wonkity.com>
References:  <alpine.BSF.2.20.1605011847390.44343@wonkity.com>

next in thread | previous in thread | raw e-mail | index | archive | help


Op 02/05/16 om 02:49 schreef Warren Block:
> CAM I/O Scheduler
>
>    Links
>    I/O Scheduling in FreeBSD's CAM Subsystem (PDF) URL:
>    https://people.freebsd.org/~imp/bsdcan2015/iosched-v3.pdf
>    The BSDCan 2015 Talk URL: https://www.youtube.com/watch?v=3WqOLolj5EU
>
>    Contact: Warner Losh <wlosh@netflix.com>
>
>    An enhanced CAM I/O scheduler has been committed to the tree. By
>    default, this scheduler implements the old behavior. In addition, an
>    advanced adaptive scheduler is available. Along with the scheduler,
>    SATA disks can now use Queued Trims with devices that support them.
>    Details about the new scheduler are available in the I/O Scheduling in
>    FreeBSD's CAM Subsystem article (PDF) or from the BSDCan 2015 talk.
>
>    The adaptive I/O scheduler is disabled by default, but can be enabled
>    with options CAM_ADAPTIVE_IOSCHED in the kernel config file. This
>    scheduler allows favoring reads over writes (or vice versa),
>    controlling the IOPs, bandwidth, or concurrent operations (read,
> write,
>    trim), and permits the selection of static or dynamic control of these
>    operations. In addition, a number of statistics are collected for
> drive
>    operations that are published via sysctl. One advanced use for the
>    adaptive I/O scheduler is to compensate for deficiencies in some
>    consumer-grade SSDs. These SSDs exhibit a performance cliff if too
> much
>    data is written to them too quickly due to internal garbage
> collection.
>    Without the I/O scheduler, read and write performance drop
>    substantially once garbage collection kicks in. The adaptive I/O
>    scheduler can be configured to monitor read latency. As read latency
>    climbs, the I/O scheduler reduces the allowed write throughput, within
>    limits, to attempt to maximize read performance. A simple use of the
>    adaptive I/O scheduler would be to limit write bandwidth, IOPs or
>    concurrent operations statically.
>
>    Future work on the I/O scheduler will be coupled with improvements to
>    the upper layers. The upper layers will be enhanced to communicate how
>    urgent I/O requests are. The I/O scheduler will inform the upper
> layers
>    of how full the I/O queues are, so less urgent I/O can be submitted to
>    the lower layers as quickly as possible without overwhelming the lower
>    layers or starving other devices of requests.
>
>    This project was sponsored by Netflix.
>      __________________________________________________________________
I updated my source today, but CAM_ADAPTIVE_IOSCHED yields an error
about an unknown option.
If I use CAM_NETFLIX_IOSCHED the kernel compiles.
Is the name CAM_NETFLIX_IOSCHED changing to CAM_ADAPTIVE_IOSCHED?

regards
Johan




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?38091325-b0c9-ac6d-d6e9-efc29c814e0a>