Skip to content

Commit

Permalink
Update main
Browse files Browse the repository at this point in the history
# Conflicts:
#	.gitlab-ci.yml
#	.gitlab/ci/build.yml
#	.gitlab/ci/e2e.yml
#	.gitlab/ci/e2e/retina_request_rf_b200.yml
#	.gitlab/ci/e2e/retina_request_zmq.yml
#	.gitlab/ci/schedules.yml
#	docker/grafana/provisioning/dashboards/dashboardReference.yml
#	docker/grafana/provisioning/datasources/InfluxDB.yml
#	include/srsran/cu_cp/du_processor_config.h
#	include/srsran/f1ap/cu_cp/f1ap_interface_management_types.h
#	lib/phy/upper/channel_coding/short/CMakeLists.txt
#	tests/unittests/phy/upper/channel_processors/uci/uci_decoder_test_data.tar.gz
  • Loading branch information
codebot committed Feb 5, 2024
2 parents 0b2702c + afefcb9 commit 32dae89
Show file tree
Hide file tree
Showing 744 changed files with 82,291 additions and 102,378 deletions.
18 changes: 15 additions & 3 deletions .gdbinit
Original file line number Diff line number Diff line change
@@ -1,9 +1,21 @@
#
# Copyright 2021-2024 Software Radio Systems Limited
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the distribution.
# This file is part of srsRAN
#
# srsRAN is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
#
# srsRAN is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# A copy of the GNU Affero General Public License can be found in
# the LICENSE file in the top-level directory of this distribution
# and at http://www.gnu.org/licenses/.
#

############################################
Expand Down
8 changes: 8 additions & 0 deletions .github/codeql/codeql-config.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,10 @@
#
# Copyright 2013-2024 Software Radio Systems Limited
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the distribution.
#

name: "CodeQL config"
ram: 6500
8 changes: 8 additions & 0 deletions .github/workflows/ccpp.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
#
# Copyright 2013-2024 Software Radio Systems Limited
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the distribution.
#

name: C/C++ CI
on: push
jobs:
Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
#
# Copyright 2013-2024 Software Radio Systems Limited
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the distribution.
#

name: "CodeQL"

on:
Expand Down
20 changes: 13 additions & 7 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,19 @@

include:
- project: softwareradiosystems/ci/tools
ref: "14"
ref: "15"
file: .gitlab/ci-shared/setup/all.yml
- project: softwareradiosystems/ci/tools
ref: "14"
ref: "15"
file: .gitlab/ci-shared/features/all.yml
- project: softwareradiosystems/ci/tools
ref: "14"
ref: "15"
file: .gitlab/ci-shared/tools/python.yml
- project: softwareradiosystems/ci/tools
ref: "14"
ref: "15"
file: .gitlab/ci-shared/tools/test_reporter.yml
- project: softwareradiosystems/ci/tools
ref: "14"
ref: "15"
file: .gitlab/ci-shared/tools/tagger.yml
- local: .gitlab/ci/builders/version.yml
- local: .gitlab/ci/build.yml
Expand Down Expand Up @@ -85,8 +85,10 @@ trigger docker:
changes:
paths:
- .gitlab/ci/docker.yml
- docker/**/*.{yml,env,json,toml,py,sh,csv}
- docker/**/*.{yml,env,json,toml,py,sh,csv,py,toml}
- docker/**/Dockerfile
- scripts/srsran_performance
- .gdbinit
trigger:
include: .gitlab/ci/docker.yml
strategy: depend
Expand Down Expand Up @@ -144,8 +146,10 @@ full-code-format:
ANALYZER: ""
ANALYZER_ARGS: ""
ARTIFACT_EXTRA_PATH: ""
KUBERNETES_MEMORY_REQUEST: 6Gi
KUBERNETES_CPU_REQUEST: "3.5"
KUBERNETES_CPU_LIMIT: "3.5"
KUBERNETES_MEMORY_REQUEST: 6Gi
KUBERNETES_MEMORY_LIMIT: 6Gi
before_script:
- |
echo "
Expand Down Expand Up @@ -224,7 +228,9 @@ clangsa:
needs: []
variables:
KUBERNETES_CPU_REQUEST: 7
KUBERNETES_CPU_LIMIT: 7
KUBERNETES_MEMORY_REQUEST: 13Gi
KUBERNETES_MEMORY_LIMIT: 13Gi
tags:
- ${AMD64_TAG}
interruptible: false
Expand Down
91 changes: 48 additions & 43 deletions .gitlab/ci/build.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,9 @@
#
# Copyright 2021-2023 Software Radio Systems Limited
# Copyright 2013-2024 Software Radio Systems Limited
#
# This file is part of srsRAN
#
# srsRAN is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
#
# srsRAN is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# A copy of the GNU Affero General Public License can be found in
# the LICENSE file in the top-level directory of this distribution
# and at http://www.gnu.org/licenses/.
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the distribution.
#

include:
Expand All @@ -29,10 +17,14 @@ variables:
AMD64_AVX2_TAG: amd64-avx2
AMD64_AVX512_TAG: amd64-avx2-avx512
ARM64_TAG: arm64
AMD64_LIB_BUILDER_TAG: on-prem-amd64

INFRASTRUCTURE_TAG:
description: Computer architecture and supported instruction sets
options:
- amd64
- amd64-avx2
- amd64-avx2-avx512
- "on-prem-amd64"
- "on-prem-arm64"
- "aws-spot-amd64"
Expand Down Expand Up @@ -121,8 +113,10 @@ variables:
AUTO_DETECT_ISA: ""
# CI
SAVE_ARTIFACTS: "" # Empty by default
KUBERNETES_CPU_REQUEST: 6
KUBERNETES_CPU_LIMIT: 6
KUBERNETES_MEMORY_REQUEST: 12Gi
KUBERNETES_CPU_REQUEST: 7
KUBERNETES_MEMORY_LIMIT: 12Gi
MAKE_ARGS: "-j${KUBERNETES_CPU_REQUEST}"
GIT_STRATEGY: none
needs:
Expand Down Expand Up @@ -195,11 +189,11 @@ variables:
if [ -n "${DPDK_VERSION}" ]; then
BUILD_CMD="-d ${DPDK_VERSION} ${BUILD_CMD}"
LD_LIBRARY_PATH=/opt/dpdk/${DPDK_VERSION}/lib/x86_64-linux-gnu/
export LD_LIBRARY_PATH=/opt/dpdk/${DPDK_VERSION}/lib/x86_64-linux-gnu/
fi
if [ -n "${UHD_VERSION}" ]; then
BUILD_CMD="-u ${UHD_VERSION} ${BUILD_CMD}"
LD_LIBRARY_PATH=/opt/uhd/${UHD_VERSION}/lib:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH=/opt/uhd/${UHD_VERSION}/lib:${LD_LIBRARY_PATH}
fi
if [ -n "${CLEAN_BUILD}" ]; then
BUILD_CMD="-r ${CLEAN_BUILD} ${BUILD_CMD}"
Expand Down Expand Up @@ -251,7 +245,7 @@ variables:
;;
valgrind)
G_DEBUG=gc-friendly G_SLICE=always-malloc
ctest_extra="-T memcheck --timeout 10800"
ctest_extra="-T memcheck -LE NO_MEMCHECK --timeout 10800"
;;
esac
if [ -n "${FINGERPRINT}" ]; then
Expand All @@ -266,6 +260,7 @@ variables:
exit $ret
fi
fi
echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
CTEST_CMD="ctest -j${KUBERNETES_CPU_REQUEST} ${CTEST_SUBSET_CMD} $ctest_extra --schedule-random --output-on-failure --output-junit xunit.xml"
echo "${CTEST_CMD}"
echo "============================================================================================="
Expand Down Expand Up @@ -407,7 +402,7 @@ variables:
ASSERT_LEVEL: PARANOID
AUTO_DETECT_ISA: "True"
ENABLE_AVX512: "False"
DPDK_VERSION: "23.07"
DPDK_VERSION: "23.11"
tags: ["${AMD64_TAG}"]

.smoke valgrind:
Expand Down Expand Up @@ -580,7 +575,7 @@ valgrind changed tests:
- if: $ON_MR
when: manual
allow_failure: true
timeout: 2h
timeout: 1h
variables:
CLEAN_BUILD: "False"
FINGERPRINT: "fingerprints.csv"
Expand Down Expand Up @@ -754,17 +749,20 @@ basic avx512 dpdk:
variables:
OS: ubuntu-22.04
COMPILER: gcc
BUILD_TYPE: RelWithDebInfo
TEST_MODE: default
ASSERT_LEVEL: PARANOID
BUILD_TYPE: Release
TEST_MODE: none
ENABLE_UHD: "False"
ENABLE_ZEROMQ: "False"
ENABLE_DPDK: "True"
DPDK_VERSION: "23.07"
DPDK_VERSION: "23.11"
AUTO_DETECT_ISA: "True"
ENABLE_AVX512: "True"
SAVE_ARTIFACTS: "True"
tags: ["${AMD64_AVX512_TAG}"]
KUBERNETES_CPU_REQUEST: 14
KUBERNETES_CPU_LIMIT: 14
KUBERNETES_MEMORY_REQUEST: 20Gi
KUBERNETES_MEMORY_LIMIT: 20Gi
tags: ["on-prem-amd64-avx2-avx512"]
artifacts:
<<: *build_artifacts
expire_in: 1 day
Expand All @@ -781,8 +779,13 @@ package:
variables:
PROJECT_NAME: srsran-project
RELEASE_VERSION: "99.9"
KUBERNETES_CPU_REQUEST: 7
KUBERNETES_CPU_LIMIT: 7
KUBERNETES_MEMORY_REQUEST: 12Gi
tags: ["${AMD64_AVX2_TAG}"]
KUBERNETES_MEMORY_LIMIT: 12Gi
DEB_BUILD_OPTIONS: parallel=${KUBERNETES_CPU_LIMIT}
MAKEFLAGS: -j${KUBERNETES_CPU_LIMIT}
tags: ["${AMD64_LIB_BUILDER_TAG}"]
parallel:
matrix:
- OS_VERSION: "20.04"
Expand All @@ -799,7 +802,7 @@ install-package:
variables:
PROJECT_NAME: srsran-project
RELEASE_VERSION: "99.9"
tags: ["${AMD64_AVX2_TAG}"]
tags: ["${AMD64_LIB_BUILDER_TAG}"]
script:
- gnb --version
parallel:
Expand Down Expand Up @@ -1000,16 +1003,16 @@ smoke dpdk:
matrix:
- OS: ubuntu-23.10
COMPILER: [gcc, clang]
DPDK_VERSION: ["22.11.2", "23.07"]
DPDK_VERSION: ["22.11.3", "23.11"]
- OS: ubuntu-23.04
COMPILER: [gcc, clang]
DPDK_VERSION: ["22.11.2", "23.07"]
DPDK_VERSION: ["22.11.3", "23.11"]
- OS: ubuntu-22.04
COMPILER: [gcc, clang]
DPDK_VERSION: ["22.11.2", "23.07"]
DPDK_VERSION: ["22.11.3", "23.11"]
- OS: ubuntu-20.04
COMPILER: [gcc, clang]
DPDK_VERSION: ["22.11.2", "23.07"]
DPDK_VERSION: ["22.11.3", "23.11"]

###################
# Alternative OSs #
Expand Down Expand Up @@ -1250,16 +1253,16 @@ build uhd alt:
matrix:
- OS: ubuntu-23.10
COMPILER: [gcc, clang]
UHD_VERSION: ["4.5.0.0", "4.4.0.0"]
UHD_VERSION: ["4.6.0.0", "4.4.0.0"]
- OS: ubuntu-23.04
COMPILER: [gcc, clang]
UHD_VERSION: ["4.5.0.0", "4.4.0.0", "4.3.0.0"]
UHD_VERSION: ["4.6.0.0", "4.4.0.0", "4.3.0.0"]
- OS: ubuntu-22.04
COMPILER: [gcc, clang]
UHD_VERSION: ["4.5.0.0", "4.4.0.0", "4.3.0.0", "4.2.0.0", "4.1.0.5"]
UHD_VERSION: ["4.6.0.0", "4.4.0.0", "4.3.0.0", "4.1.0.5"]
- OS: ubuntu-20.04
COMPILER: [gcc, clang]
UHD_VERSION: ["4.5.0.0", "4.4.0.0", "4.3.0.0", "4.2.0.0", "4.1.0.5"]
UHD_VERSION: ["4.6.0.0", "4.4.0.0", "4.3.0.0", "4.1.0.5"]

# Build + unit tests combinations

Expand Down Expand Up @@ -1571,7 +1574,7 @@ rhel-8 arm neon:
ENABLE_ZEROMQ: "False"
ENABLE_DPDK: "True"
COMPILER: [gcc, clang]
DPDK_VERSION: ["22.11.2", "23.07"]
DPDK_VERSION: ["22.11.3", "23.11"]

ubuntu-20.04 amd64 avx2 dpdk:
extends: .build_and_unit
Expand Down Expand Up @@ -1709,22 +1712,23 @@ check-affinity-manager-nocpu:
artifacts: true
rules:
- if: $CI_DESCRIPTION =~ /Nightly/
timeout: 15 minutes
script:
- cd build/apps/gnb
- taskset -c 0-2 "./gnb" 2>&1 || true
- |
error_found=false
for (( i=1; i<=8; i++ ))
for (( i=3; i<=10; i++ ))
do
echo "Checking for number of CPU = $i"
output=$(taskset -c 0-$i "./gnb" 2>&1 || true)
echo "Checking for number of CPU = $((i-2))"
output=$(taskset -c 2-$i bash -c "./gnb log --filename=stdout" 2>&1 || true)
echo "$output"
if [[ "$output" == *"nof_cores_for_non_prio_threads"* ]]; then
error_found=true
echo "**********************************************************************************"
echo $output
echo "**********************************************************************************"
echo "Error for number of CPU = $i"
echo "Error for number of CPU = $((i-2))"
echo -e "\n\n\n\n\n"
fi
done
Expand All @@ -1740,6 +1744,7 @@ custom-build:
extends: .build_and_unit
rules:
- if: $ON_WEB
- if: $ON_API
interruptible: false # Web jobs are standalone
variables:
ENABLE_ZEROMQ: ""
Expand Down
Loading

0 comments on commit 32dae89

Please sign in to comment.