From openSIPS

About: PerformanceTests-UserLocation

About -> Performance Tests -> User location - search performance

This page has been visited 6074 times.

Table of Content (hide)

  1. 1. What are the theoretical gains ?
  2. 2. Performance tests
    1. 2.1 Search performance tests
    2. 2.2 Conclusions

User locations are in general stored in memory for faster searches. Up to OpenSIPS 1.6.0 they were held in a hash-table for faster searching. The trunk (OpenSIPS 1.7.0 (devel)) contains a new version that combines the use of hash-tables and balanced search trees.

The tests were conducted in order to determine the real gain of the balanced search trees in cases with many registered users.


1.  What are the theoretical gains ?

Hash-tables supply a constant query time as long as they are not loaded too much. After a certain limit search time rises linear with the number of registered users. Balanced search trees are used to prevent this from happening.


2.  Performance tests

The tests were done using OpenSIPS 1.6.0 as reference point for search time. OpenSIPS 1.7.0 (devel) is the candidate whose performance was measured.


2.1  Search performance tests

The test was performed with a constant number of 100.000 registered users. Queries were done for users registered at different times ( in the original implementation query time was dependant on how close a user was to the begining of the list).


General view

Results:

-> BOOST = 3.25 times faster


Single Sample (detail)

2.2  Conclusions


Retrieved from https://www.opensips.org/About/PerformanceTests-UserLocation
Page last modified on May 14, 2013, at 02:19 PM