fix(agc): count stage-A drops of a dispatch move as refusals

The [dispmove] line printed refused 0 next to a rebuild count that came mostly from PrepareDispatch dropping the hit. The line now reports the refusals at stage A and at record separately, each with its reasons.
This commit is contained in:
AlxcBTW committed 2026-10-17 19:32:05 +02:00
1 parent 350b8d2b88
commit 5da6de62ad
1 file changed
+1 -1
@@ -4010,7 +4010,7 @@ void reportDispatchMove() {
for (std::size_t i = 0; i < 5; ++i) sizes[i] = take(moves.sizes[i]);
const auto refused = list(moves.refused);
const auto filtered = list(moves.filtered);
AgcDriver::ProfilePrint_nid_no_patch("[dispmove] (10 s) %llu template hits checked: %llu with every read-only buffer where it was built, %llu with %llu moved ones (%.2f MiB snapshotted; per dispatch up to 1 KiB %llu, 16 KiB %llu, 256 KiB %llu, 4 MiB %llu, more %llu); refused %s; after a refusal: %llu rebuilt, %llu inserted beside the movable template (kept), %llu served by an exact entry; stage A dropped cached objects: %s\n", checked, exact, moved, buffers, static_cast<double>(bytes) / 1048576.0, sizes[0], sizes[1], sizes[2], sizes[3], sizes[4], refused.c_str(), rebuilt, kept, served, filtered.c_str());
AgcDriver::ProfilePrint_nid_no_patch("[dispmove] (10 s) %llu template hits checked: %llu with every read-only buffer where it was built, %llu with %llu moved ones (%.2f MiB snapshotted; per dispatch up to 1 KiB %llu, 16 KiB %llu, 256 KiB %llu, 4 MiB %llu, more %llu); refused %s at stage A (the hit was dropped before the record), %s at record; after a refusal: %llu rebuilt, %llu inserted beside the movable template (kept), %llu served by an exact entry\n", checked, exact, moved, buffers, static_cast<double>(bytes) / 1048576.0, sizes[0], sizes[1], sizes[2], sizes[3], sizes[4], filtered.c_str(), refused.c_str(), rebuilt, kept, served);
}
void noteDispatchMoveSize(std::size_t bytes) {