Support for interactive tasks via IO#233
Conversation
|
Maybe some support for two or more execution interactive tasks? |
|
Could you explain a bit more what you mean by that? |
|
Currently I'm aware of 2 implementation of what I call multi-phase (or Encoder-decoder) interactive tasks : sio2project/oioioi#191 and Stowarzyszenie-Talent/sioworkers@b9948b8 . I don't know anything about the implementation for OI, but sometimes I create tasks using the second implementation. It would be nice if sinol-make have some support for those type of tasks. Either by formalizing the format of those tasks and implementing it into sinol-make, or for ex. allowing to create custom bash script that simulate the execution on the sio and are run by sinol-make instead of binary. |
|
And I said something without looking into the code. And there is the the task_type interface you just implemented, that could support what I just said... |
|
We are currently working on a new task type (sio2project/oioioi#287). It's similar to current interactive tasks with a library - the solution and checker(/interactor) have connected stdins and stdouts via pipes |
| output_file = file_no_ext + ".out" | ||
| result_file = file_no_ext + ".res" | ||
| hard_time_limit_in_s = math.ceil(2 * time_limit / 1000.0) | ||
| hard_time_limit = math.ceil(2 * time_limit / 1000.0) |
There was a problem hiding this comment.
Is this 2 times time limit in any way tested to be enough? I have an example, where sio2jail runs 1.5 times longer than time measured by the jail. If not, given "worse" program or slower machine, this hard time limit may be exceeded, without exceeding time_limit.
There was a problem hiding this comment.
It seems to work well in real sioworkers. But I guess on some systems it may fail
There was a problem hiding this comment.
Okay, I didn't know about this. On sio2.mimuw we also have 16x time limit for sio2jail
TODO: