diff options
| author | aozeritsky <[email protected]> | 2023-08-11 19:47:10 +0300 | 
|---|---|---|
| committer | aozeritsky <[email protected]> | 2023-08-11 20:29:36 +0300 | 
| commit | 03c4c633df935d23098c3ef94d18fbf847061445 (patch) | |
| tree | ba93df34361c1080b25ce197b6ba6ce512fdf825 | |
| parent | 112aee43c095516adc06b799f8c88b02ead59450 (diff) | |
Optimization: turn off profile counters by default
8 files changed, 75 insertions, 2 deletions
diff --git a/ydb/library/yql/providers/dq/common/CMakeLists.darwin-x86_64.txt b/ydb/library/yql/providers/dq/common/CMakeLists.darwin-x86_64.txt index d0bddb4ea85..a1ecc96fcc6 100644 --- a/ydb/library/yql/providers/dq/common/CMakeLists.darwin-x86_64.txt +++ b/ydb/library/yql/providers/dq/common/CMakeLists.darwin-x86_64.txt @@ -6,6 +6,12 @@  # original buildsystem will not be accepted. +get_built_tool_path( +  TOOL_enum_parser_bin +  TOOL_enum_parser_dependency +  tools/enum_parser/enum_parser +  enum_parser +)  add_library(providers-dq-common)  target_compile_options(providers-dq-common PRIVATE @@ -20,9 +26,15 @@ target_link_libraries(providers-dq-common PUBLIC    library-yql-utils    yql-utils-log    yql-dq-actors +  tools-enum_parser-enum_serialization_runtime  )  target_sources(providers-dq-common PRIVATE    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/attrs.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_common.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp  ) +generate_enum_serilization(providers-dq-common +  ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.h +  INCLUDE_HEADERS +  ydb/library/yql/providers/dq/common/yql_dq_settings.h +) diff --git a/ydb/library/yql/providers/dq/common/CMakeLists.linux-aarch64.txt b/ydb/library/yql/providers/dq/common/CMakeLists.linux-aarch64.txt index 0b477b8c2ef..0df62e46693 100644 --- a/ydb/library/yql/providers/dq/common/CMakeLists.linux-aarch64.txt +++ b/ydb/library/yql/providers/dq/common/CMakeLists.linux-aarch64.txt @@ -6,6 +6,12 @@  # original buildsystem will not be accepted. +get_built_tool_path( +  TOOL_enum_parser_bin +  TOOL_enum_parser_dependency +  tools/enum_parser/enum_parser +  enum_parser +)  add_library(providers-dq-common)  target_compile_options(providers-dq-common PRIVATE @@ -21,9 +27,15 @@ target_link_libraries(providers-dq-common PUBLIC    library-yql-utils    yql-utils-log    yql-dq-actors +  tools-enum_parser-enum_serialization_runtime  )  target_sources(providers-dq-common PRIVATE    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/attrs.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_common.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp  ) +generate_enum_serilization(providers-dq-common +  ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.h +  INCLUDE_HEADERS +  ydb/library/yql/providers/dq/common/yql_dq_settings.h +) diff --git a/ydb/library/yql/providers/dq/common/CMakeLists.linux-x86_64.txt b/ydb/library/yql/providers/dq/common/CMakeLists.linux-x86_64.txt index 0b477b8c2ef..0df62e46693 100644 --- a/ydb/library/yql/providers/dq/common/CMakeLists.linux-x86_64.txt +++ b/ydb/library/yql/providers/dq/common/CMakeLists.linux-x86_64.txt @@ -6,6 +6,12 @@  # original buildsystem will not be accepted. +get_built_tool_path( +  TOOL_enum_parser_bin +  TOOL_enum_parser_dependency +  tools/enum_parser/enum_parser +  enum_parser +)  add_library(providers-dq-common)  target_compile_options(providers-dq-common PRIVATE @@ -21,9 +27,15 @@ target_link_libraries(providers-dq-common PUBLIC    library-yql-utils    yql-utils-log    yql-dq-actors +  tools-enum_parser-enum_serialization_runtime  )  target_sources(providers-dq-common PRIVATE    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/attrs.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_common.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp  ) +generate_enum_serilization(providers-dq-common +  ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.h +  INCLUDE_HEADERS +  ydb/library/yql/providers/dq/common/yql_dq_settings.h +) diff --git a/ydb/library/yql/providers/dq/common/CMakeLists.windows-x86_64.txt b/ydb/library/yql/providers/dq/common/CMakeLists.windows-x86_64.txt index d0bddb4ea85..a1ecc96fcc6 100644 --- a/ydb/library/yql/providers/dq/common/CMakeLists.windows-x86_64.txt +++ b/ydb/library/yql/providers/dq/common/CMakeLists.windows-x86_64.txt @@ -6,6 +6,12 @@  # original buildsystem will not be accepted. +get_built_tool_path( +  TOOL_enum_parser_bin +  TOOL_enum_parser_dependency +  tools/enum_parser/enum_parser +  enum_parser +)  add_library(providers-dq-common)  target_compile_options(providers-dq-common PRIVATE @@ -20,9 +26,15 @@ target_link_libraries(providers-dq-common PUBLIC    library-yql-utils    yql-utils-log    yql-dq-actors +  tools-enum_parser-enum_serialization_runtime  )  target_sources(providers-dq-common PRIVATE    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/attrs.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_common.cpp    ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp  ) +generate_enum_serilization(providers-dq-common +  ${CMAKE_SOURCE_DIR}/ydb/library/yql/providers/dq/common/yql_dq_settings.h +  INCLUDE_HEADERS +  ydb/library/yql/providers/dq/common/yql_dq_settings.h +) diff --git a/ydb/library/yql/providers/dq/common/ya.make b/ydb/library/yql/providers/dq/common/ya.make index 679a13c3e97..8344d6cc91c 100644 --- a/ydb/library/yql/providers/dq/common/ya.make +++ b/ydb/library/yql/providers/dq/common/ya.make @@ -9,6 +9,8 @@ PEERDIR(      ydb/library/yql/dq/actors  ) +GENERATE_ENUM_SERIALIZATION(yql_dq_settings.h) +  SRCS(      attrs.cpp      yql_dq_common.cpp diff --git a/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp b/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp index 61512abd446..6ed7416582a 100644 --- a/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp +++ b/ydb/library/yql/providers/dq/common/yql_dq_settings.cpp @@ -73,6 +73,7 @@ TDqConfiguration::TDqConfiguration() {      REGISTER_SETTING(*this, AggregateStatsByStage);      REGISTER_SETTING(*this, EnableChannelStats);      REGISTER_SETTING(*this, ExportStats); +    REGISTER_SETTING(*this, TaskRunnerStats).Parser([](const TString& v) { return FromString<ETaskRunnerStats>(v); });  }  } // namespace NYql diff --git a/ydb/library/yql/providers/dq/common/yql_dq_settings.h b/ydb/library/yql/providers/dq/common/yql_dq_settings.h index aa30d90a506..72f67c1579c 100644 --- a/ydb/library/yql/providers/dq/common/yql_dq_settings.h +++ b/ydb/library/yql/providers/dq/common/yql_dq_settings.h @@ -15,6 +15,12 @@ namespace NYql {  struct TDqSettings { +    enum class ETaskRunnerStats { +        Disable, +        Basic, +        Profile +    }; +      struct TDefault {          static constexpr ui32 MaxTasksPerStage = 20U;          static constexpr ui32 MaxTasksPerOperation = 70U; @@ -41,6 +47,7 @@ struct TDqSettings {          static constexpr bool AggregateStatsByStage = true;          static constexpr bool EnableChannelStats = false;          static constexpr bool ExportStats = false; +        static constexpr ETaskRunnerStats TaskRunnerStats = ETaskRunnerStats::Basic;      };      using TPtr = std::shared_ptr<TDqSettings>; @@ -105,6 +112,7 @@ struct TDqSettings {      NCommon::TConfSetting<bool, false> AggregateStatsByStage;      NCommon::TConfSetting<bool, false> EnableChannelStats;      NCommon::TConfSetting<bool, false> ExportStats; +    NCommon::TConfSetting<ETaskRunnerStats, false> TaskRunnerStats;      // This options will be passed to executor_actor and worker_actor      template <typename TProtoConfig> @@ -158,6 +166,7 @@ struct TDqSettings {          SAVE_SETTING(AggregateStatsByStage);          SAVE_SETTING(EnableChannelStats);          SAVE_SETTING(ExportStats); +        SAVE_SETTING(TaskRunnerStats);  #undef SAVE_SETTING      } diff --git a/ydb/library/yql/providers/dq/task_runner/tasks_runner_local.cpp b/ydb/library/yql/providers/dq/task_runner/tasks_runner_local.cpp index 318ff5357fb..77e5d392fc7 100644 --- a/ydb/library/yql/providers/dq/task_runner/tasks_runner_local.cpp +++ b/ydb/library/yql/providers/dq/task_runner/tasks_runner_local.cpp @@ -261,14 +261,27 @@ public:          NDq::TDqTaskRunnerSettings settings;          settings.TerminateOnError = TerminateOnError;          settings.CollectBasicStats = true; -        settings.CollectProfileStats = true; +        settings.CollectProfileStats = false;          Yql::DqsProto::TTaskMeta taskMeta;          task.GetMeta().UnpackTo(&taskMeta);          for (const auto& s : taskMeta.GetSettings()) { -            if ("OptLLVM" == s.GetName()) +            if ("OptLLVM" == s.GetName()) {                  settings.OptLLVM = s.GetValue(); +            } +            if ("TaskRunnerStats" == s.GetName()) { +                if ("Disable" == s.GetValue()) { +                    settings.CollectBasicStats = false; +                    settings.CollectProfileStats = false; +                } else if ("Profile" == s.GetValue()) { +                    settings.CollectBasicStats = true; +                    settings.CollectProfileStats = true; +                } else if ("Basic" == s.GetValue()) { +                    settings.CollectBasicStats = true; +                    settings.CollectProfileStats = false; +                } +            }          }          for (const auto& x : taskMeta.GetSecureParams()) {              settings.SecureParams[x.first] = x.second;  | 
