Re: BFQ: simple elevator

2013-03-25 Thread Raymond Jennings
On Sat, Mar 23, 2013 at 7:38 AM, Matthias Brugger matthias@gmail.com wrote: On 03/20/2013 10:41 PM, Raymond Jennings wrote: On Wed, Mar 20, 2013 at 2:03 PM, valdis.kletni...@vt.edu wrote: On Thu, 21 Mar 2013 02:24:23 +0700, Mulyadi Santosa said: pardon me for any possible sillyness,

Re: BFQ: simple elevator

2013-03-25 Thread Raymond Jennings
On Sat, Mar 23, 2013 at 9:42 AM, Matthias Brugger matthias@gmail.com wrote: On 03/23/2013 01:05 AM, Raymond Jennings wrote: On Fri, Mar 22, 2013 at 2:20 PM, valdis.kletni...@vt.edu wrote: On Fri, 22 Mar 2013 13:53:45 -0700, Raymond Jennings said: The first heap would be synchronous

Re: BFQ: simple elevator

2013-03-25 Thread Matthias Brugger
2013/3/25 Raymond Jennings shent...@gmail.com: On Sat, Mar 23, 2013 at 9:42 AM, Matthias Brugger matthias@gmail.com wrote: On 03/23/2013 01:05 AM, Raymond Jennings wrote: On Fri, Mar 22, 2013 at 2:20 PM, valdis.kletni...@vt.edu wrote: On Fri, 22 Mar 2013 13:53:45 -0700, Raymond

Re: BFQ: simple elevator

2013-03-25 Thread Raymond Jennings
it would appear indeed that my primitive out of my hat is identical to LOOK. On Mon, Mar 25, 2013 at 3:27 PM, Matthias Brugger matthias@gmail.com wrote: 2013/3/25 Raymond Jennings shent...@gmail.com: On Sat, Mar 23, 2013 at 9:42 AM, Matthias Brugger matthias@gmail.com wrote: On

Re: BFQ: simple elevator

2013-03-23 Thread Matthias Brugger
On 03/20/2013 10:41 PM, Raymond Jennings wrote: On Wed, Mar 20, 2013 at 2:03 PM, valdis.kletni...@vt.edu wrote: On Thu, 21 Mar 2013 02:24:23 +0700, Mulyadi Santosa said: pardon me for any possible sillyness, but what happen if there are incoming I/O operation at very nearby sectors (or

Re: BFQ: simple elevator

2013-03-23 Thread Matthias Brugger
On 03/23/2013 01:05 AM, Raymond Jennings wrote: On Fri, Mar 22, 2013 at 2:20 PM, valdis.kletni...@vt.edu valdis.kletni...@vt.edu wrote: On Fri, 22 Mar 2013 13:53:45 -0700, Raymond Jennings said: The first heap would be synchronous requests such as reads and syncs that someone in userspace

Re: BFQ: simple elevator

2013-03-22 Thread Raymond Jennings
On Thu, Mar 21, 2013 at 8:52 PM, Mulyadi Santosa mulyadi.sant...@gmail.com wrote: Hi On Thu, Mar 21, 2013 at 4:37 PM, Raymond Jennings shent...@gmail.com wrote: At any rate I suppose the best way to get started on this is to get a grip on the api's involved in receiving requests from

Re: BFQ: simple elevator

2013-03-22 Thread Raymond Jennings
I think I might split incoming requests into two heaps. The first heap would be synchronous requests such as reads and syncs that someone in userspace is blocking on. The second is background I/O like writeback and readahead. The same distinction that CFQ completely makes. Anyway, I plan to

Re: BFQ: simple elevator

2013-03-22 Thread Valdis . Kletnieks
On Fri, 22 Mar 2013 13:53:45 -0700, Raymond Jennings said: The first heap would be synchronous requests such as reads and syncs that someone in userspace is blocking on. The second is background I/O like writeback and readahead. The same distinction that CFQ completely makes. Again, this

Re: BFQ: simple elevator

2013-03-22 Thread Raymond Jennings
On Fri, Mar 22, 2013 at 2:20 PM, valdis.kletni...@vt.edu wrote: On Fri, 22 Mar 2013 13:53:45 -0700, Raymond Jennings said: The first heap would be synchronous requests such as reads and syncs that someone in userspace is blocking on. The second is background I/O like writeback and

Re: BFQ: simple elevator

2013-03-21 Thread Valdis . Kletnieks
On Wed, 20 Mar 2013 16:37:41 -0700, Raymond Jennings said: Hmm...Maybe a hybrid approach that allows a finite number of reverse seeks, or as I suspect deadline does a finite delay before abandoning the close stuff to march to the boonies. Maybe. Maybe not. It's going to depend on the

Re: BFQ: simple elevator

2013-03-21 Thread Raymond Jennings
On Thu, Mar 21, 2013 at 2:13 AM, valdis.kletni...@vt.edu wrote: On Wed, 20 Mar 2013 16:37:41 -0700, Raymond Jennings said: Hmm...Maybe a hybrid approach that allows a finite number of reverse seeks, or as I suspect deadline does a finite delay before abandoning the close stuff to march to

Re: BFQ: simple elevator

2013-03-21 Thread Mulyadi Santosa
Hi On Thu, Mar 21, 2013 at 4:37 PM, Raymond Jennings shent...@gmail.com wrote: At any rate I suppose the best way to get started on this is to get a grip on the api's involved in receiving requests from above and dispatching them below. Is studying the deadline scheduler a good start or

BFQ: simple elevator

2013-03-20 Thread Raymond Jennings
I've been pondering making a very simple IO scheduler one step above noop, just keeps everything in a big heap sorted by position and a single cursor bouncing from head to tail shaving off requests in a loop of ascending and descending sweeps. Any gotchas I need to be aware of or can I simply

Re: BFQ: simple elevator

2013-03-20 Thread Mulyadi Santosa
On 3/20/13, Raymond Jennings shent...@gmail.com wrote: I've been pondering making a very simple IO scheduler one step above noop, just keeps everything in a big heap sorted by position and a single cursor bouncing from head to tail shaving off requests in a loop of ascending and descending

Re: BFQ: simple elevator

2013-03-20 Thread Valdis . Kletnieks
On Thu, 21 Mar 2013 02:24:23 +0700, Mulyadi Santosa said: pardon me for any possible sillyness, but what happen if there are incoming I/O operation at very nearby sectors (or perhaps at the same sector?)? I suppose, the elevator will prioritize them first over the rest? (i.e starving will

Re: BFQ: simple elevator

2013-03-20 Thread Raymond Jennings
On Wed, Mar 20, 2013 at 2:03 PM, valdis.kletni...@vt.edu wrote: On Thu, 21 Mar 2013 02:24:23 +0700, Mulyadi Santosa said: pardon me for any possible sillyness, but what happen if there are incoming I/O operation at very nearby sectors (or perhaps at the same sector?)? I suppose, the elevator

Linux elevators (Re: BFQ: simple elevator)

2013-03-20 Thread Arlie Stephens
The ongoing thread reminds me of a simple question I've had since I first read about linux' mutiple I/O schedulers. Why is the choice of I/O scheduler global to the whole kernel, rather than per-device or similar? Consider a system with both traditional rotating disks and SSDs - not at all far

Re: BFQ: simple elevator

2013-03-20 Thread Valdis . Kletnieks
On Wed, 20 Mar 2013 14:41:31 -0700, Raymond Jennings said: Suppose you have requests at sectors 1, 4, 5, and 6 You dispatch sectors 1, 4, and 5, leaving the head parked at 5 and the direction as ascending. But suddenly, just before you get a chance to dispatch for sector 6, sector 4 gets

Re: Linux elevators (Re: BFQ: simple elevator)

2013-03-20 Thread Valdis . Kletnieks
On Wed, 20 Mar 2013 16:05:09 -0700, Arlie Stephens said: The ongoing thread reminds me of a simple question I've had since I first read about linux' mutiple I/O schedulers. Why is the choice of I/O scheduler global to the whole kernel, rather than per-device or similar? They aren't global to

Re: Linux elevators (Re: BFQ: simple elevator)

2013-03-20 Thread Arlie Stephens
On Mar 20 2013, valdis.kletni...@vt.edu wrote: On Wed, 20 Mar 2013 16:05:09 -0700, Arlie Stephens said: The ongoing thread reminds me of a simple question I've had since I first read about linux' mutiple I/O schedulers. Why is the choice of I/O scheduler global to the whole kernel, rather

Re: BFQ: simple elevator

2013-03-20 Thread Raymond Jennings
On Wed, Mar 20, 2013 at 4:10 PM, valdis.kletni...@vt.edu wrote: On Wed, 20 Mar 2013 14:41:31 -0700, Raymond Jennings said: Suppose you have requests at sectors 1, 4, 5, and 6 You dispatch sectors 1, 4, and 5, leaving the head parked at 5 and the direction as ascending. But suddenly, just

Re: Linux elevators (Re: BFQ: simple elevator)

2013-03-20 Thread Raymond Jennings
On Wed, Mar 20, 2013 at 4:45 PM, Arlie Stephens ar...@worldash.org wrote: On Mar 20 2013, valdis.kletni...@vt.edu wrote: On Wed, 20 Mar 2013 16:05:09 -0700, Arlie Stephens said: The ongoing thread reminds me of a simple question I've had since I first read about linux' mutiple I/O