[Zope] restrcting zope to a single processor on Solaris8 machine

Tena Sakai tena.sakai.b@bayer.com
Fri, 4 Apr 2003 10:50:32 -0800


Hello Thierry,


   >> On Thursday 03 April 2003 23:08, Tena Sakai wrote:
   >> > Hi folks,
   >> >
   >> > I am running zope on Solaris 8 (sparc, SF4800, 4 processor) machine.
   >> > Recently, a major app was taken off this machine and I started to
   >> > experience problems.  The problem is that response time is exceedingly
   >> > and unbearably slow.  Having read a thing or two, I suspect this is to
   do
   >> > with Global Interpreter Lock of python not being able to use multiple
   >> > cpu's.
   >> >
   >> > I am trying to use psrset command to fix the problem, but so far
   >> > unsuccessful. What I have done is to write a one-line shell script that
   >> > says
   >> >       psrset -e 1 Path-to-Zope-Directory/start
   >> > where 1 is a processor_set_id (created via "psrset -c" command) and this
   >> > set uses strictly one processor.  But the start script cannot finish
   >> > execution. It complains as to permission denied for var/Z2.pid file.


   >> What I've read until now about Zope and Solaris says that it's the "pbind"
   >> command which have to be used to assign Zope processes to a given
   processor.
   >> But I didn't test it until now...

   >> Anyway, I'm interested in your feedbacks concerning this problem...

   >> Thanks,

It is mentioned in http://www.zope.org/Members/glpb/solaris/report_ps
that

   Tim Hoffman <timhoffman@cams.wa.gov.au> wrote:
   Processor set's have been in Solaris since around 2.6. and are very
   usefull if you have multiple cpu's

   In a multicpu environment you can create a set of 1 or more cpu's and
   nothing else will run on them except for processes assigned to the set.


                  ...


   The big difference is with pbind you bind a process to a CPU, but other
   stuff can and will run on the CPU. If you use processor set's you can
   exclude all other processes from running on the CPU, other than those
   processes that have been assigned to the set.


   Processor set's have really replaced pbind. You would only use pbind if
   you want to force processor affinity and limit the task to a single CPU,
   but let other tasks use the cpu.



This is only exerpt by me.  I suggest you look at the whole
thing so that nothing will be out of context.  I wish I could
get hold of this person, but the email to timhoffman@cams.wa.gov.au
has bounced.  I gather he must have moved on.

Regards,

Tena Sakai