On Wed, Jun 05, 2013 at 10:09:31AM +0800, Robin Dong wrote:
> We want to use blkio.cgroup on high-speed device (like fusionio) for our 
> mysql clusters.
> After testing different io-scheduler, we found that  cfq is too slow and 
> deadline can't run on cgroup.

So why not enhance deadline to be able to be used with cgroups instead of
coming up with a new scheduler?

> So we developed a new io-scheduler: tpps (Tiny Parallel Proportion 
> Scheduler).It dispatch requests
> only by using their individual weight and total weight (proportion) therefore 
> it's simply and efficient.

Can you give more details. Do you idle? Idling kills performance. If not,
then without idling how do you achieve performance differentiation.

> 
> Test case: fusionio card, 4 cgroups, iodepth-512
> 
> groupname  weight
> test1      1000
> test2      800
> test3      600
> test4      400
> 

What's the workload used for this?

> Use tpps, the result is:
> 
> groupname  iops    avg-rt(ms)   max-rt(ms)
> test1      30220   16           54
> test2      28261   18           56
> test3      26333   19           69
> test4      20152   25           87
> 
> Use cfq, the result is:
> 
> groupname  iops    avg-rt(ms)   max-rt(ms)
> test1      16478   30           242
> test2      13015   39           347
> test3       9300   54           371
> test4       5806   87           393

How do results look like with cfq if this is run with slice_idle=0 and
quatum=128 or higher.

cfqq idles on 3 things. queue (cfqq), service tree and cfq group.
slice_idle will disable idling on cfqq but not no service tree. If
we provide a knob for that, then idling on service tree can be disabled
too and then we will be left with group idling only and then it should
be much better.

Thanks
Vivek
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to