[<prev] [next>] [day] [month] [year] [list]
Message-ID: <1324523408.22361.470.camel@sli10-conroe>
Date: Thu, 22 Dec 2011 11:10:08 +0800
From: Shaohua Li <shaohua.li@...el.com>
To: lkml <linux-kernel@...r.kernel.org>, linux-scsi@...r.kernel.org
Cc: JBottomley@...allels.com, Jens Axboe <axboe@...nel.dk>,
Christoph Hellwig <hch@...radead.org>,
Ted Ts'o <tytso@....edu>,
"Wu, Fengguang" <fengguang.wu@...el.com>,
"Darrick J. Wong" <djwong@...ibm.com>
Subject: [patch 0/2]scsi: improve fairness of starved list
We recently found some performance regressions related to writeback.
See http://marc.info/?l=linux-kernel&m=132391033818515&w=2. The test
system uses a LSI 1068e card and 12 hard disks attached to it. The
workload is a simple FIO test, which runs one thread for each disk to
create files. The filesystem is EXT4. Compared to 3.1 kernel, we found
both data=order and data=writeback mode have performance regression.
data=writeback regression is bigger.
The scsi_host->can_queue = 127, where disk queue_depth=64, 64*12 > 127,
so the fairness to utilize host can_queue is important for the overall
throughput, otherwise some disks will be starved and others run in full
speed. In this workload, we found recent I/O less writeback causes the
fairness issue and the throughput get dropped.
We'd better fix the fairness issue in writeback, but on the other hand,
the scsi layer also has fairness issue regarding to the starve list,
which exists in old kernel too, but not that severe. Below two patches
try to address the scsi issue, the test result is (average of 3 runs,
data=writeback mode):
3.1: 1000045 KB/s
base: 854016 KB/s
base+patch: 958122 KB/s
The patches don't fully recover the regression, but give a 12%
improvement.
Thanks,
Shaohua
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists