judge-server icon indicating copy to clipboard operation
judge-server copied to clipboard

Streaming checkers

Open Xyene opened this issue 6 years ago • 0 comments

Some problems produce a lot of output (e.g. Cars on Ice) -- north of 256mb -- but use simple checkers like standard. For these problems, the judge must buffer up all the output of the submission, likely increasing memory pressure on judge systems with less than size of testcase output + problem memory limit RAM available. Pushing a submission to use swap is bad for consistent timing, too.

An improvement we can make for these scenarios is to check submission output against the result in a streaming fashion: on one side we stream from a problem zipfile, and on the other from the submission. For consistency with other checkers (and other online judges), we should not kill the submission once we know its output to be wrong, and let it run its course.

Xyene avatar Sep 02 '19 03:09 Xyene