On 02/21/2014 09:42 PM, Emmanuel Anne wrote:
> 2014-02-21 19:42 GMT+01:00 Gordan Bobic <gordan...@gmail.com
> I was under the impression that your pool v26 branch of post 0.7.0
> code, even if it wasn't tagged as such. Were there any coommits that
> went into 0.7.0 release that didn't make it into your v26 tree?
> Probably, mainly some packages fixes, but there is probably some stuff
> that I didn't see. There was no mail for each package so I had to
> monitor the other git repository to keep in sync, which I didin't do... !
I see. Is there a list of commits you added to get pool v26 working (and
any other fixes you committed)? Is it a huge list? If not, I guess the
simplest way to reconcile the repositories might be to get the 0.7.0
release and merge/backport all of your extras into that.
> On a separate note I'm about to try attacking zfs-fuse with valgrind
> because when doing zfs receive on a 2GHz ARM (single core ARMv5)I am
> only getting about 25MB/s (large files), and similar effective
> throughput on a scrub (50MB/s but that seems to be total across all
> disks, and I am running a 4-disk RAIDZ2, so effective scrube speed
> is 25MB/s). The CPU usage is split roughly 1/3 netcat and 2/3
> zfs-fuse, and about 25% is showing up as system, probably due to the
> fuse kernel/userspace context switching. Scrub is purely CPU bound.
> Still it would be nice to try to squeeze a little more performance
> out of it - 25MB/s is about 1/8 of what the network subsystem on the
> machine (dual gigabit ethernet apparently on the CPU die, not
> connected over PCIe) and 1/4 of what the disks controller (PCIe x1,
> so 120MB/s theoretical max) should be able to handle. Having said
> that, I am not too hopeful - its not like there is vectorization I
> could leverage in hardware for a 4x speedup, and this CPU only has
> MD5 and SHA1 async offload in hardware via cryptodev, so not useful
> for ZFS's hashes which, IIRC are fletcher and sha2.
> And good luck with valgrind, it makes the programs run very slowly while
> it tests them, plus zfs code is extremely complex, but I guess you
> already know that, in any case, you'll need luck !
I'm mostly hoping to see which functions eat most CPU, and see if there
is some optimization I can apply that might give a decent boost, at
least on CPU-limited architectures like ARM.