From 4631b961786e22a0cc4500d8f1f4ac61955a6bff Mon Sep 17 00:00:00 2001 From: nmzik Date: Sun, 2 Aug 2026 03:53:28 +0200 Subject: [PATCH] perf(gpu): run dirty-page validation only in debug builds --- src/graphics/host_gpu/memoryTracker.cpp | 2 ++ src/graphics/host_gpu/memoryTracker.h | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/src/graphics/host_gpu/memoryTracker.cpp b/src/graphics/host_gpu/memoryTracker.cpp index 430a86331..b51b61c2b 100644 --- a/src/graphics/host_gpu/memoryTracker.cpp +++ b/src/graphics/host_gpu/memoryTracker.cpp @@ -21,6 +21,7 @@ MemoryTracker::MemoryTracker(PageManager& page_manager, PageWatchMode gpu_watch_ MemoryTracker::~MemoryTracker() = default; +#if KYTY_BUILD == KYTY_BUILD_DEBUG void MemoryTracker::ValidateGpuDirtyPages(const RangeSet& dirty, uint64_t vaddr, uint64_t size, const char* operation) const noexcept { if (vaddr == 0 || size == 0 || size > UINT64_MAX - vaddr || @@ -58,6 +59,7 @@ void MemoryTracker::ValidateGpuDirtyOwnership(const RangeSet& dirty, uint64_t va } } } +#endif void MemoryTracker::ValidateRange(uint64_t vaddr, uint64_t size) { if (vaddr == 0 || size == 0 || vaddr >= TRACKER_ADDRESS_SIZE || diff --git a/src/graphics/host_gpu/memoryTracker.h b/src/graphics/host_gpu/memoryTracker.h index 90715e795..e313e2cfd 100644 --- a/src/graphics/host_gpu/memoryTracker.h +++ b/src/graphics/host_gpu/memoryTracker.h @@ -71,10 +71,15 @@ public: EXIT("memory invalidation retained GPU-owned pages\n"); } } +#if KYTY_BUILD == KYTY_BUILD_DEBUG void ValidateGpuDirtyPages(const RangeSet& dirty, uint64_t vaddr, uint64_t size, const char* operation) const noexcept; void ValidateGpuDirtyOwnership(const RangeSet& dirty, uint64_t vaddr, uint64_t size, const char* operation); +#else + void ValidateGpuDirtyPages(const RangeSet&, uint64_t, uint64_t, const char*) const noexcept {} + void ValidateGpuDirtyOwnership(const RangeSet&, uint64_t, uint64_t, const char*) {} +#endif template void ForEachDownloadRange(uint64_t vaddr, uint64_t size, Preflight&& preflight, Func&& func) {