From b7b559ff6abd8c6d58db7bd0fa98a64bbfa6c743 Mon Sep 17 00:00:00 2001 From: itchyfeetleech <169226071+itchyfeetleech@users.noreply.github.com> Date: Mon, 19 Oct 2026 17:34:19 +1300 Subject: [PATCH] engine: D4R_M_DUMP also writes the M / L network's activations layer by layer d4r-m's D4R_M_DUMP wrote the network's input (tokens) and output (head); it now also writes skip1, merged1, skip2, merged2, tubeA, tubeB and dec2, so that a difference between two builds can be found at the first layer it appears. Signed-off-by: itchyfeetleech <169226071+itchyfeetleech@users.noreply.github.com> --- engine/runtime_m.inc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/engine/runtime_m.inc b/engine/runtime_m.inc index 12a2e18..0a55b1c 100644 --- a/engine/runtime_m.inc +++ b/engine/runtime_m.inc @@ -528,6 +528,14 @@ std::vector MEngine::debugResources() const { std::vector r{{"enc0-params", e.enc0P.handle, VK_NULL_HANDLE, e.enc0P.size, 0, 0}, {"tokens", e.tokens.handle, VK_NULL_HANDLE, e.tokens.size, 0, 0}, {"head", e.dec1Out.handle, VK_NULL_HANDLE, e.dec1Out.size, 0, 0}, + // the network's own activations, layer by layer + {"skip1", e.skip1.handle, VK_NULL_HANDLE, e.skip1.size, 0, 0}, + {"merged1", e.merged1.handle, VK_NULL_HANDLE, e.merged1.size, 0, 0}, + {"skip2", e.skip2.handle, VK_NULL_HANDLE, e.skip2.size, 0, 0}, + {"merged2", e.merged2.handle, VK_NULL_HANDLE, e.merged2.size, 0, 0}, + {"tubeA", e.tubeA.handle, VK_NULL_HANDLE, e.tubeA.size, 0, 0}, + {"tubeB", e.tubeB.handle, VK_NULL_HANDLE, e.tubeB.size, 0, 0}, + {"dec2", e.dec2Out.handle, VK_NULL_HANDLE, e.dec2Out.size, 0, 0}, {"gates", VK_NULL_HANDLE, e.gates.handle, VkDeviceSize(w) * h * 4, w, h}, {"mix", VK_NULL_HANDLE, e.mix.handle, VkDeviceSize(w) * h * 4, w, h}, {"cov", VK_NULL_HANDLE, e.cov.handle, VkDeviceSize(w) * h * 8, w, h},