Dbg: Useful printfs for the raspi5

This commit is contained in:
2025-11-10 01:05:20 -04:00
parent 401c844fcc
commit 5bb9c9e90b
3 changed files with 20 additions and 3 deletions
@@ -88,7 +88,10 @@ void StimulusBuffer::onTimeout(const boost::system::error_code& error)
if (frameAssemblyRateLimiter.tryAcquire()) if (frameAssemblyRateLimiter.tryAcquire())
{ nextWakeupDelayMs = CONFIG_STIMBUFF_FRAME_PERIOD_MS; } { nextWakeupDelayMs = CONFIG_STIMBUFF_FRAME_PERIOD_MS; }
else else
{ nextWakeupDelayMs = CONFIG_STIMBUFF_FRAME_RETRY_DELAY_MS; } {
std::cout << __func__ << ": Deferring frame production due to rate limit." << std::endl;
nextWakeupDelayMs = CONFIG_STIMBUFF_FRAME_RETRY_DELAY_MS;
}
// Call the derived class's frame production handler // Call the derived class's frame production handler
stimFrameProductionTimesliceInd(); stimFrameProductionTimesliceInd();
@@ -524,9 +524,20 @@ public:
return; return;
} }
// Artificially create random dummy slots for testing
context->engine.randomDummySlotFiller(context->loop);
// Fill un-assembled slots with dummy datagrams // Fill un-assembled slots with dummy datagrams
context->engine.fillUnAssembledSlotsWithDummyDgrams(); context->engine.fillUnAssembledSlotsWithDummyDgrams();
// Print first 4 bytes of each slot (whether assembled or not)
if (context->engine.frameAssemblyDesc)
{
for (size_t i = 0; i < context->engine.frameAssemblyDesc->numSlots; ++i) {
context->engine.printSlotBytes(i, 4);
}
}
if (context->loop.nSucceeded.load() >= context->loop.nTotal) if (context->loop.nSucceeded.load() >= context->loop.nTotal)
{ {
// Success: all or more slots succeeded // Success: all or more slots succeeded
@@ -648,7 +648,7 @@ public:
cl_int compactStatus) cl_int compactStatus)
{ {
engine.stopCompactKernel(); engine.stopCompactKernel();
std::cout << __func__ << ": Compact done, compact status: " << compactStatus << std::endl;
// If compact failed, call callback directly with failure // If compact failed, call callback directly with failure
if (compactStatus != CL_SUCCESS) if (compactStatus != CL_SUCCESS)
{ {
@@ -683,6 +683,7 @@ public:
callOriginalCallback(false); callOriginalCallback(false);
return; return;
} }
std::cout << __func__ << ": Started collate kernel" << std::endl;
} }
void compactCollateAndMeshFrameReq4_collateDone_maybePosted( void compactCollateAndMeshFrameReq4_collateDone_maybePosted(
@@ -690,7 +691,7 @@ public:
cl_int collateStatus) cl_int collateStatus)
{ {
engine.stopCollateKernel(); engine.stopCollateKernel();
std::cout << __func__ << ": Collate done, collate status: " << collateStatus << std::endl;
bool success = (collateStatus == CL_SUCCESS); bool success = (collateStatus == CL_SUCCESS);
callOriginalCallback(success); callOriginalCallback(success);
} }
@@ -718,6 +719,7 @@ void OpenClCollatingAndMeshingEngine::compactCollateAndMeshFrameReq(
&CompactCollateAndMeshFrameReq &CompactCollateAndMeshFrameReq
::compactCollateAndMeshFrameReq1_doCompact_posted, ::compactCollateAndMeshFrameReq1_doCompact_posted,
request.get(), request))); request.get(), request)));
std::cout << __func__ << ": Started compact kernel" << std::endl;
} }
else else
{ {
@@ -727,6 +729,7 @@ void OpenClCollatingAndMeshingEngine::compactCollateAndMeshFrameReq(
&CompactCollateAndMeshFrameReq &CompactCollateAndMeshFrameReq
::compactCollateAndMeshFrameReq3_doCollate_posted, ::compactCollateAndMeshFrameReq3_doCollate_posted,
request.get(), request))); request.get(), request)));
std::cout << __func__ << ": Skipped compaction, started collate kernel" << std::endl;
} }
} }