2

We've been running git over SSH on our Mac OS X server. (It happens to be a Mini.) Problem is, it's frightfully slow. We often see speeds under 100KiB/s for cloning repositories from this server, and similar speeds cloning repositories from elsewhere to this server. The issue is not the server or its network connection; we've run speed tests and seen 1.5 to 2MB/s download speeds and up to 7MB/s upload. scp transfers of large files are similarly quick.

Our theory is that git is moving a ton of tiny files, and this is causing filesystem overhead which is slowing the transfer.

  • Is this a reasonable theory?
  • Is there anything we can do to improve git performance on this box, or should we be looking for alternative hosting for our git repositories?
pjmorse
  • 1,550
  • 1
  • 17
  • 34

1 Answers1

1

Your theory sounds likely if your git repo contains a lot of small files. On a single disk, with no hardware acceleration (SSD), you will probably see a tps of two digits at most in iostat.

Gather some data to help verify or falsify your theory.

  # iostat -d 1
      disk0           disk1           disk2
  KB/t tps  MB/s     KB/t tps  MB/s     KB/t tps  MB/s
   64.41  23  1.43    90.38  11  1.01   581.67   0  0.02
   20.00   2  0.04     0.00   0  0.00     0.00   0  0.00
  265.33   3  0.78     0.00   0  0.00     0.00   0  0.00
Henk Langeveld
  • 1,314
  • 10
  • 25