@ahrens We weren't avoiding object number dnode lookups in ZIL, which matters 
for heavily synchronous workloads. I observed something like a 25% reduction in 
average latency from this in a branch at work, which I attributed to the 
reduction in time needed in `zil_commit()`. I will admit that I do not have 
records demonstrating that I strictly isolated this from other minor changes 
when evaluating it. The other changes being that I backported the switch to 
_uio functions from HEAD to the production branch for work.

Even without a large performance difference, this clean up is nice enough that 
I think it is worth doing regardless of the performance impact. This made flame 
graphs cleaner, which I liked.

Also, any cleanup that reduces locking/atomics has been demonstrated to have 
the potential to improve NUMA performance on ZoL:

https://github.com/zfsonlinux/zfs/issues/3752

NUMA scaling is a potential area of interest for me at work after I have worked 
out some of the larger bottlenecks affecting dedup and synchronous IO. This 
gives us a reduction in locking/atomics, which is nice.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/403#issuecomment-308247011
------------------------------------------
openzfs-developer
Archives: 
https://openzfs.topicbox.com/groups/developer/discussions/Tb8c99eb91b584cfa-M40755a20c26257915a4df1c3
Powered by Topicbox: https://topicbox.com

Reply via email to