[tahoe-dev] Tahoe benchmarking data
kyle at arbyte.us
Mon Jul 26 03:10:34 UTC 2010
> The fastest data rate you're seeing here is 64MiB/14.80s, so about
> 4.47MB/s or roughly 35-40Mbps, which is probably about the middle of
> what you'd expect out of a 100Mbps ethernet (maybe a bit on the low
> side, but not by much). Was the client CPU pegged during the upload? I
> suspect you're CPU bound, but that overall your network is pretty close
> to being saturated too.
Yeah, I think we're approximately saturating the network during the large
file transfers. But for the small files, both network and CPU load are
very low (under 10%).
I used systrace to count kernel calls during the large and small file
transfers. The heavy end of the histograms are:
tahoe backup large files:
tahoe backup small files:
daemon process, combined for both transfers:
The large number of recvfrom calls on the tahoe backup of small files
looks odd because it's a huge mismatch against the sendto calls, but
nothing else stands out.
I wonder whether temporary file creation for the small file transfers
might be part of the problem. I know that temporary files are created on
occasion; could someone explain precisely when?
> The pipeline will really become important when your client-to-server
> latency is more than the fraction of a millisecond that you probably get
> on your LAN. How do ping times compare between the wired and the
> wireless connections? On this network I'd expect them to be too close to
> have a huge effect on tahoe's performance, although clearly there *some*
> kind of effect. The one thing that I know wireless networks are more
> susceptible to is up/down interference: the ACK coming back from the
> server will contend with the next data packet coming from the client
> (it'd be worse if both client and server are on wireless connections).
Ping to the storage node through the wired interface is about 0.66ms.
Ping to the storage node through the wireless interface is about 1.25ms.
More information about the tahoe-dev