diff --git a/monitor/CMakeLists.txt b/monitor/CMakeLists.txt index 264c543a..4598748f 100644 --- a/monitor/CMakeLists.txt +++ b/monitor/CMakeLists.txt @@ -20,6 +20,7 @@ if(NOT CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86_64|amd64|aarch64|arm64)$") endif() find_package(Threads REQUIRED) +option(TRACY_ON_DEMAND "On-demand profiling: record samples only while a Tracy server is connected" OFF) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/config.cmake) include(${CMAKE_CURRENT_LIST_DIR}/../cmake/GitRef.cmake) @@ -37,6 +38,9 @@ target_compile_definitions(${PROJECT_NAME} PRIVATE TRACY_MANUAL_LIFETIME TRACY_NO_FRAME_IMAGE ) +if(TRACY_ON_DEMAND) + target_compile_definitions(${PROJECT_NAME} PRIVATE TRACY_ON_DEMAND) +endif() target_link_libraries(${PROJECT_NAME} PRIVATE Threads::Threads ${CMAKE_DL_LIBS} diff --git a/monitor/src/monitor.cpp b/monitor/src/monitor.cpp index efded5c4..c9f3cb0b 100644 --- a/monitor/src/monitor.cpp +++ b/monitor/src/monitor.cpp @@ -397,6 +397,9 @@ static void PrintStartupReport( bool kernelFrames, bool hwStats, int hwErrno ) { printf( " vsync: no (%s)\n", TracepointReason( vsync ) ); } +#ifdef TRACY_ON_DEMAND + printf( " recording: on-demand: samples are captured only while a Tracy server is connected; pre-connection samples are discarded\n" ); +#endif printf( "\n" ); printf( "Open the Tracy profiler and connect to this host:port (or it will auto-discover).\n" ); fflush( stdout );