|
|
@ -545,17 +545,19 @@ on standard output) and should not fail on time or memory limits. This division
|
|
|
|
is transparent for backend, each task is executed the same way. But frontend
|
|
|
|
is transparent for backend, each task is executed the same way. But frontend
|
|
|
|
must know which tasks from whole job are important and what is their kind. It is
|
|
|
|
must know which tasks from whole job are important and what is their kind. It is
|
|
|
|
reasonable, to keep this piece of information alongside the tasks in job
|
|
|
|
reasonable, to keep this piece of information alongside the tasks in job
|
|
|
|
configuration, so each task can have a label about its purpose. There are three
|
|
|
|
configuration, so each task can have a label about its purpose. Unlabeled tasks
|
|
|
|
categories of tasks:
|
|
|
|
have an internal type _inner_. There are four categories of tasks:
|
|
|
|
|
|
|
|
|
|
|
|
- _initiation_ -- setting up the environment, compilling
|
|
|
|
- _initiation_ -- setting up the environment, compilling code, etc.; for users
|
|
|
|
code, etc.; for users failure means error in their sources which are not
|
|
|
|
failure means error in their sources which are not compatible with running it
|
|
|
|
compatible with running it with examination data
|
|
|
|
with examination data
|
|
|
|
- _execution_ -- running the user code with examination data, must not exceed
|
|
|
|
- _execution_ -- running the user code with examination data, must not exceed
|
|
|
|
time and memory limits; for users failure means wrong design, slow data
|
|
|
|
time and memory limits; for users failure means wrong design, slow data
|
|
|
|
structures, etc.
|
|
|
|
structures, etc.
|
|
|
|
- _evaluation_ -- comparing user and examination outputs; for user failure means
|
|
|
|
- _evaluation_ -- comparing user and examination outputs; for user failure means
|
|
|
|
that the program does not compute the right results
|
|
|
|
that the program does not compute the right results
|
|
|
|
|
|
|
|
- _inner_ -- no special meaning for frontend, technical tasks for fetching and
|
|
|
|
|
|
|
|
copying files, creating directories, etc.
|
|
|
|
|
|
|
|
|
|
|
|
Each job is composed of multiple tasks of these types which are semanticaly
|
|
|
|
Each job is composed of multiple tasks of these types which are semanticaly
|
|
|
|
grupped into tests. A test can represent one set of examination data for user
|
|
|
|
grupped into tests. A test can represent one set of examination data for user
|
|
|
|