Hi list, for creating hard links instead of soft links (1.6.7, 1000 links created by one process, all in the same subdir, the node is behind one lnet router) I see about 25% overhead (time) on the client side. Is this OK/normal/expected? Lustre probably needs to increment some ref. counter on the link target if hard links are used? Michael -- Dr.-Ing. Michael Kluge Technische Universit?t Dresden Center for Information Services and High Performance Computing (ZIH) D-01062 Dresden Germany Contact: Willersbau, Room A 208 Phone: (+49) 351 463-34217 Fax: (+49) 351 463-37773 e-mail: michael.kluge at tu-dresden.de WWW: http://www.tu-dresden.de/zih -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 4345 bytes Desc: not available Url : http://lists.lustre.org/pipermail/lustre-discuss/attachments/20120525/06789287/attachment.bin
On 2012-05-25, at 5:06, Michael Kluge <Michael.Kluge at tu-dresden.de> wrote:> > for creating hard links instead of soft links (1.6.7, 1000 links created by > one process, all in the same subdir, the node is behind one lnet router) I see > about 25% overhead (time) on the client side. Is this OK/normal/expected? > Lustre probably needs to increment some ref. counter on the link target if > hard links are used?Hard links are only directory entries with refcounts on the target inode, so that when the last link to an inode is removed the inode will be deleted. Symlinks are inodes with a string that points to the original name. They are not recounted on the target, but require a new inode to be allocated for each one. It isn''t obvious which one would be slower, since they both have some overhead. Is your sample size large enough? 1000 may only take 1s to complete and may not provide consistent results. Cheers, Andreas
> Hard links are only directory entries with refcounts on the target inode, so that when the last link to an inode is removed the inode will be deleted. > > Symlinks are inodes with a string that points to the original name. They are not recounted on the target, but require a new inode to be allocated for each one. > > It isn''t obvious which one would be slower, since they both have some overhead. > > Is your sample size large enough? 1000 may only take 1s to complete and may not provide consistent results.The 1000 creates need between 2.9 and 3.0 s (3 runs) for the hard links and 2.2-2.3 s (3 runs as well) for the soft links. I think the numbers are "not so bad" in terms of accuracy. Thanks for the explanation. Michael