Bob Friesenhahn <[email protected]> wrote: > While IPS may be slow, I doubt that Python is necessarily to blame. > It is likely a design issue. As reason to believe that the problem is > not with Python, Mercurial is written in Python and Git is written in > compiled C yet Mercurial is demonstrated to perform operations on > remote repositories twice as fast.
You are correct, while it is undesirable to use Python for basic administrative tasks, it is not Python that causes the performance problems with IPS. GIT has not the best design. It is much slower than SCCS even if you just initially enter a bulk of files into GIT (compared to SCCS using the new bulk mode [admin -N...] that I added in September 2011)) and it becomes even slower when you have a lot of commits. This is a result of the data structrures used with GIT. It is interesting to see that exactly what GIT makes apparently fast if you start to use it for a new project, will make it slow if you continue to use GIT on a large project for a long time (> 20 years) simply because it needs to check a lot of files just to learn the current state of a project. IPS is trying to improve the performance by only updating files that have been changed, but this requires nano-packets and a lot of non-bulked meta data. The fact that there is a need to access this meta-data causes problems with seeks on slow media (e.g. DVDs) and problems with TCP/IP channel setup latency on longer lines if the repository is on a network. As you see, GIT suffers from a similar problem than IPS: the way it deals with meta data. If you design a new system from scratch, you always have the problem that you don't know the design problems yet. It is usually better to enhance an existing system with known behavior and known problems. Jörg -- EMail:[email protected] (home) Jörg Schilling D-13353 Berlin [email protected] (uni) [email protected] (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily ------------------------------------------- illumos-discuss Archives: https://www.listbox.com/member/archive/182180/=now RSS Feed: https://www.listbox.com/member/archive/rss/182180/21175430-2e6923be Modify Your Subscription: https://www.listbox.com/member/?member_id=21175430&id_secret=21175430-6a77cda4 Powered by Listbox: http://www.listbox.com
