From: Chuck Lever Date: Mon, 06 Feb 2006 21:15:01 GMT Subject: Re: [Census] So who uses git? Message-ID: <43E7BC55.8010908@citi.umich.edu> In-Reply-To: Linus Torvalds wrote: >>for comparison, one of our sandboxes is sitting on an NTFS file system, >>accessed via SMB: >> >> smbfs$ time git update-index --refresh >> real 11m36.502s >> user 0m6.830s >> sys 0m5.086s > > > Ouch, ouch, ouch. > > Sounds like every single stat() will go out the wire. I forget what the > Linux NFS client does, but I _think_ it has a metadata timeout that avoids > this. But it might be as bad under NFS. > > Has anybody used git over NFS? If it's this bad (or even close to), I > guess the "mark files as up-to-date in the index" approach is a really > good idea.. > > Of course, the whole point of git is that you should keep your repository > close, but sometimes NFS - or similar - is enforced upon you by other > issues, like the fact that the powers-that-be want anonymous workstations > and everybody should work with a home-directory automounted over NFS.. yes, i keep my Linux kernel repository in NFS (and my stgit and git repositories too). there are some things that are slow precisely because my think time is longer than the NFS client's attribute timeout, which means that all of git's lstat()s turn into GETATTRs. using the "noatime,nodiratime,actimeo=7200" mount options can have some benefit. however, i found that keeping the repository packed provides the greatest positive impact. that means that most of the objects are in a single file, and can be validated with just one GETATTR. one thing we might conclude from this is that making "packing" an efficient operation (or even an incremental one) would go a long way to helping performance on network file systems. begin:vcard fn:Chuck Lever n:Lever;Charles org:Network Appliance, Incorporated;Open Source NFS Client Development adr:535 West William Street, Suite 3100;;Center for Information Technology Integration;Ann Arbor;MI;48103-4943;USA email;internet:cel@citi.umich.edu title:Member of Technical Staff tel;work:+1 734 763 4415 tel;fax:+1 734 763 4434 tel;home:+1 734 668 1089 x-mozilla-html:FALSE url:http://troy.citi.umich.edu/u/cel/ version:2.1 end:vcard