Skip site navigation (1) Skip section navigation (2)

Re: Linux I/O tuning: CFQ vs. deadline

From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Greg Smith <greg(at)2ndquadrant(dot)com>
Cc: Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, pgsql-performance(at)postgresql(dot)org, Albe Laurenz <laurenz(dot)albe(at)wien(dot)gv(dot)at>
Subject: Re: Linux I/O tuning: CFQ vs. deadline
Date: 2010-02-08 17:49:20
Message-ID: 4B704EA0.3050906@agliodbs.com (view raw or flat)
Thread:
Lists: pgsql-performance
> That's basically what I've been trying to make clear all along:  people
> should keep an open mind, watch what happens, and not make any
> assumptions.  There's no clear cut preference for one scheduler or the
> other in all situations.  I've seen CFQ do much better, you and Albe
> report situations where the opposite is true.  I was just happy to see
> another report of someone running into the same sort of issue I've been
> seeing, because I didn't have very much data to offer about why the
> standard advice of "always use deadline for a database app" might not
> apply to everyone.

Damn, you would have to make things complicated, eh?

FWIW, back when deadline was first introduced Mark Wong did some tests
and found Deadline to be the fastest of 4 on DBT2 ... but only by about
5%.  If the read vs. checkpoint analysis is correct, what was happening
is the penalty for checkpoints on deadline was almost wiping out the
advantage for reads, but not quite.

Those tests were also done on attached storage.

So, what this suggests is:
reads:  deadline > CFQ
writes: CFQ > deadline
attached storage:  deadline > CFQ

Man, we'd need a lot of testing to settle this.  I guess that's why
Linux gives us the choice of 4 ...

--Josh Berkus

In response to

Responses

pgsql-performance by date

Next:From: Greg StarkDate: 2010-02-08 18:34:01
Subject: Re: [HACKERS] Re: Faster CREATE DATABASE by delaying fsync (was 8.4.1 ubuntu karmic slow createdb)
Previous:From: Greg SmithDate: 2010-02-08 15:30:13
Subject: Re: Linux I/O tuning: CFQ vs. deadline

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group