osmo-pcu.git branch zecke/wip created. 0.2-521-g410d98e
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "UNNAMED PROJECT". The branch, zecke/wip has been created at 410d98e5d0c0eae76221a2d62a837b962f082506 (commit) - Log ----------------------------------------------------------------- http://cgit.osmocom.org/osmo-pcu/commit/?id=410d98e5d0c0eae76221a2d62a837b96... commit 410d98e5d0c0eae76221a2d62a837b962f082506 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 15:48:25 2015 +0200 alloc: Use least reserved PDCH for algo A (TODO) TODO: - unify find_least_reserved_pdch and find_least_busy_pdch or - force find_multi_slots to single slot reservation http://cgit.osmocom.org/osmo-pcu/commit/?id=eff0c350c848c642efad7ebe478a52c2... commit eff0c350c848c642efad7ebe478a52c2c8c351ce Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 15:10:20 2015 +0200 Revert "ms: Delay the call to set_reserved_slots(NULL, 0,0) (EXPERIMENTAL)" This reverts commit 341c9189caf00c077ef73138d087bf29e3ae12d1. http://cgit.osmocom.org/osmo-pcu/commit/?id=a0ea29a5968308224b24b8718a8baa09... commit a0ea29a5968308224b24b8718a8baa09806ad645 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 14:35:57 2015 +0200 FIXUP bts: Add Poll Timeout counter (TODO) http://cgit.osmocom.org/osmo-pcu/commit/?id=bdcfb71161aed1dd882ec7f9dcc48801... commit bdcfb71161aed1dd882ec7f9dcc4880146175155 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 13:19:49 2015 +0200 sba: Reverse TS search order (TODO) - when using multiple TS the first TS cannot be used for UL eventually if a TBF is still active or releasing. - Currently RACH requests are often accompanied by poll timeouts - This cannot prevent them completely (especially with multiple TRX in the future) http://cgit.osmocom.org/osmo-pcu/commit/?id=70960fb90cf4ab5efa2851f6927e53bb... commit 70960fb90cf4ab5efa2851f6927e53bb14878512 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 12:54:26 2015 +0200 bts: Add Poll Timeout counter (TODO) http://cgit.osmocom.org/osmo-pcu/commit/?id=9eb88f2348ce449deac1022950998ece... commit 9eb88f2348ce449deac1022950998ecef372a67b Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 12:34:26 2015 +0200 tbf: Remove call to update() in reuse_tbf (TODO) http://cgit.osmocom.org/osmo-pcu/commit/?id=5ef6a6028a1ed8aa59d3b2a701d53e47... commit 5ef6a6028a1ed8aa59d3b2a701d53e4737c15478 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 12:04:20 2015 +0200 tbf: Set ms in call to tbf_alloc_dl_tbf (TODO) - reuse - alloc didn't know slot reservation TODO: - cm http://cgit.osmocom.org/osmo-pcu/commit/?id=341c9189caf00c077ef73138d087bf29... commit 341c9189caf00c077ef73138d087bf29e3ae12d1 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 10:48:09 2015 +0200 ms: Delay the call to set_reserved_slots(NULL, 0,0) (EXPERIMENTAL) TODO: - Check whether this fixes the issues. http://cgit.osmocom.org/osmo-pcu/commit/?id=f5082f9372efa00090519a1b133b7eee... commit f5082f9372efa00090519a1b133b7eee88ea0d61 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Thu Jul 2 10:47:37 2015 +0200 ms: Clear the reserved slots in the destructor (FIXUP) http://cgit.osmocom.org/osmo-pcu/commit/?id=6b3a27be054a2cc4667a22a4c435cd5d... commit 6b3a27be054a2cc4667a22a4c435cd5d7ecb59ce Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 14:48:13 2015 +0200 alloc: Disable inner loop debugging by default (TODO) Callgrind: 42%-> 25% http://cgit.osmocom.org/osmo-pcu/commit/?id=596f547a378786b2a9dea5a3b1e6182a... commit 596f547a378786b2a9dea5a3b1e6182abf794e60 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 14:34:24 2015 +0200 alloc: Optimize find_free_usf According to callgrind, this function consumes 33% CPU when running the AllocTest program. This commit uses the assigned_usf() method to get the USFs allocated by a PDCH instead of traversing the TBFs. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=eb22ef5c755a3bacda653185f4ce6340... commit eb22ef5c755a3bacda653185f4ce63402bd95d93 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 14:10:13 2015 +0200 tbf: Keep a set of used TFI and USF per PDCH (TODO) http://cgit.osmocom.org/osmo-pcu/commit/?id=1e64bdbe3f7304fe5c5098ae0738d1ff... commit 1e64bdbe3f7304fe5c5098ae0738d1ff06f14ad1 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 13:43:52 2015 +0200 FIXUP tbf: Maintain the number of TBF per PDCH http://cgit.osmocom.org/osmo-pcu/commit/?id=4d4fb6597592dc16795868ab24cb9063... commit 4d4fb6597592dc16795868ab24cb9063765c5fb9 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 13:40:18 2015 +0200 alloc: Skip common TS without free USF when rating (TODO) http://cgit.osmocom.org/osmo-pcu/commit/?id=8cee5c6d06ebc743414df3b3d8ea4af4... commit 8cee5c6d06ebc743414df3b3d8ea4af462db0851 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Wed Jul 1 13:10:41 2015 +0200 alloc: Only reserve 1 UL slot with algorithm B (TODO) Since currently the algorithm B will only allocate a single UL slot and will have to stick to it (first common TS), the other possible UL slots will not be allocated while the reservation is kept. This commit adds code to update the reserved set of UL slots to the single common TS when the UL TBF is allocated. TODO: - test it Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=53cf1d4da78852cc168246cca1f4caa7... commit 53cf1d4da78852cc168246cca1f4caa7e9acf837 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Wed Jul 1 12:27:30 2015 +0200 alloc: Set minimum slot capacity to 1 (TODO) - < 0 can only happen rarely (if at all ATM) - doesn't change anything TODO: - test it anyway http://cgit.osmocom.org/osmo-pcu/commit/?id=3ac16ddac029d00f71bfe722cb25d66c... commit 3ac16ddac029d00f71bfe722cb25d66c26961fc7 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Wed Jul 1 12:19:40 2015 +0200 alloc: Only use common UL slots when calculating the capacity Currently al possible UL slots are included in the capacity calculation which is the base of the slot selection. Nevertheless UL-only slots will never be used, since only one uplink slot (which must be a common slot) will be used. This patch changes the code to only include common slots in the capacity sum. Note that this might not be optimal if algorithm B supported multiple uplink slots. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=0bb98075f4046e55c48478520752b09f... commit 0bb98075f4046e55c48478520752b09f71b545e0 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 22 16:14:23 2015 +0200 WIP Algorithm B UL (TODO) Select UL slot based on slot usage (similar to algorithm A) - Ensure to keep the first common TS TODO: - cm http://cgit.osmocom.org/osmo-pcu/commit/?id=3c9fcfadc825256987ecb259b793c2f8... commit 3c9fcfadc825256987ecb259b793c2f85ed5d21c Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 10:24:37 2015 +0200 alloc: Base algo A on reserved PDCHs Currently algorithm A bases its time slots selection on the number of TBF actively using the PDCHs. This statistically prefers the first time slots, especially with short living TBFs. So when the first TBF is triggered by an uplink transfer (which generally results in a short-lived TBF) the potentially longer living DL TBF will be bound to the same slot. When another MS then requests an uplink TBF, it will get the same slot (no UL TBF currently active). This commit changes the algorithm to base its selection on reserved slots instead. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=ea061943e0d4179822224d7830d0f147... commit ea061943e0d4179822224d7830d0f147ce90ba2c Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 09:44:05 2015 +0200 alloc: Ignore slots with differing TSC if multiple slots are requested According to TS 45.002, 6.4.2 the training sequence (TSC) must be the same for all slots in a multi-slot set. This commit updates find_possible_pdchs() to only consider slots with the same TSC if more that 1 slot shall be assigned. Note that the first PDCH's TSC will be used as reference, so if two or more groups with a common TSC are configured, only the first will be used. This restriction does not apply to algorithm A, since it will not assign more than one slot and therefore sets the max_slots parameter to 1. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=bbdca1b43caaa47ae71e35872909c25f... commit bbdca1b43caaa47ae71e35872909c25ffc091900 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 09:18:30 2015 +0200 ms: Get the set of slots currently active This commits adds methods to GprsMs and gprs_rlcmac_tbf to retrieve the slots that are actively used. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=b70f7ca553b4747618383b5c631f7023... commit b70f7ca553b4747618383b5c631f7023dc0b2f84 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Tue Jun 30 08:52:54 2015 +0200 ms: Add support for slot reservation In contrast to the slots currently used by existing TBFs, the reserved slots refer to the time slots that can be used for newly allocated TBFs without causing conflicts (given that the first common TS does not change). They correspond to the potential use of the PDCHs and can be used to achieve a more uniform slot allocation. This commit adds bit set based methods to GprsMs and gprs_rlcmac_trx and a counter to gprs_rlcmac_pdch. The current TRX will also be stored in the MS object. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=7e32903033af3f93dfe397e55de54987... commit 7e32903033af3f93dfe397e55de549870747d62c Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Fri Jun 19 16:35:38 2015 +0200 alloc: Load balancing for algo A Currently only the first enabled PDCH will be used. Beside the throughput this will also limit the number of TBFs: - number of UL TBFs <= 7 - number of DL TBFs <= 32 This commit changes the allocation algorithm to use the PDCH with the least number of attached TBFs. This will improve the troughput in both directions and the UL limits: - number of UL TBFs <= min(32, N_PDCH * 7) UL TBFs Ticket: #1794 Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=3e4ac92f79446378fc4c4697d8f31ea1... commit 3e4ac92f79446378fc4c4697d8f31ea1cdb6eafb Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 14:18:46 2015 +0200 ms: Add tbf() method to get the TBF based on the direction To avoid the need for a switch or conditional statement when needing a TBF from an MS object in direction independant code, this method contains that case distinction. For additional flexibility, a reverse() function is added to get the opposite direction. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=6f9587bd091ff95c7150646920bc3c8b... commit 6f9587bd091ff95c7150646920bc3c8b1ea14d3b Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 14:05:55 2015 +0200 ms: Add first_common_ts method to GprsMs This method gets the index (0 based) of first common time slot used by the TBFs attach to it. It expects that all of them have the same notion of this. If no TBF is attached, -1 will be returned. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=6eca14991030ee87c9370c46d719e227... commit 6eca14991030ee87c9370c46d719e22763a65609 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 13:45:05 2015 +0200 tbf: Maintain the number of TBF per PDCH Currently the PDCH object do not know anything about the TBFs using them. To make the slot allocation load dependant, at least some numbers are required. This commit adds TBF counters (one per direction) and the related methods attach_tbf, detach_tbf, and num_tbfs to gprs_rlcmac_pdch. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=8fb193a04767967350fd63501f2f46e8... commit 8fb193a04767967350fd63501f2f46e8da3f1a66 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 13:30:43 2015 +0200 tbf: Update the new TBF in tbf_reuse (TODO) Currently the old TBF is updated for reallocation in tbf_reuse(). This commit changes this to update the new TBF instead. TODO: - does this make sense? - does this fix anything? - should the call to update() be removed completely there? http://cgit.osmocom.org/osmo-pcu/commit/?id=6ec4b962ba8be347708f3c4c3d3f1062... commit 6ec4b962ba8be347708f3c4c3d3f1062ba1ffc91 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 13:03:46 2015 +0200 tbf/test: Add assertions These assertions check for the TBF allocation result before the tbf object is dereferenced the first time. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=8b5add11527ee7108d0f11cf55d97265... commit 8b5add11527ee7108d0f11cf55d972651a4a0eb1 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 13:00:20 2015 +0200 alloc/test: Use LOGL_DEBUG environment variable When this environment variable is set, the logging level is set to LOGL_DEBUG to help debugging without putting everything into AllocTest.err. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=8f37bfe3abfaeda30de7f1f2f813c7b9... commit 8f37bfe3abfaeda30de7f1f2f813c7b9b20f39ac Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 12:45:11 2015 +0200 alloc/test: Enhance test_alloc_a This commit adds: - an assertion to check that count is valid, - an assertion the verify that tbf_alloc did not fail - a slots parameter to specify the enabled slots - additional test invocations with more slots enabled Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=edcab1a0be452d8c977e35783ce489be... commit edcab1a0be452d8c977e35783ce489beb82da099 Author: Jacob Erlbeck <jerlbeck@sysmocom.de> Date: Mon Jun 29 12:19:52 2015 +0200 alloc/test: Add test for successive allocation This test allocates as many as possible UL/DL TBF pairs, shows their PDCH usage, and checks how many of them has been created successfully. Sponsored-by: On-Waves ehf ----------------------------------------------------------------------- hooks/post-receive -- UNNAMED PROJECT
participants (1)
-
gitosis@osmocom.org