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

Re: What's cooking in git.git (Feb 2011, #05; Wed, 23)

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Feb 27, 2011, 14:28 UTC
Message-ID
<alpine.DEB.1.00.1102271509540.1561@bonsai2>
In-Reply-To
<20110226110740.GA3096@tugrik.mns.mnsspb.ru>
Hi Kirill,
On Sat, 26 Feb 2011, Kirill Smelkov wrote:
Show 17 quoted lines
> On Fri, Feb 25, 2011 at 10:54:40PM +0100, Johannes Schindelin wrote:
> > 
> > On Fri, 25 Feb 2011, Kirill Smelkov wrote:
> > 
> > > On Fri, Feb 25, 2011 at 12:11:59PM +0100, Johannes Schindelin wrote:
> > > 
> > > > Further, I think that my beloved Shift+Insert will no longer work 
> > > > with your [2].
> > > 
> > > Probably yes,
> > 
> > In my experiment after rebuilding msys-1.0.dll, it still works.
> 
> xser32.dll has nothing to do with msys - it's just a fake stub for
> sh.exe. Before testing, have you "patched" sh.exe the way it is done in
> my ks/xser32.dll
> (http://repo.or.cz/w/msysgit/kirr.git/commit/9d952c74a52f577b2d16d4e4a489541a8fa7fbbd)
Ah. I had to add -Wl,-kill-at to the LDFLAGS so it works. 
See the ks/xser32 branch (and the ks/msys branch) of msysgit.git.
Show 17 quoted lines
> > The problem for now is that when I time /share/msysGit/run-tests.sh, 
> > there is hardly any gain from your patches:
> > 
> > Old:
> > 
> > 
> > real    18m1.031s
> > user    6m17.861s
> > sys     19m25.257s
> > 
> > New:
> > 
> > real    17m54.500s
> > user    6m12.319s
> > sys     19m28.567s
> 
> Did you patch sh.exe to link to xser32.dll instead of user32.dll?
Now I did, and the difference is quite noticable:

real 15m37.281s user 5m6.934s sys 15m53.911s

(Note that I did not spend time to increase the N, so there is no point in putting a percentage on the difference.)

I wonder whether we could patch sh.exe so it loads user32.dll _lazily_ rather than using the xser32.dll hack?

(This would also fix the issue that I can no longer use Shift+Insert to paste the clipboard into the Git Bash...)

> Also I can't say for sure (hope yet) how sh-intensitive git tests are, 
> but at least running configure for say gettext or whatever should be 
> visibly faster, at least on wine.

They are pretty intensive, as they are shell scripts all over the place in their own right. I fear, however, that the real problem (maybe not on WINE, but with real Windows) is that sh.exe needs to provide too many POSIX-like things when starting new processes.

I fear, further, that the only way to make things more efficient on Windows is to get rid of the many exec() calls and do more things in-process. (If this is true, JGit should kick msysGit's ass.) This would not apply to the test suite, though, which needs to stay a shell script suite.

But maybe I am wrong, and the performance is lost through memory management and filesystem interaction.

Ciao, Dscho

Previous: Johannes SchindelinNext: Kirill Smelkov
Message 37 of 46 in “What's cooking in git.git (Feb 2011, #05; Wed, 23)”
  1. Junio C HamanoFeb 23, 2011
  2. ab/i18n (What's cooking in git.git (Feb 2011, #05; Wed, 23))Jonathan Nieder, Feb 23, 2011
  3. Junio C HamanoFeb 24, 2011
  4. Ævar Arnfjörð BjarmasonFeb 24, 2011
  5. Jonathan NiederFeb 24, 2011
  6. Ævar Arnfjörð BjarmasonFeb 24, 2011
  7. Jonathan NiederFeb 24, 2011
  8. Jonathan NiederFeb 24, 2011
  9. Ævar Arnfjörð BjarmasonFeb 25, 2011
  10. Jonathan NiederFeb 26, 2011
  11. Jonathan NiederFeb 24, 2011
  12. Erik Faye-LundFeb 24, 2011
  13. Jonathan NiederFeb 24, 2011
  14. Junio C HamanoFeb 24, 2011
  15. Ævar Arnfjörð BjarmasonFeb 24, 2011
  16. Johan HerlandFeb 23, 2011
  17. Junio C HamanoFeb 24, 2011
  18. Johan HerlandFeb 24, 2011
  19. Ævar Arnfjörð BjarmasonFeb 24, 2011
  20. Junio C HamanoFeb 24, 2011
  21. Ævar Arnfjörð BjarmasonFeb 24, 2011
  22. Junio C HamanoFeb 24, 2011
  23. Ævar Arnfjörð BjarmasonFeb 24, 2011
  24. Erik Faye-LundFeb 24, 2011
  25. Ævar Arnfjörð BjarmasonFeb 24, 2011
  26. Jonathan NiederFeb 24, 2011
  27. Johannes SchindelinFeb 25, 2011
  28. Kirill SmelkovFeb 25, 2011
  29. Johannes SchindelinFeb 25, 2011
  30. Kirill SmelkovFeb 25, 2011
  31. Johannes SchindelinFeb 25, 2011
  32. Kirill SmelkovFeb 26, 2011
  33. Kirill SmelkovFeb 26, 2011
  34. cross-compiling msys-1.0.dll, was Re: What's cooking in git.git (Feb 2011, #05; Wed, 23)Johannes Schindelin, Feb 26, 2011
  35. Kirill SmelkovMar 12, 2011
  36. Johannes SchindelinMar 12, 2011
  37. Johannes SchindelinFeb 27, 2011
  38. Kirill SmelkovMar 12, 2011
  39. Adding Beyond Compare as a merge tool, was: Re: What's cooking in git.git (Feb 2011, #05; Wed, 23)Sebastian Schuberth, Feb 26, 2011
  40. Junio C HamanoFeb 26, 2011
  41. Sebastian SchuberthFeb 26, 2011
  42. Chris PackhamFeb 27, 2011
  43. Junio C HamanoFeb 27, 2011
  44. Sebastian SchuberthFeb 27, 2011
  45. Sebastian SchuberthFeb 27, 2011
  46. Sebastian SchuberthFeb 27, 2011

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.