]> mj.ucw.cz Git - moe.git/blob - t/doc/timeline.rst
Whitespace cleanup
[moe.git] / t / doc / timeline.rst
1 .. _timeline:
2
3 .. currentmodule:: moe.eval
4
5 Evaluation timeline
6 ====================
7
8 `Eval.init`
9 ------------
10
11 :func:`Eval.init` is run before the main pipeline and does the following:
12
13 ======= ==========
14 Time    Action
15 ======= ==========
16 \       Set builtins `HOME`, `CONFIG`, `LOG`, `DEBUG_LEVEL`, `VERBOSE`, also (temp?) `TDIR`, `USER_LOG`
17 \       Apply command-line overrides
18 \       Fix `CONFIG` and load the config file `CONFIG`
19 \       Fix `LOG`, `USER_LOG`, `VERBOSE`, `HOME`, `DEBUG_LEVEL`, `TDIR`
20 \       Start logging system (to `LOG` and `USER_LOG`)
21 \       Insert predefined hooks ([m]) and custom `HOOKS` to main pipeline
22 ======= ==========
23
24 Main pipeline
25 -------------
26
27 Ran by :func:`Eval.run`.
28
29 ======= ==========
30 Time    Action
31 ======= ==========
32 5       [m :func:`Eval.hook_init_dirs`] Check basic settings and directories 
33 10      *Task must be ready (rsynced, pulled)*
34 15      [m :func:`Eval.hook_load_task_config`] Load task config file
35 20      [m :func:`Eval.hook_init_tasktype`] Import and initialize the task-type module
36 **For 'standard':**
37 ------------------
38 25      [tt] Locate the source
39 30      [tt] Initialize sandbox module
40 35      [tt] Initialize compiler module, insert its hooks 
41 50      [cpl] Compile the source, perhaps using the sandbox
42 60      [tt] Run test pipeline for each `TEST` of `TESTS`
43 **For 'opendata':**
44 ------------------
45 25      [tt] Locate the data files (as a dir)
46 30      [tt] Initialize sandbox module (if needed)
47 40      [tt] Initialize judge module, insert its hooks 
48 60      [tt] Run test pipeline for each `TEST` of `TESTS` 
49 **Cleanup**
50 ------------------
51 70      Any failure jumps to this time
52 80      Cleanup *must* be finished
53 90      [m :func:`Eval.hook_write_metadata`] Write metafile
54 ======= ==========
55
56 Test pipeline
57 -------------
58
59 ======= ========================
60 Time    Action
61 ======= ========================
62 \       Tee logging to test log file
63 **For 'standard':**
64 --------------------------------
65 10      [tt] Copy test data to `TDIR` and to `BOXDIR`
66 30      [tt] Run testee (inside sandbox)
67 40      [tt] Run judge (inside sandbox)
68 50      [tt] Read/parse judge result
69 60      [tt] Copy program output to `TDIR`
70 **For 'opendata':**
71 --------------------------------
72 10      [tt] Copy test data to `TDIR` and to `BOXDIR`
73 20      [tt] Locate the data file, copy to 
74 40      [tt] Run judge (inside sandbox)
75 50      [tt] Read/parse judge result
76 **Cleanup**
77 --------------------------------
78 70      Any failure jumps to this time
79 80      [*] Cleanup must be finished
80 \       Write metafile
81 ======= ========================