RFC: Alternative for exemaker

Adrian Buehlmann adrian at cadifra.com
Wed Jun 27 15:18:12 CDT 2012


On 2012-06-27 18:30, Matt Mackall wrote:
> Can someone with an actual Windows box please do this benchmark of 'hg
> version':
> 
> - startup time of py2exe variant
> - startup time of .cmd variant
> - startup time of hgexe variant
> 
> (You probably can't use --time for this purpose, though.)

Summary:

 (1) startup time of py2exe variant   ~96 ms
 (2) startup time of .cmd variant    ~110 ms
 (3) startup time of hgexe variant    ~96 ms


Details:

Calling "hg version" on Windows 7 x64, using x64 Python 2.7.3 and
Mercurial compiled with MS C compiler for x64.

All tests done with warm caches. The tests were done using Windows Power
Shell, which has a Measure-Command.


(1)
Calling the hg.exe of TortoiseHg:

-> ~96 ms

Command used:
Measure-Command { & "C:\Program Files\TortoiseHg\hg.exe" version }

Notes:
TortoiseHg x64 was used, which was built with Python 2.7.3. Installed
from a recent *.msi binary installer provided by Steve.


(2)
Calling a hg.bat file which contains:

  @C:\Python27_x64\python.exe "%~dp0hg" %*

-> ~110 ms

Command used:
Measure-Command { .\hg.bat version }

Notes:
The times seen on different runs varied more than (1) or (3). 110 ms is
a typical value.


(3)
Calling hgexe's hg.exe:

-> same as (1)

Command used:
Measure-Command { .\hg.exe version }

Notes:
The hg.exe used the hg python source file that was in the same directory
as the hg.exe, which in turn used the mercurial folder in that same
directory, having compiled C extensions and the *.py files.



More information about the Mercurial-devel mailing list