Merge remote-tracking branch 'origin/tracy-profiler' into integration_2024_w48 (!2951)

Integrate Tracy with NR UE

This commit enables the optional use of Tracy for profiling NR UE. See
https://github.com/wolfpld/tracy/releases/tag/v0.11.1 for details.

More instructions are in the commit.
This commit is contained in:
Robert Schmidt
2024-11-28 18:46:35 +01:00
7 changed files with 77 additions and 2 deletions
+6
View File
@@ -2,3 +2,9 @@ add_subdirectory(utils)
add_subdirectory(config/yaml)
configure_file(oai_version.h.in oai_version.h @ONLY)
add_library(instrumentation INTERFACE instrumentation.h)
target_include_directories(instrumentation INTERFACE .)
if (TRACY_ENABLE)
target_link_libraries(instrumentation INTERFACE Tracy::TracyClient)
endif()
+42
View File
@@ -0,0 +1,42 @@
/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
#ifndef INSTRUMENTATION_H
#define INSTRUMENTATION_H
#ifdef TRACY_ENABLE
#include "tracy/TracyC.h"
#endif
#ifndef TracyCZone
#define TracyCZone(...)
#endif
#ifndef TracyCZoneEnd
#define TracyCZoneEnd(...)
#endif
#ifndef TracyCFrameMark
#define TracyCFrameMark
#endif
#ifndef TracyCPlot
#define TracyCPlot(...)
#endif
#endif