Question: IO priorities for disk writes?

From: Simon Kämpflein
Date: Tue Apr 14 2009 - 06:22:50 EST


Hello,

is there a possibility to prioritize disk writes? I tried ionice with
cfq scheduler, but as far as I understand and tested it only works for
reading.

Background:
I have one block device (SATA drive) and a data stream of about 6 MB/s
written by a process to files on the device (fs: reiserfs, fp opened
with O_DIRECT). The data is generated externally and processed and
buffered in memory by the process. So an average bandwidth of 6 MB/s for
writing is required. Another process reads the data in parallel, also
with about 6 MB/s.

So generally this is no problem when the system has nothing else to do.
But when other heavy disk writes occur, e.g. data written to the disk
via network (another extreme case: dd if=/dev/zero of=tmpfile), the
writing speed drops far below 6 MB/s.

So far I tried with no luck (io scheduler cfq):
- "ionice -c0 -n0" for the writer and reader
- "ionice -c3" for all pdflush threads

Is there any possibility to get this working with the current kernel
version? The performance of the other processes besides the
reader/writer is unimportant. Alternatively I'm thinking about using a
second block device for the writing/reading (maybe an USB-Stick?).

Best regards,
Simon

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