AIO: Too many rabbit threads
Bug #1834796 reported by
Brent Rowsell
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
StarlingX |
Fix Released
|
High
|
Bin Yang |
Bug Description
On AIO, an erlang scheduler thread is launched per logical core. While this probably makes sense on a standard controller, it does not make sense on an AIO. On AIO there should be a scheduler thread per platform core.
Also the number of aync threads needs to be reviewed as well. There are 64 on a 56 logical core machine with AIO configured.
tags: | added: stx.2.0 stx.containers |
Changed in starlingx: | |
importance: | Undecided → High |
Changed in starlingx: | |
assignee: | nobody → Bin Yang (byangintel) |
Changed in starlingx: | |
status: | New → Triaged |
Changed in starlingx: | |
status: | Triaged → In Progress |
Changed in starlingx: | |
status: | Confirmed → In Progress |
tags: | added: in-r-stx20 |
To post a comment you must log in.
checked with a Simplex deployment on bare metal sever, there were 8 cores (/proc/cpuinfo) and 77 threads under beam.smp (Erlang scheduler) process.
Similarly with a multi-node deployment, on virtual server, on controller-0, there were only 6 cores but even more threads (123): ------- ------- ------- ------- ------- ------- ------- -
-------
controller-0:~$ cat /proc/cpuinfo | grep "processor"
processor : 0
processor : 1
processor : 2
processor : 3
processor : 4
processor : 5
controller-0:~$ ps aux | grep rabbitmq | grep -v grep sbin/rabbitmq- server lib/erlang/ erts-10. 3.1/bin/ beam.smp -W w -A 96 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -K true -B i -- -root /usr/local/ lib/erlang -progname erl -- -home /var/lib/rabbitmq -- -pa /opt/rabbitmq/ebin -noshell -noinput -s rabbit boot -name <email address hidden> -boot start_sasl -conf /etc/rabbitmq/ rabbitmq. conf -conf_dir /var/lib/ rabbitmq/ config -conf_script_dir /opt/rabbitmq/sbin -conf_schema_dir /var/lib/ rabbitmq/ schema -conf_advanced /etc/rabbitmq/ advanced. config -kernel inet_default_ connect_ options [{nodelay,true}] -sasl errlog_type error -sasl sasl_error_logger tty -rabbit lager_log_root "/var/log/rabbitmq" -rabbit lager_default_file tty -rabbit lager_upgrade_file tty -rabbit enabled_ plugins_ file "/etc/rabbitmq/ enabled_ plugins" -rabbit plugins_dir "/opt/rabbitmq/ plugins" -rabbit plugins_expand_dir "/<email address hidden>" -os_mon start_cpu_sup false -os_mon start_disksup false -os_mon start_memsup false -mnesia dir "/<email address hidden>" -kernel inet_dist_ listen_ min 25672 -kernel inet_dist_ listen_ max 25672
root 559463 0.0 0.0 4620 736 ? Ss 6月27 0:01 /bin/sh /opt/rabbitmq/
root 574366 15.3 0.8 4629392 272896 ? Sl 6月27 1241:13 /usr/local/
controller-0:~$ ps huH p 574366 | wc -l
123
------- ------- ------- ------- ------- ------- ------- -------
Need to do research how to adjust the number of threads for beam.smp.
@Bin, please look into this topic.