pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/31875 )
Change subject: bsc_subscriber: Optimize lookup of bsub by TMSI
......................................................................
Patch Set 3:
(1 comment)
File src/osmo-bsc/bsc_subscriber.c:
https://gerrit.osmocom.org/c/osmo-bsc/+/31875/comment/42ac4ea8_60b54daa
PS2, Line 182: "Trying to reserve
> cosmetic: no need to break into separate line?
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/31875
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: If27429e715ef4b327177e427249e68321a6e83cc
Gerrit-Change-Number: 31875
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 15 Mar 2023 09:50:59 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: comment
Attention is currently required from: laforge.
Hello osmith, Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bsc/+/31875
to look at the new patch set (#3).
Change subject: bsc_subscriber: Optimize lookup of bsub by TMSI
......................................................................
bsc_subscriber: Optimize lookup of bsub by TMSI
It was found that on a busy osmo-bsc process (>1000 concurrent calls
spead over different BTSs), a good amount of time is spent iterating the
subscribers list trying to find a subscriber based on a TMSI (1.60% of
total CPU time used by osmo-bsc).
This patch introduces a new rbtree under struct bsc_subscr_store which
allows storing all the busbs ordered by TMSI.
This way, lookup time changes O(N) -> O(log(N)), at the expense of
increased insert/deletion time O(1) -> O(log(N)).
Related: SYS#6200
Change-Id: If27429e715ef4b327177e427249e68321a6e83cc
---
M include/osmocom/bsc/bsc_subscriber.h
M src/osmo-bsc/bsc_subscriber.c
M src/osmo-bsc/osmo_bsc_bssap.c
M tests/subscr/bsc_subscr_test.c
4 files changed, 104 insertions(+), 6 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/75/31875/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/31875
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: If27429e715ef4b327177e427249e68321a6e83cc
Gerrit-Change-Number: 31875
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newpatchset