git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Cloning speed comparison, round II

From
Linus Torvalds <torvalds@osdl.org>
Date
Nov 12, 2005, 19:40 UTC
Message-ID
<Pine.LNX.4.64.0511121134170.3263@g5.osdl.org>
In-Reply-To
<20051112155302.GD30496@pasky.or.cz>
On Sat, 12 Nov 2005, Petr Baudis wrote:
Show 15 quoted lines
>
>              rsync   git+ssh(*)   git(**)   http
> 
> git.git      0m45s   0m34s        5m30s     4m01s (++)
> 
> cogito.git   2m09s   1m54s (+)    4m30s     15m11s (only single run)
> 
> 
> (*) git+ssh was to master.kernel.org, which was under significant load
>     from some seemingly runaway gzip process, so that slowed things
>     down.
> 
> (**) The unpacking was slooooooooow yet the load was quite low. This
>      should be investigated, the native git fetching is much slower
>      than even HTTP.

git:// and git+ssh:// should be the exact same protocol, the main difference in this case being the server they go to.

In the case of (**), the unpacking itself is fast, but it's done as the stream of data comes in, so it will appear slow if the server at the other end is slow (or the network to that server is slow).

So I think the difference between your git+ssh and git tests are purely due to the fact that master.kernel.org sees a lot less load (both in CPU and in networking) than the public sites, and the time differences have nothing to do with the protocol per se.

I suspect master.kernel.org also has a beefier machine with more memory (but even if that's not the case, it's simply true that the public machines obviously do mirroring to a lot of other machines, and run things like webgit and just basic serving too).

If anything, git:// as a protocol is theoretically a bit faster, since the login procedure is faster and there's no encryption overhead.

			Linus
Previous: Petr BaudisNext: Petr Baudis
Message 2 of 8 in “Cloning speed comparison, round II”
  1. Petr BaudisNov 12, 2005
  2. Linus TorvaldsNov 12, 2005
  3. Petr BaudisNov 12, 2005
  4. Linus TorvaldsNov 12, 2005
  5. Linus TorvaldsNov 12, 2005
  6. Petr BaudisNov 12, 2005
  7. Petr BaudisNov 12, 2005
  8. Linus TorvaldsNov 12, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.