svn commit: r254846 - projects/camlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Andre Oppermann
andre at freebsd.org
Sun Aug 25 12:26:37 UTC 2013
On 25.08.2013 14:12, Alexander Motin wrote:
> On 25.08.2013 14:21, Alexander Motin wrote:
>> Author: mav
>> Date: Sun Aug 25 11:21:10 2013
>> New Revision: 254846
>> URL: http://svnweb.freebsd.org/changeset/base/254846
>>
>> Log:
>> Allow GEOM direct dispatch for zvol providers. Skip request handover to
>> the worker thread if current context allows sleeping (thanks to the direct
>> dispatch in action we are not in GEOM thread).
>>
>> Together this doubles zvol performance, reaching up to 300K IOPS on my tests.
>> If there would be unmapped I/O support for zvols, the above value could be
>> even bigger.
>
> I heavily underestimated effect of this change for the case of uncached reads and probably
> synchronous writes. Due to synchronous nature of the code, parallel execution introduced by this
> change can increase performance by much more then mentioned two times. With 8-64 threads doing
> uncached random read this change gives 6-10x performance!
Any chance for this to make it into HEAD before API freeze?
> Now I am very curios why zvol was made to have only one worker thread per zvol, while multiple
> threads there could give major improvement even without direct dispatch.
--
Andre
More information about the svn-src-projects
mailing list