[PHP] moving to quad core

2009-09-15 Thread Andres Gonzalez
I have an application developed that uses alot of PHP. Currently, it is 
running on a Ubuntu 8.04 , single core CPU host.  We are moving to a 
quad core host for this application.


Is there anything special that I need to do to configure PHP to run on a 
quad core host? I noticed that my current single core system has PHP 
configured with Thread Safety disabled (as reported from phpinfo()).  
Does that need to be enabled to run in a multi-core environment?


Any other suggestions for configuring PHP for multi-core use?

Thanks,

-Andres

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] moving to quad core

2009-09-15 Thread Robert Cummings

Andres Gonzalez wrote:
I have an application developed that uses alot of PHP. Currently, it is 
running on a Ubuntu 8.04 , single core CPU host.  We are moving to a 
quad core host for this application.


Is there anything special that I need to do to configure PHP to run on a 
quad core host? I noticed that my current single core system has PHP 
configured with Thread Safety disabled (as reported from phpinfo()).  
Does that need to be enabled to run in a multi-core environment?


Any other suggestions for configuring PHP for multi-core use?


You don't need to change anything.

Cheers,
Rob.
--
http://www.interjinn.com
Application and Templating Framework for PHP

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] moving to quad core

2009-09-15 Thread Tom Worster
On 9/15/09 10:54 AM, Andres Gonzalez and...@packetstorm.com wrote:

 I have an application developed that uses alot of PHP. Currently, it is
 running on a Ubuntu 8.04 , single core CPU host.  We are moving to a
 quad core host for this application.
 
 Is there anything special that I need to do to configure PHP to run on a
 quad core host? I noticed that my current single core system has PHP
 configured with Thread Safety disabled (as reported from phpinfo()).
 Does that need to be enabled to run in a multi-core environment?
 
 Any other suggestions for configuring PHP for multi-core use?

interesting question.

i never paid any attention to the possibility of needing to make config
changes when moving from single to multi-core computers. i'm using apxs2 and
just assumed that there's no threading within each httpd process. in other
words, i assumed it's up to the os' scheduler to make something of the
hardware.

i'm curious to hear more on the topic.



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] moving to quad core

2009-09-15 Thread Rahul S. Johari



On 9/15/09 10:54 AM, Andres Gonzalez and...@packetstorm.com wrote:



I have an application developed that uses alot of PHP. Currently, it  
is

running on a Ubuntu 8.04 , single core CPU host.  We are moving to a
quad core host for this application.

Is there anything special that I need to do to configure PHP to run  
on a

quad core host? I noticed that my current single core system has PHP
configured with Thread Safety disabled (as reported from phpinfo()).
Does that need to be enabled to run in a multi-core environment?

Any other suggestions for configuring PHP for multi-core use?



Very interesting question indeed;

I moved from a single-core to dual-core some time back, and recently  
moved from dual-core to quad-core. Never paid attention to the hyper- 
threading difference in the httpd process. Would definitely be  
interesting in seeing more information on this topic.


---
Rahul Sitaram Johari
Founder, Internet Architects Group, Inc.

[Email] sleepwal...@rahulsjohari.com
[Web]   http://www.rahulsjohari.com





--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] moving to quad core

2009-09-15 Thread Eddie Drapkin
On Tue, Sep 15, 2009 at 11:35 AM, Rahul S. Johari
sleepwal...@rahulsjohari.com wrote:

 On 9/15/09 10:54 AM, Andres Gonzalez and...@packetstorm.com wrote:


 I have an application developed that uses alot of PHP. Currently, it is
 running on a Ubuntu 8.04 , single core CPU host.  We are moving to a
 quad core host for this application.

 Is there anything special that I need to do to configure PHP to run on a
 quad core host? I noticed that my current single core system has PHP
 configured with Thread Safety disabled (as reported from phpinfo()).
 Does that need to be enabled to run in a multi-core environment?

 Any other suggestions for configuring PHP for multi-core use?


 Very interesting question indeed;

 I moved from a single-core to dual-core some time back, and recently moved
 from dual-core to quad-core. Never paid attention to the hyper-threading
 difference in the httpd process. Would definitely be interesting in seeing
 more information on this topic.

 ---
 Rahul Sitaram Johari
 Founder, Internet Architects Group, Inc.

 [Email] sleepwal...@rahulsjohari.com
 [Web]   http://www.rahulsjohari.com





 --
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php



In regards to thread-safe compilations of PHP, if you don't absolutely
know you need it, you don't need it.

Utilizing a multiple CPU server setup with PHP depends on how you're
using PHP.  If you're using FastCGI with a process pool, the number of
PHP processes is going to determine how many CPUs PHP uses, obviously
enough.  On a quad core machine, 2 FastCGI children in the pool are
only ever going to use 2 cores, while 4 processes has a higher
likelihood of utilizing the entire set of CPUs.  However, setting your
child process number too low can seriously impede your performance, so
there's some experimentation necessary to determine what's best for
your particular scenario, based on usage, server power, script
profiling, etc. but a good number to start with is (1.5 * # of logical
processors).

All of this necessarily changes if you're using Apache, of course.
Under the classic pre-fork model, Apache forks a new process to handle
a request every time the server is hit.  So, to utilize four cores,
Apache would have to serve four pages simultaneously, forking four
child processes.  Depending on your traffic and page generation time,
the amount of child Apache processes can pretty easily head up into
the hundreds, unless of course you have a lower MaxChildren set (which
I personally would recommend against because of Apache's huge glaring
vulnerability to SlowLoris).  Under the worker model, Apache forks up
to X processes, and each process handles a configurable amount of
requests before dying, so like FastCGI, you'd have to configure the
number of children to be run, although it's recommended (I hear, I'm
not too very familiar with Apache) to use a much higher number than
the amount of cores, several dozen perhaps.  Like I said, I'm not too
familiar with Apache, so I'd do some research and experimentation with
the number of child workers to give Apache.

I hope this helps :)

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] moving to quad core

2009-09-15 Thread Clancy
On Tue, 15 Sep 2009 11:55:51 -0400, oorza...@gmail.com (Eddie Drapkin) wrote:

On Tue, Sep 15, 2009 at 11:35 AM, Rahul S. Johari
sleepwal...@rahulsjohari.com wrote:


the amount of cores, several dozen perhaps.  Like I said, I'm not too
familiar with Apache, so I'd do some research and experimentation with
the number of child workers to give Apache.

First we have people worrying about losing their jobs to kindergarten children, 
now we
have people recommending giving Apache child workers. Call out the RSPCC!


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php