aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJacob Erlbeck <jerlbeck@sysmocom.de>2015-07-14 13:31:48 +0200
committerJacob Erlbeck <jerlbeck@sysmocom.de>2015-07-16 19:24:15 +0200
commit400ec02e8a0415a59eae9dcdae43de38247897a3 (patch)
tree554d9aff5b7f5a96ab54418192b4aeb2e7037646
parent40da3e17e5b3d4cf199cb868d561f98c35b93147 (diff)
alloc: Add 'dynamic' allocation algorithm
The idea behind this meta algorithm is to automatically select one of the other algorithms based on the system state. Basically algorithm B will be selected if the PDCH usage is low to improve throughput and latency. Algorithm A will be selected to support more concurrent MS. This commit adds a first simple state-less version of this algorithm that always tries B first and only if that fails A is tried afterwards. The following VTY command is added to the 'pcu' node: - alloc-algorithm dynamic Ticket: #1934 Sponsored-by: On-Waves ehf
-rw-r--r--src/gprs_rlcmac.h5
-rw-r--r--src/gprs_rlcmac_ts_alloc.cpp23
-rw-r--r--src/pcu_vty.c13
-rw-r--r--tests/alloc/AllocTest.cpp13
-rw-r--r--tests/alloc/AllocTest.err1068
-rw-r--r--tests/alloc/AllocTest.ok622
6 files changed, 1741 insertions, 3 deletions
diff --git a/src/gprs_rlcmac.h b/src/gprs_rlcmac.h
index 3fc95e69..3c1f1a05 100644
--- a/src/gprs_rlcmac.h
+++ b/src/gprs_rlcmac.h
@@ -104,6 +104,11 @@ int alloc_algorithm_b(struct gprs_rlcmac_bts *bts,
struct GprsMs *ms,
struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single,
int use_trx);
+
+int alloc_algorithm_dynamic(struct gprs_rlcmac_bts *bts,
+ struct GprsMs *ms,
+ struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single,
+ int use_trx);
#ifdef __cplusplus
}
#endif
diff --git a/src/gprs_rlcmac_ts_alloc.cpp b/src/gprs_rlcmac_ts_alloc.cpp
index a29e5db2..d664bbc9 100644
--- a/src/gprs_rlcmac_ts_alloc.cpp
+++ b/src/gprs_rlcmac_ts_alloc.cpp
@@ -996,3 +996,26 @@ int alloc_algorithm_b(struct gprs_rlcmac_bts *bts,
return 0;
}
+
+/* Slot Allocation: Algorithm dynamic
+ *
+ * This meta algorithm automatically selects on of the other algorithms based
+ * on the current system state.
+ *
+ * The goal is to support as many MS and TBF as possible. On low usage, the
+ * goal is to provide the highest possible bandwidth per MS.
+ *
+ */
+int alloc_algorithm_dynamic(struct gprs_rlcmac_bts *bts,
+ GprsMs *ms_, struct gprs_rlcmac_tbf *tbf_,
+ uint32_t cust, uint8_t single, int use_trx)
+{
+ int rc;
+
+ rc = alloc_algorithm_b(bts, ms_, tbf_, cust, single, use_trx);
+ if (rc >= 0)
+ return rc;
+
+ rc = alloc_algorithm_a(bts, ms_, tbf_, cust, single, use_trx);
+ return rc;
+}
diff --git a/src/pcu_vty.c b/src/pcu_vty.c
index 4c0730c2..ed708f8d 100644
--- a/src/pcu_vty.c
+++ b/src/pcu_vty.c
@@ -120,6 +120,8 @@ static int config_write_pcu(struct vty *vty)
vty_out(vty, " alloc-algorithm a%s", VTY_NEWLINE);
if (bts->alloc_algorithm == alloc_algorithm_b)
vty_out(vty, " alloc-algorithm b%s", VTY_NEWLINE);
+ if (bts->alloc_algorithm == alloc_algorithm_dynamic)
+ vty_out(vty, " alloc-algorithm dynamic%s", VTY_NEWLINE);
if (bts->force_two_phase)
vty_out(vty, " two-phase-access%s", VTY_NEWLINE);
vty_out(vty, " alpha %d%s", bts->alpha, VTY_NEWLINE);
@@ -447,10 +449,12 @@ DEFUN(cfg_pcu_no_queue_idle_ack_delay,
DEFUN(cfg_pcu_alloc,
cfg_pcu_alloc_cmd,
- "alloc-algorithm (a|b)",
+ "alloc-algorithm (a|b|dynamic)",
"Select slot allocation algorithm to use when assigning timeslots on "
- "PACCH\nSingle slot is assigned only\nMultiple slots are assigned for "
- "semi-duplex operation")
+ "PACCH\n"
+ "Single slot is assigned only\n"
+ "Multiple slots are assigned for semi-duplex operation\n"
+ "Dynamically select the algorithm based on the system state\n")
{
struct gprs_rlcmac_bts *bts = bts_main_data();
@@ -461,6 +465,9 @@ DEFUN(cfg_pcu_alloc,
case 'b':
bts->alloc_algorithm = alloc_algorithm_b;
break;
+ default:
+ bts->alloc_algorithm = alloc_algorithm_dynamic;
+ break;
}
return CMD_SUCCESS;
diff --git a/tests/alloc/AllocTest.cpp b/tests/alloc/AllocTest.cpp
index 19ca7184..ec75078b 100644
--- a/tests/alloc/AllocTest.cpp
+++ b/tests/alloc/AllocTest.cpp
@@ -707,37 +707,50 @@ static void test_successive_allocation()
32, "algorithm B class 1-12 (UL and DL)");
test_successive_allocation(alloc_algorithm_b, 1, 29, TEST_MODE_UL_AND_DL,
32, "algorithm B class 1-29 (UL and DL)");
+ test_successive_allocation(alloc_algorithm_dynamic, 1, 29, TEST_MODE_UL_AND_DL,
+ 35, "algorithm dynamic class 1-29 (UL and DL)");
test_successive_allocation(alloc_algorithm_a, 1, 1, TEST_MODE_DL_AND_UL,
35, "algorithm A (DL and UL)");
test_successive_allocation(alloc_algorithm_b, 10, 10, TEST_MODE_DL_AND_UL,
32, "algorithm B class 10 (DL and UL)");
+ test_successive_allocation(alloc_algorithm_dynamic, 10, 10, TEST_MODE_DL_AND_UL,
+ 32, "algorithm dynamic class 10 (DL and UL)");
test_successive_allocation(alloc_algorithm_a, 1, 1, TEST_MODE_DL_AFTER_UL,
160, "algorithm A (DL after UL)");
test_successive_allocation(alloc_algorithm_b, 10, 10, TEST_MODE_DL_AFTER_UL,
32, "algorithm B class 10 (DL after UL)");
+ test_successive_allocation(alloc_algorithm_dynamic, 10, 10, TEST_MODE_DL_AFTER_UL,
+ 63, "algorithm dynamic class 10 (DL after UL)");
test_successive_allocation(alloc_algorithm_a, 1, 1, TEST_MODE_UL_AFTER_DL,
35, "algorithm A (UL after DL)");
test_successive_allocation(alloc_algorithm_b, 10, 10, TEST_MODE_UL_AFTER_DL,
32, "algorithm B class 10 (UL after DL)");
+ test_successive_allocation(alloc_algorithm_dynamic, 10, 10, TEST_MODE_UL_AFTER_DL,
+ 35, "algorithm dynamic class 10 (UL after DL)");
test_successive_allocation(alloc_algorithm_a, 1, 1, TEST_MODE_UL_ONLY,
35, "algorithm A (UL only)");
test_successive_allocation(alloc_algorithm_b, 10, 10, TEST_MODE_UL_ONLY,
32, "algorithm B class 10 (UL only)");
+ test_successive_allocation(alloc_algorithm_dynamic, 10, 10, TEST_MODE_UL_ONLY,
+ 35, "algorithm dynamic class 10 (UL only)");
test_successive_allocation(alloc_algorithm_a, 1, 1, TEST_MODE_DL_ONLY,
160, "algorithm A (DL ONLY)");
test_successive_allocation(alloc_algorithm_b, 10, 10, TEST_MODE_DL_ONLY,
32, "algorithm B class 10 (DL ONLY)");
+ test_successive_allocation(alloc_algorithm_dynamic, 10, 10, TEST_MODE_DL_ONLY,
+ 101, "algorithm dynamic class 10 (DL ONLY)");
}
static void test_many_connections()
{
test_many_connections(alloc_algorithm_a, 160, "algorithm A");
test_many_connections(alloc_algorithm_b, 32, "algorithm B");
+ test_many_connections(alloc_algorithm_dynamic, 121, "algorithm dynamic");
}
int main(int argc, char **argv)
diff --git a/tests/alloc/AllocTest.err b/tests/alloc/AllocTest.err
index da574135..8d91559a 100644
--- a/tests/alloc/AllocTest.err
+++ b/tests/alloc/AllocTest.err
@@ -21,12 +21,37 @@ No TFI available.
No TFI available.
No TFI available.
- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to allocate a TS, no USF available
- Failed to allocate a TS, no USF available
No TFI available.
No TFI available.
- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+- Failed to allocate a TFI
+- Failed to allocate a TS, no USF available
+No TFI available.
+No TFI available.
No TFI available.
No TFI available.
No TFI available.
@@ -34,16 +59,139 @@ No TFI available.
No TFI available.
No TFI available.
- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to allocate a TS, no TFI available
- Failed to allocate a TS, no USF available
No TFI available.
No TFI available.
- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to allocate a TS, no USF available
- Failed to allocate a TS, no USF available
No TFI available.
No TFI available.
- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to allocate a TS, no USF available
+No TFI available.
+No TFI available.
No TFI available.
No TFI available.
No TFI available.
@@ -53,6 +201,217 @@ No TFI available.
- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to find a usable TRX (TFI exhausted)
+No TFI available.
+No TFI available.
No TFI available.
No TFI available.
No TFI available.
@@ -460,3 +819,712 @@ No TFI available.
No TFI available.
- Failed to allocate a TFI
Allocated 32 TBFs (previously 32)
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to allocate a TS, no TFI available
+ Allocated 78 TBFs (previously -1)
+No USF available
+- Failed to allocate a TS, no USF available
+ Allocated 24 TBFs (previously 78)
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to allocate a TS, no TFI available
+ Allocated 84 TBFs (previously 78)
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+No TFI available.
+No TFI available.
+- Failed to allocate a TFI
+- Failed to find a usable TRX (TFI exhausted)
+ Allocated 121 TBFs (previously 84)
diff --git a/tests/alloc/AllocTest.ok b/tests/alloc/AllocTest.ok
index 8733e9a5..542c74bd 100644
--- a/tests/alloc/AllocTest.ok
+++ b/tests/alloc/AllocTest.ok
@@ -8761,6 +8761,43 @@ Going to test assignment with many TBF, algorithm B class 1-29 (UL and DL)
TBF[30] class 2 reserves ......DC
TBF[31] class 3 reserves ....DC..
Successfully allocated 32 UL TBFs
+Going to test assignment with many TBF, algorithm dynamic class 1-29 (UL and DL)
+ TBF[0] class 1 reserves ...C....
+ TBF[1] class 2 reserves ....DC..
+ TBF[2] class 3 reserves ......DC
+ TBF[3] class 4 reserves ...DCD..
+ TBF[4] class 5 reserves ......CD
+ TBF[5] class 6 reserves ...CD...
+ TBF[6] class 7 reserves .....CD.
+ TBF[7] class 8 reserves ....DDCD
+ TBF[8] class 9 reserves ...DCD..
+ TBF[9] class 10 reserves .....DDC
+ TBF[10] class 11 reserves ...DCD..
+ TBF[11] class 12 reserves .....DCD
+ TBF[12] class 13 reserves ...CDD..
+ TBF[13] class 14 reserves ....DCDD
+ TBF[14] class 15 reserves ...DDDDC
+ TBF[15] class 16 reserves ...CDDDD
+ TBF[16] class 17 reserves ...DCDDD
+ TBF[17] class 18 reserves ...DDCDD
+ TBF[18] class 19 reserves .....DCD
+ TBF[19] class 20 reserves ...DCD..
+ TBF[20] class 21 reserves .....DDC
+ TBF[21] class 22 reserves ...DDC..
+ TBF[22] class 23 reserves .....DCD
+ TBF[23] class 24 reserves ...DCD..
+ TBF[24] class 25 reserves .....DDC
+ TBF[25] class 26 reserves ...DDC..
+ TBF[26] class 27 reserves .....DCD
+ TBF[27] class 28 reserves ...DCD..
+ TBF[28] class 29 reserves .....DDC
+ TBF[29] class 1 reserves ...C....
+ TBF[30] class 2 reserves ......DC
+ TBF[31] class 3 reserves ....DC..
+ TBF[1] class 4 reserves ...C....
+ TBF[2] class 5 reserves ...C....
+ TBF[0] class 6 reserves ......C.
+ Successfully allocated 35 UL TBFs
Going to test assignment with many TBF, algorithm A (DL and UL)
TBF[0] class 1 reserves ...C....
TBF[0] class 1 reserves ....C...
@@ -8832,6 +8869,40 @@ Going to test assignment with many TBF, algorithm B class 10 (DL and UL)
TBF[30] class 10 reserves .....DDC
TBF[31] class 10 reserves ...CD...
Successfully allocated 32 UL TBFs
+Going to test assignment with many TBF, algorithm dynamic class 10 (DL and UL)
+ TBF[0] class 10 reserves ...DDCD.
+ TBF[1] class 10 reserves .....DCD
+ TBF[2] class 10 reserves ...DCD..
+ TBF[3] class 10 reserves .....DCD
+ TBF[4] class 10 reserves ...DCD..
+ TBF[5] class 10 reserves .....DCD
+ TBF[6] class 10 reserves ...DCD..
+ TBF[7] class 10 reserves .....DCD
+ TBF[8] class 10 reserves ...DCD..
+ TBF[9] class 10 reserves .....DCD
+ TBF[10] class 10 reserves ...DCD..
+ TBF[11] class 10 reserves .....DCD
+ TBF[12] class 10 reserves ...DCD..
+ TBF[13] class 10 reserves .....DCD
+ TBF[14] class 10 reserves ...DCD..
+ TBF[15] class 10 reserves ...DDCD.
+ TBF[16] class 10 reserves ...DDCD.
+ TBF[17] class 10 reserves ...DDCD.
+ TBF[18] class 10 reserves ...DDCD.
+ TBF[19] class 10 reserves ...DDCD.
+ TBF[20] class 10 reserves ...DDCD.
+ TBF[21] class 10 reserves .....DDC
+ TBF[22] class 10 reserves .....DDC
+ TBF[23] class 10 reserves .....DDC
+ TBF[24] class 10 reserves .....DDC
+ TBF[25] class 10 reserves .....DDC
+ TBF[26] class 10 reserves ...CD...
+ TBF[27] class 10 reserves .....DDC
+ TBF[28] class 10 reserves ...CD...
+ TBF[29] class 10 reserves ...CD...
+ TBF[30] class 10 reserves .....DDC
+ TBF[31] class 10 reserves ...CD...
+ Successfully allocated 32 UL TBFs
Going to test assignment with many TBF, algorithm A (DL after UL)
TBF[0] class 1 reserves ...C....
TBF[0] class 1 reserves ....C...
@@ -9028,6 +9099,71 @@ Going to test assignment with many TBF, algorithm B class 10 (DL after UL)
TBF[30] class 10 reserves ...DCD..
TBF[31] class 10 reserves .....DCD
Successfully allocated 32 UL TBFs
+Going to test assignment with many TBF, algorithm dynamic class 10 (DL after UL)
+ TBF[0] class 10 reserves ...DDCD.
+ TBF[1] class 10 reserves .....DCD
+ TBF[2] class 10 reserves ...DCD..
+ TBF[3] class 10 reserves .....DCD
+ TBF[4] class 10 reserves ...DCD..
+ TBF[5] class 10 reserves .....DCD
+ TBF[6] class 10 reserves ...DCD..
+ TBF[7] class 10 reserves .....DCD
+ TBF[8] class 10 reserves ...DCD..
+ TBF[9] class 10 reserves .....DCD
+ TBF[10] class 10 reserves ...DCD..
+ TBF[11] class 10 reserves .....DCD
+ TBF[12] class 10 reserves ...DCD..
+ TBF[13] class 10 reserves .....DCD
+ TBF[14] class 10 reserves ...DCD..
+ TBF[15] class 10 reserves .....DCD
+ TBF[16] class 10 reserves ...DCD..
+ TBF[17] class 10 reserves .....DCD
+ TBF[18] class 10 reserves ...DCD..
+ TBF[19] class 10 reserves .....DCD
+ TBF[20] class 10 reserves ...DCD..
+ TBF[21] class 10 reserves .....DCD
+ TBF[22] class 10 reserves ...DCD..
+ TBF[23] class 10 reserves .....DCD
+ TBF[24] class 10 reserves ...DCD..
+ TBF[25] class 10 reserves .....DCD
+ TBF[26] class 10 reserves ...DCD..
+ TBF[27] class 10 reserves .....DCD
+ TBF[28] class 10 reserves ...DCD..
+ TBF[29] class 10 reserves .....DCD
+ TBF[30] class 10 reserves ...DCD..
+ TBF[31] class 10 reserves .....DCD
+ TBF[1] class 10 reserves ...C....
+ TBF[1] class 10 reserves ....C...
+ TBF[2] class 10 reserves ......C.
+ TBF[3] class 10 reserves ....C...
+ TBF[4] class 10 reserves ......C.
+ TBF[5] class 10 reserves ....C...
+ TBF[6] class 10 reserves ......C.
+ TBF[7] class 10 reserves ....C...
+ TBF[8] class 10 reserves ......C.
+ TBF[9] class 10 reserves ....C...
+ TBF[10] class 10 reserves ......C.
+ TBF[11] class 10 reserves ....C...
+ TBF[12] class 10 reserves ......C.
+ TBF[13] class 10 reserves ....C...
+ TBF[14] class 10 reserves ......C.
+ TBF[15] class 10 reserves ....C...
+ TBF[16] class 10 reserves ......C.
+ TBF[17] class 10 reserves ....C...
+ TBF[18] class 10 reserves ......C.
+ TBF[19] class 10 reserves ....C...
+ TBF[20] class 10 reserves ......C.
+ TBF[21] class 10 reserves ....C...
+ TBF[22] class 10 reserves ......C.
+ TBF[23] class 10 reserves ....C...
+ TBF[24] class 10 reserves ......C.
+ TBF[25] class 10 reserves ....C...
+ TBF[26] class 10 reserves ......C.
+ TBF[27] class 10 reserves ....C...
+ TBF[28] class 10 reserves ......C.
+ TBF[29] class 10 reserves ....C...
+ TBF[30] class 10 reserves ......C.
+ Successfully allocated 63 UL TBFs
Going to test assignment with many TBF, algorithm A (UL after DL)
TBF[0] class 1 reserves ...U....
TBF[0] class 1 reserves ....U...
@@ -9099,6 +9235,43 @@ Going to test assignment with many TBF, algorithm B class 10 (UL after DL)
TBF[30] class 10 reserves .......U
TBF[31] class 10 reserves ...U....
Successfully allocated 32 UL TBFs
+Going to test assignment with many TBF, algorithm dynamic class 10 (UL after DL)
+ TBF[0] class 10 reserves .....U..
+ TBF[1] class 10 reserves ......U.
+ TBF[2] class 10 reserves ....U...
+ TBF[3] class 10 reserves ......U.
+ TBF[4] class 10 reserves ....U...
+ TBF[5] class 10 reserves ......U.
+ TBF[6] class 10 reserves ....U...
+ TBF[7] class 10 reserves ......U.
+ TBF[8] class 10 reserves ....U...
+ TBF[9] class 10 reserves ......U.
+ TBF[10] class 10 reserves ....U...
+ TBF[11] class 10 reserves ......U.
+ TBF[12] class 10 reserves ....U...
+ TBF[13] class 10 reserves ......U.
+ TBF[14] class 10 reserves ....U...
+ TBF[15] class 10 reserves .....U..
+ TBF[16] class 10 reserves .....U..
+ TBF[17] class 10 reserves .....U..
+ TBF[18] class 10 reserves .....U..
+ TBF[19] class 10 reserves .....U..
+ TBF[20] class 10 reserves .....U..
+ TBF[21] class 10 reserves .......U
+ TBF[22] class 10 reserves .......U
+ TBF[23] class 10 reserves .......U
+ TBF[24] class 10 reserves .......U
+ TBF[25] class 10 reserves .......U
+ TBF[26] class 10 reserves ...U....
+ TBF[27] class 10 reserves .......U
+ TBF[28] class 10 reserves ...U....
+ TBF[29] class 10 reserves ...U....
+ TBF[30] class 10 reserves .......U
+ TBF[31] class 10 reserves ...U....
+ TBF[0] class 10 reserves ...U....
+ TBF[1] class 10 reserves ...U....
+ TBF[2] class 10 reserves ...U....
+ Successfully allocated 35 UL TBFs
Going to test assignment with many TBF, algorithm A (UL only)
TBF[0] class 1 reserves ...U....
TBF[0] class 1 reserves ....U...
@@ -9170,6 +9343,43 @@ Going to test assignment with many TBF, algorithm B class 10 (UL only)
TBF[30] class 10 reserves ...U....
TBF[31] class 10 reserves ...U....
Successfully allocated 32 UL TBFs
+Going to test assignment with many TBF, algorithm dynamic class 10 (UL only)
+ TBF[0] class 10 reserves .....U..
+ TBF[1] class 10 reserves ......U.
+ TBF[2] class 10 reserves ....U...
+ TBF[3] class 10 reserves .......U
+ TBF[4] class 10 reserves ....U...
+ TBF[5] class 10 reserves ......U.
+ TBF[6] class 10 reserves .....U..
+ TBF[7] class 10 reserves .......U
+ TBF[8] class 10 reserves ....U...
+ TBF[9] class 10 reserves ......U.
+ TBF[10] class 10 reserves .....U..
+ TBF[11] class 10 reserves .......U
+ TBF[12] class 10 reserves ....U...
+ TBF[13] class 10 reserves ......U.
+ TBF[14] class 10 reserves .....U..
+ TBF[15] class 10 reserves .......U
+ TBF[16] class 10 reserves ....U...
+ TBF[17] class 10 reserves ......U.
+ TBF[18] class 10 reserves .....U..
+ TBF[19] class 10 reserves .......U
+ TBF[20] class 10 reserves ....U...
+ TBF[21] class 10 reserves ......U.
+ TBF[22] class 10 reserves .....U..
+ TBF[23] class 10 reserves .......U
+ TBF[24] class 10 reserves ....U...
+ TBF[25] class 10 reserves ......U.
+ TBF[26] class 10 reserves .....U..
+ TBF[27] class 10 reserves ...U....
+ TBF[28] class 10 reserves .......U
+ TBF[29] class 10 reserves ...U....
+ TBF[30] class 10 reserves ...U....
+ TBF[31] class 10 reserves ...U....
+ TBF[0] class 10 reserves ...U....
+ TBF[1] class 10 reserves ...U....
+ TBF[2] class 10 reserves ...U....
+ Successfully allocated 35 UL TBFs
Going to test assignment with many TBF, algorithm A (DL ONLY)
TBF[0] class 1 reserves ...C....
TBF[0] class 1 reserves ....C...
@@ -9366,6 +9576,109 @@ Going to test assignment with many TBF, algorithm B class 10 (DL ONLY)
TBF[30] class 10 reserves ...CD...
TBF[31] class 10 reserves ...CD...
Successfully allocated 32 UL TBFs
+Going to test assignment with many TBF, algorithm dynamic class 10 (DL ONLY)
+ TBF[0] class 10 reserves ...DDCD.
+ TBF[1] class 10 reserves .....DCD
+ TBF[2] class 10 reserves ...DCD..
+ TBF[3] class 10 reserves .....DCD
+ TBF[4] class 10 reserves ...DCD..
+ TBF[5] class 10 reserves .....DCD
+ TBF[6] class 10 reserves ...DCD..
+ TBF[7] class 10 reserves .....DCD
+ TBF[8] class 10 reserves ...DCD..
+ TBF[9] class 10 reserves .....DCD
+ TBF[10] class 10 reserves ...DCD..
+ TBF[11] class 10 reserves .....DCD
+ TBF[12] class 10 reserves ...DCD..
+ TBF[13] class 10 reserves .....DCD
+ TBF[14] class 10 reserves ...DCD..
+ TBF[15] class 10 reserves .....DCD
+ TBF[16] class 10 reserves ...DCD..
+ TBF[17] class 10 reserves .....DCD
+ TBF[18] class 10 reserves ...DCD..
+ TBF[19] class 10 reserves .....DCD
+ TBF[20] class 10 reserves ...DCD..
+ TBF[21] class 10 reserves .....DCD
+ TBF[22] class 10 reserves ...CD...
+ TBF[23] class 10 reserves .....DCD
+ TBF[24] class 10 reserves ...CD...
+ TBF[25] class 10 reserves ...CD...
+ TBF[26] class 10 reserves .....DCD
+ TBF[27] class 10 reserves ...CD...
+ TBF[28] class 10 reserves ....DCD.
+ TBF[29] class 10 reserves .....DCD
+ TBF[30] class 10 reserves ...CD...
+ TBF[31] class 10 reserves ...CD...
+ TBF[1] class 10 reserves ...C....
+ TBF[3] class 10 reserves ...C....
+ TBF[5] class 10 reserves ...C....
+ TBF[0] class 10 reserves .......C
+ TBF[7] class 10 reserves ...C....
+ TBF[2] class 10 reserves .......C
+ TBF[9] class 10 reserves ...C....
+ TBF[2] class 10 reserves ......C.
+ TBF[4] class 10 reserves .......C
+ TBF[11] class 10 reserves ...C....
+ TBF[4] class 10 reserves ......C.
+ TBF[1] class 10 reserves ....C...
+ TBF[6] class 10 reserves .......C
+ TBF[13] class 10 reserves ...C....
+ TBF[6] class 10 reserves ......C.
+ TBF[3] class 10 reserves ....C...
+ TBF[8] class 10 reserves .......C
+ TBF[15] class 10 reserves ...C....
+ TBF[8] class 10 reserves ......C.
+ TBF[5] class 10 reserves ....C...
+ TBF[22] class 10 reserves .....C..
+ TBF[10] class 10 reserves .......C
+ TBF[17] class 10 reserves ...C....
+ TBF[10] class 10 reserves ......C.
+ TBF[7] class 10 reserves ....C...
+ TBF[24] class 10 reserves .....C..
+ TBF[12] class 10 reserves .......C
+ TBF[19] class 10 reserves ...C....
+ TBF[12] class 10 reserves ......C.
+ TBF[9] class 10 reserves ....C...
+ TBF[25] class 10 reserves .....C..
+ TBF[14] class 10 reserves .......C
+ TBF[21] class 10 reserves ...C....
+ TBF[14] class 10 reserves ......C.
+ TBF[11] class 10 reserves ....C...
+ TBF[27] class 10 reserves .....C..
+ TBF[16] class 10 reserves .......C
+ TBF[23] class 10 reserves ...C....
+ TBF[16] class 10 reserves ......C.
+ TBF[13] class 10 reserves ....C...
+ TBF[30] class 10 reserves .....C..
+ TBF[18] class 10 reserves .......C
+ TBF[26] class 10 reserves ...C....
+ TBF[18] class 10 reserves ......C.
+ TBF[15] class 10 reserves ....C...
+ TBF[31] class 10 reserves .....C..
+ TBF[20] class 10 reserves .......C
+ TBF[28] class 10 reserves ...C....
+ TBF[20] class 10 reserves ......C.
+ TBF[17] class 10 reserves ....C...
+ TBF[22] class 10 reserves .......C
+ TBF[29] class 10 reserves ...C....
+ TBF[22] class 10 reserves ......C.
+ TBF[19] class 10 reserves ....C...
+ TBF[24] class 10 reserves .......C
+ TBF[24] class 10 reserves ......C.
+ TBF[21] class 10 reserves ....C...
+ TBF[25] class 10 reserves .......C
+ TBF[25] class 10 reserves ......C.
+ TBF[23] class 10 reserves ....C...
+ TBF[27] class 10 reserves .......C
+ TBF[27] class 10 reserves ......C.
+ TBF[26] class 10 reserves ....C...
+ TBF[28] class 10 reserves .......C
+ TBF[30] class 10 reserves ......C.
+ TBF[29] class 10 reserves ....C...
+ TBF[30] class 10 reserves .......C
+ TBF[31] class 10 reserves ......C.
+ TBF[31] class 10 reserves .......C
+ Successfully allocated 101 UL TBFs
Going to test assignment with many connections, algorithm A
TBF[0] class 1 reserves ...C....
TBF[0] class 2 reserves ....C...
@@ -10005,3 +10318,312 @@ Going to test assignment with many connections, algorithm B
TBF[30] class 2 reserves ......DC
TBF[31] class 3 reserves ......DC
Successfully allocated 32 TBFs
+Going to test assignment with many connections, algorithm dynamic
+ TBF[0] class 1 reserves ...C....
+ TBF[1] class 2 reserves ....DC..
+ TBF[2] class 3 reserves ......DC
+ TBF[3] class 4 reserves ...DCD..
+ TBF[4] class 5 reserves ......CD
+ TBF[5] class 6 reserves ...CD...
+ TBF[6] class 7 reserves .....CD.
+ TBF[7] class 8 reserves ....DDCD
+ TBF[8] class 9 reserves ...DCD..
+ TBF[9] class 10 reserves .....DCD
+ TBF[10] class 11 reserves ...DCD..
+ TBF[11] class 12 reserves .....DCD
+ TBF[12] class 13 reserves ...CDD..
+ TBF[13] class 14 reserves ....CDDD
+ TBF[14] class 15 reserves ...CDDDD
+ TBF[15] class 16 reserves ...CDDDD
+ TBF[16] class 17 reserves ...CDDDD
+ TBF[17] class 18 reserves ...CDDDD
+ TBF[18] class 19 reserves .....DCD
+ TBF[19] class 20 reserves ...DCD..
+ TBF[20] class 21 reserves .....DCD
+ TBF[21] class 22 reserves ...DCD..
+ TBF[22] class 23 reserves .....DCD
+ TBF[23] class 24 reserves ...DCD..
+ TBF[24] class 25 reserves .....DCD
+ TBF[25] class 26 reserves ...DCD..
+ TBF[26] class 27 reserves .....DCD
+ TBF[27] class 28 reserves ...DCD..
+ TBF[28] class 29 reserves .....DCD
+ TBF[29] class 1 reserves .......C
+ TBF[30] class 2 reserves ......DC
+ TBF[31] class 3 reserves ......DC
+ TBF[0] class 4 reserves .....C..
+ TBF[1] class 5 reserves ...C....
+ TBF[2] class 6 reserves ...C....
+ TBF[4] class 7 reserves ...C....
+ TBF[2] class 8 reserves .....C..
+ TBF[0] class 9 reserves ....C...
+ TBF[2] class 10 reserves ....C...
+ TBF[4] class 11 reserves ....C...
+ TBF[0] class 12 reserves ......C.
+ TBF[4] class 13 reserves .....C..
+ TBF[6] class 14 reserves ....C...
+ TBF[6] class 15 reserves ...C....
+ TBF[7] class 16 reserves ...C....
+ TBF[9] class 17 reserves ...C....
+ TBF[11] class 18 reserves ...C....
+ TBF[1] class 19 reserves ......C.
+ TBF[3] class 20 reserves ......C.
+ TBF[5] class 21 reserves ......C.
+ TBF[8] class 22 reserves ......C.
+ TBF[9] class 23 reserves ....C...
+ TBF[10] class 24 reserves ......C.
+ TBF[11] class 25 reserves ....C...
+ TBF[12] class 26 reserves ......C.
+ TBF[18] class 27 reserves ....C...
+ TBF[19] class 28 reserves ......C.
+ TBF[20] class 29 reserves ....C...
+ TBF[0] class 1 reserves .......C
+ TBF[1] class 2 reserves .......C
+ TBF[3] class 3 reserves .......C
+ TBF[5] class 4 reserves .....C..
+ TBF[21] class 5 reserves ......C.
+ TBF[23] class 6 reserves ......C.
+ TBF[22] class 7 reserves ....C...
+ TBF[29] class 8 reserves .....C..
+ TBF[24] class 9 reserves ....C...
+ TBF[26] class 10 reserves ....C...
+ TBF[28] class 11 reserves ....C...
+ TBF[25] class 12 reserves ......C.
+ TBF[30] class 13 reserves .....C..
+ TBF[29] class 14 reserves ....C...
+ TBF[13] class 15 reserves ...C....
+ TBF[18] class 16 reserves ...C....
+ TBF[20] class 17 reserves ...C....
+ TBF[22] class 18 reserves ...C....
+ TBF[27] class 19 reserves ......C.
+ TBF[29] class 20 reserves ......C.
+ TBF[0] class 1 reserves ...C....
+ TBF[1] class 2 reserves ....DC..
+ TBF[2] class 3 reserves ......DC
+ TBF[3] class 4 reserves ...DCD..
+ TBF[4] class 5 reserves ......CD
+ TBF[5] class 6 reserves ...CD...
+ TBF[6] class 7 reserves .....CD.
+ TBF[7] class 8 reserves ....DDCD
+ TBF[8] class 9 reserves ...DCD..
+ TBF[9] class 10 reserves .....DCD
+ TBF[10] class 11 reserves ...DCD..
+ TBF[11] class 12 reserves .....DCD
+ TBF[12] class 13 reserves ...CDD..
+ TBF[13] class 14 reserves ....CDDD
+ TBF[14] class 15 reserves ...CDDDD
+ TBF[15] class 16 reserves ...CDDDD
+ TBF[16] class 17 reserves ...CDDDD
+ TBF[17] class 18 reserves ...CDDDD
+ TBF[18] class 19 reserves .....DCD
+ TBF[19] class 20 reserves ...DCD..
+ TBF[20] class 21 reserves .....DCD
+ TBF[21] class 22 reserves ...DCD..
+ TBF[22] class 23 reserves .....DCD
+ TBF[23] class 24 reserves ...DCD..
+ TBF[0] class 1 reserves ...C....
+ TBF[1] class 2 reserves .....C..
+ TBF[2] class 3 reserves .......C
+ TBF[1] class 4 reserves ....C...
+ TBF[2] class 5 reserves ......C.
+ TBF[3] class 6 reserves ...C....
+ TBF[3] class 7 reserves .....C..
+ TBF[4] class 8 reserves ......C.
+ TBF[3] class 9 reserves ....C...
+ TBF[6] class 10 reserves ......C.
+ TBF[5] class 11 reserves ....C...
+ TBF[7] class 12 reserves ......C.
+ TBF[5] class 13 reserves ...C....
+ TBF[7] class 14 reserves ....C...
+ TBF[14] class 15 reserves ...CDDDD
+ TBF[15] class 16 reserves ...CDDDD
+ TBF[16] class 17 reserves ...CDDDD
+ TBF[17] class 18 reserves ...CDDDD
+ TBF[9] class 19 reserves ......C.
+ TBF[8] class 20 reserves ....C...
+ TBF[11] class 21 reserves ......C.
+ TBF[10] class 22 reserves ....C...
+ TBF[13] class 23 reserves ......C.
+ TBF[12] class 24 reserves ....C...
+ TBF[18] class 25 reserves ......C.
+ TBF[13] class 26 reserves ....C...
+ TBF[20] class 27 reserves ......C.
+ TBF[19] class 28 reserves ....C...
+ TBF[22] class 29 reserves ......C.
+ TBF[4] class 1 reserves .......C
+ TBF[5] class 2 reserves .......C
+ TBF[31] class 3 reserves ......DC
+ TBF[0] class 4 reserves .....C..
+ TBF[1] class 5 reserves ...C....
+ TBF[2] class 6 reserves ...C....
+ TBF[4] class 7 reserves ...C....
+ TBF[2] class 8 reserves .....C..
+ TBF[0] class 9 reserves ....C...
+ TBF[2] class 10 reserves ....C...
+ TBF[4] class 11 reserves ....C...
+ TBF[0] class 12 reserves ......C.
+ TBF[4] class 13 reserves .....C..
+ TBF[6] class 14 reserves ....C...
+ TBF[6] class 15 reserves ...C....
+ TBF[7] class 16 reserves ...C....
+ TBF[8] class 17 reserves ...C....
+ TBF[9] class 18 reserves ...C....
+ TBF[1] class 19 reserves ......C.
+ TBF[3] class 20 reserves ......C.
+ TBF[5] class 21 reserves ......C.
+ TBF[8] class 22 reserves ......C.
+ TBF[9] class 23 reserves ....C...
+ TBF[10] class 24 reserves ......C.
+ TBF[11] class 25 reserves ....C...
+ TBF[12] class 26 reserves ......C.
+ TBF[18] class 27 reserves ....C...
+ TBF[19] class 28 reserves ......C.
+ TBF[20] class 29 reserves ....C...
+ TBF[0] class 1 reserves .......C
+ TBF[1] class 2 reserves .......C
+ TBF[3] class 3 reserves .......C
+ TBF[5] class 4 reserves .....C..
+ TBF[21] class 5 reserves ......C.
+ TBF[23] class 6 reserves ......C.
+ TBF[21] class 7 reserves ....C...
+ TBF[6] class 8 reserves .....C..
+ TBF[24] class 9 reserves ....C...
+ TBF[26] class 10 reserves ....C...
+ TBF[28] class 11 reserves ....C...
+ TBF[25] class 12 reserves ......C.
+ TBF[30] class 13 reserves .....C..
+ TBF[22] class 14 reserves ....C...
+ TBF[10] class 15 reserves ...C....
+ TBF[11] class 16 reserves ...C....
+ TBF[12] class 17 reserves ...C....
+ TBF[13] class 18 reserves ...C....
+ TBF[27] class 19 reserves ......C.
+ TBF[29] class 20 reserves ......C.
+ TBF[24] class 21 reserves ......C.
+ TBF[26] class 22 reserves ......C.
+ TBF[28] class 23 reserves ......C.
+ TBF[23] class 24 reserves ....C...
+ TBF[30] class 25 reserves ......C.
+ TBF[25] class 26 reserves ....C...
+ TBF[6] class 1 reserves .......C
+ TBF[1] class 2 reserves .....C..
+ TBF[2] class 3 reserves .......C
+ TBF[7] class 4 reserves .....C..
+ TBF[7] class 5 reserves .......C
+ TBF[8] class 6 reserves .....C..
+ TBF[3] class 7 reserves .....C..
+ TBF[8] class 8 reserves .......C
+ TBF[9] class 9 reserves .....C..
+ TBF[9] class 10 reserves .......C
+ TBF[10] class 11 reserves .....C..
+ TBF[10] class 12 reserves .......C
+ TBF[11] class 13 reserves .....C..
+ TBF[11] class 14 reserves .......C
+ TBF[14] class 15 reserves ...CDDDD
+ TBF[15] class 16 reserves ...CDDDD
+ TBF[16] class 17 reserves ...CDDDD
+ TBF[17] class 18 reserves ...CDDDD
+ TBF[0] class 19 reserves ...C....
+ TBF[3] class 20 reserves ...C....
+ TBF[5] class 21 reserves ...C....
+ TBF[12] class 22 reserves .....C..
+ TBF[12] class 23 reserves .......C
+ TBF[18] class 24 reserves ...C....
+ TBF[13] class 25 reserves .....C..
+ TBF[13] class 26 reserves .......C
+ TBF[19] class 27 reserves ...C....
+ TBF[1] class 28 reserves ....C...
+ TBF[18] class 29 reserves .....C..
+ TBF[4] class 1 reserves .......C
+ TBF[5] class 2 reserves .......C
+ TBF[31] class 3 reserves ......DC
+ TBF[0] class 4 reserves .....C..
+ TBF[1] class 5 reserves ...C....
+ TBF[2] class 6 reserves ...C....
+ TBF[4] class 7 reserves ...C....
+ TBF[2] class 8 reserves .....C..
+ TBF[0] class 9 reserves ....C...
+ TBF[2] class 10 reserves ....C...
+ TBF[3] class 11 reserves ....C...
+ TBF[18] class 12 reserves .......C
+ TBF[4] class 13 reserves .....C..
+ TBF[4] class 14 reserves ....C...
+ TBF[6] class 15 reserves ...C....
+ TBF[7] class 16 reserves ...C....
+ TBF[8] class 17 reserves ...C....
+ TBF[9] class 18 reserves ...C....
+ TBF[0] class 19 reserves ......C.
+ TBF[1] class 20 reserves ......C.
+ TBF[2] class 21 reserves ......C.
+ TBF[3] class 22 reserves ......C.
+ TBF[5] class 23 reserves ....C...
+ TBF[4] class 24 reserves ......C.
+ TBF[6] class 25 reserves ....C...
+ TBF[5] class 26 reserves ......C.
+ TBF[7] class 27 reserves ....C...
+ TBF[6] class 28 reserves ......C.
+ TBF[20] class 29 reserves ...DCD..
+ TBF[0] class 1 reserves .......C
+ TBF[1] class 2 reserves .......C
+ TBF[3] class 3 reserves .......C
+ TBF[8] class 4 reserves ....C...
+ TBF[7] class 5 reserves ......C.
+ TBF[8] class 6 reserves ......C.
+ TBF[21] class 7 reserves ....CD..
+ TBF[5] class 8 reserves .....C..
+ TBF[9] class 9 reserves ....C...
+ TBF[10] class 10 reserves ....C...
+ TBF[11] class 11 reserves ....C...
+ TBF[9] class 12 reserves ......C.
+ TBF[6] class 13 reserves .....C..
+ TBF[22] class 14 reserves ....CDDD
+ TBF[10] class 15 reserves ...C....
+ TBF[11] class 16 reserves ...C....
+ TBF[12] class 17 reserves ...C....
+ TBF[13] class 18 reserves ...C....
+ TBF[27] class 19 reserves ....DDCD
+ TBF[29] class 20 reserves .....DCD
+ TBF[24] class 21 reserves ....DCD.
+ TBF[26] class 22 reserves .....DCD
+ TBF[28] class 23 reserves ....DCD.
+ TBF[23] class 24 reserves ...DCD..
+ TBF[30] class 25 reserves .....DCD
+ TBF[25] class 26 reserves ...CD...
+ TBF[10] class 27 reserves ......C.
+ TBF[21] class 28 reserves ...C....
+ TBF[12] class 29 reserves ....C...
+ TBF[11] class 1 reserves ......C.
+ TBF[22] class 2 reserves ...C....
+ TBF[13] class 3 reserves ....C...
+ TBF[12] class 4 reserves ......C.
+ TBF[24] class 5 reserves ...C....
+ TBF[18] class 6 reserves ....C...
+ TBF[13] class 7 reserves ......C.
+ TBF[19] class 8 reserves .......C
+ TBF[26] class 9 reserves ...C....
+ TBF[19] class 10 reserves ....C...
+ TBF[18] class 11 reserves ......C.
+ TBF[20] class 12 reserves .......C
+ TBF[27] class 13 reserves ...C....
+ TBF[26] class 14 reserves ....C...
+ TBF[19] class 15 reserves ......C.
+ TBF[21] class 16 reserves .......C
+ TBF[28] class 17 reserves ...C....
+ TBF[19] class 18 reserves .....C..
+ TBF[29] class 19 reserves ....C...
+ TBF[20] class 20 reserves ......C.
+ TBF[23] class 21 reserves .......C
+ TBF[29] class 22 reserves ...C....
+ TBF[25] class 23 reserves .....C..
+ TBF[30] class 24 reserves ....C...
+ TBF[21] class 25 reserves ......C.
+ TBF[24] class 26 reserves .......C
+ TBF[30] class 27 reserves ...C....
+ TBF[31] class 28 reserves .....C..
+ TBF[31] class 29 reserves ....C...
+ TBF[23] class 1 reserves ......C.
+ TBF[25] class 2 reserves .......C
+ TBF[31] class 3 reserves ...C....
+ TBF[25] class 4 reserves ......C.
+ TBF[28] class 5 reserves .......C
+ Successfully allocated 121 TBFs