One of the benefits of using hardware comparison is that you don't need memory for the comparison. That is, the response data is evaluated on the fly rather than post processing it. As such, you can gain memory utilization improvements by only storing the data you care about, failures. If your board has 8M of memory, it can run indefinitely provided that you receive no mismatches between your expected response and the actual response.
However, the errors are processed using a FIFO which has a limited number of samples (~4096). If you get a burst of a lot of errors at once it is possible to overflow this FIFO at which point the driver will throw an error. The SampleErrorBacklog property will tell you how much data is currently backlogged. You can then fetch from the error FIFO using the Fetch Sample Errors function.
As I know, after the program fetch the error by "Fetch Sample Errors", we will free up the 4096 errors FIFO hence we will have new free space to locate the incoming errors, although it may cause some error data loss if too much errors come at once.
Then we probaly might log more errors .. more and more .. 🙂