Status of pypy-c under Windows

Hi all! As we agreed on #pypy-sync, I've spent the last days in investigating & testing the translation of pypy-c under Windows. My box runs Windows XP SP 1 under vmware. To get a C compiler I installed the C++ package of Visual Studio .NET 2003; maybe it could work also with other version of Visual Studio, I don't know. Surprisingly enough, the translation of pypy-c worked out of the box :-). I only had to install the windows version of boehm using the howto in the docstring of goal/win32/gc_path_windows.py, then ./translate. Then, I ran the lib-python tests against pypy-c.exe. The results are here: http://codespeak.net/~antocuni/pypy-c-win32-results/ Some of the failures are quite easy to explain (for example, test_thread fails because threading was disabled :-)), some other are very strange. Btw, more than 90% of tests passes. To run the tests I had to manually disable test_mailbox.py, because it couldn't cleanup the @test directory it creates and this caused next tests to fail. I tried to investigate a bit in that direction, then I remembered that windows sucks and I gave up :-). ciao Anto

Antonio Cuni wrote:
My apologies for having let my automated testing fall to pieces. Somewhere about a month ago the working copy got damaged and "svn up" stopped working bringing a halt to the whole process. I attempted to revive it last night, however I can't seem to get Armin's scripts to work anymore.. my only guess is that it is related to the "P.S.: Armin, we didn't fix htmlconftest yet." from holger. Because I can run the test suite just fine, however no html files are being generated. If anyone has a solution, then I'll get the win32 testing back up and running. Unless you are planning to run it on a regular basis, in which case I can just resign my box from doing that. Along the same lines as you, it was relatively painless. The only difference was that I am using the free VCToolkit compiler and Platform SDK instead of a full-fledge install of Visual Studio. (I accidentally sent this to only Antonio before, so sorry to Antonio for the dup.) -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Hi Scott! On Fri, Feb 09, 2007 at 16:11 -0500, Scott Dial wrote:
i think it would help. Indeed, last night was unfortunate timing ... fijal tried to fix htmlconftest, does it work for you now maybe? If not, it will be fixed in the next days, i am sure.
Unless you are planning to run it on a regular basis, in which case I can just resign my box from doing that.
if you can keep it up for now, that'd be good, i think.
could you provide a few url-references how to do this oneself? best & thanks! holger

holger krekel wrote:
It does indeed appear to be working. I'm currently in the middle of a run. I had to revert from using svnwcrevert to update the working copy. I kept getting an AttributeError about not having a 'locked' attribute on something or other. My problem in the past was the SVN data getting out of whack, so I dunno even despite the fresh checkout. I've decided to let TortoiseSVN handle the updating.. we'll see how well that lasts. I would share with you my patches to the autotest.py but they feel very homegrown and not very generalized. Let me know if you are interested at all in that.
Will do.
My build environment is derived from the tools need to build CPython extensions[1] with an extra patch[2] to keep the PATH a sane length (duplicates PATH entries). I don't remember what hackery was required to get gc6.8 to build other than info about boehm already available. For reference, I've made a patch reflecting my changes[3]. Unfortunately (as has been hashed out on python-dev quite a bit), the VC Toolkit 2003 is not made available by Microsoft anymore. I've not attempted to use the 2005 Express Edition compiler, but for the purposes of compiling pypy, it should work fine unless you are trying to build a module to load into CPython. I retain a copy of the VCToolkitSetup.exe install and it can still be found 3rd-party (MD5 90d8b963ca196aa9855b2ca6c3174c14). [1] http://www.vrplumber.com/programming/mstoolkit/ [2] http://scottdial.com/pypy-dev/msvccompiler.py.diff [3] http://scottdial.com/pypy-dev/NT_THREADS_MAKEFILE.diff -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Scott Dial wrote:
It does indeed appear to be working. I'm currently in the middle of a run.
The run completely successfully, it can be found at the same URL it was at before: http://scottdial.com/pypytest/ -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Scott Dial wrote:
This is very cool, thank you! I've noticed that most of CLI tests are skipped because the .NET SDK is not installed: could you install it please, if it's not a problem? I've got a windows box under vmware but running all the CLI tests there on a regular basis is not very convenient: il would be very useful to have the daily tests also on windows. ciao Anto

Antonio Cuni wrote:
I've noticed that most of CLI tests are skipped because the .NET SDK is not installed: could you install it please, if it's not a problem?
Not a problem. Done. Most of the tests that were being skipped are causing failures now.. but I was able to translate a pypy-cli without error, so I am convinced I haven't made a mistake. However let me know if I am wrong about that. Otherwise notable is the benchmark results I received: executable richards pystone size (MB) pypy-cli-38437 75124 123.0x 495.2 109.5x 8.398 pypy-c-38437 3148 5.2x 11345.0 4.8x 2.527 python 2.4.3 610 1.0x 54227.7 1.0x 1.790 -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Scott Dial wrote:
Hello Scott, sorry for the late answer. I've looked at the failures of gencli under windows: most of them should be easy to fix, I'll do as soon as possibile (not before next week, btw). About the benchmark, I think that the result in wrong, because it's very likely that the build couldn't be performed because of a bug in MS ilasm I've not yet found a workaround for. ciao Anto

Antonio Cuni wrote:
My apologies for having let my automated testing fall to pieces. Somewhere about a month ago the working copy got damaged and "svn up" stopped working bringing a halt to the whole process. I attempted to revive it last night, however I can't seem to get Armin's scripts to work anymore.. my only guess is that it is related to the "P.S.: Armin, we didn't fix htmlconftest yet." from holger. Because I can run the test suite just fine, however no html files are being generated. If anyone has a solution, then I'll get the win32 testing back up and running. Unless you are planning to run it on a regular basis, in which case I can just resign my box from doing that. Along the same lines as you, it was relatively painless. The only difference was that I am using the free VCToolkit compiler and Platform SDK instead of a full-fledge install of Visual Studio. (I accidentally sent this to only Antonio before, so sorry to Antonio for the dup.) -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Hi Scott! On Fri, Feb 09, 2007 at 16:11 -0500, Scott Dial wrote:
i think it would help. Indeed, last night was unfortunate timing ... fijal tried to fix htmlconftest, does it work for you now maybe? If not, it will be fixed in the next days, i am sure.
Unless you are planning to run it on a regular basis, in which case I can just resign my box from doing that.
if you can keep it up for now, that'd be good, i think.
could you provide a few url-references how to do this oneself? best & thanks! holger

holger krekel wrote:
It does indeed appear to be working. I'm currently in the middle of a run. I had to revert from using svnwcrevert to update the working copy. I kept getting an AttributeError about not having a 'locked' attribute on something or other. My problem in the past was the SVN data getting out of whack, so I dunno even despite the fresh checkout. I've decided to let TortoiseSVN handle the updating.. we'll see how well that lasts. I would share with you my patches to the autotest.py but they feel very homegrown and not very generalized. Let me know if you are interested at all in that.
Will do.
My build environment is derived from the tools need to build CPython extensions[1] with an extra patch[2] to keep the PATH a sane length (duplicates PATH entries). I don't remember what hackery was required to get gc6.8 to build other than info about boehm already available. For reference, I've made a patch reflecting my changes[3]. Unfortunately (as has been hashed out on python-dev quite a bit), the VC Toolkit 2003 is not made available by Microsoft anymore. I've not attempted to use the 2005 Express Edition compiler, but for the purposes of compiling pypy, it should work fine unless you are trying to build a module to load into CPython. I retain a copy of the VCToolkitSetup.exe install and it can still be found 3rd-party (MD5 90d8b963ca196aa9855b2ca6c3174c14). [1] http://www.vrplumber.com/programming/mstoolkit/ [2] http://scottdial.com/pypy-dev/msvccompiler.py.diff [3] http://scottdial.com/pypy-dev/NT_THREADS_MAKEFILE.diff -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Scott Dial wrote:
It does indeed appear to be working. I'm currently in the middle of a run.
The run completely successfully, it can be found at the same URL it was at before: http://scottdial.com/pypytest/ -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Scott Dial wrote:
This is very cool, thank you! I've noticed that most of CLI tests are skipped because the .NET SDK is not installed: could you install it please, if it's not a problem? I've got a windows box under vmware but running all the CLI tests there on a regular basis is not very convenient: il would be very useful to have the daily tests also on windows. ciao Anto

Antonio Cuni wrote:
I've noticed that most of CLI tests are skipped because the .NET SDK is not installed: could you install it please, if it's not a problem?
Not a problem. Done. Most of the tests that were being skipped are causing failures now.. but I was able to translate a pypy-cli without error, so I am convinced I haven't made a mistake. However let me know if I am wrong about that. Otherwise notable is the benchmark results I received: executable richards pystone size (MB) pypy-cli-38437 75124 123.0x 495.2 109.5x 8.398 pypy-c-38437 3148 5.2x 11345.0 4.8x 2.527 python 2.4.3 610 1.0x 54227.7 1.0x 1.790 -- Scott Dial scott@scottdial.com scodial@cs.indiana.edu

Scott Dial wrote:
Hello Scott, sorry for the late answer. I've looked at the failures of gencli under windows: most of them should be easy to fix, I'll do as soon as possibile (not before next week, btw). About the benchmark, I think that the result in wrong, because it's very likely that the build couldn't be performed because of a bug in MS ilasm I've not yet found a workaround for. ciao Anto
participants (3)
-
Antonio Cuni
-
holger krekel
-
Scott Dial