On 1124T1137, Alexander Motin wrote: > Author: mav > Date: Mon Nov 24 11:37:27 2014 > New Revision: 274962 > URL: https://svnweb.freebsd.org/changeset/base/274962 > > Log: > Replace home-grown CTL IO allocator with UMA. > > Old allocator created significant lock congestion protecting its lists > of preallocated I/Os, while UMA provides much better SMP scalability. > The downside of UMA is lack of reliable preallocation, that could guarantee > successful allocation in non-sleepable environments. But careful code > review shown, that only CAM target frontend really has that requirement. > Fix that making that frontend preallocate and statically bind CTL I/O for > every ATIO/INOT it preallocates any way. That allows to avoid allocations > in hot I/O path. Other frontends either may sleep in allocation context > or can properly handle allocation errors. > > On 40-core server with 6 ZVOL-backed LUNs and 7 iSCSI client connections > this change increases peak performance from ~700K to >1M IOPS! Yay! :)
Hell yeah! _______________________________________________ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"