20 July 2009

Bottleneck of PyObjC on iPhone OS

I found the bottleneck of Python programs with PyObjC on iPhone OS.
"import objc" and "obj.loadBundle ("UIKit",...)" are both usually used code, but they both takes about three seconds at application startup.
Though, Python language itself is not so slow.
It is 5 seconds overhead at startup time.

In addition , they are very large libraries so it also become disadvantage on memory footprint.
On comparison, MobileAddressbook takes only 5.7MB, but HelloPython takes 11MB.
That shows the memory overhead is about 5MB.

Both overheads appear only when you use both PyObjC and UIKit.

[Japanese version]