Commit 69ae8c90 authored by wujing's avatar wujing

add core setting on both RRC,S1AP task: RCC core1-4 RRU core5-8

parent 205c19f5
...@@ -191,7 +191,7 @@ void *eNB_app_task(void *args_p) ...@@ -191,7 +191,7 @@ void *eNB_app_task(void *args_p)
int result; int result;
/* for no gcc warnings */ /* for no gcc warnings */
(void)instance; (void)instance;
thread_top_init("eNB_app_task",1,500000,1000000,20000000);
itti_mark_task_ready (TASK_ENB_APP); itti_mark_task_ready (TASK_ENB_APP);
LOG_I(PHY, "%s() Task ready initialise structures\n", __FUNCTION__); LOG_I(PHY, "%s() Task ready initialise structures\n", __FUNCTION__);
......
...@@ -6856,6 +6856,7 @@ rrc_enb_task( ...@@ -6856,6 +6856,7 @@ rrc_enb_task(
) )
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
{ {
thread_top_init("rrc_enb_task",1,500000,1000000,20000000);
rrc_enb_init(); rrc_enb_init();
itti_mark_task_ready(TASK_RRC_ENB); itti_mark_task_ready(TASK_RRC_ENB);
LOG_I(RRC,"Entering main loop of RRC message task\n"); LOG_I(RRC,"Entering main loop of RRC message task\n");
......
...@@ -359,7 +359,7 @@ void *x2ap_task(void *arg) { ...@@ -359,7 +359,7 @@ void *x2ap_task(void *arg) {
X2AP_DEBUG("Starting X2AP layer\n"); X2AP_DEBUG("Starting X2AP layer\n");
x2ap_eNB_prepare_internal_data(); x2ap_eNB_prepare_internal_data();
itti_mark_task_ready(TASK_X2AP); itti_mark_task_ready(TASK_X2AP);
thread_top_init("x2ap_task",1,500000,1000000,20000000);
while (1) { while (1) {
itti_receive_msg(TASK_X2AP, &received_msg); itti_receive_msg(TASK_X2AP, &received_msg);
......
...@@ -1149,7 +1149,7 @@ void *gtpv1u_eNB_process_itti_msg(void *notUsed) { ...@@ -1149,7 +1149,7 @@ void *gtpv1u_eNB_process_itti_msg(void *notUsed) {
void *gtpv1u_eNB_task(void *args) void *gtpv1u_eNB_task(void *args)
{ {
int rc = 0; int rc = 0;
thread_top_init("gtpv1u_eNB_task",1,500000,1000000,20000000);
rc = gtpv1u_eNB_init(); rc = gtpv1u_eNB_init();
AssertFatal(rc == 0, "gtpv1u_eNB_init Failed"); AssertFatal(rc == 0, "gtpv1u_eNB_init Failed");
itti_mark_task_ready(TASK_GTPV1_U); itti_mark_task_ready(TASK_GTPV1_U);
......
...@@ -393,7 +393,7 @@ void *s1ap_eNB_process_itti_msg(void *notUsed) { ...@@ -393,7 +393,7 @@ void *s1ap_eNB_process_itti_msg(void *notUsed) {
void *s1ap_eNB_task(void *arg) { void *s1ap_eNB_task(void *arg) {
s1ap_eNB_init(); s1ap_eNB_init();
thread_top_init("s1ap_eNB_task",1,500000,1000000,20000000);
while (1) { while (1) {
(void) s1ap_eNB_process_itti_msg(NULL); (void) s1ap_eNB_process_itti_msg(NULL);
} }
......
...@@ -1153,7 +1153,7 @@ void *sctp_eNB_process_itti_msg(void *notUsed) ...@@ -1153,7 +1153,7 @@ void *sctp_eNB_process_itti_msg(void *notUsed)
void *sctp_eNB_task(void *arg) void *sctp_eNB_task(void *arg)
{ {
sctp_eNB_init(); sctp_eNB_init();
thread_top_init("sctp_eNB_task",1,500000,1000000,20000000);
while (1) { while (1) {
(void) sctp_eNB_process_itti_msg(NULL); (void) sctp_eNB_process_itti_msg(NULL);
} }
......
...@@ -304,7 +304,7 @@ void *udp_eNB_task(void *args_p) ...@@ -304,7 +304,7 @@ void *udp_eNB_task(void *args_p)
//const char *msg_name = NULL; //const char *msg_name = NULL;
//instance_t instance = 0; //instance_t instance = 0;
udp_enb_init(); udp_enb_init();
thread_top_init("udp_eNB_task",1,500000,1000000,20000000);
itti_mark_task_ready(TASK_UDP); itti_mark_task_ready(TASK_UDP);
MSC_START_USE(); MSC_START_USE();
......
...@@ -946,7 +946,9 @@ void init_eNB_proc(int inst) { ...@@ -946,7 +946,9 @@ void init_eNB_proc(int inst) {
LOG_I(PHY,"eNB->single_thread_flag:%d\n", eNB->single_thread_flag); LOG_I(PHY,"eNB->single_thread_flag:%d\n", eNB->single_thread_flag);
if ((get_thread_parallel_conf() == PARALLEL_RU_L1_SPLIT || get_thread_parallel_conf() == PARALLEL_RU_L1_TRX_SPLIT) && nfapi_mode!=2) { if ((get_thread_parallel_conf() == PARALLEL_RU_L1_SPLIT) && nfapi_mode!=2) {
pthread_create( &L1_proc->pthread, attr0, L1_thread, proc );
} else if ((get_thread_parallel_conf() == PARALLEL_RU_L1_TRX_SPLIT) && nfapi_mode!=2) {
pthread_create( &L1_proc->pthread, attr0, L1_thread, proc ); pthread_create( &L1_proc->pthread, attr0, L1_thread, proc );
pthread_create( &L1_proc_tx->pthread, attr1, L1_thread_tx, proc); pthread_create( &L1_proc_tx->pthread, attr1, L1_thread_tx, proc);
} else if (nfapi_mode == 2) { // this is neccesary in VNF or L2 FAPI simulator. } else if (nfapi_mode == 2) { // this is neccesary in VNF or L2 FAPI simulator.
......
...@@ -307,11 +307,25 @@ void thread_top_init(char *thread_name, ...@@ -307,11 +307,25 @@ void thread_top_init(char *thread_name,
CPU_SET(0,&cpuset); CPU_SET(0,&cpuset);
else { else {
if (nfapi_mode == 2) { if (nfapi_mode == 2) {
for (j = 0; j < 2; j++) if (get_nprocs() >= 8) {
CPU_SET(j, &cpuset); for (j = 1; j < 4; j++) {
CPU_SET(j, &cpuset);
}
} else {
for (j = 0; j < 2; j++) {
CPU_SET(j, &cpuset);
}
}
} else if (nfapi_mode == 1) { } else if (nfapi_mode == 1) {
for (j = 2; j < 4; j++) if (get_nprocs() >= 8) {
CPU_SET(j, &cpuset); for (j = 5; j < 7; j++) {
CPU_SET(j, &cpuset);
}
} else {
for (j = 2; j < 4; j++) {
CPU_SET(j, &cpuset);
}
}
} else { } else {
for (j = 1; j < get_nprocs(); j++) for (j = 1; j < get_nprocs(); j++)
CPU_SET(j, &cpuset); CPU_SET(j, &cpuset);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment