On Jan 19, 2010, at 4:36 AM, Jesus Cea wrote: > On 01/19/2010 01:14 AM, Richard Elling wrote: >> For example, b129 >> includes a fix for CR6869229, zfs should switch to shiny new metaslabs more >> frequently. >> http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6869229 >> I think the CR is worth reading if you have an interest in allocators and >> performance. > > Where is the docs?. That link has little info.
Jeff wrote a high-level overview of the allocation here: http://blogs.sun.com/bonwick/entry/zfs_block_allocation Finally, UTSL. There are several allocators already implemented: first fit, best fit, and dynamic block (uses first fit until a threshold is reached where it changes to best fit). The default is dynamic block. The source also contains a CDF and NDF allocator, but I'm not sure if or where they are used, they are commented as being experimental [*]. http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/fs/zfs/metaslab.c For those not inclined to read source, there is already a method defined for a metaslab to be marked as fragmented. This can be used to improve Jeff's #2 item, metaslab selection. If you want to explore your pool, try zdb -m poolname zdb -mmm poolname and wish you had my spacemaps from space code :-) http://blogs.sun.com/relling/entry/space_maps_from_space [*] opportunity for fame and glory, invent the perfect allocator :-) -- richard _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss