iedemam has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-bsc/+/28200 )
Change subject: performance: only track "all_allocated" states in one-second
intervals
......................................................................
performance: only track "all_allocated" states in one-second intervals
Calling bsc_update_time_cc_all_allocated() from lchan_fsm_wait_ts_ready_onenter()
and lchan_fsm_unused_onenter() cascades into very heavy usage of
chan_counts_for_trx() on busier systems. With 200-300 lchans changing state
each second on a BSC with 100 4TRX BTS defined, chan_counts_for_trx() is called
over 100,000 per second.
There is a precision tradeoff by eliminating these calls but perhaps knowing
the all_allocated state at one-second granularity is enough practically speaking.
Change-Id: Idffd8792eecb7f13812f2c3b3bee5485e9c3f409
---
M src/osmo-bsc/lchan_fsm.c
1 file changed, 0 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/00/28200/1
diff --git a/src/osmo-bsc/lchan_fsm.c b/src/osmo-bsc/lchan_fsm.c
index 1c85ff3..88cea06 100644
--- a/src/osmo-bsc/lchan_fsm.c
+++ b/src/osmo-bsc/lchan_fsm.c
@@ -525,8 +525,6 @@
lchan_reset(lchan);
osmo_fsm_inst_dispatch(lchan->ts->fi, TS_EV_LCHAN_UNUSED, lchan);
- bsc_update_time_cc_all_allocated(bts->network);
-
/* Poll the channel request queue, so that waiting calls can make use of the lchan that
just
* has become unused now. */
abis_rsl_chan_rqd_queue_poll(bts);
@@ -707,8 +705,6 @@
return;
}
- bsc_update_time_cc_all_allocated(bts->network);
-
lchan->conn = info->for_conn;
/* If there is a previous lchan, and the new lchan is on the same cell as previous one,
--
To view, visit
https://gerrit.osmocom.org/c/osmo-bsc/+/28200
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Idffd8792eecb7f13812f2c3b3bee5485e9c3f409
Gerrit-Change-Number: 28200
Gerrit-PatchSet: 1
Gerrit-Owner: iedemam <michael(a)kapsulate.com>
Gerrit-MessageType: newchange