From 3d1e4e9e2b0c3190e80adf6bd36f921aaa1783ff Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Fri, 14 Sep 2018 16:40:27 +0800 Subject: [PATCH 01/20] fix nnictl bug --- tools/nnicmd/nnictl.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/nnicmd/nnictl.py b/tools/nnicmd/nnictl.py index 73b2950a55..9dd9f8dfa9 100644 --- a/tools/nnicmd/nnictl.py +++ b/tools/nnicmd/nnictl.py @@ -29,7 +29,7 @@ def nni_help_info(*args): def parse_args(): '''Definite the arguments users need to follow and input''' - parser = argparse.ArgumentParser(prog='nni ctl', description='use nni control') + parser = argparse.ArgumentParser(prog='nnictl', description='use nnictl command to control nni experiments') parser.set_defaults(func=nni_help_info) # create subparsers for args with sub values From 863d137bc5e7131ec222e58f44da7fa796d382af Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Fri, 28 Sep 2018 17:31:17 +0800 Subject: [PATCH 02/20] add hdfs host validation --- .../pai/paiTrainingService.ts | 63 +++++++++++++------ 1 file changed, 43 insertions(+), 20 deletions(-) diff --git a/src/nni_manager/training_service/pai/paiTrainingService.ts b/src/nni_manager/training_service/pai/paiTrainingService.ts index 8ed0e306f7..569c93291b 100644 --- a/src/nni_manager/training_service/pai/paiTrainingService.ts +++ b/src/nni_manager/training_service/pai/paiTrainingService.ts @@ -64,6 +64,8 @@ class PAITrainingService implements TrainingService { private experimentId! : string; private readonly paiJobCollector : PAIJobInfoCollector; private readonly hdfsDirPattern: string; + private hdfsBaseDir: string | undefined; + private hdfsOutputHost: string | undefined; constructor() { this.log = getLogger(); @@ -131,6 +133,14 @@ class PAITrainingService implements TrainingService { if (!this.paiToken) { throw new Error('PAI token is not initialized'); } + + if(!this.hdfsBaseDir){ + throw new Error('hdfsBaseDir is not initialized'); + } + + if(!this.hdfsOutputHost){ + throw new Error('hdfsOutputHost is not initialized'); + } this.log.info(`submitTrialJob: form: ${JSON.stringify(form)}`); @@ -152,26 +162,11 @@ class PAITrainingService implements TrainingService { // Step 1. Prepare PAI job configuration const paiJobName : string = `nni_exp_${this.experimentId}_trial_${trialJobId}`; const hdfsCodeDir : string = path.join(this.expRootDir, trialJobId); - - const hdfsDirContent = this.paiTrialConfig.outputDir.match(this.hdfsDirPattern); - - if(hdfsDirContent === null) { - throw new Error('Trial outputDir format Error'); - } - const groups = hdfsDirContent.groups; - if(groups === undefined) { - throw new Error('Trial outputDir format Error'); - } - - const hdfsHost = groups['host']; - let hdfsBaseDirectory = groups['baseDir']; - if(hdfsBaseDirectory === undefined) { - hdfsBaseDirectory = "/"; - } - const hdfsOutputDir : string = path.join(hdfsBaseDirectory, this.experimentId, trialJobId); + + const hdfsOutputDir : string = path.join(this.hdfsBaseDir, this.experimentId, trialJobId); const hdfsLogPath : string = String.Format( PAI_LOG_PATH_FORMAT, - hdfsHost, + this.hdfsOutputHost, hdfsOutputDir); const trialJobDetail: PAITrialJobDetail = new PAITrialJobDetail( @@ -193,7 +188,7 @@ class PAITrainingService implements TrainingService { this.paiTrialConfig.command, getIPV4Address(), hdfsOutputDir, - hdfsHost, + this.hdfsOutputHost, this.paiClusterConfig.userName ).replace(/\r\n|\n|\r/gm, ''); @@ -304,7 +299,7 @@ class PAITrainingService implements TrainingService { return deferred.promise; } - public setClusterMetadata(key: string, value: string): Promise { + public async setClusterMetadata(key: string, value: string): Promise { const deferred : Deferred = new Deferred(); switch (key) { @@ -359,6 +354,34 @@ class PAITrainingService implements TrainingService { this.paiClusterConfig.host ).replace(/\r\n|\n|\r/gm, ''); } + + const hdfsDirContent = this.paiTrialConfig.outputDir.match(this.hdfsDirPattern); + + if(hdfsDirContent === null) { + throw new Error('Trial outputDir format Error'); + } + const groups = hdfsDirContent.groups; + if(groups === undefined) { + throw new Error('Trial outputDir format Error'); + } + + this.hdfsOutputHost = groups['host']; + this.hdfsBaseDir = groups['baseDir']; + if(this.hdfsBaseDir === undefined) { + this.hdfsBaseDir = "/"; + } + + const hdfsClient = WebHDFS.createClient({ + user: this.paiClusterConfig.userName, + port: 50070, + host: this.hdfsOutputHost + }); + await HDFSClientUtility.pathExists("/", hdfsClient).then(exist =>{ + console.log(exist) + if(!exist){ + deferred.reject("hdfsOutputDir host incorrect!"); + } + }); deferred.resolve(); break; default: From 7c4bf9bb4292651933e2677495f87cb8b8a67203 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Fri, 28 Sep 2018 20:56:38 +0800 Subject: [PATCH 03/20] fix bugs --- .../training_service/pai/paiTrainingService.ts | 16 +++++++--------- tools/nnicmd/launcher.py | 7 +++++-- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/nni_manager/training_service/pai/paiTrainingService.ts b/src/nni_manager/training_service/pai/paiTrainingService.ts index 569c93291b..d2e26fb5b0 100644 --- a/src/nni_manager/training_service/pai/paiTrainingService.ts +++ b/src/nni_manager/training_service/pai/paiTrainingService.ts @@ -328,11 +328,11 @@ class PAITrainingService implements TrainingService { if (error) { //TODO: should me make the setClusterMetadata's return type to Promise? this.log.error(`Get PAI token failed: ${error.message}`); - deferred.reject(); + deferred.reject(new Error(`Get PAI token failed: ${error.message}`)); } else { if(response.statusCode !== 200){ this.log.error(`Get PAI token failed: get PAI Rest return code ${response.statusCode}`); - deferred.reject(); + deferred.reject(new Error(`Get PAI token failed, please check paiConfig username or password`)); } this.paiToken = body.token; @@ -343,7 +343,7 @@ class PAITrainingService implements TrainingService { case TrialConfigMetadataKey.TRIAL_CONFIG: if (!this.paiClusterConfig){ this.log.error('pai cluster config is not initialized'); - deferred.reject(); + deferred.reject(new Error('pai cluster config is not initialized')); break; } this.paiTrialConfig = JSON.parse(value); @@ -376,12 +376,10 @@ class PAITrainingService implements TrainingService { port: 50070, host: this.hdfsOutputHost }); - await HDFSClientUtility.pathExists("/", hdfsClient).then(exist =>{ - console.log(exist) - if(!exist){ - deferred.reject("hdfsOutputDir host incorrect!"); - } - }); + const exist : boolean = await HDFSClientUtility.pathExists("/", hdfsClient); + if(!exist){ + deferred.reject(new Error(`Please check hdfsOutputDir host!`)); + } deferred.resolve(); break; default: diff --git a/tools/nnicmd/launcher.py b/tools/nnicmd/launcher.py index dfafae87f9..668e99b79b 100644 --- a/tools/nnicmd/launcher.py +++ b/tools/nnicmd/launcher.py @@ -80,6 +80,7 @@ def set_trial_config(experiment_config, port): if check_response(response): return True else: + print('Error message is {}'.format(response.text)) with open(STDERR_FULL_PATH, 'a+') as fout: fout.write(json.dumps(json.loads(response.text), indent=4, sort_keys=True, separators=(',', ':'))) return False @@ -110,7 +111,7 @@ def set_pai_config(experiment_config, port): pai_config_data = dict() pai_config_data['pai_config'] = experiment_config['paiConfig'] response = rest_put(cluster_metadata_url(port), json.dumps(pai_config_data), 20) - err_message = '' + err_message = None if not response or not response.status_code == 200: if response is not None: err_message = response.text @@ -173,6 +174,7 @@ def set_experiment(experiment_config, mode, port): else: with open(STDERR_FULL_PATH, 'a+') as fout: fout.write(json.dumps(json.loads(response.text), indent=4, sort_keys=True, separators=(',', ':'))) + print_error('Setting experiment error, error message is {}'.format(response.text)) return None def launch_experiment(args, experiment_config, mode, webuiport, experiment_id=None): @@ -254,7 +256,8 @@ def launch_experiment(args, experiment_config, mode, webuiport, experiment_id=No if config_result: print_normal('Success!') else: - print_error('Failed! Error is: {}'.format(err_msg)) + if err_msg: + print_error('Failed! Error is: {}'.format(err_msg)) try: cmds = ['pkill', '-P', str(rest_process.pid)] call(cmds) From 3dfce3a24e265328c51f7751ea0658d1c397016c Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Fri, 28 Sep 2018 21:21:21 +0800 Subject: [PATCH 04/20] fix dockerfile --- deployment/Dockerfile.build.base | 2 +- install.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/deployment/Dockerfile.build.base b/deployment/Dockerfile.build.base index 1380ccf3c9..37628603a2 100644 --- a/deployment/Dockerfile.build.base +++ b/deployment/Dockerfile.build.base @@ -42,7 +42,7 @@ RUN pip3 --no-cache-dir install \ # #Install node 10.10.0, yarn 1.9.4, NNI v0.1 # -RUN git clone -b v0.1 https://github.com/Microsoft/nni.git +RUN git clone -b v0.2 https://github.com/Microsoft/nni.git RUN cd nni && sh install.sh RUN echo 'PATH=~/.local/node/bin:~/.local/yarn/bin:~/.local/bin:$PATH' >> ~/.bashrc RUN cd .. && rm -rf nni diff --git a/install.sh b/install.sh index ae83cefb7f..6f5a40d3f1 100644 --- a/install.sh +++ b/install.sh @@ -1,5 +1,5 @@ #!/bin/bash -make build make install-dependencies +make build make dev-install source ~/.bashrc From 30f8feb5965b6db53d77f1442d7bb7db4306b9f4 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sat, 29 Sep 2018 11:05:42 +0800 Subject: [PATCH 05/20] fix install.sh --- install.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/install.sh b/install.sh index 6f5a40d3f1..066dba4b5a 100644 --- a/install.sh +++ b/install.sh @@ -2,4 +2,5 @@ make install-dependencies make build make dev-install +make install-examples source ~/.bashrc From 0926045948b77f98853b424584ff9b6efc573934 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sat, 29 Sep 2018 11:06:51 +0800 Subject: [PATCH 06/20] update install.sh --- install.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/install.sh b/install.sh index 066dba4b5a..0c3d39bcf1 100644 --- a/install.sh +++ b/install.sh @@ -3,4 +3,5 @@ make install-dependencies make build make dev-install make install-examples +make update-bash-config source ~/.bashrc From c3160e4dfa6ee7b7e77dbc58e9d2a70173e410e9 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sat, 29 Sep 2018 12:16:39 +0800 Subject: [PATCH 07/20] fix dockerfile --- deployment/Dockerfile | 4 +++- deployment/Dockerfile.build.base | 9 ++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/deployment/Dockerfile b/deployment/Dockerfile index 9527b87225..d0ddf99587 100644 --- a/deployment/Dockerfile +++ b/deployment/Dockerfile @@ -10,4 +10,6 @@ RUN pip3 --no-cache-dir install tensorflow-gpu==1.10.0 # #Keras 2.1.6 # -RUN pip3 --no-cache-dir install Keras==2.1.6 \ No newline at end of file +RUN pip3 --no-cache-dir install Keras==2.1.6 + +WORKDIR /root \ No newline at end of file diff --git a/deployment/Dockerfile.build.base b/deployment/Dockerfile.build.base index 37628603a2..af87975160 100644 --- a/deployment/Dockerfile.build.base +++ b/deployment/Dockerfile.build.base @@ -40,9 +40,8 @@ RUN pip3 --no-cache-dir install \ numpy==1.14.3 scipy==1.1.0 # -#Install node 10.10.0, yarn 1.9.4, NNI v0.1 +#Install NNI # -RUN git clone -b v0.2 https://github.com/Microsoft/nni.git -RUN cd nni && sh install.sh -RUN echo 'PATH=~/.local/node/bin:~/.local/yarn/bin:~/.local/bin:$PATH' >> ~/.bashrc -RUN cd .. && rm -rf nni +RUN pip3 install -v --user git+https://github.com/Microsoft/nni.git@v0.2 + +WORKDIR /root From d3f68be74a257c37b6de406044ac44a66441cadb Mon Sep 17 00:00:00 2001 From: Deshui Yu Date: Sat, 29 Sep 2018 14:55:47 +0800 Subject: [PATCH 08/20] Set timeout for HDFSUtility exists function --- .../training_service/pai/hdfsClientUtility.ts | 7 ++++++- .../training_service/pai/paiTrainingService.ts | 12 +++++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/nni_manager/training_service/pai/hdfsClientUtility.ts b/src/nni_manager/training_service/pai/hdfsClientUtility.ts index 07dcc2a744..6802a073ce 100644 --- a/src/nni_manager/training_service/pai/hdfsClientUtility.ts +++ b/src/nni_manager/training_service/pai/hdfsClientUtility.ts @@ -21,6 +21,8 @@ import * as path from 'path'; import * as fs from 'fs'; import { Deferred } from 'ts-deferred'; import { getLogger } from '../../common/log'; +import { delay } from '../../common/utils'; +import * as util from 'util'; /** * HDFS client utility, including copy file/directory @@ -131,7 +133,10 @@ export namespace HDFSClientUtility { const deferred : Deferred = new Deferred(); hdfsClient.exists(hdfsPath, (exist : boolean ) => { deferred.resolve(exist); - }) + }); + + // Set timeout and reject the promise once reach timeout (5 seconds) + setTimeout(() => deferred.reject(`Check HDFS path ${hdfsPath} exists timeout`), 5000); return deferred.promise; } diff --git a/src/nni_manager/training_service/pai/paiTrainingService.ts b/src/nni_manager/training_service/pai/paiTrainingService.ts index 7a4978a321..0b2a4bc269 100644 --- a/src/nni_manager/training_service/pai/paiTrainingService.ts +++ b/src/nni_manager/training_service/pai/paiTrainingService.ts @@ -381,10 +381,16 @@ class PAITrainingService implements TrainingService { port: 50070, host: this.hdfsOutputHost }); - const exist : boolean = await HDFSClientUtility.pathExists("/", hdfsClient); - if(!exist){ - deferred.reject(new Error(`Please check hdfsOutputDir host!`)); + + try { + const exist : boolean = await HDFSClientUtility.pathExists("/", hdfsClient); + if(!exist) { + deferred.reject(new Error(`Please check hdfsOutputDir host!`)); + } + } catch(error) { + deferred.reject(new Error(`HDFS encounters problem, error is ${error}. Please check hdfsOutputDir host!`)); } + deferred.resolve(); break; default: From 4959a9337fa7ffcd472a18abc8f8067765b4a4ea Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sat, 29 Sep 2018 16:18:17 +0800 Subject: [PATCH 09/20] remove unused TODO --- src/nni_manager/training_service/pai/paiTrainingService.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/nni_manager/training_service/pai/paiTrainingService.ts b/src/nni_manager/training_service/pai/paiTrainingService.ts index 7a4978a321..af40067e34 100644 --- a/src/nni_manager/training_service/pai/paiTrainingService.ts +++ b/src/nni_manager/training_service/pai/paiTrainingService.ts @@ -331,7 +331,6 @@ class PAITrainingService implements TrainingService { request(authentication_req, (error: Error, response: request.Response, body: any) => { if (error) { - //TODO: should me make the setClusterMetadata's return type to Promise? this.log.error(`Get PAI token failed: ${error.message}`); deferred.reject(new Error(`Get PAI token failed: ${error.message}`)); } else { From b1ae56236948578600fd1016cb68fd18bc3014bd Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sat, 29 Sep 2018 16:46:46 +0800 Subject: [PATCH 10/20] fix sdk --- src/sdk/pynni/nni/platform/local.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/sdk/pynni/nni/platform/local.py b/src/sdk/pynni/nni/platform/local.py index 28856427c0..7a9df82971 100644 --- a/src/sdk/pynni/nni/platform/local.py +++ b/src/sdk/pynni/nni/platform/local.py @@ -30,6 +30,8 @@ _metric_file = open(os.path.join(_sysdir, '.nni', 'metrics'), 'wb') _outputdir = os.environ['NNI_OUTPUT_DIR'] +if not os.path.exists(_outputdir): + os.makedirs(_outputdir) _log_file_path = os.path.join(_outputdir, 'trial.log') init_logger(_log_file_path) From 7c571b2853cfcd46561b2dd61ebd1b3a2028fcd5 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sat, 29 Sep 2018 17:31:40 +0800 Subject: [PATCH 11/20] add optional for outputDir and dataDir --- tools/nnicmd/config_schema.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/nnicmd/config_schema.py b/tools/nnicmd/config_schema.py index 83b476d0c2..d6299256bd 100644 --- a/tools/nnicmd/config_schema.py +++ b/tools/nnicmd/config_schema.py @@ -74,8 +74,8 @@ 'cpuNum': And(int, lambda x: 0 <= x <= 99999), 'memoryMB': int, 'image': str, - 'dataDir': Regex(r'hdfs://(([0-9]{1,3}.){3}[0-9]{1,3})(:[0-9]{2,5})?(/.*)?'), - 'outputDir': Regex(r'hdfs://(([0-9]{1,3}.){3}[0-9]{1,3})(:[0-9]{2,5})?(/.*)?') + Optional('dataDir'): Regex(r'hdfs://(([0-9]{1,3}.){3}[0-9]{1,3})(:[0-9]{2,5})?(/.*)?'), + Optional('outputDir'): Regex(r'hdfs://(([0-9]{1,3}.){3}[0-9]{1,3})(:[0-9]{2,5})?(/.*)?') } } From 974469297aae30fe4871b5deef574fd8f2206d34 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sat, 29 Sep 2018 17:48:21 +0800 Subject: [PATCH 12/20] refactor dockerfile.base --- deployment/Dockerfile.build.base | 58 ++++++++++++++++++++++++++------ 1 file changed, 47 insertions(+), 11 deletions(-) diff --git a/deployment/Dockerfile.build.base b/deployment/Dockerfile.build.base index af87975160..56315a3b5f 100644 --- a/deployment/Dockerfile.build.base +++ b/deployment/Dockerfile.build.base @@ -22,26 +22,62 @@ FROM nvidia/cuda:9.0-cudnn7-devel-ubuntu16.04 LABEL maintainer='Microsoft NNI Team' -RUN apt-get update && apt-get install -y --no-install-recommends \ - sudo apt-utils git curl vim unzip openssh-client wget \ - build-essential cmake \ - libopenblas-dev +ENV HADOOP_VERSION=2.7.2 +LABEL HADOOP_VERSION=2.7.2 -# -# Python 3.5 -# -RUN apt-get install -y --no-install-recommends python3.5 python3.5-dev python3-pip python3-tk && \ - pip3 install --no-cache-dir --upgrade pip setuptools && \ - echo "alias python='python3'" >> /root/.bash_aliases && \ - echo "alias pip='pip3'" >> /root/.bash_aliases +RUN DEBIAN_FRONTEND=noninteractive && \ + apt-get -y update && \ + apt-get -y install sudo \ + apt-utils \ + git \ + curl \ + vim \ + unzip \ + wget \ + build-essential \ + cmake \ + libopenblas-dev \ + automake \ + openjdk-8-jdk \ + openssh-client \ + openssh-server \ + lsof \ + python3.5 \ + python3-dev \ + python3-pip \ + python3-tk \ + libcupti-dev && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* # numpy 1.14.3 scipy 1.1.0 RUN pip3 --no-cache-dir install \ numpy==1.14.3 scipy==1.1.0 +# +#Install hadoop +# +RUN wget -qO- http://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz | \ + tar xz -C /usr/local && \ + mv /usr/local/hadoop-${HADOOP_VERSION} /usr/local/hadoop + # #Install NNI # RUN pip3 install -v --user git+https://github.com/Microsoft/nni.git@v0.2 +ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \ + HADOOP_INSTALL=/usr/local/hadoop \ + NVIDIA_VISIBLE_DEVICES=all + +ENV HADOOP_PREFIX=${HADOOP_INSTALL} \ + HADOOP_BIN_DIR=${HADOOP_INSTALL}/bin \ + HADOOP_SBIN_DIR=${HADOOP_INSTALL}/sbin \ + HADOOP_HDFS_HOME=${HADOOP_INSTALL} \ + HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_INSTALL}/lib/native \ + HADOOP_OPTS="-Djava.library.path=${HADOOP_INSTALL}/lib/native" + +ENV PATH=/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/root/.local/bin:/usr/bin:/sbin:/bin:${HADOOP_BIN_DIR}:${HADOOP_SBIN_DIR} \ + LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64:/usr/local/cuda/lib64:/usr/local/cuda/targets/x86_64-linux/lib/stubs:${JAVA_HOME}/jre/lib/amd64/server + WORKDIR /root From 2fe73a628c041cf0787034bbccd75f28429e7516 Mon Sep 17 00:00:00 2001 From: Deshui Yu Date: Sat, 29 Sep 2018 18:02:44 +0800 Subject: [PATCH 13/20] Remove unused import in hdfsclientUtility --- src/nni_manager/training_service/pai/hdfsClientUtility.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/nni_manager/training_service/pai/hdfsClientUtility.ts b/src/nni_manager/training_service/pai/hdfsClientUtility.ts index 6802a073ce..69fc383e6d 100644 --- a/src/nni_manager/training_service/pai/hdfsClientUtility.ts +++ b/src/nni_manager/training_service/pai/hdfsClientUtility.ts @@ -21,8 +21,6 @@ import * as path from 'path'; import * as fs from 'fs'; import { Deferred } from 'ts-deferred'; import { getLogger } from '../../common/log'; -import { delay } from '../../common/utils'; -import * as util from 'util'; /** * HDFS client utility, including copy file/directory From f5fdeab791a9d89a11fd8257e7e4995107501da4 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sun, 30 Sep 2018 11:10:34 +0800 Subject: [PATCH 14/20] add config_pai.yml --- examples/trials/auto-gbdt/config.yml | 2 +- examples/trials/auto-gbdt/config_pai.yml | 30 +++++++++++++++++++ examples/trials/ga_squad/config.yml | 4 +-- examples/trials/ga_squad/config_pai.yml | 28 +++++++++++++++++ examples/trials/mnist-annotation/config.yml | 2 +- .../trials/mnist-annotation/config_pai.yml | 29 ++++++++++++++++++ .../trials/mnist-batch-tune-keras/config.yml | 2 +- .../mnist-batch-tune-keras/config_pai.yml | 30 +++++++++++++++++++ examples/trials/mnist-keras/config.yml | 2 +- examples/trials/mnist-keras/config_pai.yml | 30 +++++++++++++++++++ examples/trials/mnist-smartparam/config.yml | 2 +- .../trials/mnist-smartparam/config_pai.yml | 29 ++++++++++++++++++ examples/trials/mnist/config.yml | 2 +- examples/trials/mnist/config_pai.yml | 30 +++++++++++++++++++ examples/trials/pytorch_cifar10/config.yml | 2 +- .../trials/pytorch_cifar10/config_pai.yml | 30 +++++++++++++++++++ 16 files changed, 245 insertions(+), 9 deletions(-) create mode 100644 examples/trials/auto-gbdt/config_pai.yml create mode 100644 examples/trials/ga_squad/config_pai.yml create mode 100644 examples/trials/mnist-annotation/config_pai.yml create mode 100644 examples/trials/mnist-batch-tune-keras/config_pai.yml create mode 100644 examples/trials/mnist-keras/config_pai.yml create mode 100644 examples/trials/mnist-smartparam/config_pai.yml create mode 100644 examples/trials/mnist/config_pai.yml create mode 100644 examples/trials/pytorch_cifar10/config_pai.yml diff --git a/examples/trials/auto-gbdt/config.yml b/examples/trials/auto-gbdt/config.yml index 8a2569d1a8..e6f3b963ac 100644 --- a/examples/trials/auto-gbdt/config.yml +++ b/examples/trials/auto-gbdt/config.yml @@ -3,7 +3,7 @@ experimentName: example_auto-gbdt trialConcurrency: 1 maxExecDuration: 10h maxTrialNum: 10 -#choice: local, remote +#choice: local, remote, pai trainingServicePlatform: local searchSpacePath: search_space.json #choice: true, false diff --git a/examples/trials/auto-gbdt/config_pai.yml b/examples/trials/auto-gbdt/config_pai.yml new file mode 100644 index 0000000000..0cfd2f5296 --- /dev/null +++ b/examples/trials/auto-gbdt/config_pai.yml @@ -0,0 +1,30 @@ +authorName: default +experimentName: example_auto-gbdt +trialConcurrency: 1 +maxExecDuration: 10h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +searchSpacePath: search_space.json +#choice: true, false +useAnnotation: false +tuner: + #choice: TPE, Random, Anneal, Evolution, + #SMAC (SMAC should be installed through nnictl) + builtinTunerName: TPE + classArgs: + #choice: maximize, minimize + optimize_mode: minimize +trial: + command: python3 main.py + codeDir: . + gpuNum: 0 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 \ No newline at end of file diff --git a/examples/trials/ga_squad/config.yml b/examples/trials/ga_squad/config.yml index a0b1480992..d693f3c5cf 100644 --- a/examples/trials/ga_squad/config.yml +++ b/examples/trials/ga_squad/config.yml @@ -3,8 +3,8 @@ experimentName: example_ga_squad trialConcurrency: 1 maxExecDuration: 1h maxTrialNum: 10 -#choice: local, remote -trainingServicePlatform: local +#choice: local, remote, pai +trainingServicePlatform: pai #choice: true, false useAnnotation: false tuner: diff --git a/examples/trials/ga_squad/config_pai.yml b/examples/trials/ga_squad/config_pai.yml new file mode 100644 index 0000000000..f54fd93a0a --- /dev/null +++ b/examples/trials/ga_squad/config_pai.yml @@ -0,0 +1,28 @@ +authorName: default +experimentName: example_ga_squad +trialConcurrency: 1 +maxExecDuration: 1h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +#choice: true, false +useAnnotation: false +tuner: + codeDir: ../tuners/ga_customer_tuner + classFileName: customer_tuner.py + className: CustomerTuner + classArgs: + optimize_mode: maximize +trial: + command: python3 trial.py + codeDir: . + gpuNum: 0 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 \ No newline at end of file diff --git a/examples/trials/mnist-annotation/config.yml b/examples/trials/mnist-annotation/config.yml index 84c31166a8..b0555ad3a2 100644 --- a/examples/trials/mnist-annotation/config.yml +++ b/examples/trials/mnist-annotation/config.yml @@ -3,7 +3,7 @@ experimentName: example_mnist trialConcurrency: 1 maxExecDuration: 1h maxTrialNum: 10 -#choice: local, remote +#choice: local, remote, pai trainingServicePlatform: local #choice: true, false useAnnotation: true diff --git a/examples/trials/mnist-annotation/config_pai.yml b/examples/trials/mnist-annotation/config_pai.yml new file mode 100644 index 0000000000..b239502002 --- /dev/null +++ b/examples/trials/mnist-annotation/config_pai.yml @@ -0,0 +1,29 @@ +authorName: default +experimentName: example_mnist +trialConcurrency: 1 +maxExecDuration: 1h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +#choice: true, false +useAnnotation: true +tuner: + #choice: TPE, Random, Anneal, Evolution, + #SMAC (SMAC should be installed through nnictl) + builtinTunerName: TPE + classArgs: + #choice: maximize, minimize + optimize_mode: maximize +trial: + command: python3 mnist.py + codeDir: . + gpuNum: 0 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 \ No newline at end of file diff --git a/examples/trials/mnist-batch-tune-keras/config.yml b/examples/trials/mnist-batch-tune-keras/config.yml index 1bb85085c5..e0722f9117 100644 --- a/examples/trials/mnist-batch-tune-keras/config.yml +++ b/examples/trials/mnist-batch-tune-keras/config.yml @@ -3,7 +3,7 @@ experimentName: example_mnist-keras trialConcurrency: 1 maxExecDuration: 1h maxTrialNum: 10 -#choice: local, remote +#choice: local, remote, pai trainingServicePlatform: local searchSpacePath: search_space.json #choice: true, false diff --git a/examples/trials/mnist-batch-tune-keras/config_pai.yml b/examples/trials/mnist-batch-tune-keras/config_pai.yml new file mode 100644 index 0000000000..c14601a002 --- /dev/null +++ b/examples/trials/mnist-batch-tune-keras/config_pai.yml @@ -0,0 +1,30 @@ +authorName: default +experimentName: example_mnist-keras +trialConcurrency: 1 +maxExecDuration: 1h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +searchSpacePath: search_space.json +#choice: true, false +useAnnotation: false +tuner: + #choice: TPE, Random, Anneal, Evolution, BatchTuner + #SMAC (SMAC should be installed through nnictl) + builtinTunerName: BatchTuner + classArgs: + #choice: maximize, minimize + optimize_mode: maximize +trial: + command: python3 mnist-keras.py + codeDir: . + gpuNum: 0 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 \ No newline at end of file diff --git a/examples/trials/mnist-keras/config.yml b/examples/trials/mnist-keras/config.yml index c1792e2a65..6ea1c2a367 100644 --- a/examples/trials/mnist-keras/config.yml +++ b/examples/trials/mnist-keras/config.yml @@ -3,7 +3,7 @@ experimentName: example_mnist-keras trialConcurrency: 1 maxExecDuration: 1h maxTrialNum: 10 -#choice: local, remote +#choice: local, remote, pai trainingServicePlatform: local searchSpacePath: search_space.json #choice: true, false diff --git a/examples/trials/mnist-keras/config_pai.yml b/examples/trials/mnist-keras/config_pai.yml new file mode 100644 index 0000000000..d73b42411d --- /dev/null +++ b/examples/trials/mnist-keras/config_pai.yml @@ -0,0 +1,30 @@ +authorName: default +experimentName: example_mnist-keras +trialConcurrency: 1 +maxExecDuration: 1h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +searchSpacePath: search_space.json +#choice: true, false +useAnnotation: false +tuner: + #choice: TPE, Random, Anneal, Evolution, + #SMAC (SMAC should be installed through nnictl) + builtinTunerName: TPE + classArgs: + #choice: maximize, minimize + optimize_mode: maximize +trial: + command: python3 mnist-keras.py + codeDir: . + gpuNum: 0 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 \ No newline at end of file diff --git a/examples/trials/mnist-smartparam/config.yml b/examples/trials/mnist-smartparam/config.yml index a69e801ed8..912eabb24e 100644 --- a/examples/trials/mnist-smartparam/config.yml +++ b/examples/trials/mnist-smartparam/config.yml @@ -3,7 +3,7 @@ experimentName: example_mnist-smartparam trialConcurrency: 1 maxExecDuration: 1h maxTrialNum: 10 -#choice: local, remote +#choice: local, remote, pai trainingServicePlatform: local #choice: true, false useAnnotation: true diff --git a/examples/trials/mnist-smartparam/config_pai.yml b/examples/trials/mnist-smartparam/config_pai.yml new file mode 100644 index 0000000000..6c2861d8a8 --- /dev/null +++ b/examples/trials/mnist-smartparam/config_pai.yml @@ -0,0 +1,29 @@ +authorName: default +experimentName: example_mnist-smartparam +trialConcurrency: 1 +maxExecDuration: 1h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +#choice: true, false +useAnnotation: true +tuner: + #choice: TPE, Random, Anneal, Evolution, + #SMAC (SMAC should be installed through nnictl) + builtinTunerName: TPE + classArgs: + #choice: maximize, minimize + optimize_mode: maximize +trial: + command: python3 mnist.py + codeDir: . + gpuNum: 0 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 \ No newline at end of file diff --git a/examples/trials/mnist/config.yml b/examples/trials/mnist/config.yml index 5eab536228..2f6141fa45 100644 --- a/examples/trials/mnist/config.yml +++ b/examples/trials/mnist/config.yml @@ -3,7 +3,7 @@ experimentName: example_mnist trialConcurrency: 1 maxExecDuration: 1h maxTrialNum: 10 -#choice: local, remote +#choice: local, remote, pai trainingServicePlatform: local searchSpacePath: search_space.json #choice: true, false diff --git a/examples/trials/mnist/config_pai.yml b/examples/trials/mnist/config_pai.yml new file mode 100644 index 0000000000..f8a344efc5 --- /dev/null +++ b/examples/trials/mnist/config_pai.yml @@ -0,0 +1,30 @@ +authorName: default +experimentName: example_mnist +trialConcurrency: 1 +maxExecDuration: 1h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +searchSpacePath: search_space.json +#choice: true, false +useAnnotation: false +tuner: + #choice: TPE, Random, Anneal, Evolution, + #SMAC (SMAC should be installed through nnictl) + builtinTunerName: TPE + classArgs: + #choice: maximize, minimize + optimize_mode: maximize +trial: + command: python3 mnist.py + codeDir: . + gpuNum: 0 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 \ No newline at end of file diff --git a/examples/trials/pytorch_cifar10/config.yml b/examples/trials/pytorch_cifar10/config.yml index 655dccd95f..1d6f847805 100644 --- a/examples/trials/pytorch_cifar10/config.yml +++ b/examples/trials/pytorch_cifar10/config.yml @@ -3,7 +3,7 @@ experimentName: example_pytorch_cifar10 trialConcurrency: 1 maxExecDuration: 100h maxTrialNum: 10 -#choice: local, remote +#choice: local, remote, pai trainingServicePlatform: local searchSpacePath: search_space.json #choice: true, false diff --git a/examples/trials/pytorch_cifar10/config_pai.yml b/examples/trials/pytorch_cifar10/config_pai.yml new file mode 100644 index 0000000000..3a60cbf0d0 --- /dev/null +++ b/examples/trials/pytorch_cifar10/config_pai.yml @@ -0,0 +1,30 @@ +authorName: default +experimentName: example_pytorch_cifar10 +trialConcurrency: 1 +maxExecDuration: 100h +maxTrialNum: 10 +#choice: local, remote, pai +trainingServicePlatform: pai +searchSpacePath: search_space.json +#choice: true, false +useAnnotation: false +tuner: + #choice: TPE, Random, Anneal, Evolution, + #SMAC (SMAC should be installed through nnictl) + builtinTunerName: TPE + classArgs: + #choice: maximize, minimize + optimize_mode: maximize +trial: + command: python3 main.py + codeDir: . + gpuNum: 1 + cpuNum: 1 + memoryMB: 8196 + image: openpai/pai.example.tensorflow + hdfsDataDir: hdfs://1.1.1.1:9000/username + hdfsOutputDir: hdfs://1.1.1.1:9000/username +paiConfig: + userName: username + passWord: password + host: 1.1.1.1 From c5373f07da082cf5f389c8496361a2492887e9a9 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sun, 30 Sep 2018 13:14:37 +0800 Subject: [PATCH 15/20] refactor nnictl create logic and add colorful print --- tools/nnicmd/common_utils.py | 8 ++++-- tools/nnicmd/constants.py | 33 ++++++++++++++++++------- tools/nnicmd/launcher.py | 47 +++++++++++++++++------------------- 3 files changed, 52 insertions(+), 36 deletions(-) diff --git a/tools/nnicmd/common_utils.py b/tools/nnicmd/common_utils.py index bb2a4f236c..05afed1e28 100644 --- a/tools/nnicmd/common_utils.py +++ b/tools/nnicmd/common_utils.py @@ -21,7 +21,7 @@ import json import yaml import psutil -from .constants import ERROR_INFO, NORMAL_INFO +from .constants import ERROR_INFO, NORMAL_INFO, WARNING_INFO, COLOR_RED_FORMAT, COLOR_YELLOW_FORMAT def get_yml_content(file_path): '''Load yaml file content''' @@ -43,12 +43,16 @@ def get_json_content(file_path): def print_error(content): '''Print error information to screen''' - print(ERROR_INFO % content) + print(COLOR_RED_FORMAT % (ERROR_INFO % content)) def print_normal(content): '''Print error information to screen''' print(NORMAL_INFO % content) +def print_warning(content): + '''Print warning information to screen''' + print(COLOR_YELLOW_FORMAT % (WARNING_INFO % content)) + def detect_process(pid): '''Detect if a process is alive''' try: diff --git a/tools/nnicmd/constants.py b/tools/nnicmd/constants.py index b03b1bdcbe..14467f02ed 100644 --- a/tools/nnicmd/constants.py +++ b/tools/nnicmd/constants.py @@ -34,22 +34,37 @@ STDERR_FULL_PATH = os.path.join(LOG_DIR, 'stderr') -ERROR_INFO = 'Error: %s' +ERROR_INFO = 'ERROR: %s' -NORMAL_INFO = 'Info: %s' +NORMAL_INFO = 'INFO: %s' -WARNING_INFO = 'Waining: %s' +WARNING_INFO = 'WARNING: %s' -EXPERIMENT_SUCCESS_INFO = 'Start experiment success! The experiment id is %s, and the restful server post is %s.\n' \ - 'You can use these commands to get more information about this experiment:\n' \ +EXPERIMENT_SUCCESS_INFO = '\033[1;32;32mSuccessfully started experiment!\n\033[0m' \ + '-----------------------------------------------------------------------\n' \ + 'The experiment id is %s\n'\ + 'The restful server post is %s\n' \ + 'The Web UI urls are: %s\n' \ + '-----------------------------------------------------------------------\n\n' \ + 'You can use these commands to get more information about the experiment\n' \ + '-----------------------------------------------------------------------\n' \ ' commands description\n' \ '1. nnictl experiment show show the information of experiments\n' \ '2. nnictl trial ls list all of trial jobs\n' \ - '3. nnictl stop stop a experiment\n' \ - '4. nnictl trial kill kill a trial job by id\n' \ - '5. nnictl --help get help information about nnictl\n' \ - '6. nnictl webui url get the url of web ui' + '3. nnictl log stderr show stderr log content\n' \ + '4. nnictl log stdout show stdout log content\n' \ + '5. nnictl stop stop a experiment\n' \ + '6. nnictl trial kill kill a trial job by id\n' \ + '7. nnictl webui url get the url of web ui\n' \ + '8. nnictl --help get help information about nnictl\n' \ + '-----------------------------------------------------------------------\n' \ PACKAGE_REQUIREMENTS = { 'SMAC': 'smac_tuner' } + +COLOR_RED_FORMAT = '\033[1;31;31m%s\033[0m' + +COLOR_GREEN_FORMAT = '\033[1;32;32m%s\033[0m' + +COLOR_YELLOW_FORMAT = '\033[1;33;33m%s\033[0m' \ No newline at end of file diff --git a/tools/nnicmd/launcher.py b/tools/nnicmd/launcher.py index 6570a75eee..78eb999851 100644 --- a/tools/nnicmd/launcher.py +++ b/tools/nnicmd/launcher.py @@ -30,13 +30,13 @@ from .rest_utils import rest_put, rest_post, check_rest_server, check_rest_server_quick, check_response from .url_utils import cluster_metadata_url, experiment_url from .config_utils import Config -from .common_utils import get_yml_content, get_json_content, print_error, print_normal, detect_process -from .constants import EXPERIMENT_SUCCESS_INFO, STDOUT_FULL_PATH, STDERR_FULL_PATH, LOG_DIR, REST_PORT, ERROR_INFO, NORMAL_INFO +from .common_utils import get_yml_content, get_json_content, print_error, print_normal, print_warning, detect_process +from .constants import * from .webui_utils import start_web_ui, check_web_ui def start_rest_server(port, platform, mode, experiment_id=None): '''Run nni manager process''' - print_normal('Checking experiment...') + print_normal('Checking environment...') nni_config = Config() rest_port = nni_config.get_config('restServerPort') running, _ = check_rest_server_quick(rest_port) @@ -204,10 +204,9 @@ def launch_experiment(args, experiment_config, mode, webuiport, experiment_id=No experiment_config['searchSpace'] = json.dumps('') # check rest server - print_normal('Checking restful server...') running, _ = check_rest_server(REST_PORT) if running: - print_normal('Restful server start success!') + print_normal('Successfully started Restful server!') else: print_error('Restful server start failed!') try: @@ -236,7 +235,7 @@ def launch_experiment(args, experiment_config, mode, webuiport, experiment_id=No if experiment_config['trainingServicePlatform'] == 'local': print_normal('Setting local config...') if set_local_config(experiment_config, REST_PORT): - print_normal('Success!') + print_normal('Successfully set local config!') else: print_error('Failed!') try: @@ -251,7 +250,7 @@ def launch_experiment(args, experiment_config, mode, webuiport, experiment_id=No print_normal('Setting pai config...') config_result, err_msg = set_pai_config(experiment_config, REST_PORT) if config_result: - print_normal('Success!') + print_normal('Successfully set pai config!') else: if err_msg: print_error('Failed! Error is: {}'.format(err_msg)) @@ -259,8 +258,19 @@ def launch_experiment(args, experiment_config, mode, webuiport, experiment_id=No cmds = ['pkill', '-P', str(rest_process.pid)] call(cmds) except Exception: - raise Exception(ERROR_INFO % 'Rest server stopped!') + raise Exception(ERROR_INFO % 'Restful server stopped!') exit(0) + + #start webui + if check_web_ui(): + print_warning('{0} {1}'.format(' '.join(nni_config.get_config('webuiUrl')),'is being used, please stop it first!')) + print_normal('You can use \'nnictl webui stop\' to stop old Web UI process...') + else: + print_normal('Starting Web UI...') + webui_process = start_web_ui(webuiport) + if webui_process: + nni_config.set_config('webuiPid', webui_process.pid) + print_normal('Successfully started Web UI!') # start a new experiment print_normal('Starting experiment...') @@ -274,25 +284,12 @@ def launch_experiment(args, experiment_config, mode, webuiport, experiment_id=No try: cmds = ['pkill', '-P', str(rest_process.pid)] call(cmds) + cmds = ['pkill', '-P', str(webui_process.pid)] + call(cmds) except Exception: - raise Exception(ERROR_INFO % 'Rest server stopped!') + raise Exception(ERROR_INFO % 'Restful server stopped!') exit(0) - - #start webui - print_normal('Checking web ui...') - if check_web_ui(): - print_error('{0} {1}'.format(' '.join(nni_config.get_config('webuiUrl')),'is being used, please stop it first!')) - print_normal('You can use \'nnictl webui stop\' to stop old web ui process...') - else: - print_normal('Starting web ui...') - webui_process = start_web_ui(webuiport) - if webui_process: - nni_config.set_config('webuiPid', webui_process.pid) - print_normal('Starting web ui success!') - print_normal('{0} {1}'.format('Web UI url:', ' '.join(nni_config.get_config('webuiUrl')))) - - print_normal(EXPERIMENT_SUCCESS_INFO % (experiment_id, REST_PORT)) - + print_normal(EXPERIMENT_SUCCESS_INFO % (experiment_id, REST_PORT, ' '.join(nni_config.get_config('webuiUrl')))) def resume_experiment(args): '''resume an experiment''' From 349c0a79ac0cd78211c618af657aa5ad0764d1f9 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sun, 30 Sep 2018 13:19:42 +0800 Subject: [PATCH 16/20] fix nnictl stop logic --- tools/nnicmd/nnictl_utils.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/nnicmd/nnictl_utils.py b/tools/nnicmd/nnictl_utils.py index 2b7628ec67..d071741f5b 100644 --- a/tools/nnicmd/nnictl_utils.py +++ b/tools/nnicmd/nnictl_utils.py @@ -64,17 +64,20 @@ def stop_experiment(args): stop_web_ui() return running, _ = check_rest_server_quick(rest_port) + stop_rest_result = True if running: response = rest_delete(experiment_url(rest_port), 20) if not response or not check_response(response): print_error('Stop experiment failed!') + stop_rest_result = False #sleep to wait rest handler done time.sleep(3) rest_pid = nni_config.get_config('restServerPid') cmds = ['pkill', '-P', str(rest_pid)] call(cmds) stop_web_ui() - print_normal('Stop experiment success!') + if stop_rest_result: + print_normal('Stop experiment success!') def trial_ls(args): '''List trial''' From 64e8d7d43d816ca711491096eae30eae87e4d7d8 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sun, 30 Sep 2018 13:41:25 +0800 Subject: [PATCH 17/20] add annotation for config_pai.yml --- examples/trials/auto-gbdt/config_pai.yml | 12 +++++++++--- examples/trials/ga_squad/config_pai.yml | 12 +++++++++--- examples/trials/mnist-annotation/config_pai.yml | 12 +++++++++--- .../trials/mnist-batch-tune-keras/config_pai.yml | 12 +++++++++--- examples/trials/mnist-keras/config_pai.yml | 12 +++++++++--- examples/trials/mnist-smartparam/config_pai.yml | 12 +++++++++--- examples/trials/mnist/config_pai.yml | 12 +++++++++--- examples/trials/pytorch_cifar10/config_pai.yml | 12 +++++++++--- 8 files changed, 72 insertions(+), 24 deletions(-) diff --git a/examples/trials/auto-gbdt/config_pai.yml b/examples/trials/auto-gbdt/config_pai.yml index 0cfd2f5296..26577cf83a 100644 --- a/examples/trials/auto-gbdt/config_pai.yml +++ b/examples/trials/auto-gbdt/config_pai.yml @@ -21,10 +21,16 @@ trial: gpuNum: 0 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 \ No newline at end of file + #The host of restful server of pai + host: 10.10.10.10 \ No newline at end of file diff --git a/examples/trials/ga_squad/config_pai.yml b/examples/trials/ga_squad/config_pai.yml index f54fd93a0a..56c2d33069 100644 --- a/examples/trials/ga_squad/config_pai.yml +++ b/examples/trials/ga_squad/config_pai.yml @@ -19,10 +19,16 @@ trial: gpuNum: 0 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 \ No newline at end of file + #The host of restful server of pai + host: 10.10.10.10 \ No newline at end of file diff --git a/examples/trials/mnist-annotation/config_pai.yml b/examples/trials/mnist-annotation/config_pai.yml index b239502002..edb9e62384 100644 --- a/examples/trials/mnist-annotation/config_pai.yml +++ b/examples/trials/mnist-annotation/config_pai.yml @@ -20,10 +20,16 @@ trial: gpuNum: 0 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 \ No newline at end of file + #The host of restful server of pai + host: 10.10.10.10 \ No newline at end of file diff --git a/examples/trials/mnist-batch-tune-keras/config_pai.yml b/examples/trials/mnist-batch-tune-keras/config_pai.yml index c14601a002..183c220e2d 100644 --- a/examples/trials/mnist-batch-tune-keras/config_pai.yml +++ b/examples/trials/mnist-batch-tune-keras/config_pai.yml @@ -21,10 +21,16 @@ trial: gpuNum: 0 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 \ No newline at end of file + #The host of restful server of pai + host: 10.10.10.10 \ No newline at end of file diff --git a/examples/trials/mnist-keras/config_pai.yml b/examples/trials/mnist-keras/config_pai.yml index d73b42411d..bbf8136144 100644 --- a/examples/trials/mnist-keras/config_pai.yml +++ b/examples/trials/mnist-keras/config_pai.yml @@ -21,10 +21,16 @@ trial: gpuNum: 0 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 \ No newline at end of file + #The host of restful server of pai + host: 10.10.10.10 \ No newline at end of file diff --git a/examples/trials/mnist-smartparam/config_pai.yml b/examples/trials/mnist-smartparam/config_pai.yml index 6c2861d8a8..4b5a088d11 100644 --- a/examples/trials/mnist-smartparam/config_pai.yml +++ b/examples/trials/mnist-smartparam/config_pai.yml @@ -20,10 +20,16 @@ trial: gpuNum: 0 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 \ No newline at end of file + #The host of restful server of pai + host: 10.10.10.10 \ No newline at end of file diff --git a/examples/trials/mnist/config_pai.yml b/examples/trials/mnist/config_pai.yml index f8a344efc5..a20fdce40b 100644 --- a/examples/trials/mnist/config_pai.yml +++ b/examples/trials/mnist/config_pai.yml @@ -21,10 +21,16 @@ trial: gpuNum: 0 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 \ No newline at end of file + #The host of restful server of pai + host: 10.10.10.10 \ No newline at end of file diff --git a/examples/trials/pytorch_cifar10/config_pai.yml b/examples/trials/pytorch_cifar10/config_pai.yml index 3a60cbf0d0..783285f815 100644 --- a/examples/trials/pytorch_cifar10/config_pai.yml +++ b/examples/trials/pytorch_cifar10/config_pai.yml @@ -21,10 +21,16 @@ trial: gpuNum: 1 cpuNum: 1 memoryMB: 8196 + #The docker image to run nni job on pai image: openpai/pai.example.tensorflow - hdfsDataDir: hdfs://1.1.1.1:9000/username - hdfsOutputDir: hdfs://1.1.1.1:9000/username + #The hdfs directory to store data on pai, format 'hdfs://host:port/directory' + hdfsDataDir: hdfs://10.10.10.10:9000/username/nni + #The hdfs directory to store output data generated by nni, format 'hdfs://host:port/directory' + hdfsOutputDir: hdfs://10.10.10.10:9000/username/nni paiConfig: + #The username to login pai userName: username + #The password to login pai passWord: password - host: 1.1.1.1 + #The host of restful server of pai + host: 10.10.10.10 From f8c8ddbe240b2d96750ac4a224062ecedb1abc34 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sun, 30 Sep 2018 16:26:15 +0800 Subject: [PATCH 18/20] add document for start experiment --- docs/StartExperiment.md | 33 ++++++++++++++++++++++++++++++++ docs/img/experiment_process.jpg | Bin 0 -> 302899 bytes 2 files changed, 33 insertions(+) create mode 100644 docs/StartExperiment.md create mode 100644 docs/img/experiment_process.jpg diff --git a/docs/StartExperiment.md b/docs/StartExperiment.md new file mode 100644 index 0000000000..e3477a39b5 --- /dev/null +++ b/docs/StartExperiment.md @@ -0,0 +1,33 @@ +How to start an experiment +=== +## 1.Introduce +There are few steps to start an new experiment of nni, here are the process. + +## 2.Details +### 2.1 Check environment +The first step to start an experiment is to check whether the environment is ready, nnictl will check if there is an old experiment running or the port of restfurl server is occupied. +NNICTL will also validate the content of config yaml file, to ensure the experiment config is in correct format. + +### 2.2 Check restful server +After check environment, nnictl will start an restful server process to manage nni experiment, the devault port is 51188. + +### 2.3 Check restful server +Before next steps, nnictl will check whether restful server is successfully started, or the starting process will stop and show error message. + +### 2.4 Set experiment config +NNICTL need to set experiment config before start an experiment, experiment config includes the config values in config yaml file. + +### 2.5 Check experiment cofig +NNICTL will ensure the request to set config is successfully executed. + +### 2.6 Start Web UI +NNICTL will start a Web UI process to show Web UI information,the default port of Web UI is 8080. + +### 2.7 Check Web UI +If Web UI is not successfully started, nnictl will give a warning information, and will continue to start experiment. + +### 2.8 Start Experiment +This is the most import step of starting an nni experiment, nnictl will call restful server process to setup an experiment. + +### 2.9 Check experiment +After start experiment, nnictl will check whether the experiment is correctly created, and show more information of this experiment to users. \ No newline at end of file diff --git a/docs/img/experiment_process.jpg b/docs/img/experiment_process.jpg new file mode 100644 index 0000000000000000000000000000000000000000..141e41cad940c2299b4841af539a7fe8168b1576 GIT binary patch literal 302899 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

UqdWXvw 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 H(b)e1A^y)! literal 0 HcmV?d00001 From 60eae233e85dbf23ed3d796156000e3d9d926303 Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sun, 30 Sep 2018 16:40:31 +0800 Subject: [PATCH 19/20] fix config.yml --- examples/trials/ga_squad/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/trials/ga_squad/config.yml b/examples/trials/ga_squad/config.yml index d693f3c5cf..c6fec5bcbc 100644 --- a/examples/trials/ga_squad/config.yml +++ b/examples/trials/ga_squad/config.yml @@ -4,7 +4,7 @@ trialConcurrency: 1 maxExecDuration: 1h maxTrialNum: 10 #choice: local, remote, pai -trainingServicePlatform: pai +trainingServicePlatform: local #choice: true, false useAnnotation: false tuner: From 8bb958c99e533b95fb9fdfb6a36310e20a10599e Mon Sep 17 00:00:00 2001 From: "Shinai Yang (FA TALENT)" Date: Sun, 30 Sep 2018 16:51:03 +0800 Subject: [PATCH 20/20] fix document --- docs/StartExperiment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/StartExperiment.md b/docs/StartExperiment.md index e3477a39b5..30f736ff15 100644 --- a/docs/StartExperiment.md +++ b/docs/StartExperiment.md @@ -8,7 +8,7 @@ There are few steps to start an new experiment of nni, here are the process. The first step to start an experiment is to check whether the environment is ready, nnictl will check if there is an old experiment running or the port of restfurl server is occupied. NNICTL will also validate the content of config yaml file, to ensure the experiment config is in correct format. -### 2.2 Check restful server +### 2.2 Start restful server After check environment, nnictl will start an restful server process to manage nni experiment, the devault port is 51188. ### 2.3 Check restful server