Welcome! Log In Create A New Profile

Advanced

Not using all cores ?

Posted by Mickie D 
Not using all cores ?
June 12, 2011 11:00AM
Hi everyone.

I have dedicated server with 8 cores, 8gb ram, 4xscsi drives in raid 0 on centos 5.5.
I also have a dedicated server that runs the mysql database
and I pull all images from a CDN.

My main machine with 8 cores was installed using the following guide that used the IUS repos, and installed via YUM

http://rob.olmos.name/2010/08/centos-5-5-php-5-3-3-php-fpm-nginx-rpms/

To be honest its been the best way of installing anything (for me) you just yum install any packages you need.

HOWEVER

I am having a problem with php-fpm spiking the load of my machine.

But when I view htop it looks like only the 8th core is really being used ?

I am jsut wondering if php-fpm is only using 1 core ?

Thanks for any tips or pointers

Mick
Re: Not using all cores ?
June 12, 2011 11:02AM
Sorry I should of said that its just to run a VBulletin 4 site.

Netstat tells me we have around 300+ connections rising to around 500 at peak times.
Re: Not using all cores ?
June 12, 2011 11:04AM
Here is a top command as you cannot copy in htop mode


18708 nginx 16 0 99.0m 32m 19m S 20.6 0.4 0:06.68 php-fpm
18706 nginx 16 0 102m 31m 15m R 17.6 0.4 0:07.79 php-fpm
18772 nginx 16 0 100m 29m 15m S 17.3 0.4 0:13.00 php-fpm
18724 nginx 16 0 98.5m 31m 19m S 35.9 0.4 0:13.08 php-fpm
18718 nginx 17 0 100m 30m 16m S 35.6 0.4 0:12.84 php-fpm
18778 nginx 16 0 102m 33m 18m S 20.6 0.4 0:10.70 php-fpm
18770 nginx 16 0 100m 28m 15m S 17.0 0.4 0:06.17 php-fpm
18768 nginx 16 0 101m 32m 18m R 5.7 0.4 0:07.28 php-fpm
18698 nginx 16 0 100m 31m 17m R 4.7 0.4 0:08.53 php-fpm
18775 nginx 16 0 100m 31m 18m S 4.3 0.4 0:12.31 php-fpm
18886 nginx 16 0 98.2m 28m 17m S 3.3 0.4 0:04.29 php-fpm
18715 nginx 16 0 99.1m 33m 20m S 3.0 0.4 0:06.81 php-fpm
18785 nginx 16 0 100m 30m 17m R 3.0 0.4 0:12.31 php-fpm
18712 nginx 17 0 102m 34m 18m S 1.0 0.4 0:08.66 php-fpm
18887 nginx 16 0 101m 29m 14m S 1.0 0.4 0:05.55 php-fpm
Re: Not using all cores ?
June 12, 2011 11:09AM
Sorry I did not get a full copy of top.

Here it is and thanks very much for looking.

top - 16:08:22 up 1 day, 7:23, 1 user, load average: 0.50, 0.80, 0.95
Tasks: 260 total, 3 running, 257 sleeping, 0 stopped, 0 zombie
Cpu(s): 10.5%us, 0.2%sy, 0.0%ni, 89.1%id, 0.0%wa, 0.0%hi, 0.2%si, 0.0%st
Mem: 8310416k total, 8013604k used, 296812k free, 156440k buffers
Swap: 1052248k total, 16k used, 1052232k free, 6518504k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
18779 nginx 18 0 106m 34m 16m S 34.2 0.4 0:10.97 php-fpm
18879 nginx 18 0 101m 31m 16m S 16.0 0.4 0:07.03 php-fpm
18684 nginx 16 0 100m 34m 20m R 14.0 0.4 0:15.70 php-fpm
18884 nginx 17 0 100m 32m 18m S 16.0 0.4 0:07.99 php-fpm
18720 nginx 16 0 103m 37m 19m S 14.3 0.5 0:08.85 php-fpm
18699 nginx 16 0 99.7m 33m 20m S 12.0 0.4 0:09.24 php-fpm
18785 nginx 16 0 100m 31m 17m S 9.3 0.4 0:15.13 php-fpm
18694 nginx 16 0 99.8m 32m 19m S 8.0 0.4 0:09.94 php-fpm
18724 nginx 16 0 98.5m 32m 20m S 5.0 0.4 0:16.51 php-fpm
18790 nginx 16 0 101m 35m 20m S 5.0 0.4 0:10.05 php-fpm
18715 nginx 16 0 99.1m 33m 21m S 3.7 0.4 0:10.14 php-fpm
18703 nginx 16 0 100m 33m 19m S 3.3 0.4 0:16.80 php-fpm
18780 nginx 15 0 99.1m 30m 18m S 2.7 0.4 0:06.27 php-fpm
18697 nginx 25 0 100m 33m 20m S 2.3 0.4 0:09.23 php-fpm
18702 nginx 15 0 99.7m 34m 21m R 2.3 0.4 0:09.37 php-fpm
18768 nginx 18 0 101m 33m 18m S 1.0 0.4 0:10.47 php-fpm
18778 nginx 16 0 102m 34m 19m S 1.0 0.4 0:13.15 php-fpm
18887 nginx 16 0 100m 29m 15m S 1.0 0.4 0:09.04 php-fpm
Re: Not using all cores ?
June 12, 2011 11:56AM
I just did a lsof command on a PID that was using 69% of cpu load

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
php-fpm 21135 nginx cwd DIR 8,2 4096 2 /
php-fpm 21135 nginx rtd DIR 8,2 4096 2 /
php-fpm 21135 nginx txt REG 8,2 4026396 4149118 /usr/sbin/php-fpm
php-fpm 21135 nginx mem REG 8,2 69316 4149130 /usr/lib/libXpm.so.4.11.0
php-fpm 21135 nginx mem REG 8,2 20092 4149145 /usr/lib/libXdmcp.so.6.0.0
php-fpm 21135 nginx mem REG 8,2 31992 4431933 /usr/lib/php/modules/json.so
php-fpm 21135 nginx mem REG 8,2 35816 4423701 /usr/lib/php/modules/mcrypt.so
php-fpm 21135 nginx mem REG 8,2 24004 4149115 /usr/lib/libltdl.so.3.1.4
php-fpm 21135 nginx mem REG 8,2 43032 4431971 /usr/lib/php/modules/mysql.so
php-fpm 21135 nginx mem REG 8,2 24492 4431973 /usr/lib/php/modules/pdo_mysql.so
php-fpm 21135 nginx mem REG 8,2 1842560 4431932 /usr/lib/php/modules/fileinfo.so
php-fpm 21135 nginx mem REG 8,2 320112 4431974 /usr/lib/php/modules/gd.so
php-fpm 21135 nginx mem REG 8,2 613460 4144068 /usr/lib/libkrb5.so.3.3
php-fpm 21135 nginx mem REG 8,2 20172 4431966 /usr/lib/php/modules/pdo_sqlite.so
php-fpm 21135 nginx mem REG 8,2 157336 4143486 /usr/lib/libk5crypto.so.3.1
php-fpm 21135 nginx mem REG 8,2 185896 4149073 /usr/lib/libmcrypt.so.4.4.8
php-fpm 21135 nginx mem REG 8,2 31224 4431968 /usr/lib/php/modules/wddx.so
php-fpm 21135 nginx mem REG 8,2 24316 4431969 /usr/lib/php/modules/xmlreader.so
php-fpm 21135 nginx mem REG 8,2 190712 4147632 /usr/lib/libgssapi_krb5.so.2.2
php-fpm 21135 nginx mem REG 8,2 293044 21858908 /lib/libssl.so.0.9.8e
php-fpm 21135 nginx mem REG 8,2 271532 4149119 /usr/lib/libt1.so.5.1.1
php-fpm 21135 nginx mem REG 8,2 90752 4431970 /usr/lib/php/modules/memcache.so
php-fpm 21135 nginx mem REG 8,2 113612 4431972 /usr/lib/php/modules/mysqli.so
php-fpm 21135 nginx mem REG 8,2 90076 4431965 /usr/lib/php/modules/pdo.so
php-fpm 21135 nginx mem REG 8,2 257508 4431934 /usr/lib/php/modules/phar.so
php-fpm 21135 nginx mem REG 8,2 37692 4431975 /usr/lib/php/modules/xmlwriter.so
php-fpm 21135 nginx mem REG 8,2 9412 4148802 /usr/lib/libXau.so.6.0.0
php-fpm 21135 nginx mem REG 8,2 108084 4423704 /usr/lib/php/modules/xcache.so
php-fpm 21135 nginx mem REG 8,2 387964 4149077 /usr/lib/libsqlite3.so.0.8.6
php-fpm 21135 nginx mem REG 8,2 61476 4431931 /usr/lib/php/modules/curl.so
php-fpm 21135 nginx mem REG 8,2 1250176 4144820 /usr/lib/libxml2.so.2.6.26
php-fpm 21135 nginx mem REG 8,2 1062108 4149146 /usr/lib/libX11.so.6.2.0
php-fpm 21135 nginx mem REG 8,2 24280 4431976 /usr/lib/php/modules/xsl.so
php-fpm 21135 nginx mem REG 8,2 78084 4431935 /usr/lib/php/modules/zip.so
php-fpm 21135 nginx mem REG 8,2 50848 21856295 /lib/libnss_files-2.5.so
php-fpm 21135 nginx mem REG 8,2 129900 21856273 /lib/ld-2.5.so
php-fpm 21135 nginx mem REG 8,2 7880 21858902 /lib/libkeyutils-1.2.so
php-fpm 21135 nginx mem REG 8,2 1693812 21856280 /lib/libc-2.5.so
php-fpm 21135 nginx mem REG 8,2 20668 21856308 /lib/libdl-2.5.so
php-fpm 21135 nginx mem REG 8,2 216544 21856468 /lib/libm-2.5.so
php-fpm 21135 nginx mem REG 8,2 137908 21856288 /lib/libpthread-2.5.so
php-fpm 21135 nginx mem REG 8,2 75028 4141546 /usr/lib/libz.so.1.2.3
php-fpm 21135 nginx mem REG 8,2 48156 21856290 /lib/librt-2.5.so
php-fpm 21135 nginx mem REG 8,2 245376 21858904 /lib/libsepol.so.1
php-fpm 21135 nginx mem REG 8,2 93508 21858905 /lib/libselinux.so.1
php-fpm 21135 nginx mem REG 8,2 109740 21856304 /lib/libnsl-2.5.so
php-fpm 21135 nginx mem REG 8,2 198584 4139996 /usr/lib/libidn.so.11.5.19
php-fpm 21135 nginx mem REG 8,2 881927 4139874 /usr/lib/sse2/libgmp.so.3.3.3
php-fpm 21135 nginx mem REG 8,2 45432 21857147 /lib/libcrypt-2.5.so
php-fpm 21135 nginx mem REG 8,2 248028 4139052 /usr/lib/libcurl.so.3.0.0
php-fpm 21135 nginx mem REG 8,2 80636 21858903 /lib/libresolv-2.5.so
php-fpm 21135 nginx mem REG 8,2 1296964 21858907 /lib/libcrypto.so.0.9.8e
php-fpm 21135 nginx mem REG 8,2 7748 21858906 /lib/libcom_err.so.2.1
php-fpm 21135 nginx mem REG 8,2 33712 4141888 /usr/lib/libkrb5support.so.0.1
php-fpm 21135 nginx mem REG 8,2 1452892 4457600 /usr/lib/mysql/libmysqlclient.so.15.0.0
php-fpm 21135 nginx mem REG 8,2 150132 4431964 /usr/lib/php/modules/dom.so
php-fpm 21135 nginx mem REG 8,2 2039728 4431967 /usr/lib/php/modules/mbstring.so
php-fpm 21135 nginx mem REG 8,2 526896 4149086 /usr/lib/libfreetype.so.6.3.10
php-fpm 21135 nginx mem REG 8,2 135716 4141806 /usr/lib/libjpeg.so.62.0.0
php-fpm 21135 nginx mem REG 8,2 153504 4142021 /usr/lib/libpng12.so.0.10.0
php-fpm 21135 nginx mem REG 8,2 71852 4141164 /usr/lib/libbz2.so.1.0.3
php-fpm 21135 nginx mem REG 8,2 214688 4143335 /usr/lib/libxslt.so.1.1.17
php-fpm 21135 nginx mem REG 8,2 13152 4145453 /usr/lib/libgpg-error.so.0.3.0
php-fpm 21135 nginx mem REG 8,2 525484 4139206 /usr/lib/libgcrypt.so.11.5.2
php-fpm 21135 nginx mem REG 8,2 70288 4144893 /usr/lib/libexslt.so.0.8.13
php-fpm 21135 nginx DEL REG 0,9 1216510 /dev/zero
php-fpm 21135 nginx mem REG 8,2 56426000 4148747 /usr/lib/locale/locale-archive
php-fpm 21135 nginx mem REG 8,2 25462 4227955 /usr/lib/gconv/gconv-modules.cache
php-fpm 21135 nginx DEL REG 0,9 1216565 /dev/zero
php-fpm 21135 nginx 0u IPv4 1216519 TCP localhost.localdomain:cslistener (LISTEN)
php-fpm 21135 nginx 1u CHR 1,3 3603 /dev/null
php-fpm 21135 nginx 2u CHR 1,3 3603 /dev/null
php-fpm 21135 nginx 3u REG 8,2 0 17629190 /tmp/.xcache.0.0.1804289383.lock (deleted)
php-fpm 21135 nginx 4u REG 8,2 0 17629191 /tmp/.xcache.0.1.846930886.lock (deleted)
Re: Not using all cores ?
June 12, 2011 03:46PM
1) if you press "1" in top , then it will show load per core, not all-cpu
2) OS taskscheduler must pin php-fpm forks equally to all cores, unless there is something that changes default affinity mask
(taskset in launch script for example)
3) finally, forum load is not equal, someone can do cpu loading op (such as searching), while others just view pages (low cpu use)

please do better monitoring

you can query cpu affinity mask with schedtool


$ schedtool `pidof php-fpm`
PID 30854: PRIO 0, POLICY N: SCHED_NORMAL, NICE 0, AFFINITY 0xf
PID 30652: PRIO 0, POLICY N: SCHED_NORMAL, NICE 0, AFFINITY 0xf
PID 30651: PRIO 0, POLICY N: SCHED_NORMAL, NICE 0, AFFINITY 0xf
PID 30650: PRIO 0, POLICY N: SCHED_NORMAL, NICE 0, AFFINITY 0xf
PID 17702: PRIO 0, POLICY N: SCHED_NORMAL, NICE 0, AFFINITY 0xf

AFFINITY 0xf means - all cores allowed
Re: Not using all cores ?
June 14, 2011 04:05AM
Sylvia Wrote:
-------------------------------------------------------
> 1) if you press "1" in top , then it will show
> load per core, not all-cpu
> 2) OS taskscheduler must pin php-fpm forks equally
> to all cores, unless there is something that
> changes default affinity mask
> (taskset in launch script for example)
> 3) finally, forum load is not equal, someone can
> do cpu loading op (such as searching), while
> others just view pages (low cpu use)
>
> please do better monitoring
>
> you can query cpu affinity mask with schedtool
>
>
> $ schedtool `pidof php-fpm`
> PID 30854: PRIO 0, POLICY N: SCHED_NORMAL, NICE
> 0, AFFINITY 0xf
> PID 30652: PRIO 0, POLICY N: SCHED_NORMAL, NICE
> 0, AFFINITY 0xf
> PID 30651: PRIO 0, POLICY N: SCHED_NORMAL, NICE
> 0, AFFINITY 0xf
> PID 30650: PRIO 0, POLICY N: SCHED_NORMAL, NICE
> 0, AFFINITY 0xf
> PID 17702: PRIO 0, POLICY N: SCHED_NORMAL, NICE
> 0, AFFINITY 0xf
>
> AFFINITY 0xf means - all cores allowed


unless there is something that changes default affinity mask
Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 258
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready