"src/api/vscode:/vscode.git/clone" did not exist on "2d22efb764328a3475cf71e60dd4821cda2f6885"
integration_tests.yml 7.43 KB
Newer Older
chicm-ms's avatar
chicm-ms committed
1
2

defaultTestCaseConfig:
3
  launchCommand: nnictl create --config $configFile --debug
chicm-ms's avatar
chicm-ms committed
4
5
6
  stopCommand: nnictl stop
  experimentStatusCheck: True
  platform: linux darwin win32
chicm-ms's avatar
chicm-ms committed
7
  trainingService: all
chicm-ms's avatar
chicm-ms committed
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

testCases:
#######################################################################
# nni examples test
#######################################################################
- name: sklearn-classification
  # test case config yml file relative to nni source code directory
  configFile: test/config/examples/sklearn-classification.yml

  # test case specific config, the content of configFile will be overrided
  # by config section
  config:

  # validator is called after experiment is done
  # validator class needs to be implemented in nni_test/nnitest/validators.py
  validator:

  # launch command, default launch command is 'nnictl create --config $configFile'
26
  launchCommand: nnictl create --config $configFile --debug
chicm-ms's avatar
chicm-ms committed
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

  # stop command, default stop command is 'nnictl stop', empty means no stop command
  stopCommand: nnictl stop

  # set experiment ID into variable, variable name should start with $, such as $expId
  setExperimentIdtoVar: $expId

  # check status of experiment before calling validator
  experimentStatusCheck: True

- name: sklearn-regression
  configFile: test/config/examples/sklearn-regression.yml

- name: mnist-tfv1
  configFile: test/config/examples/mnist-tfv1.yml
42
43
44
  config:
    maxTrialNum: 1
    trialConcurrency: 1
chicm-ms's avatar
chicm-ms committed
45
46
47

- name: mnist-keras
  configFile: test/config/examples/mnist-keras.yml
48
49
50
  config:
    maxTrialNum: 2
    trialConcurrency: 1
chicm-ms's avatar
chicm-ms committed
51

52
- name: mnist-pytorch-local
chicm-ms's avatar
chicm-ms committed
53
  configFile: test/config/examples/mnist-pytorch.yml
54
55
  # download data first, to prevent concurrent issue.
  launchCommand: python3 ../examples/trials/mnist-pytorch/mnist.py --epochs 1 --batch_num 0 --data_dir ../examples/trials/mnist-pytorch/data && nnictl create --config $configFile --debug
56
57
58
59
60
61
62
  trainingService: local

- name: mnist-pytorch-non-local
  configFile: test/config/examples/mnist-pytorch.yml
  # download data first, to prevent concurrent issue.
  launchCommand: nnictl create --config $configFile --debug
  trainingService: remote pai kubeflow frameworkcontroller dlts
chicm-ms's avatar
chicm-ms committed
63
64
65

- name: mnist-annotation
  configFile: test/config/examples/mnist-annotation.yml
66
67
68
  config:
    maxTrialNum: 1
    trialConcurrency: 1
chicm-ms's avatar
chicm-ms committed
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84

- name: cifar10-pytorch
  configFile: test/config/examples/cifar10-pytorch.yml
  config:
    # this example downloads large pretrained model weights
    # test 1 trial to save time
    maxExecDuration: 10m
    maxTrialNum: 1
    trialConcurrency: 1
    trial:
      command: python3 main.py --epochs 1 --batches 1
      gpuNum: 0

- name: nested-ss
  configFile: test/config/examples/mnist-nested-search-space.yml

85
86
87
88
89
- name: classic-nas-gen-ss
  configFile: test/config/examples/classic-nas-pytorch.yml
  launchCommand: nnictl ss_gen --trial_command="python3 mnist.py --epochs 1" --trial_dir=../examples/nas/classic_nas --file=config/examples/nni-nas-search-space.json
  stopCommand:
  experimentStatusCheck: False
chicm-ms's avatar
chicm-ms committed
90
  trainingService: local
91
92
93
94
95

- name: classic-nas-pytorch
  configFile: test/config/examples/classic-nas-pytorch.yml
  # remove search space file
  stopCommand: nnictl stop
96
  onExitCommand: python3 -c "import os; os.remove('config/examples/nni-nas-search-space.json')"
chicm-ms's avatar
chicm-ms committed
97
  trainingService: local
chicm-ms's avatar
chicm-ms committed
98
99
100
101
102
103
104
105
106
107
108
109
110
111

#########################################################################
# nni features test
#########################################################################
- name: metrics-float
  configFile: test/config/metrics_test/config.yml
  config:
    maxTrialNum: 1
    trialConcurrency: 1
  validator:
    class: MetricsValidator
    kwargs:
      expected_result_file: expected_metrics.json

Yan Ni's avatar
Yan Ni committed
112
113
114
115
116
117
118
119
- name: export-float
  configFile: test/config/metrics_test/config.yml
  config:
    maxTrialNum: 1
    trialConcurrency: 1
  validator:
    class: ExportValidator 

chicm-ms's avatar
chicm-ms committed
120
121
122
123
124
125
126
127
128
- name: metrics-dict
  configFile: test/config/metrics_test/config_dict_metrics.yml
  config:
    maxTrialNum: 1
    trialConcurrency: 1
  validator:
    class: MetricsValidator
    kwargs:
      expected_result_file: expected_metrics_dict.json
chicm-ms's avatar
chicm-ms committed
129

Yan Ni's avatar
Yan Ni committed
130
131
132
133
134
135
136
137
- name: export-dict
  configFile: test/config/metrics_test/config_dict_metrics.yml
  config:
    maxTrialNum: 1
    trialConcurrency: 1
  validator:
    class: ExportValidator 

chicm-ms's avatar
chicm-ms committed
138
139
140
141
142
- name: nnicli
  configFile: test/config/examples/sklearn-regression.yml
  config:
    maxTrialNum: 4
    trialConcurrency: 4
Junwei Sun's avatar
Junwei Sun committed
143
144
  launchCommand: python3 -c 'from nnicli import Experiment; exp = Experiment(); exp.start_experiment("$configFile")'
  stopCommand: python3 -c 'from nnicli import Experiment; exp = Experiment(); exp.connect_experiment("http://localhost:8080/"); exp.stop_experiment()'
chicm-ms's avatar
chicm-ms committed
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
  validator:
    class: NnicliValidator
  platform: linux darwin

- name: foreground
  configFile: test/config/examples/sklearn-regression.yml
  launchCommand: python3 nni_test/nnitest/foreground.py --config $configFile --timeout 45
  stopCommand:
  experimentStatusCheck: False
  platform: linux darwin

# Experiment resume test part 1
- name: nnictl-resume-1
  configFile: test/config/examples/sklearn-regression.yml
  setExperimentIdtoVar: $resumeExpId
160
  # for subfolder in codedir test
SparkSnail's avatar
SparkSnail committed
161
  launchCommand: mkdir -p ../examples/trials/sklearn/regression/subfolder && touch ../examples/trials/sklearn/regression/subfolder/subfile && nnictl create --config $configFile --debug
chicm-ms's avatar
chicm-ms committed
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244

# Experiment resume test part 2
- name: nnictl-resume-2
  configFile: test/config/examples/sklearn-regression.yml
  launchCommand: nnictl resume $resumeExpId

# Experiment view test
- name: nnictl-view
  configFile: test/config/examples/sklearn-regression.yml
  launchCommand: nnictl view $resumeExpId
  experimentStatusCheck: False

- name: multi-thread
  configFile: test/config/multi_thread/config.yml

- name: multi-phase-batch
  configFile: test/config/multi_phase/batch.yml
  config:
    # for batch tuner, maxTrialNum can not exceed length of search space
    maxTrialNum: 2
    trialConcurrency: 2

- name: multi-phase-evolution
  configFile: test/config/multi_phase/evolution.yml

- name: multi-phase-grid
  configFile: test/config/multi_phase/grid.yml
  config:
    maxTrialNum: 2
    trialConcurrency: 2

- name: multi-phase-metis
  configFile: test/config/multi_phase/metis.yml

- name: multi-phase-tpe
  configFile: test/config/multi_phase/tpe.yml

#########################################################################
# nni assessor test
#########################################################################
- name: assessor-curvefitting
  configFile: test/config/assessors/curvefitting.yml

- name: assessor-medianstop
  configFile: test/config/assessors/medianstop.yml

#########################################################################
# nni tuners test
#########################################################################
- name: tuner-annel
  configFile: test/config/tuners/anneal.yml

- name: tuner-evolution
  configFile: test/config/tuners/evolution.yml

- name: tuner-random
  configFile: test/config/tuners/random.yml

- name: tuner-smac
  configFile: test/config/tuners/smac.yml
  platform: linux darwin

- name: tuner-tpe
  configFile: test/config/tuners/tpe.yml

- name: tuner-batch
  configFile: test/config/tuners/batch.yml

- name: tuner-bohb
  configFile: test/config/tuners/bohb.yml
  platform: linux darwin

- name: tuner-gp
  configFile: test/config/tuners/gp.yml

- name: tuner-grid
  configFile: test/config/tuners/gridsearch.yml

- name: tuner-hyperband
  configFile: test/config/tuners/hyperband.yml

- name: tuner-metis
  configFile: test/config/tuners/metis.yml