summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tools/cnn_test.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/tools/cnn_test.cc b/tools/cnn_test.cc
index bb4a824..c44606c 100644
--- a/tools/cnn_test.cc
+++ b/tools/cnn_test.cc
@@ -151,6 +151,13 @@ static WGPURenderPipeline create_cnn_pipeline(WGPUDevice device,
bool is_final_layer) {
const char* shader_code = SafeGetAsset(AssetId::ASSET_SHADER_CNN_LAYER);
+ // Debug: check if shader loaded
+ if (!shader_code || shader_code[0] == '\0') {
+ fprintf(stderr, "ERROR: CNN shader asset not loaded!\n");
+ return nullptr;
+ }
+ printf("Loaded CNN shader: %zu bytes\n", strlen(shader_code));
+
WGPUBindGroupLayout bgl =
BindGroupLayoutBuilder()
.sampler(0, WGPUShaderStage_Fragment)
@@ -425,6 +432,9 @@ int main(int argc, char** argv) {
WGPUCommandBuffer commands = wgpuCommandEncoderFinish(encoder, nullptr);
wgpuQueueSubmit(queue, 1, &commands);
+ // Wait for GPU to complete this layer before proceeding
+ wgpuDevicePoll(device, true, nullptr);
+
wgpuCommandBufferRelease(commands);
wgpuRenderPassEncoderRelease(pass);
wgpuCommandEncoderRelease(encoder);