Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework MAC interface #428

Merged
merged 35 commits into from
May 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
b8d3423
Use scheduler's input for number of spatial streams
rdoosty Feb 6, 2024
a28e2e0
Check agora's decode and encode counters against custom mac scheduler…
rdoosty Feb 17, 2024
7b5731a
Fix chsim fail
rdoosty Feb 19, 2024
7fc0c54
random schedules in adapt ue mode
rdoosty Feb 24, 2024
29b3843
Reduce the size of ground-truth iq files with schedule set index
rdoosty Feb 27, 2024
f8b240d
Merge branch 'develop' into custom-user-combo
rdoosty Mar 11, 2024
92decde
Merge branch 'develop' into custom-user-combo
asedlmayr Mar 11, 2024
7c8fb06
Readability
asedlmayr Mar 11, 2024
75d5d70
performance
asedlmayr Mar 11, 2024
b2efade
Send downlink test bits as mac packets from MacThreadBasestation
rdoosty Mar 11, 2024
c2f2b21
working downlink with MAC initiating test data
rdoosty Mar 18, 2024
6336b56
working downlink with UE passing data UE MAC
rdoosty Mar 21, 2024
ae6b11d
working uplink with MAC passing data in UE
rdoosty Mar 22, 2024
cab6b09
working uplink and downlink in MAC initiated phy with scheduled UES
rdoosty Mar 24, 2024
2d29a76
clean mac phy-ue
rdoosty Mar 24, 2024
7abeb6a
pass agora test
rdoosty Mar 24, 2024
d29f50b
modify rx_mac_tag_t
rdoosty Mar 25, 2024
051e115
Merge branch 'develop' into mac-phy-if
rdoosty Mar 25, 2024
fbe4bdc
mac ring buffer
rdoosty Mar 25, 2024
d24a974
added ring buffers for higher mac
rdoosty Mar 27, 2024
80386a1
add video receiver addr and port to Config
rdoosty Mar 28, 2024
e89f731
working uplink MAC
rdoosty Apr 2, 2024
ebc772c
working downlink MAC
rdoosty Apr 2, 2024
0d9ed4f
fix mac bug
rdoosty Apr 3, 2024
e061c40
General cleanup
asedlmayr Apr 19, 2024
5c3781e
Merge branch 'custom-user-combo' into mac-phy-if
asedlmayr Apr 19, 2024
f67ab7f
Merge branch 'develop' into custom-user-combo
asedlmayr Apr 19, 2024
2907e75
Merge branch 'custom-user-combo' into mac-phy-if
asedlmayr Apr 19, 2024
6cf3497
Fix mac ring buffer to take in pointers for push and pop
rdoosty Apr 24, 2024
7905301
still working on the mac sender data flow to mac thread client
asedlmayr May 8, 2024
5d31615
record received mac data file in FileReceiver mode
rdoosty Apr 30, 2024
d981a79
formatter
asedlmayr May 17, 2024
f8d6113
Added missing headers
asedlmayr May 17, 2024
2bce599
Fix for alignment for avx512
asedlmayr May 17, 2024
7911cca
cleanup
asedlmayr May 17, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
12 changes: 6 additions & 6 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -189,14 +189,14 @@ if (${ENABLE_HDF5})
include_directories(${HDF5_INCLUDE_DIRS})
endif()

#Python
find_package(PythonLibs REQUIRED)
set(PYTHON_LIB ${PYTHON_LIBRARIES})
include_directories(${PYTHON_INCLUDE_DIRS})
message(VERBOSE " PythonLibs Includes: ${PYTHON_INCLUDE_DIRS} Libraries: ${PYTHON_LIBRARIES}")

#Soapy (optional based on radio type)
if(RADIO_TYPE STREQUAL SOAPY_IRIS)
#Python
find_package(PythonLibs REQUIRED)
set(PYTHON_LIB ${PYTHON_LIBRARIES})
include_directories(${PYTHON_INCLUDE_DIRS})
message(VERBOSE " PythonLibs Includes: ${PYTHON_INCLUDE_DIRS} Libraries: ${PYTHON_LIBRARIES}")

find_package(SoapySDR "0.8.0" CONFIG)
if(NOT SoapySDR_FOUND)
message(FATAL_ERROR "SoapySDR development files not found")
Expand Down
2 changes: 1 addition & 1 deletion files/config/ci/chsim.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
"beacon_position": 0,
"bs_server_port": 8100,
"bs_rru_port": 8200,
"core_offset": 5,
"core_offset": 6,
"worker_thread_num": 12,
"socket_thread_num": 1,
"ue_core_offset": 1,
Expand Down
10 changes: 5 additions & 5 deletions files/config/examples/mac-sim.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,22 @@
"mcs_index" : 17
},
"dl_mcs": {
"mcs_index" : 17
"mcs_index" : 10
},
"ue_radio_num": 1,
"bs_radio_num": 8,
"freq_orthogonal_pilot": true,
"pilot_num" : 1,
"symbol_num_perframe": 70,
"symbol_num_perframe": 14,
"client_ul_pilot_syms": 2,
"ul_data_symbol_start": 3,
"ul_symbol_num_perframe": 3,
"client_dl_pilot_syms": 2,
"dl_data_symbol_start": 8,
"dl_symbol_num_perframe": 3,
"beacon_position": 0,
"mac_rx_port": 8070,
"mac_tx_port": 8080,
"bs_mac_rx_port": 8070,
"bs_mac_tx_port": 8090,
"core_offset": 16,
"worker_thread_num": 8,
"socket_thread_num": 1,
Expand All @@ -30,5 +30,5 @@
"ue_core_offset": 12,
"ue_worker_thread_num": 1,
"ue_socket_thread_num": 1,
"max_frame": 5
"max_frame": 5000
}
83 changes: 42 additions & 41 deletions format.sh
Original file line number Diff line number Diff line change
@@ -1,58 +1,59 @@
clang-format-11 -i src/agora/txrx/*.cc
clang-format-11 -i src/agora/txrx/*.h
FORMAT_EXE=clang-format-11
$FORMAT_EXE -i src/agora/txrx/*.cc
$FORMAT_EXE -i src/agora/txrx/*.h

clang-format-11 -i src/agora/txrx/workers/*.cc
clang-format-11 -i src/agora/txrx/workers/*.h
$FORMAT_EXE -i src/agora/txrx/workers/*.cc
$FORMAT_EXE -i src/agora/txrx/workers/*.h

clang-format-11 -i src/radio/*.cc
clang-format-11 -i src/radio/*.h
$FORMAT_EXE -i src/radio/*.cc
$FORMAT_EXE -i src/radio/*.h

clang-format-11 -i src/agora/*.cc
clang-format-11 -i src/agora/*.h
$FORMAT_EXE -i src/agora/*.cc
$FORMAT_EXE -i src/agora/*.h

clang-format-11 -i src/recorder/*.cc
clang-format-11 -i src/recorder/*.h
$FORMAT_EXE -i src/recorder/*.cc
$FORMAT_EXE -i src/recorder/*.h

clang-format-11 -i src/client/*.cc
clang-format-11 -i src/client/*.h
$FORMAT_EXE -i src/client/*.cc
$FORMAT_EXE -i src/client/*.h

clang-format-11 -i src/client/txrx/*.cc
clang-format-11 -i src/client/txrx/*.h
$FORMAT_EXE -i src/client/txrx/*.cc
$FORMAT_EXE -i src/client/txrx/*.h

clang-format-11 -i src/client/txrx/workers/*.cc
clang-format-11 -i src/client/txrx/workers/*.h
$FORMAT_EXE -i src/client/txrx/workers/*.cc
$FORMAT_EXE -i src/client/txrx/workers/*.h

clang-format-11 -i src/common/*.cc
clang-format-11 -i src/common/*.h
$FORMAT_EXE -i src/common/*.cc
$FORMAT_EXE -i src/common/*.h

clang-format-11 -i src/common/ipc/*.cc
clang-format-11 -i src/common/ipc/*.h
$FORMAT_EXE -i src/common/ipc/*.cc
$FORMAT_EXE -i src/common/ipc/*.h

clang-format-11 -i src/common/loggers/*.cc
clang-format-11 -i src/common/loggers/*.h
$FORMAT_EXE -i src/common/loggers/*.cc
$FORMAT_EXE -i src/common/loggers/*.h

clang-format-11 -i src/encoder/*.cc
clang-format-11 -i src/encoder/*.h
$FORMAT_EXE -i src/encoder/*.cc
$FORMAT_EXE -i src/encoder/*.h

clang-format-11 -i src/mac/*.cc
clang-format-11 -i src/mac/*.h
$FORMAT_EXE -i src/mac/*.cc
$FORMAT_EXE -i src/mac/*.h

clang-format-11 -i src/mac/schedulers/*.cc
clang-format-11 -i src/mac/schedulers/*.h
$FORMAT_EXE -i src/mac/schedulers/*.cc
$FORMAT_EXE -i src/mac/schedulers/*.h

clang-format-11 -i src/resource_provisioner/*.cc
clang-format-11 -i src/resource_provisioner/*.h
$FORMAT_EXE -i src/resource_provisioner/*.cc
$FORMAT_EXE -i src/resource_provisioner/*.h

clang-format-11 -i simulator/*.cc
clang-format-11 -i simulator/*.h
clang-format-11 -i simulator/channel_models/*.cc
clang-format-11 -i simulator/channel_models/*.h
$FORMAT_EXE -i simulator/*.cc
$FORMAT_EXE -i simulator/*.h
$FORMAT_EXE -i simulator/channel_models/*.cc
$FORMAT_EXE -i simulator/channel_models/*.h

clang-format-11 -i src/data_generator/*.cc
clang-format-11 -i src/data_generator/*.h
$FORMAT_EXE -i src/data_generator/*.cc
$FORMAT_EXE -i src/data_generator/*.h

clang-format-11 -i test/test_agora/*.cc
clang-format-11 -i test/unit_tests/*.cc
clang-format-11 -i test/compute_kernels/*.cc
clang-format-11 -i test/compute_kernels/*.h
clang-format-11 -i test/compute_kernels/ldpc/*.cc
$FORMAT_EXE -i test/test_agora/*.cc
$FORMAT_EXE -i test/unit_tests/*.cc
$FORMAT_EXE -i test/compute_kernels/*.cc
$FORMAT_EXE -i test/compute_kernels/*.h
$FORMAT_EXE -i test/compute_kernels/ldpc/*.cc
8 changes: 4 additions & 4 deletions simulator/sender.cc
Original file line number Diff line number Diff line change
Expand Up @@ -184,8 +184,8 @@ void Sender::StartTx() {
std::signal(SIGINT, InterruptHandler);
MasterThread(0); // Start the master thread

delete[](frame_start_);
delete[](frame_end_);
delete[] (frame_start_);
delete[] (frame_end_);
}

void Sender::StartTxfromMain(double* in_frame_start, double* in_frame_end) {
Expand Down Expand Up @@ -391,7 +391,7 @@ void* Sender::WorkerThread(int tid) {
Agora_memory::Alignment_t::kAlign64,
cfg_->OfdmCaNum() * sizeof(complex_float)));
auto* socks_pkt_buf = static_cast<Packet*>(PaddedAlignedAlloc(
Agora_memory::Alignment_t::kAlign32, cfg_->PacketLength()));
Agora_memory::Alignment_t::kAlign64, cfg_->PacketLength()));

double begin = GetTime::GetTimeUs();
size_t total_tx_packets = 0;
Expand Down Expand Up @@ -539,7 +539,7 @@ void* Sender::WorkerThread(int tid) {
RtAssert(completion_queue_.enqueue_bulk(tags, num_tags),
"Completion enqueue failed");
} // if (num_tags > 0)
} // while (keep_running.load() == true)
} // while (keep_running.load() == true)

DftiFreeDescriptor(&mkl_handle);

Expand Down
2 changes: 1 addition & 1 deletion simulator/sender_cli.cc
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ int main(int argc, char* argv[]) {
FLAGS_server_mac_addr);
sender->StartTx();
} // end context sender
} // end context Config
} // end context Config

PrintCoreAssignmentSummary();
gflags::ShutDownCommandLineFlags();
Expand Down
6 changes: 3 additions & 3 deletions simulator/simulator.cc
Original file line number Diff line number Diff line change
Expand Up @@ -115,9 +115,9 @@ void Simulator::Start() {
throw std::runtime_error(
"Simulator: Wrong event type in message queue!");
} // end of switch
} // end of for
} // end ret > 0
} // end of while
} // end of for
} // end ret > 0
} // end of while
this->Stop();
sender_.reset();
const std::string cur_directory = TOSTRING(PROJECT_DIRECTORY);
Expand Down