Alex Martelli wrote: > the Windows version, despite the slight > overhead of running under Parallels' virtualization, is an impressive > 12%+ _faster_ than the "native" MacOSX Python 2.4.3 (I'm not quite sure > about how good Parallels' virtualization IS, but even if it's as > impressive as a mere 3% overhead, this still means that the Windows > version of Python on identical HW must be at least 15% faster than the > MacOSX version, compiled with gcc).
Can you post the complete benchmark results from both systems on the Macbook? My understanding is that virtualization overhead is not a constant factor like 3%. Unprivileged instructions run unmodified; only privileged instructions like hardware accesses get trapped, adding overhead. Any percentage figure advertised by the manufacturer is most likely an average over some data set with both types of instructions. The types of tests mentioned on the pybench site -- function calls, lookups, exceptions, etc -- shouldn't incur any overhead from virtualization. It would be helpful to see exactly which tests were faster and by how much instead of an overall average result. The differences may be due to factors other than compiler optimizations. I've heard for instance the OS X virtual memory manager is not particularly speedy for large data sets. That could give the windows pybench a win on certain tests regardless of which compiler has better optimizations. Then you've got issues of whether the compilers are really competing on equal footing. Were similar options enabled for each build, does each build represent the best possible optimizations or only the ones the builder knew about, etc. I think Apple switched to the Intel compiler for x86 macs, was python built with that or with gcc? In short, your results are interesting but I'm not sure what to make of them yet. -- http://mail.python.org/mailman/listinfo/python-list