Re: SATA-performance: Linux vs. FreeBSD

From: Stefan Richter
Date: Mon Feb 12 2007 - 13:19:28 EST


Martin A. Fink wrote:
> This means, that the CPU is only 7.3 of 52.8 seconds working.
...
> It looks like
> the SATA driver simply blocks the CPU while doing whatever...

The system sleeps while waiting for the disk (actually, for the SATA
host port) to be done with its work.

As Andi explained, if the system gives the disk a small task, waits for
the task to be completed, then gives it a next task and so on, latencies
add up and eat into effective bandwidth. Give the disk a whole set of
tasks so that
- it has immediately something new to do when it finished one task,
- deep pipes are not mostly empty due to "bubbles" in the pipe,
- tasks can be reordered to be executed in optimized manner for good
bandwidth utilization (if software/ firmware/ hardware is present
which supports this; e.g. the Linux kernel itself),
etc.
Also make each task large so that the ratio of protocol overhead to net
data payload stays minimal.
--
Stefan Richter
-=====-=-=== --=- -==--
http://arcgraph.de/sr/
-
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/