On Jan 11, 2010, at 2:23 PM, Bob Friesenhahn <bfrie...@simple.dallas.tx.us > wrote:

On Mon, 11 Jan 2010, bank kus wrote:

Are we still trying to solve the starvation problem?

I would argue the disk I/O model is fundamentally broken on Solaris if there is no fair I/O scheduling between multiple read sources until that is fixed individual I_am_systemstalled_while_doing_xyz problems will crop up. Started a new thread focussing on just this problem.

While I will readily agree that zfs has a I/O read starvation problem (which has been discussed here many times before), I doubt that it is due to the reasons you are thinking.

A true fair I/O scheduling model would severely hinder overall throughput in the same way that true real-time task scheduling cripples throughput. ZFS is very much based on its ARC model. ZFS is designed for maximum throughput with minimum disk accesses in server systems. Most reads and writes are to and from its ARC. Systems with sufficient memory hardly ever do a read from disk and so you will only see writes occuring in 'zpool iostat'.

The most common complaint is read stalls while zfs writes its transaction group, but zfs may write this data up to 30 seconds after the application requested the write, and the application might not even be running any more.

Maybe an IO scheduler like Linux's 'deadline' IO scheduler whose only purpose is to reduce the effect of writers starving readers while providing some form of guaranteed latency.

-Ross

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to