Re: [Zope] CPU architecture and Zope
Andreas Jung wrote at 2006-1-10 06:59 +0100: > ... >A single Python process also a multi-threaded Python application can never >run on multiple CPUs. This means as long as it continues executing Python code. However, Python often calls non Python code (e.g. "C" or "C++" implemented extensions) and it may release the "GIL" (Global Interpreter Lock) to allow multiple CPUs to be exploited. It happens not to frequently that such C extensions are CPU bound. Nevertheless, a dual core CPU might be an advantage, if your Zope needs additional services such as Apache, Squid or (especially) databases. The second CPU can then be used to run these services while Zope occupies a single one. And, as other already suggested, you can have 2 Zopes and a ZEO on your dual core host. -- Dieter ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Re: [Zope] CPU architecture and Zope
Just reading along... At the OS view, would dual cores balance the Linux overhead on one CPU and python/zope on the other, based on resources required. In other words, would the second core allow python to go faster, not having to deal with the various OS and distro tools (apache, squid, pound, mailman, etc.) overhead items. Does the mechanism governing multiple cores separate/allocate processes by resources needed? ... and does a python/zope process get evaluated as a "heavyweight" process, maybe getting allocated the lion's share of a single core. It seems that the whole world of multiple cores CPUs will be upon us very quickly now. The ZEO Server on one, ZEO Client on the other is a good answer. Just wondering if there are any other advantages of python being the way it is, in the mix. Great discussion for me, thanks, -Jon Alec Mitchell wrote: On 1/9/06, Andreas Jung <[EMAIL PROTECTED]> wrote: --On 9. Januar 2006 21:38:15 -0800 David H <[EMAIL PROTECTED]> wrote: Hi list, Im just wondering what the wisdom is about Zope performance and various CPU types. I'm running Zope on Linux (Ubuntu). I notice that Dell is selling a "dual-core" Pentium unit. But I have no idea if something like "dual core" is advantegous to Zope, python execution or one's favorite RDMS. A single Python process also a multi-threaded Python application can never run on multiple CPUs. Multiple CPUs, cores etc. together with Python make only sense when you run multiple Python processes e.g. multiple ZEO clients or ZEO client + ZEO server. For standalone Zope instance dual-core CPU give you nothing. I'm probably stating the obvious here, but a ZEO server + at least one ZEO client is generally advisable at the very least for debugging purposes, in which case dual CPUs/cores can be somewhat helpful (though the zeo server is not terribly processor intesive in my experience). Even with a non-ZEO setup, dual cores could obviously be helpful if you were running other cpu intensive processes like an RDBMS on the same system. Alec ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev ) -- Jonathan Cyr http://www.cyr.info http://www.weddingweblog.com [EMAIL PROTECTED] ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Re: [Zope] CPU architecture and Zope
On 1/9/06, Andreas Jung <[EMAIL PROTECTED]> wrote: > > > --On 9. Januar 2006 21:38:15 -0800 David H <[EMAIL PROTECTED]> wrote: > > > Hi list, > > > > Im just wondering what the wisdom is about Zope performance and various > > CPU types. I'm running Zope on Linux (Ubuntu). I notice that Dell is > > selling a "dual-core" Pentium unit. But I have no idea if something > > like "dual core" is advantegous to Zope, python execution or one's > > favorite RDMS. > > > > > > A single Python process also a multi-threaded Python application can never > run on multiple CPUs. Multiple CPUs, cores etc. together with Python make > only sense when you run multiple Python processes e.g. multiple ZEO clients > or ZEO client + ZEO server. For standalone Zope instance dual-core CPU > give you nothing. I'm probably stating the obvious here, but a ZEO server + at least one ZEO client is generally advisable at the very least for debugging purposes, in which case dual CPUs/cores can be somewhat helpful (though the zeo server is not terribly processor intesive in my experience). Even with a non-ZEO setup, dual cores could obviously be helpful if you were running other cpu intensive processes like an RDBMS on the same system. Alec ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Re: [Zope] CPU architecture and Zope
--On 10. Januar 2006 22:56:17 -0500 Jeff Donsbach <[EMAIL PROTECTED]> wrote: On 1/10/06, Andreas Jung <[EMAIL PROTECTED]> wrote: A single Python process also a multi-threaded Python application can never run on multiple CPUs. I believe that is an overly broad statement, not necessarily true in all cases. It really depends on the operating system's thread library that Python implements it's thread module on top of (as documented at http://docs.python.org/lib/module-thread.html) and how that system threading package schedules threads on the available CPUs. The real answer is "maybe; it depends". As long as Python uses the GIL (global interpreter lock) Python will never take care of multiple CPU/cores. -aj pgpjevKwye3uh.pgp Description: PGP signature ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Re: [Zope] CPU architecture and Zope
On 1/10/06, Andreas Jung <[EMAIL PROTECTED]> wrote: > > > A single Python process also a multi-threaded Python application can never > run on multiple CPUs. I believe that is an overly broad statement, not necessarily true in all cases. It really depends on the operating system's thread library that Python implements it's thread module on top of (as documented at http://docs.python.org/lib/module-thread.html) and how that system threading package schedules threads on the available CPUs. The real answer is "maybe; it depends". Jeff D ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Re: [Zope] CPU architecture and Zope
--On 9. Januar 2006 21:38:15 -0800 David H <[EMAIL PROTECTED]> wrote: Hi list, Im just wondering what the wisdom is about Zope performance and various CPU types. I'm running Zope on Linux (Ubuntu). I notice that Dell is selling a "dual-core" Pentium unit. But I have no idea if something like "dual core" is advantegous to Zope, python execution or one's favorite RDMS. A single Python process also a multi-threaded Python application can never run on multiple CPUs. Multiple CPUs, cores etc. together with Python make only sense when you run multiple Python processes e.g. multiple ZEO clients or ZEO client + ZEO server. For standalone Zope instance dual-core CPU give you nothing. -aj pgpejile6tjdd.pgp Description: PGP signature ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )