[erlang-questions] High CPU usage problem
Guilherme Andrade
g@REDACTED
Sat Dec 20 17:19:42 CET 2014
Hello gongtao,
Besides 'message_queue_len', I would also look into 'reductions' over
time (also using process_info/2.)
As for big message queues, if the CPU is not overloaded, in most cases
it's due to single processes becoming a bottleneck, whether due to IO
and/or heavy crunching; if they can be pooled or split into multiple
ones, the better. However, you say that CPU is topping at 100%, so it's
most likely that it's just too heavy.
Long-running NIFs could also cause weird behaviour in the scheduler.
This dirty (multiple) one-liner should give you some insight into
reduction count:
------------------
rp([{-Reduc, Pid, case process_info(Pid, registered_name) of
{registered_name,Name} -> Name; _ -> '_' end} ||
{Reduc, Pid} <-
lists:foldl(
fun(Pid, L) when length(L) > 40 ->
SL = lists:sublist(lists:keysort(1, L), 20),
case process_info(Pid, reductions) of
{reductions,Reduc} -> [{-Reduc, Pid} | SL];
undefined -> L
end;
(Pid, L) ->
case process_info(Pid, reductions) of
{reductions,Reduc} -> [{-Reduc, Pid} | L];
undefined -> L
end
end, [], erlang:processes())]).
------------------
Cheers,
On 20-12-2014 12:03, gongtao wrote:
> hello everyone:
> I am a programmer from china.I have a problem with my game
> server.There is 8193 processes in my erlang node.But the cpu usage is
> nearly full,and the computer have 24 cpus.I looked some erlang
> processes info,find the message_queue_len of process is very big,more
> than 1000 sometimes.The disk io and net io are normal,memory is
> normal.My erlang version is R15B03.I don't know why.
> My english is poor.There are same informations from system.Hope
> you can understand.
> Looking forward to your reply.
> Thanks.
>
> -bash-4.2$ sar -u 2 10
> Linux 2.6.32-279.el6.x86_64 12/20/2014 _x86_64_
> (24 CPU)
>
> 06:33:37 PM CPU %user %nice %system %iowait %steal
> %idle
> 06:33:39 PM all 11.21 0.00 75.04 0.00 0.00
> 13.75
> 06:33:41 PM all 10.91 0.00 77.22 0.00 0.00
> 11.86
> 06:33:43 PM all 12.08 0.00 75.96 0.00 0.00
> 11.97
> 06:33:45 PM all 10.50 0.00 77.71 0.00 0.00
> 11.79
> 06:33:47 PM all 11.09 0.00 76.75 0.00 0.00
> 12.16
> 06:33:49 PM all 11.07 0.00 76.03 0.00 0.00
> 12.90
> 06:33:51 PM all 12.07 0.00 75.27 0.00 0.00
> 12.66
> 06:33:53 PM all 11.36 0.00 76.84 0.00 0.00
> 11.80
>
>
> | CPU Utilisation
> -------------------------------------------------------------------------------------------------------------------------------------
> |
> |---------------------------+-------------------------------------------------+
>
> |
> |CPU User% Sys% Wait% Idle|0 |25 |50 |75
> 100|
> |
> | 1 14.1 75.9 0.0
> 9.9|UUUUUUUsssssssssssssssssssssssssssssssssssss >|
> |
> | 2 9.8 81.3 0.0
> 8.8|UUUUssssssssssssssssssssssssssssssssssssssss >|
> |
> | 3 11.6 76.9 0.0
> 11.6|UUUUUssssssssssssssssssssssssssssssssssssss >
> |
> | 4 7.6 82.3 0.0
> 10.1|UUUsssssssssssssssssssssssssssssssssssssssss > |
> |
> | 5 14.2 74.1 0.0
> 11.7|UUUUUUUsssssssssssssssssssssssssssssssssssss > |
> |
> | 6 8.6 81.3 0.0
> 10.1|UUUUssssssssssssssssssssssssssssssssssssssss > |
> |
> | 7 11.6 75.9 0.0
> 12.6|UUUUUsssssssssssssssssssssssssssssssssssss >
> |
> | 8 8.5 81.0 0.0
> 10.5|UUUUssssssssssssssssssssssssssssssssssssssss > |
> |
> | 9 11.7 76.1 0.0
> 12.2|UUUUUssssssssssssssssssssssssssssssssssssss >
> |
> | 10 9.1 80.8 0.0
> 10.1|UUUUssssssssssssssssssssssssssssssssssssssss >
> |
> | 11 10.2 76.5 0.0
> 13.3|UUUUUssssssssssssssssssssssssssssssssssssss > |
> |
> | 12 6.6 81.6 0.0
> 11.7|UUUssssssssssssssssssssssssssssssssssssssss >
> |
> | 13 12.1 75.3 0.0
> 12.6|UUUUUUsssssssssssssssssssssssssssssssssssss >
> |
> | 14 9.0 80.6 0.0
> 10.4|UUUUssssssssssssssssssssssssssssssssssssssss >
> |
> | 15 15.7 71.1 0.0
> 13.2|UUUUUUUsssssssssssssssssssssssssssssssssss >|
> |
> | 16 9.2 80.1 0.0
> 10.7|UUUUssssssssssssssssssssssssssssssssssssssss > |
> |
> | 17 13.6 74.2 0.0
> 12.1|UUUUUUsssssssssssssssssssssssssssssssssssss > |
> |
> | 18 7.2 82.1 0.0
> 10.8|UUUsssssssssssssssssssssssssssssssssssssssss > |
> |
> | 19 16.5 69.5 0.0
> 14.0|UUUUUUUUssssssssssssssssssssssssssssssssss > |
> |
> | 20 7.3 81.2 0.0
> 11.5|UUUssssssssssssssssssssssssssssssssssssssss > |
> |
> | 21 17.8 69.0 0.0
> 13.2|UUUUUUUUssssssssssssssssssssssssssssssssss > |
> |
> | 22 11.4 77.2 0.0
> 11.4|UUUUUssssssssssssssssssssssssssssssssssssss > |
> |
> | 23 14.4 71.1 0.0
> 14.4|UUUUUUUsssssssssssssssssssssssssssssssssss > |
> |
> | 24 5.8 81.7 0.0
> 12.6|UUssssssssssssssssssssssssssssssssssssssss > |
> |
> |---------------------------+-------------------------------------------------+
>
> |
> |Avg 11.0 77.3 0.0
> 11.7|UUUUUssssssssssssssssssssssssssssssssssssss > |
> |
> |---------------------------+-------------------------------------------------+
>
>
>
>
>
>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://erlang.org/mailman/listinfo/erlang-questions
--
Guilherme
https://www.gandrade.net/
PGP: 0x35CB8191 / 1968 5252 3901 B40F ED8A D67A 9330 79B1 35CB 8191
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20141220/0ae646a1/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: OpenPGP digital signature
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20141220/0ae646a1/attachment.bin>
More information about the erlang-questions
mailing list