[OpenSIPS-Users] OpenSIPS maximum performance in a multiprocessor machine (SMP)

Alex Massover alex at jajah.com
Mon Sep 14 20:55:51 CEST 2009


I would try at least 8 children, or better 16 or 32 ;)

--
Best Regards,
Alex Massover
VoIP R&D TL
Jajah Inc.

-----Original Message-----
From: users-bounces at lists.opensips.org [mailto:users-bounces at lists.opensips.org] On Behalf Of Italo Dacosta
Sent: Monday, September 14, 2009 9:09 PM
To: users at lists.opensips.org
Subject: [OpenSIPS-Users] OpenSIPS maximum performance in a multiprocessor machine (SMP)

Hello,

I am running some performance tests with OpenSIPS 1.5.2. Basically, I
wan to measure the maximum call rate that OpenSIPS can handle. I am
using a machine with the following configurations:
* 8 processors (2GHz Quad-Core AMD Opteron),
* 16 GB memory
* Gigabit Ethernet
* Ubuntu 8.04 (Linux 2.6.24-19-server #1 SMP).

I am using a stateless proxy configuration with 4 children processes,
just required modules (i.e., not billing) and a very simple routing logic:

route{
        lookup("location");
        forward();
        exit;
}


I am also using SIPp 3.1 to generate the test call traffic.

With the above configuration  the proxy is able to reach around 20,000
calls per second (cps). However, I have noticed that the CPUs in the
server are not all completely utilized. Below is the output of the
mpstat tool when the maximum CPU utilization was measured (100 - %
idle).  The mpstat output shows that only CPU #7 reaches 95%
utilization. The other CPUs have around 60-70% utilization. CPU #7 also
have the largest number of interrupts per second ( I guess that CPU 7 is
handling the network interrupts).

CPU   %user   %nice    %sys  %irq   %soft  %steal   %idle    intr/s
all   24.40    0.00   19.48   0.12   19.28    0.00   36.73  11765.40
0   22.20    0.00   23.20    0.00   10.60    0.00   44.00      0.00
1   32.40    0.00   18.20    0.00   10.40    0.00   39.00      0.00
2   22.40    0.00   20.80    0.00   10.00    0.00   46.80      0.00
3   30.20    0.00   21.80    0.00    8.40    0.00   39.60      0.00
4   24.60    0.00   22.40    0.00   10.20    0.00   42.80      0.00
5   33.60    0.00   20.80    0.00   11.80    0.00   33.80      6.00
6   24.20    0.00   24.00    0.00    9.00    0.00   42.80     17.80
7    5.60    0.00    4.60    1.00   83.80    0.00    5.00  11742.60
8    0.00    0.00    0.00    0.00    0.00    0.00    0.00      0.00

My questions is why OpenSIPS does not use all the CPUs to their maximum
(>95% utilization) and therefore, handle higher call rates. I would like
to know what is causing OpenSIPS to stop handling higher call rates
given that there are still resources available (CPU, memory, network).
In other words, what is the bottleneck at this point. ( I originally
though it was the SIPp clients generating the load, but I increase the
number of clients and got the same results).

I would appreciate any advice or ideas on how to maximize OpenSIPs
performance in the above scenario.

Thanks in advance,
ID

_______________________________________________
Users mailing list
Users at lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

This mail was received via Mail-SeCure System.



This mail was sent via Mail-SeCure System.





More information about the Users mailing list