Martijn Pieters said the following on 2006-03-16 12:25:
On 3/16/06, Tino Wildenhain <[EMAIL PROTECTED]> wrote:

Hey... but thank you Jens for spending all that time writing an email
that doesn't help any1 at all...!!!

check google for "multiple use of exclamation marks".


Or look up Terry Pratchett quotes on www.lspace.org:

<snip>

Martinj, Chris and others giving nonsential answers: Don't you guys have work to do instead of playing bullies on the newbies?.

To be honest, I find arrogant and pointless answers like yours way more annoying than a whole bunch of newbies asking more or less cluess questions.

I see a lot of this newbie bashing increasing; in fact it has been some years since the zope list was a good example on how to treat newbies politely and point them to the prope answers.

Sure, we all have loads of work and are way too stressed, we don't get enough sleep, yada, yada, yada... I fail to see how that is a newbie's fault, so no need to take it out on them.

For the benefit of all those that have tiny, tiny memory spans, the question of Zope's processes necessity to be CPU-bound is a horse that was resolved a couple of years ago (2002). It turns out that it is not a Zope problem ("Oh, the Horror. He's bringing a non-zope question to the list!").

It is pythons "fault", if you are grumpy old fart, or it is a "feature" if you are having a good day.

The need for threaded python processes to be CPU bound (yes, Zope is threaded, in case you have forgotten) arises from the fact that python has the GIL (Global Interpreter Lock).

For background see:

http://www.zope.org/Members/glpb/solaris

and

http://www.zope.org/Members/glpb/solaris/report_ps

As far as I know, the GIL is still there and won't go away any time soon. Today, the only change from 2002 is that there is a heck of a lot more multi-CPU machines than there were back in 2002.

So, to make a long story short: on linux there is a userspace tools called taskset:

http://linuxcommand.org/man_pages/taskset1.html
http://aplawrence.com/Basics/taskset.html

if there is no such command for your particular distro/kernelversion, look no further than:

http://directory.fsf.org/all/schedutils.html
http://rlove.org/
http://rlove.org/schedutils/
ftp://ftp.kernel.org/pub/linux/utils/util-linux/

I cannot tell you wich version to use, but I think you get the idea. I do believe that some distros allready include taskset in them.

So you have to write a wrapper script around zopectl (you are running a newer versionof zope, aren't you?) where you do this.

It has worked like a charm for us since 2002 (well, almost - since schedutils were new and cool back in 2002 we had regular fights with the sysadmins guys regarding the need to introduce "non-redhat-aproved-kernel-hacks" into the production systems. Nowadays taskset and related tools are included in the later RHE releases).

Regarding all other advises you have gotten so far (get more memory, look at your disks, get a life, etc), I am sure that they have merits, but as far as I can see, they don't actually solve anything at all.

The fact that the issue of the GIL is not more prominent in the Zope worlds, I think is because relatively few zopistas are aware that there is a problem; mostly, because not so many run multicpu-boxes in production, and also because of attitude, I suppose: "since I don't have a problem with it, I don't care about it, and I'll inform you so."

/dario - yes... a bit annoyed at all the "help" some folks give...

--
-- -------------------------------------------------------------------
Dario Lopez-Kästen, IT Systems & Services Chalmers University of Tech.
Lyrics applied to programming & application design:
"emancipate yourself from mental slavery" - redemption song, b. marley

_______________________________________________
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 )

Reply via email to