Xen VM Stress Test
Click here to expand Table of Contents
Test Conditions
Hardware
Box: Xen VM AMD Opteron Dual Core (2x1.7GHz) 64-bit machine, first (O): 256 MB RAM, then 1,5 GB RAM
OS: Ubuntu Linux 6.06 dapper x64, 1GB ramfs when needed, FreeSWITCH Version 1.0.pre3 (7750M)
Testing tool: SIPp v3.0-TLS-PCAP, version svn424 (http://sipp.sourceforge.net/) with slightly modified* standard uas & uac_pcap scenerios on another box with 1 min. pre-recorded pcap streams
- the only modification was the path of the pcap file
G711a tests without transcoding
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
1 | 1000 | 979/981 | 60 (cons) | 42(O) | 15 |
2 | 0/952 | 943 | 120(~113) | 41.5(O) | 23 |
5 | 1000/779 | 730/725 | 220 | 43(O) | 68 |
10 | 1000/879 | 588/824 | 330 | 48(O) | 100 |
30 | 1000/499 | 461/480 | 300 | 52(O) | 136 |
50 | 1000/720 | 483/706 | 320 | 53(O) | 120 |
With SRTP
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
10 | 1000/890 | 673/854 | 320 | 9,6 | 118 |
30 | 1000/688 | 492/677 | 280 | 10.9 | 126 |
50 | 1000/729 | 452/725 | 280 | 11.7 | 118 |
With recording to ramfs
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
1 | 500 | 494 | 60 | 3.2 | 8.4 |
5 | 500 | 460/461 | 260 | 8.8 | 77,4 |
10 | 500/460 | 308/447 | 270(~150-170) | 11 | 94,3 |
30 | 500/468 | 314/424 | 267(~150-170) | 12.3 | 112.1 |
G711a - Speex transcoding
Complexity: 5, Quality: 5 (default to FS)
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
1 | 1000 | 868/1000 | 50 | 15(O) | 167 |
5 | 1000 | 273/1000 | 50 | 27(O) | 167 |
10 | 1000/712 | 169/712 | 50 | 40(O) | 167 |
Complexity: 2, Quality: 8 (with -ffast-math, --enable-sse)
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
1 | 1000/1000 | 1000/1000 | 60 | 10(O) | 49 |
5 | 1000/1000 | 340/999 | 91(~70) | 37.4(O) | 157 |
10 | 1000/884 | 250/884 | 100(~60-80) | 7.18 | 154 |
Complexity: 1, Quality: 8 (with -ffast-math, --enable-sse)
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
1 | 1000 | 994 | 60 | 3.5 | 33.2 |
5 | 1000/999 | 273/998 | 98(~75-80) | 10,8 | 147.5 |
10 | 1000/888 | 239/886 | 99(~60-70-80) | 14,5 | 117.6 |
Complexity: 1, Quality: 8 (with -ffast-math, --enable-sse) with SRTP
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
5 | 1000/999 | 349/998 | 93(~50-60) | 10,7 | 141 |
10 | 1000/885 | 227/884 | 93(~50-60) | 11.2 | 153 |
Complexity: 1, Quality: 8 (with -ffast-math, --enable-sse) with recording to ramfs
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
1 | 500 | 498 | 60 | 3.4 | 54.8 |
2 | 500/465 | 355/464 | 85(~70-75) | 5.8 | 140.6 |
5 | 500 | 238/500 | 85(~60) | 6.9 | 154.2 |
10 | 500 | 170/500 | 85(~40-60) | 10.3 | 157 |
CPS | Send/Received INVITE's | Send/Received ACK's | Maximum concurrent calls | MEM(%) | CPU(%) |
---|
50 | 1032/347 | 269/347 | 240 | 6.7 | 47 |
100 | 1007/246 | 223/246 | 223 | 7.7 | 54 |
150 | 1003/168 | 168 | 168 | 7.9 | 61 |
Experience
- With high CPS and concurrent calls there was 1 sec. delay in live conversation sometimes
- Tried recording to hard disk but it was very slow, the system usually hanged eventually
- On a 32bit box we couldn't get more then 350 threads out of it. Shrinking the thread stack size did not help either. With a 64-bit OS, that problem never occurred. (exact same hardware)