[Pythonmac-SIG] Pystone numbers for different Macs...

Daniel Lord daniellord at mac.com
Mon Jan 21 08:05:36 CET 2008


My bus is 1.33 GHz--I think the 2nd Gen Quad-cores are bumped to 1.5  
GHz maybe. I'll see if there is anything I can do to bump the numbers.
My system is just like yours but with a second Quad core chip that  
only a few apps can take advantage of.
It helps me with Modo, Lightwave, Shake, Photoshop, and Final Cut  
Studio (which is why I got it in the first place) but not with Python  
and most other apps as well.

Skip is right of course--the Global Interpreter Lock doesn't play here  
since the benchmark wasn't written to take advantage of multi-core  
machines--silly me I thought any good benchmark would be. In the end  
my error doesn't matter since, if one made the benchmark multi- 
threaded in the true sense of the term, the GIL would clamp down and  
limit the benefit anyway. Which is what I was alluding to and should  
have been more clear about.

My point was that, as I understand it, thanks to the GIL--Python  
cannot easily take advantage of multi-cores period even when the  
program uses multiple threads--it it is a limitation of the  
implementation of the language interpreter. I guess that tells us we  
ought to write multi-core code in C/C++/ObjC instead. Either that or  
Python's implementation needs to embrace threading more expansively.  
Still Python is a great language as it is. No one language fits all-- 
as much as we'd like it to for simplicity's sake.


On Jan 20, 2008, at 11:53 AM, Jack Jansen wrote:

> On 20-Jan-2008, at 19:23 , Daniel Lord wrote:
>> I ran the test  on my 1st Gen Quad Core ( 2 x Quad-core 3.0 GHz, 13GB
>> RAM) and was a bit surprised to see  little improvement over the Core
>> Duo numbers.
>> 63019.7 pystones/second
>> I am assuming the GIL is limiting  threading and therefore I am  
>> really
>> running on one or two cores--hence the tangible improvement is just
>> CPU speed: from 2.33 GHz to 3.0 GHz and a bit of the memory bandwidth
>> increase as well.
> Interesting...
> My first generation quadcore at 2.6 Ghz clocks at 62578.2.
> So there's another limiting factor: from my machine to yours is a  
> 15% speed bump, but only a 1% increase in pystone numbers.
> Somebody told me recently that MacOSX is not very good for fast task  
> switching with multiprocessors, because apparently (his words, and  
> possibly misrepresented by me) the implementation of semaphores  
> sucks. This seems to corroborate that.
> Hmm, what is your bus speed? Mine is 1.33 Ghz, is yours that as well  
> is it 1.5 Ghz? If the former it could be that semaphores somehow run  
> at bus speed and semaphore overhead dwarves any processing done. If  
> your bus runs at 1.5Ghz there must be yet another bottleneck...
> --
> Jack Jansen, <Jack.Jansen at cwi.nl>, http://www.cwi.nl/~jack
> If I can't dance I don't want to be part of your revolution -- Emma  
> Goldman

More information about the Pythonmac-SIG mailing list