We are evaluating the CFS OLTP performance with 2.6.28-c7 kernel. In this workload once a database foreground process commit a transaction it will signal the log writer process to write to the log file. Foreground processes will wait until log writer finish writing and wake them up. With hundreds of foreground process running in the system, it is important that the log writer get to run as soon as data is available.
Here are the experiments we have done with 2.6.28-rc7.
1. Increase log writer priority "renice -20 <log writer pid>" while keeping all other processes running in default CFS priority. We get a baseline performance with log latency (scheduling + i/o) at 7 ms.
2. To reduce log latency, we set log writer to SCHED_RR with higher priority. We tried "chrt -p 49 <log writer pid>" and got 0.7% boost in performance with log latency reduced to 6.4 ms.
It seems that in this case renice to higher priority with CFS did not reduce scheduling latency as well as SCHED_RR.