Debug and inspect
A wrong answer on a spatial machine is usually not a wrong calculation. It is data that arrived somewhere unexpected, arrived in the wrong order, or never arrived. These tools reconstruct what the fabric actually did so the difference is visible rather than inferred.
In this section
- Portrait — a browser interface over a simulation: tile layout, pipeline execution, source correlation, wavelet traffic, and instruction-level detail in linked panels. Start here when you do not yet know which tile is at fault.
- meminsp — cycle-accurate memory reconstruction from the image, the symbol map, and the simulation log. Use it to ask what memory held at a given tile and cycle, rather than only at the end of the run.
- Filter debugging — why a wavelet landing does not prove a filter accepted it, and how to read post-filter state. Relevant to kernels using counter filters or filtered sockets.
A working order
The tutorial's debugging guide sequences these into a checklist and works through the common failures — a comparison mismatch, a cycle-limit timeout, wrong values in an array, data not arriving, switch positions not advancing, floating-point divergence, and message passing that silently drops. Read that first; the pages above are the references it points into.