aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/zenserver.cpp
diff options
context:
space:
mode:
authorStefan Boberg <[email protected]>2024-12-02 12:21:53 +0100
committerGitHub Enterprise <[email protected]>2024-12-02 12:21:53 +0100
commite6f44577f469e891ed8dab1492a4c53224e0b765 (patch)
tree47334606ce62fb6bf1975cdc09276ced335599f4 /src/zenserver/zenserver.cpp
parent5.5.15-pre0 (diff)
downloadzen-e6f44577f469e891ed8dab1492a4c53224e0b765.tar.xz
zen-e6f44577f469e891ed8dab1492a4c53224e0b765.zip
added support for dynamic LLM tags (#245)
* added FLLMTag which can be used to register memory tags outside of core * changed `UE_MEMSCOPE` -> `ZEN_MEMSCOPE` for consistency * instrumented some subsystems with dynamic tags
Diffstat (limited to 'src/zenserver/zenserver.cpp')
-rw-r--r--src/zenserver/zenserver.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/zenserver/zenserver.cpp b/src/zenserver/zenserver.cpp
index f6d6556a0..3714dfaeb 100644
--- a/src/zenserver/zenserver.cpp
+++ b/src/zenserver/zenserver.cpp
@@ -54,8 +54,18 @@ ZEN_THIRD_PARTY_INCLUDES_END
#include "config.h"
#include "diag/logging.h"
+#include <zencore/memory/llm.h>
+
namespace zen {
+static const FLLMTag&
+GetZenserverTag()
+{
+ static FLLMTag _("zenserver");
+
+ return _;
+}
+
namespace utils {
extern std::atomic_uint32_t SignalCounter[NSIG];
}
@@ -117,6 +127,7 @@ ZenServer::OnReady()
int
ZenServer::Initialize(const ZenServerOptions& ServerOptions, ZenServerState::ZenServerEntry* ServerEntry)
{
+ ZEN_MEMSCOPE(GetZenserverTag());
const std::string MutexName = fmt::format("zen_{}", ServerOptions.BasePort);
if (NamedMutex::Exists(MutexName))
@@ -806,6 +817,7 @@ ZenServer::Cleanup()
void
ZenServer::EnsureIoRunner()
{
+ ZEN_MEMSCOPE(GetZenserverTag());
if (!m_IoRunner.joinable())
{
m_IoRunner = std::thread{[this] {
@@ -818,6 +830,7 @@ ZenServer::EnsureIoRunner()
void
ZenServer::EnqueueProcessMonitorTimer()
{
+ ZEN_MEMSCOPE(GetZenserverTag());
m_PidCheckTimer.expires_after(std::chrono::seconds(1));
m_PidCheckTimer.async_wait([this](const asio::error_code&) { CheckOwnerPid(); });
@@ -827,6 +840,7 @@ ZenServer::EnqueueProcessMonitorTimer()
void
ZenServer::EnqueueStateMarkerTimer()
{
+ ZEN_MEMSCOPE(GetZenserverTag());
m_StateMakerTimer.expires_after(std::chrono::seconds(5));
m_StateMakerTimer.async_wait([this](const asio::error_code&) { CheckStateMarker(); });
EnsureIoRunner();
@@ -835,6 +849,7 @@ ZenServer::EnqueueStateMarkerTimer()
void
ZenServer::EnqueueSigIntTimer()
{
+ ZEN_MEMSCOPE(GetZenserverTag());
m_SigIntTimer.expires_after(std::chrono::milliseconds(500));
m_SigIntTimer.async_wait([this](const asio::error_code&) { CheckSigInt(); });
EnsureIoRunner();
@@ -843,6 +858,7 @@ ZenServer::EnqueueSigIntTimer()
void
ZenServer::EnqueueStateExitFlagTimer()
{
+ ZEN_MEMSCOPE(GetZenserverTag());
m_StateExitFlagTimer.expires_after(std::chrono::milliseconds(500));
m_StateExitFlagTimer.async_wait([this](const asio::error_code&) { CheckStateExitFlag(); });
EnsureIoRunner();
@@ -851,6 +867,7 @@ ZenServer::EnqueueStateExitFlagTimer()
void
ZenServer::EnqueueStatsReportingTimer()
{
+ ZEN_MEMSCOPE(GetZenserverTag());
m_StatsReportingTimer.expires_after(std::chrono::milliseconds(500));
m_StatsReportingTimer.async_wait([this](const asio::error_code& Ec) {
if (!Ec)
@@ -865,6 +882,7 @@ ZenServer::EnqueueStatsReportingTimer()
void
ZenServer::CheckStateMarker()
{
+ ZEN_MEMSCOPE(GetZenserverTag());
std::filesystem::path StateMarkerPath = m_DataRoot / "state_marker";
try
{