diff options
| author | Daniil Cherednik <[email protected]> | 2023-02-09 11:44:35 +0300 |
|---|---|---|
| committer | Daniil Cherednik <[email protected]> | 2023-02-09 11:46:17 +0300 |
| commit | b0967c30d3706b650b679fe119b6bd7b0924d328 (patch) | |
| tree | 25579dfda238c2cc5b00324878303b3a05d09f45 /library/cpp/actors/core/cpu_manager.cpp | |
| parent | 9b78acb9998e4a817a21fe60443c7c5d6a06b947 (diff) | |
Ydb stable 22-5-1022.5.10stable-22-5
x-stable-origin-commit: f696baac1a4b8d48eb52b52b35930eef6d0eab42
Diffstat (limited to 'library/cpp/actors/core/cpu_manager.cpp')
| -rw-r--r-- | library/cpp/actors/core/cpu_manager.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/library/cpp/actors/core/cpu_manager.cpp b/library/cpp/actors/core/cpu_manager.cpp index 39089b5d834..0736caa539e 100644 --- a/library/cpp/actors/core/cpu_manager.cpp +++ b/library/cpp/actors/core/cpu_manager.cpp @@ -16,10 +16,18 @@ namespace NActors { UnitedWorkers.Reset(new TUnitedWorkers(Config.UnitedWorkers, Config.United, allocation, Balancer.Get())); } + ui64 ts = GetCycleCountFast(); + Harmonizer.Reset(MakeHarmonizer(ts)); + Executors.Reset(new TAutoPtr<IExecutorPool>[ExecutorPoolCount]); for (ui32 excIdx = 0; excIdx != ExecutorPoolCount; ++excIdx) { Executors[excIdx].Reset(CreateExecutorPool(excIdx)); + if (excIdx < Config.PingInfoByPool.size()) { + Harmonizer->AddPool(Executors[excIdx].Get(), &Config.PingInfoByPool[excIdx]); + } else { + Harmonizer->AddPool(Executors[excIdx].Get()); + } } } @@ -89,7 +97,7 @@ namespace NActors { IExecutorPool* TCpuManager::CreateExecutorPool(ui32 poolId) { for (TBasicExecutorPoolConfig& cfg : Config.Basic) { if (cfg.PoolId == poolId) { - return new TBasicExecutorPool(cfg); + return new TBasicExecutorPool(cfg, Harmonizer.Get()); } } for (TIOExecutorPoolConfig& cfg : Config.IO) { |
