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

Re: Windows support

From
Marius Storm-Olsen <marius@trolltech.com>
Date
Jul 26, 2007, 09:30 UTC
Message-ID
<46A869A3.6050707@trolltech.com>
In-Reply-To
<alpine.LFD.0.999.0707251131540.3607@woody.linux-foundation.org>
Linus Torvalds said the following on 25.07.2007 20:43:
Show 11 quoted lines
> On Wed, 25 Jul 2007, Stephen Cuppett wrote:
>> I don't know if the performance problems are cygwin or not.  More
>>  knowledgeable people might be able to answer, it's just what I'm
>>  observing right now.  It could be more fundamental to the types
>> of access being performed en masse on inode-based versus NTFS
>> systems.
> 
> I think cygwin may add some overhead, but people should really
> realize that Linux is quite often an order of magnitude faster (or
> more) than other systems on some very basic operations.
> 
(..snip..)
> 
> (It will just not be so *blazingly* fast, ie things like "git
> status" will generally not be instantaneous).

Let me present some numbers: My repository is ~680MB, and 19323 tracked files, in 2264 directories. When in a compiled state the total is 27540 files, in 4885 directories.

When file system cache is warm, I get the following times:
 Native: dir /B /S               1.077s
         dir /S                  1.707s (shows time, size/type)
 MSys:   ls -f1AUR              34.608s
         find . -type f          6.718s
         git diff (empty diff)   1.18s
         git status              5.5s
and when the system cach is cold:
         git status             54.55s

Maybe you guys have other git commands which are also/more interesting to look at/benchmark?

Windows people should also be aware that it's possible to tweak the amount of memory which the OS uses for the file cache. On XP you can change it _roughly_ in System Properties panel (Right-click on My Computer), then Advanced - Performance Settings - Advanced - Memory Usage: Normal setting is "Programs" for non-servers Windows systems, while you can select "System cache" make the OS allocate more memory for the system caches. I've tried both, and the setting doesn't really affect the file operations much when the cache is warm, but it probably affects how long the cache stays warm.

Also note that you can use Sysinternal's CacheSet (free), to
manipulate the working-set parameters of the system file cache.
You'll find that here:
    http://www.microsoft.com/technet/sysinternals/FileAndDisk/CacheSet.mspx
-- 
.marius
Previous: Wincent ColaiutaNext: Shawn O. Pearce
Message 67 of 69 in “Windows support”
  1. Dmitry KakurinJul 25, 2007
  2. Johannes SchindelinJul 25, 2007
  3. Asger Ottar AlstrupAug 2, 2007
  4. Johannes SchindelinAug 2, 2007
  5. Steven GrimmJul 25, 2007
  6. Dmitry KakurinJul 26, 2007
  7. Shawn O. PearceJul 26, 2007
  8. Steffen ProhaskaJul 26, 2007
  9. Shawn O. PearceJul 26, 2007
  10. Marius Storm-OlsenJul 26, 2007
  11. Marius Storm-OlsenJul 26, 2007
  12. Steven GrimmJul 26, 2007
  13. Steven GrimmJul 25, 2007
  14. Nguyen Thai Ngoc DuyJul 25, 2007
  15. Johannes SchindelinJul 25, 2007
  16. Nguyen Thai Ngoc DuyJul 25, 2007
  17. Johannes SchindelinJul 25, 2007
  18. Christian MICHONJul 26, 2007
  19. Nguyen Thai Ngoc DuyJul 26, 2007
  20. Christian MICHONJul 26, 2007
  21. Nguyen Thai Ngoc DuyJul 26, 2007
  22. Johannes SixtJul 26, 2007
  23. Dmitry KakurinJul 26, 2007
  24. Junio C HamanoJul 26, 2007
  25. Shawn O. PearceJul 26, 2007
  26. Junio C HamanoJul 26, 2007
  27. Johannes SchindelinJul 26, 2007
  28. Han-Wen NienhuysJul 26, 2007
  29. Johannes SchindelinJul 26, 2007
  30. Han-Wen NienhuysJul 26, 2007
  31. Shawn O. PearceJul 26, 2007
  32. Han-Wen NienhuysJul 26, 2007
  33. Jakub NarebskiJul 26, 2007
  34. Julian PhillipsJul 26, 2007
  35. Nguyen Thai Ngoc DuyJul 26, 2007
  36. Christian MICHONJul 26, 2007
  37. Nguyen Thai Ngoc DuyJul 26, 2007
  38. Johannes SchindelinJul 26, 2007
  39. Nguyen Thai Ngoc DuyJul 26, 2007
  40. Johannes SchindelinJul 26, 2007
  41. Nguyen Thai Ngoc DuyJul 26, 2007
  42. David KastrupJul 26, 2007
  43. Nguyen Thai Ngoc DuyJul 26, 2007
  44. David KastrupJul 26, 2007
  45. Johannes SchindelinJul 26, 2007
  46. Marius Storm-OlsenJul 26, 2007
  47. Nguyen Thai Ngoc DuyJul 26, 2007
  48. Christian MICHONJul 26, 2007
  49. Robin RosenbergJul 26, 2007
  50. Johannes SixtJul 26, 2007
  51. Johannes SchindelinJul 26, 2007
  52. Dmitry KakurinJul 26, 2007
  53. Shawn O. PearceJul 26, 2007
  54. Johannes SchindelinJul 26, 2007
  55. Henning RoggeJul 26, 2007
  56. Andy ParkinsJul 26, 2007
  57. Steffen ProhaskaJul 25, 2007
  58. Noel GrandinJul 25, 2007
  59. Johannes SchindelinJul 26, 2007
  60. Junio C HamanoJul 26, 2007
  61. Stephen CuppettJul 25, 2007
  62. Russ DillJul 25, 2007
  63. Medve Emilian-EMMEDVE1Jul 25, 2007
  64. Russ DillJul 25, 2007
  65. Linus TorvaldsJul 25, 2007
  66. Wincent ColaiutaJul 25, 2007
  67. Marius Storm-OlsenJul 26, 2007
  68. Shawn O. PearceJul 26, 2007
  69. Daniel BarkalowJul 25, 2007

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.