[Pythonmac-SIG] MacPython 2.2.2 multiprocessor slowdown

Neil Mayhew niel_mayhew@mac.com
Tue, 05 Nov 2002 12:02:03 -0700


> This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

--B_3119342523_31064981
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit

on 05/11/2002 3:46 AM, Jack Jansen wrote:

> Maybe someone with a multiprocessor can try the timing script with both
> the carbon and the classic interpreter running under the classic
> environment?

Yikes! Look at these times (averaged over several runs):

Carbon-in-Classic (Carbon Python running in Classic)
21.23 $(PYTHON):Lib
 5.65 $(PYTHON):Mac:Lib
 4.56 $(PYTHON):Mac:Lib:lib-compat
 3.58 $(PYTHON):Lib:lib-dynload
 2.42 $(PYTHON):Extensions:img:Mac
 1.46 $(PYTHON)
 1.45 $(PYTHON):Lib:lib-tk
 1.39 $(PYTHON):
 1.31 $(PYTHON):lib:site-packages:Numeric
 0.94 :
 0.84 $(PYTHON):Extensions:Imaging
 0.74 $(PYTHON):Lib:site-packages
 0.71 $(PYTHON):Mac:Lib:lib-scriptpackages
 0.66 $(PYTHON):Extensions:img:Lib
46.93

The other results are as follows:

Classic-in-Classic (Classic Python running in Classic)
 0.07 $(PYTHON):Lib
 0.02 $(PYTHON):Mac:Lib:lib-compat
 0.02 $(PYTHON):Mac:Lib
 0.01 $(PYTHON):Extensions:img:Mac
 0.01 $(PYTHON):lib:site-packages:Numeric
 0.01 $(PYTHON)
 0.01 $(PYTHON):Lib:lib-dynload
 0.01 $(PYTHON):Lib:lib-tk
 0.00 $(PYTHON):Lib:site-packages
 0.00 $(PYTHON):Extensions:img:Lib
 0.00 $(PYTHON):Extensions:Imaging
 0.00 :
 0.00 $(PYTHON):Mac:Lib:lib-scriptpackages
 0.17

Carbon-in-X (Carbon Python running in X)
 1.46 $(PYTHON):Lib
 0.65 $(PYTHON):Mac:Lib
 0.60 $(PYTHON):Lib:lib-dynload
 0.30 $(PYTHON):
 0.07 $(PYTHON):Lib:lib-tk
 0.07 $(PYTHON):Mac:Lib:lib-compat
 0.06 $(PYTHON):Extensions:img:Mac
 0.05 $(PYTHON):Extensions:Imaging
 0.05 :
 0.01 $(PYTHON):Mac:Lib:lib-scriptpackages
 0.00 $(PYTHON):Lib:site-packages
 0.00 $(PYTHON):Extensions:img:Lib
 3.34

So the Classic-in-Classic results are pretty much as they should be.

However, I did notice that the Carbon-in-Classic times are greatly affected
by switching back and forth between PythonInterpreter and (eg) Finder during
the run, bringing them into line with the X-Carbon results, and sometimes a
good bit better.

Could this be due to PythonInterpreter running on the second processor, or
due to the different WaitNextEvent timeslicing that Mac OS 9 uses for
foreground and background processes?

One other tiny detail that I noticed: for Classic-in-Classic, sys.path[1],
which is the top-level Python directory, does not end in a colon, whereas
for the two Carbon ones it does.

In case anyone else wants to try these tests, I have attached my collation
script.

HTH,

--Neil

--
Neil Mayhew
Calgary, Alberta, Canada
niel_mayhew@mac.com

(Email address deliberately misspelled to foil spammers)


--B_3119342523_31064981
Content-type: multipart/appledouble; boundary="B_3119342249_31077220"


--B_3119342249_31077220
Content-type: application/applefile; name="Collate.py"
Content-transfer-encoding: base64
Content-disposition: attachment

AAUWBwACAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAJAAAAPgAAACAAAAADAAAAXgAAAAoAAAAC
AAAAaAAAAhxURVhUUGlkZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAENvbGxhdGUucHkAAAEA
AAAB2gAAANoAAABCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1ntzCwAAAHJ1bl9hc19t
YWluaQAAAABzCQAAAHNlbGVjdGlvbigCAAAAaQMCAABpAwIAAHMHAAAAdGFic2l6ZSgCAAAA
aQQAAABpAQAAAHMMAAAAd2luZG93Ym91bmRzKAQAAABpHAAAAGlUAAAAaeACAABpjwMAAHMM
AAAAZm9udHNldHRpbmdzKAQAAABzBgAAAEdlbmV2YWkAAAAAaQoAAAAoAwAAAGkAAAAAaQAA
AABpAAAAAHMUAAAAcnVuX3dpdGhfaW50ZXJwcmV0ZXJpAAAAADAAAAEAAAAB2gAAANoAAABC
AA6ODAFfAIAAHAAyAABQeVdTAAAACgCAAAAAAAAAAcUbuA93aW5kb3cgc2V0dGluZ3M=

--B_3119342249_31077220
Content-type: text/plain; name="Collate.py";
 x-mac-creator="50696465";
 x-mac-type="54455854"
Content-disposition: attachment
Content-transfer-encoding: base64

IyEvdXNyL2Jpbi9lbnYgcHl0aG9uDQ0iIiJDb2xsYXRlIHRpbWluZyByZXN1bHRzDQ1JbnN0
cnVjdGlvbnM6DQkNUnVuIHRoZSB0aW1pbmcgdGVzdCBzZXZlcmFsIHRpbWVzLCBhbmQgc2F2
ZSB0aGUgb3V0cHV0IGluIGZpbGVzIG5hbWVkDU91dHB1dDEsIE91dHB1dDIgZXRjLiwgdXNp
bmcgYSBzZXBhcmF0ZSBkaXJlY3RvcnkgZm9yIGVhY2ggdHlwZSBvZiB0ZXN0Lg1UaGVuIHJ1
biB0aGlzIHNjcmlwdC4gVGhlIHJlc3VsdHMgZm9yIGVhY2ggZGlyZWN0b3J5IHdpbGwgYmUg
d3JpdHRlbiB0bw1hIGZpbGUgbmFtZWQgUmVzdWx0cy4NDUlmIHlvdSBydW4gdGhpcyBzY3Jp
cHQgZnJvbSB0aGUgSURFLCBpdCB3aWxsIGxvb2sgZm9yIHRoZSBmb2xsb3dpbmcgZGlyZWN0
b3JpZXM6DVsiQ2FyYm9uLWluLVgiLCAiQ2FyYm9uLWluLUNsYXNzaWMiLCAiQ2xhc3NpYy1p
bi1DbGFzc2ljIl0NDUlmIHlvdSBjcmVhdGUgYW4gYXBwbGV0LCBqdXN0IGRyb3AgdGhlIHN1
YmRpcmVjdG9yaWVzIG9udG8gaXQuDQ1OZWlsIE1heWhld0BtYWMuY29tIC0gNSBOb3YgMjAw
MiIiIg0NaW1wb3J0IHN5cywgb3MNaW1wb3J0IGdsb2INaW1wb3J0IHN0cmluZw0NZGVmIHBy
b2Nlc3MoZGlyKToNCXJlc3VsdHMgPSBvcGVuKG9zLnBhdGguam9pbihkaXIsICJSZXN1bHRz
IiksICJ3IikNCQ0JUFlUSE9OID0gc3lzLnByZWZpeFs6LTFdDQlET1QgPSBzeXMucGF0aFsw
XQ0JDQlwcmludCA+PiByZXN1bHRzLCBkaXINCXByaW50ID4+IHJlc3VsdHMsICIkKFBZVEhP
TikgPSAlcyIgJSBQWVRIT04NCXByaW50ID4+IHJlc3VsdHMsICIkKERPVCkgPSAlcyIgJSBE
T1QNDQlzdGF0cyA9IHt9DQlmaWxlcyA9ICBnbG9iLmdsb2Iob3MucGF0aC5qb2luKGRpciwg
Ik91dHB1dCoiKSkNCWNvdW50ID0gbGVuKGZpbGVzKQ0JDQlmb3IgbyBpbiBmaWxlczoNCQlm
ID0gb3BlbihvKQ0JCWZvciBsIGluIGYucmVhZGxpbmVzKCk6DQkJCWwgPSBzdHJpbmcuc3Ry
aXAobCkNCQkJdCwgZCA9IHN0cmluZy5zcGxpdChsLCBOb25lLCAxKQ0JCQl0ID0gZmxvYXQo
dCkNCQkJaWYgbm90IHN0YXRzLmhhc19rZXkoZCk6DQkJCQlzdGF0c1tkXSA9IHQNCQkJZWxz
ZToNCQkJCXN0YXRzW2RdICs9IHQNCQlmLmNsb3NlKCkNCQ0JZGVmIHNpZ24oeCk6DQkJaWYg
eCA+IDA6DQkJCXJldHVybiAxDQkJZWxpZiB4IDwgMDoNCQkJcmV0dXJuIC0xDQkJZWxzZToN
CQkJcmV0dXJuIDANCQ0JZGVmIHNvcnRfdmFsdWVzKGRpY3QpOg0JCWtleXMgPSBkaWN0Lmtl
eXMoKQ0JCWtleXMuc29ydChsYW1iZGEgYSwgYjogY21wKGRpY3RbYV0sIGRpY3RbYl0pKQ0J
CXJldHVybiBrZXlzDQkNCWRpcnMgPSBzb3J0X3ZhbHVlcyhzdGF0cykNCWRpcnMucmV2ZXJz
ZSgpDQkNCXRvdGFsID0gMA0JDQlmb3IgZCBpbiBkaXJzOg0JCXQgPSBzdGF0c1tkXQ0JCWlm
IHN0cmluZy5maW5kKGQsIFBZVEhPTikgPT0gMDoNCQkJZCA9IHN0cmluZy5yZXBsYWNlKGQs
IFBZVEhPTiwgJyQoUFlUSE9OKScsIDEpDQkJaWYgc3RyaW5nLmZpbmQoZCwgRE9UKSA9PSAw
Og0JCQlkID0gc3RyaW5nLnJlcGxhY2UoZCwgRE9ULCAnJykNCQlwcmludCA+PiByZXN1bHRz
LCAiJTUuMmYgJXMiICUgKHQgLyBjb3VudCwgZCkNCQl0b3RhbCArPSB0IC8gY291bnQNCQ0J
cHJpbnQgPj4gcmVzdWx0cywgIiU1LjJmIiAlIHRvdGFsDQkNCXJlc3VsdHMuY2xvc2UoKQ0N
ZGVmIG1haW4oKToNCWRpcnMgPSBzeXMuYXJndlsxOl0gb3IgJy4nDQlmb3IgZCBpbiBkaXJz
Og0JCXByb2Nlc3MoZCkNDWRlZiB0ZXN0KCk6DQlzeXMuYXJndi5leHRlbmQoWyJDYXJib24t
aW4tWCIsICJDYXJib24taW4tQ2xhc3NpYyIsICJDbGFzc2ljLWluLUNsYXNzaWMiXSkNCW1h
aW4oKQ0NaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoNCW1haW4oKQ1lbHNlOg0JdGVzdCgp
DQ==


--B_3119342249_31077220--


--B_3119342523_31064981--