Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
spbro
OpenXG-RAN
Commits
26d0d657
Commit
26d0d657
authored
Feb 25, 2022
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
get execution time_stats_t from Tpool job
parent
211b6fea
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
16 additions
and
13 deletions
+16
-13
common/utils/threadPool/thread-pool.h
common/utils/threadPool/thread-pool.h
+12
-0
common/utils/time_meas.h
common/utils/time_meas.h
+1
-1
executables/nr-gnb.c
executables/nr-gnb.c
+1
-1
openair1/PHY/defs_gNB.h
openair1/PHY/defs_gNB.h
+0
-1
openair1/SCHED_NR/fapi_nr_l1.c
openair1/SCHED_NR/fapi_nr_l1.c
+2
-2
openair1/SCHED_NR/phy_procedures_nr_gNB.c
openair1/SCHED_NR/phy_procedures_nr_gNB.c
+0
-7
openair1/SIMULATION/NR_PHY/dlsim.c
openair1/SIMULATION/NR_PHY/dlsim.c
+0
-1
No files found.
common/utils/threadPool/thread-pool.h
View file @
26d0d657
...
...
@@ -169,6 +169,18 @@ static inline notifiedFIFO_elt_t *pollNotifiedFIFO(notifiedFIFO_t *nf) {
return
ret
;
}
static
inline
time_stats_t
exec_time_stats_NotifiedFIFO
(
const
notifiedFIFO_elt_t
*
elt
)
{
time_stats_t
ts
=
{
0
};
ts
.
in
=
elt
->
startProcessingTime
;
ts
.
diff
=
elt
->
endProcessingTime
-
ts
.
in
;
ts
.
p_time
=
ts
.
diff
;
ts
.
diff_square
=
ts
.
diff
*
ts
.
diff
;
ts
.
max
=
ts
.
diff
;
ts
.
trials
=
1
;
return
ts
;
}
// This function aborts all messages matching the key
// If the queue is used in thread pools, it doesn't cancels already running processing
// because the message has already been picked
...
...
common/utils/time_meas.h
View file @
26d0d657
...
...
@@ -178,7 +178,7 @@ static inline void copy_meas(time_stats_t *dst_ts,time_stats_t *src_ts) {
}
}
static
inline
void
merge_meas
(
time_stats_t
*
dst_ts
,
time_stats_t
*
src_ts
)
static
inline
void
merge_meas
(
time_stats_t
*
dst_ts
,
const
time_stats_t
*
src_ts
)
{
if
(
!
opp_enabled
)
return
;
...
...
executables/nr-gnb.c
View file @
26d0d657
...
...
@@ -423,7 +423,7 @@ void init_gNB_Tpool(int inst) {
s_offset
+=
3
;
}
if
(
getenv
(
"noThreads"
))
strcpy
(
pool
,
"n"
);
initTpool
(
pool
,
gNB
->
threadPool
,
fals
e
);
initTpool
(
pool
,
gNB
->
threadPool
,
tru
e
);
// ULSCH decoder result FIFO
gNB
->
respDecode
=
(
notifiedFIFO_t
*
)
malloc
(
sizeof
(
notifiedFIFO_t
));
initNotifiedFIFO
(
gNB
->
respDecode
);
...
...
openair1/PHY/defs_gNB.h
View file @
26d0d657
...
...
@@ -973,7 +973,6 @@ typedef struct processingData_L1tx {
uint16_t
num_pdsch_slot
;
int
num_dl_pdcch
;
int
num_ul_pdcch
;
time_stats_t
phy_proc_tx
;
}
processingData_L1tx_t
;
#endif
openair1/SCHED_NR/fapi_nr_l1.c
View file @
26d0d657
...
...
@@ -165,8 +165,8 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO){
notifiedFIFO_elt_t
*
res
;
res
=
pullTpool
(
gNB
->
L1_tx_free
,
gNB
->
threadPool
);
processingData_L1tx_t
*
msgTx
=
(
processingData_L1tx_t
*
)
NotifiedFifoData
(
res
);
merge_meas
(
&
gNB
->
phy_proc_tx
,
&
msgTx
->
phy_proc_tx
);
const
time_stats_t
ts
=
exec_time_stats_NotifiedFIFO
(
res
);
merge_meas
(
&
gNB
->
phy_proc_tx
,
&
ts
);
msgTx
->
num_pdsch_slot
=
0
;
msgTx
->
num_dl_pdcch
=
0
;
...
...
openair1/SCHED_NR/phy_procedures_nr_gNB.c
View file @
26d0d657
...
...
@@ -134,11 +134,6 @@ void phy_procedures_gNB_TX(processingData_L1tx_t *msgTx,
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_gNB_TX
+
offset
,
1
);
if
(
do_meas
==
1
)
{
reset_meas
(
&
msgTx
->
phy_proc_tx
);
start_meas
(
&
msgTx
->
phy_proc_tx
);
}
// clear the transmit data array and beam index for the current slot
for
(
aa
=
0
;
aa
<
cfg
->
carrier_config
.
num_tx_ant
.
value
;
aa
++
)
{
memset
(
&
gNB
->
common_vars
.
txdataF
[
aa
][
txdataF_offset
],
0
,
fp
->
samples_per_slot_wCP
*
sizeof
(
int32_t
));
...
...
@@ -196,8 +191,6 @@ void phy_procedures_gNB_TX(processingData_L1tx_t *msgTx,
}
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_gNB_TX
+
offset
,
0
);
if
(
do_meas
==
1
)
stop_meas
(
&
msgTx
->
phy_proc_tx
);
}
void
nr_postDecode
(
PHY_VARS_gNB
*
gNB
,
notifiedFIFO_elt_t
*
req
)
{
...
...
openair1/SIMULATION/NR_PHY/dlsim.c
View file @
26d0d657
...
...
@@ -999,7 +999,6 @@ int main(int argc, char **argv)
msgDataTx
->
slot
=
slot
;
msgDataTx
->
frame
=
frame
;
memset
(
msgDataTx
->
ssb
,
0
,
64
*
sizeof
(
NR_gNB_SSB_t
));
reset_meas
(
&
msgDataTx
->
phy_proc_tx
);
for
(
SNR
=
snr0
;
SNR
<
snr1
;
SNR
+=
.
2
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment