olimpiadi-informatica/task-maker-rust

tmr is slow at killing a solution printing long lines

Opened this issue · 1 comments

When evaluating a solution printing long lines tmr takes about 20 seconds to kill it, but the wall clock time limit (for the task I tested) is 4 seconds.

Minimal example:

#include <iostream>

int main() {
    for (;;) std::cout << "Hello, World!";
}

After some debugging it seems like tabox is correctly sending SIGKILL on WTLE but linux is slow at killing the solution because it's using the disk.

Possible solutions:

  • limit output file size (how?)
  • store output file in ram (dangerous)
  • proxying the output through tmr so that the solution is not using the disk directly