[PyQt] Any Large PyQt Projects?

Kovid Goyal kovid at kovidgoyal.net
Thu Feb 19 23:57:50 GMT 2009

I'm the lead developer of calibre (http://calibre.kovidgoyal.net) which is 
~120k lines of python + another few thousand lines of C code.

I've found in general that you can quite easily use multi-processing instead of
multi-threading to get around the global interpreter lock (this assumes that your 
algorithms dont require lots of data passing). For performance/os
interface sections of the code, it's easy enough to write C modules to do the
neccessary work. It occassionally becomes neccessary to drop down to C for high
performance parts of the GUI as well, though i can't comment on OpenGL.

Basically, python will work very well for about 90-95% of what you need to do,
for the rest, write C modules. Interfacing Python and C is trivial.


On Thu, Feb 19, 2009 at 02:33:57PM -0800, Brent Villalobos wrote:
> I'm looking for examples from people who have written large PyQt 
> applications and I would like to hear your opinions on what worked well 
> and what did not specifically with choosing python over C/C++.  In 
> particular, how does your python application handle tasks that require a 
> lot of computation?  How does it handle multiple thread performance 
> given python's limitations on only running on one CPU (global 
> interpreter lock)?  I don't need too much detail (obviously nothing 
> proprietary), but I just want to know if anyone has any "red flags" that 
> people should be aware of before writing a large python gui app with 
> things like openGL contexts and heavy mathematical computation?
> Let's make this interesting and see who has written the largest PyQt 
> application.  How many lines of code are we talking about?  10,000?  
> 100,000? 1,000,000!!!!???
> -Brent
> _______________________________________________
> PyQt mailing list    PyQt at riverbankcomputing.com
> http://www.riverbankcomputing.com/mailman/listinfo/pyqt
> !DSPAM:3,499ddeb575724022331274!


Kovid Goyal 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
Url : http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20090219/d492a0a1/attachment.bin

More information about the PyQt mailing list