"tools/vscode:/vscode.git/clone" did not exist on "62d7456597bf3f3febba1c18509a9cc885ce60dc"
Commit d6febf29 authored by suiguoxin's avatar suiguoxin
Browse files

Merge branch 'master' of git://github.com/microsoft/nni

parents 77c95479 c2179921
...@@ -97,6 +97,7 @@ interface Dimobj { ...@@ -97,6 +97,7 @@ interface Dimobj {
axisTick?: object; axisTick?: object;
axisLabel?: object; axisLabel?: object;
axisLine?: object; axisLine?: object;
nameTextStyle?: object;
} }
interface ParaObj { interface ParaObj {
...@@ -108,10 +109,15 @@ interface FinalResult { ...@@ -108,10 +109,15 @@ interface FinalResult {
data: string; data: string;
} }
interface Intermedia {
name: string; // id
type: string;
data: Array<number | object>; // intermediate data
hyperPara: object; // each trial hyperpara value
}
export { export {
TableObj, Parameters, Experiment, TableObj, Parameters, Experiment, AccurPoint, TrialNumber, TrialJob,
AccurPoint, TrialNumber, TrialJob, DetailAccurPoint, TooltipForAccuracy, ParaObj, Dimobj, FinalResult, FinalType,
DetailAccurPoint, TooltipForAccuracy, TooltipForIntermediate, SearchSpace, Intermedia
ParaObj, Dimobj, FinalResult, FinalType,
TooltipForIntermediate, SearchSpace
}; };
.compare{
width: 92%;
margin: 0 auto;
color: #333;
tr{
line-height: 30px;
border-bottom: 1px solid #ccc;
}
.column{
width: 124px;
padding-left: 18px;
font-weight: 700;
}
.value{
width: 152px;
padding-right: 18px;
text-align: right;
}
}
/* some buttons about trial-detail table */ /* some buttons in trial-detail table */
.allList{ .allList{
width: 96%; width: 96%;
margin: 0 auto; margin: 0 auto;
...@@ -31,4 +31,17 @@ ...@@ -31,4 +31,17 @@
} }
} }
Button.mediateBtn{
margin: 0 32px;
}
/* each row's Intermediate btn -> Modal*/
.selectKeys{
/* intermediate result is dict, select box for keys */
.select{
width: 120px;
float: right;
margin-right: 10%;
}
}
...@@ -99,22 +99,29 @@ $drowHoverBgColor: #e2e2e2; ...@@ -99,22 +99,29 @@ $drowHoverBgColor: #e2e2e2;
padding: 0; padding: 0;
background-color: $drowBgColor; background-color: $drowBgColor;
border-radius: 0; border-radius: 0;
.ant-dropdown-menu-item:hover{ .ant-dropdown-menu-item{
font-size: 16px;
}
.ant-dropdown-menu-item:hover, .ant-dropdown-menu-submenu:hover{
background-color: $drowHoverBgColor; background-color: $drowHoverBgColor;
} }
} }
} }
.ant-dropdown-menu-sub{
padding: 0;
background-color: $drowBgColor;
border-radius: 0;
.ant-dropdown-menu-item:hover{
background-color: $drowHoverBgColor;
}
}
/* nav style*/ /* nav style*/
.little{ .little{
width: 100%; width: 100%;
.menu{ .menu{
.show{
display: block;
}
.hide{
display: none;
}
.more{ .more{
color: #fff; color: #fff;
font-size: 24px; font-size: 24px;
...@@ -128,3 +135,7 @@ $drowHoverBgColor: #e2e2e2; ...@@ -128,3 +135,7 @@ $drowHoverBgColor: #e2e2e2;
text-align: center; text-align: center;
} }
} }
.menuModal{
width: 180px;
}
...@@ -102,3 +102,8 @@ ...@@ -102,3 +102,8 @@
.ant-modal-title{ .ant-modal-title{
font-size: 20px; font-size: 20px;
} }
/*disable select all checkbox in detail page*/
.ant-table-selection{
display: none;
}
...@@ -22,7 +22,7 @@ class SimpleTuner(Tuner): ...@@ -22,7 +22,7 @@ class SimpleTuner(Tuner):
self.sig_event = Event() self.sig_event = Event()
self.thread_lock = Lock() self.thread_lock = Lock()
def generate_parameters(self, parameter_id): def generate_parameters(self, parameter_id, **kwargs):
if self.f_id is None: if self.f_id is None:
self.thread_lock.acquire() self.thread_lock.acquire()
self.f_id = parameter_id self.f_id = parameter_id
...@@ -50,7 +50,7 @@ class SimpleTuner(Tuner): ...@@ -50,7 +50,7 @@ class SimpleTuner(Tuner):
self.thread_lock.release() self.thread_lock.release()
return self.trial_meta[parameter_id] return self.trial_meta[parameter_id]
def receive_trial_result(self, parameter_id, parameters, reward): def receive_trial_result(self, parameter_id, parameters, reward, **kwargs):
self.thread_lock.acquire() self.thread_lock.acquire()
if parameter_id == self.f_id: if parameter_id == self.f_id:
self.trial_meta[parameter_id]['checksum'] = reward['checksum'] self.trial_meta[parameter_id]['checksum'] = reward['checksum']
......
...@@ -6,9 +6,9 @@ trialConcurrency: 4 ...@@ -6,9 +6,9 @@ trialConcurrency: 4
searchSpacePath: ./search_space.json searchSpacePath: ./search_space.json
tuner: tuner:
codeDir: ../../../src/sdk/pynni/tests builtinTunerName: TPE
classFileName: test_multi_phase_tuner.py classArgs:
className: NaiveMultiPhaseTuner optimize_mode: maximize
trial: trial:
codeDir: . codeDir: .
......
authorName: nni
experimentName: default_test
maxExecDuration: 5m
maxTrialNum: 8
trialConcurrency: 4
searchSpacePath: ./search_space.json
tuner:
builtinTunerName: BatchTuner
trial:
codeDir: .
command: python3 multi_phase.py
gpuNum: 0
useAnnotation: false
multiPhase: true
multiThread: false
trainingServicePlatform: local
authorName: nni
experimentName: default_test
maxExecDuration: 5m
maxTrialNum: 8
trialConcurrency: 4
searchSpacePath: ./search_space.json
tuner:
builtinTunerName: Evolution
classArgs:
optimize_mode: maximize
trial:
codeDir: .
command: python3 multi_phase.py
gpuNum: 0
useAnnotation: false
multiPhase: true
multiThread: false
trainingServicePlatform: local
authorName: nni
experimentName: default_test
maxExecDuration: 5m
maxTrialNum: 8
trialConcurrency: 4
searchSpacePath: ./search_space.json
tuner:
builtinTunerName: GridSearch
trial:
codeDir: .
command: python3 multi_phase.py
gpuNum: 0
useAnnotation: false
multiPhase: true
multiThread: false
trainingServicePlatform: local
authorName: nni
experimentName: default_test
maxExecDuration: 5m
maxTrialNum: 8
trialConcurrency: 4
searchSpacePath: ./search_space.json
tuner:
builtinTunerName: MetisTuner
classArgs:
optimize_mode: maximize
trial:
codeDir: .
command: python3 multi_phase.py
gpuNum: 0
useAnnotation: false
multiPhase: true
multiThread: false
trainingServicePlatform: local
authorName: nni
experimentName: default_test
maxExecDuration: 5m
maxTrialNum: 8
trialConcurrency: 4
searchSpacePath: ./search_space.json
tuner:
builtinTunerName: TPE
classArgs:
optimize_mode: maximize
trial:
codeDir: .
command: python3 multi_phase.py
gpuNum: 0
useAnnotation: false
multiPhase: true
multiThread: false
trainingServicePlatform: local
...@@ -6,7 +6,7 @@ class MultiThreadTuner(Tuner): ...@@ -6,7 +6,7 @@ class MultiThreadTuner(Tuner):
def __init__(self): def __init__(self):
self.parent_done = False self.parent_done = False
def generate_parameters(self, parameter_id): def generate_parameters(self, parameter_id, **kwargs):
if parameter_id == 0: if parameter_id == 0:
return {'x': 0} return {'x': 0}
else: else:
...@@ -14,7 +14,7 @@ class MultiThreadTuner(Tuner): ...@@ -14,7 +14,7 @@ class MultiThreadTuner(Tuner):
time.sleep(2) time.sleep(2)
return {'x': 1} return {'x': 1}
def receive_trial_result(self, parameter_id, parameters, value): def receive_trial_result(self, parameter_id, parameters, value, **kwargs):
if parameter_id == 0: if parameter_id == 0:
self.parent_done = True self.parent_done = True
......
...@@ -16,12 +16,12 @@ class NaiveTuner(Tuner): ...@@ -16,12 +16,12 @@ class NaiveTuner(Tuner):
self.cur = 0 self.cur = 0
_logger.info('init') _logger.info('init')
def generate_parameters(self, parameter_id): def generate_parameters(self, parameter_id, **kwargs):
self.cur += 1 self.cur += 1
_logger.info('generate parameters: %s' % self.cur) _logger.info('generate parameters: %s' % self.cur)
return { 'x': self.cur } return { 'x': self.cur }
def receive_trial_result(self, parameter_id, parameters, value): def receive_trial_result(self, parameter_id, parameters, value, **kwargs):
reward = extract_scalar_reward(value) reward = extract_scalar_reward(value)
_logger.info('receive trial result: %s, %s, %s' % (parameter_id, parameters, reward)) _logger.info('receive trial result: %s, %s, %s' % (parameter_id, parameters, reward))
_result.write('%d %d\n' % (parameters['x'], reward)) _result.write('%d %d\n' % (parameters['x'], reward))
......
...@@ -18,7 +18,7 @@ jobs: ...@@ -18,7 +18,7 @@ jobs:
displayName: 'generate config files' displayName: 'generate config files'
- script: | - script: |
cd test cd test
python config_test.py --ts local --local_gpu --exclude smac,bohb python config_test.py --ts local --local_gpu --exclude smac,bohb,multi_phase_batch,multi_phase_grid
displayName: 'Examples and advanced features tests on local machine' displayName: 'Examples and advanced features tests on local machine'
- script: | - script: |
cd test cd test
......
...@@ -31,7 +31,7 @@ jobs: ...@@ -31,7 +31,7 @@ jobs:
displayName: 'Built-in tuners / assessors tests' displayName: 'Built-in tuners / assessors tests'
- script: | - script: |
cd test cd test
PATH=$HOME/.local/bin:$PATH python3 config_test.py --ts local --local_gpu PATH=$HOME/.local/bin:$PATH python3 config_test.py --ts local --local_gpu --exclude multi_phase_batch,multi_phase_grid
displayName: 'Examples and advanced features tests on local machine' displayName: 'Examples and advanced features tests on local machine'
- script: | - script: |
cd test cd test
......
...@@ -65,5 +65,5 @@ jobs: ...@@ -65,5 +65,5 @@ jobs:
python --version python --version
python generate_ts_config.py --ts pai --pai_host $(pai_host) --pai_user $(pai_user) --pai_pwd $(pai_pwd) --vc $(pai_virtual_cluster) --nni_docker_image $(docker_image) --data_dir $(data_dir) --output_dir $(output_dir) --nni_manager_ip $(nni_manager_ip) python generate_ts_config.py --ts pai --pai_host $(pai_host) --pai_user $(pai_user) --pai_pwd $(pai_pwd) --vc $(pai_virtual_cluster) --nni_docker_image $(docker_image) --data_dir $(data_dir) --output_dir $(output_dir) --nni_manager_ip $(nni_manager_ip)
python config_test.py --ts pai --exclude multi_phase,smac,bohb python config_test.py --ts pai --exclude multi_phase,smac,bohb,multi_phase_batch,multi_phase_grid
displayName: 'Examples and advanced features tests on pai' displayName: 'Examples and advanced features tests on pai'
\ No newline at end of file
...@@ -75,5 +75,5 @@ jobs: ...@@ -75,5 +75,5 @@ jobs:
python3 generate_ts_config.py --ts pai --pai_host $(pai_host) --pai_user $(pai_user) --pai_pwd $(pai_pwd) --vc $(pai_virtual_cluster) \ python3 generate_ts_config.py --ts pai --pai_host $(pai_host) --pai_user $(pai_user) --pai_pwd $(pai_pwd) --vc $(pai_virtual_cluster) \
--nni_docker_image $TEST_IMG --data_dir $(data_dir) --output_dir $(output_dir) --nni_manager_ip $(nni_manager_ip) --nni_docker_image $TEST_IMG --data_dir $(data_dir) --output_dir $(output_dir) --nni_manager_ip $(nni_manager_ip)
PATH=$HOME/.local/bin:$PATH python3 config_test.py --ts pai --exclude multi_phase PATH=$HOME/.local/bin:$PATH python3 config_test.py --ts pai --exclude multi_phase_batch,multi_phase_grid
displayName: 'integration test' displayName: 'integration test'
...@@ -39,7 +39,7 @@ jobs: ...@@ -39,7 +39,7 @@ jobs:
cd test cd test
python generate_ts_config.py --ts remote --remote_user $(docker_user) --remote_host $(remote_host) --remote_port $(Get-Content port) --remote_pwd $(docker_pwd) --nni_manager_ip $(nni_manager_ip) python generate_ts_config.py --ts remote --remote_user $(docker_user) --remote_host $(remote_host) --remote_port $(Get-Content port) --remote_pwd $(docker_pwd) --nni_manager_ip $(nni_manager_ip)
Get-Content training_service.yml Get-Content training_service.yml
python config_test.py --ts remote --exclude cifar10,smac,bohb python config_test.py --ts remote --exclude cifar10,smac,bohb,multi_phase_batch,multi_phase_grid
displayName: 'integration test' displayName: 'integration test'
- task: SSH@0 - task: SSH@0
inputs: inputs:
......
...@@ -52,7 +52,7 @@ jobs: ...@@ -52,7 +52,7 @@ jobs:
python3 generate_ts_config.py --ts remote --remote_user $(docker_user) --remote_host $(remote_host) \ python3 generate_ts_config.py --ts remote --remote_user $(docker_user) --remote_host $(remote_host) \
--remote_port $(cat port) --remote_pwd $(docker_pwd) --nni_manager_ip $(nni_manager_ip) --remote_port $(cat port) --remote_pwd $(docker_pwd) --nni_manager_ip $(nni_manager_ip)
cat training_service.yml cat training_service.yml
PATH=$HOME/.local/bin:$PATH python3 config_test.py --ts remote --exclude cifar10 PATH=$HOME/.local/bin:$PATH python3 config_test.py --ts remote --exclude cifar10,multi_phase_batch,multi_phase_grid
displayName: 'integration test' displayName: 'integration test'
- task: SSH@0 - task: SSH@0
inputs: inputs:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment