Brian West wrote:
On Jun 4, 2009, at 9:32 AM, Apostolos Pantsiopoulos wrote:
NOTE No 1 : All the performance recommendations found in the wiki has been applied. In fact only the essential modules that could make this scenario work were loaded.
What are you testing against? What OS, Hardware, Distro and such?
The small server tests were made on a 5-year old PC (32 bit, 3 Ghz P4, Cetnos 5.3). The large server 1 : Quad-Core AMD Opteron(tm) Processor 2350 HE (64 bit, Centos 5.3) The large server 2 : Dual-Core AMD Opteron(tm) Processor 2214 HE (64 bit, Centos 5.3) The large server 3 : Intel(R) Xeon(R) CPU E5345 @ 2.33GHz (32 bit, Centos 5.3)
NOTE No 2 : I tried using asterisk (as a point of reference - don't get me wrong - I am not trying to start a flame war here). And it succeeded doing on the same hardware 60 calls/sec with a channel limit of 400 sim. calls using only 50% of the cpu (maximum). No under any circumstances I have seen the behavior above (this inability to hang call legs in a timely manner). Even when I pushed asterisk to the limits (80 calls per second 600 max call limit) and it started failing on some calls it never failed to hangup the calls for both legs on exactly 10 secs.
Load testing is a science and you can do it wrong most of the time unless you know exactly what you're doing. If you're going against the default dialplan its heavy and not something I would load test against.
The dialplan : <?xml version="1.0" encoding="utf-8"?> <!-- http://wiki.freeswitch.org/wiki/Dialplan_XML --> <include> <context name="mydialplan"> <extension name="dial1"> <condition field="destination_number" expression="^.*$"> <!-- Dial Back --> <action application="set" data="absolute_codec_string=PCMA"/> <action application="bridge" data="sofia/gateway/sipp01/$1"/> </condition> </extension> </context> </include> I think it is the simplest that can be used in this scenario.
NOTE No 3 : As you can tell I was using a very small machine for my tests. When I moved the same tests to larger installations (Quad Core Opterons and Xeons) I got proportional results to the above.
What are you testing on now? Hope its 64bit.
Most of the platforms were 64 bit (although the results that I posted were from the small 32-bit server, the results from the 64-bit servers were proportional to those). In other words we needed a large call/sec rate for the high end servers but in any case the same phenomenon occured at around 60% idle cpu. -- ------------------------------------------- Apostolos Pantsiopoulos Kinetix Tele.com R & D email: regs@kinetix.gr -------------------------------------------