Skip to content

Commit a5a8b68

Browse files
committed
phy: ammend executor mapping
1 parent c329528 commit a5a8b68

File tree

3 files changed

+21
-18
lines changed

3 files changed

+21
-18
lines changed

apps/services/worker_manager/worker_manager.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -454,9 +454,10 @@ void worker_manager::create_du_low_executors(const worker_manager_config::du_low
454454

455455
// Fill the task executors for each cell.
456456
du_low_exec_mapper_config.executors = srs_du::du_low_executor_mapper_flexible_exec_config{
457-
.high_priority_executor = {rt_hi_prio_exec, nof_workers_general_pool},
458-
.medium_priority_executor = {non_rt_medium_prio_exec, nof_workers_general_pool},
459-
.low_priority_executor = {non_rt_low_prio_exec, nof_workers_general_pool},
457+
.rt_hi_prio_exec = {rt_hi_prio_exec, nof_workers_general_pool},
458+
.non_rt_hi_prio_exec = {non_rt_hi_prio_exec, nof_workers_general_pool},
459+
.non_rt_medium_prio_exec = {non_rt_medium_prio_exec, nof_workers_general_pool},
460+
.non_rt_low_prio_exec = {non_rt_low_prio_exec, nof_workers_general_pool},
460461
.max_pucch_concurrency = du_low.max_pucch_concurrency,
461462
.max_pusch_and_srs_concurrency = du_low.max_pusch_and_srs_concurrency,
462463
.max_pdsch_concurrency = du_low.max_pdsch_concurrency};

include/srsran/du/du_low/du_low_executor_mapper.h

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,14 @@ struct du_low_executor_mapper_single_exec_config {
5151
/// concurrency given by each executor is used for creating pools of physical layer instances. These pools ensure that
5252
/// a number of instances are available for processing channels simultaneously.
5353
struct du_low_executor_mapper_flexible_exec_config {
54-
/// High priority executor.
55-
upper_phy_executor high_priority_executor;
56-
/// Medium priority executor.
57-
upper_phy_executor medium_priority_executor;
58-
/// Low priority executor.
59-
upper_phy_executor low_priority_executor;
54+
/// Real-time high priority executor.
55+
upper_phy_executor rt_hi_prio_exec;
56+
/// Non-real-time high priority executor.
57+
upper_phy_executor non_rt_hi_prio_exec;
58+
/// Non-real-time medium priority executor.
59+
upper_phy_executor non_rt_medium_prio_exec;
60+
/// Non-real-time low priority executor.
61+
upper_phy_executor non_rt_low_prio_exec;
6062
/// \brief Maximum PUCCH processing concurrency.
6163
///
6264
/// The Physical Uplink Control Channel (PUCCH) is processed using the high priority executor. This parameter limits

lib/du/du_low/du_low_executor_mapper.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -57,21 +57,21 @@ class du_low_executor_mapper_impl : public du_low_executor_mapper
5757
const auto& flexible = std::get<du_low_executor_mapper_flexible_exec_config>(config.executors);
5858

5959
auto pdsch_executors = create_task_fork_limiter(
60-
flexible.high_priority_executor, flexible.max_pdsch_concurrency, pdsch_queue_sizes, max_pdsch_batch_size);
60+
flexible.rt_hi_prio_exec, flexible.max_pdsch_concurrency, pdsch_queue_sizes, max_pdsch_batch_size);
6161

62-
phy_config.pdcch_executor = flexible.high_priority_executor;
62+
phy_config.pdcch_executor = flexible.rt_hi_prio_exec;
6363
phy_config.pdsch_executor = pdsch_executors[0];
64-
phy_config.ssb_executor = flexible.high_priority_executor;
65-
phy_config.csi_rs_executor = flexible.high_priority_executor;
66-
phy_config.prs_executor = flexible.high_priority_executor;
67-
phy_config.dl_grid_executor = flexible.high_priority_executor;
64+
phy_config.ssb_executor = flexible.rt_hi_prio_exec;
65+
phy_config.csi_rs_executor = flexible.rt_hi_prio_exec;
66+
phy_config.prs_executor = flexible.rt_hi_prio_exec;
67+
phy_config.dl_grid_executor = flexible.non_rt_hi_prio_exec;
6868
phy_config.pdsch_codeblock_executor = pdsch_executors[0];
69-
phy_config.prach_executor = flexible.high_priority_executor;
69+
phy_config.prach_executor = flexible.non_rt_hi_prio_exec;
7070
phy_config.pucch_executor =
7171
create_task_fork_limiter(
72-
flexible.high_priority_executor, flexible.max_pucch_concurrency, pucch_queue_sizes, max_pucch_batch_size)
72+
flexible.non_rt_hi_prio_exec, flexible.max_pucch_concurrency, pucch_queue_sizes, max_pucch_batch_size)
7373
.front();
74-
auto pusch_srs_execs = create_task_fork_limiter(flexible.medium_priority_executor,
74+
auto pusch_srs_execs = create_task_fork_limiter(flexible.non_rt_medium_prio_exec,
7575
flexible.max_pusch_and_srs_concurrency,
7676
pusch_srs_queue_sizes,
7777
max_pusch_batch_size);

0 commit comments

Comments
 (0)