moving to quad core

moving to quad core

am 15.09.2009 16:54:40 von 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: moving to quad core

am 15.09.2009 17:23:25 von 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: moving to quad core

am 15.09.2009 17:27:26 von Tom Worster

On 9/15/09 10:54 AM, "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?

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: moving to quad core

am 15.09.2009 17:35:09 von Rahul Sitaram Johari

> On 9/15/09 10:54 AM, "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?


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] sleepwalker@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: moving to quad core

am 15.09.2009 17:55:51 von Eddie Drapkin

On Tue, Sep 15, 2009 at 11:35 AM, Rahul S. Johari
wrote:
>
>> On 9/15/09 10:54 AM, "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?
>
>
> Very interesting question indeed;
>
> I moved from a single-core to dual-core some time back, and recently move=
d
> from dual-core to quad-core. Never paid attention to the hyper-threading
> difference in the httpd process. Would definitely be interesting in seein=
g
> more information on this topic.
>
> ---
> Rahul Sitaram Johari
> Founder, Internet Architects Group, Inc.
>
> [Email] sleepwalker@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: moving to quad core

am 16.09.2009 03:08:13 von Clancy

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

>On Tue, Sep 15, 2009 at 11:35 AM, Rahul S. Johari
> 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