InstallationWin.md 5.77 KB
Newer Older
QuanluZhang's avatar
QuanluZhang committed
1
# Install on Windows
2
3
4

## Installation

QuanluZhang's avatar
QuanluZhang committed
5
Anaconda or Miniconda is highly recommended to manage multiple Python environments.
6

QuanluZhang's avatar
QuanluZhang committed
7
### Install NNI through pip
8

QuanluZhang's avatar
QuanluZhang committed
9
  Prerequisites: `python 64-bit >= 3.5`
10
11
12
13
14

  ```bash
  python -m pip install --upgrade nni
  ```

QuanluZhang's avatar
QuanluZhang committed
15
### Install NNI through source code
16

QuanluZhang's avatar
QuanluZhang committed
17
18
19
  If you are interested on special or latest code version, you can install NNI through source code.

  Prerequisites: `python 64-bit >=3.5`, `git`, `PowerShell`.
20
21

  ```bash
QuanluZhang's avatar
QuanluZhang committed
22
  git clone -b v1.4 https://github.com/Microsoft/nni.git
23
24
25
26
  cd nni
  powershell -ExecutionPolicy Bypass -file install.ps1
  ```

QuanluZhang's avatar
QuanluZhang committed
27
## Verify installation
28

QuanluZhang's avatar
QuanluZhang committed
29
The following example is built on TensorFlow 1.x. Make sure **TensorFlow 1.x is used** when running it.
30

QuanluZhang's avatar
QuanluZhang committed
31
* Download the examples via clone the source code.
32

QuanluZhang's avatar
QuanluZhang committed
33
  ```bash
QuanluZhang's avatar
QuanluZhang committed
34
  git clone -b v1.4 https://github.com/Microsoft/nni.git
QuanluZhang's avatar
QuanluZhang committed
35
  ```
36

QuanluZhang's avatar
QuanluZhang committed
37
* Run the MNIST example.
38

QuanluZhang's avatar
QuanluZhang committed
39
40
41
  ```bash
  nnictl create --config nni\examples\trials\mnist-tfv1\config_windows.yml
  ```
42

QuanluZhang's avatar
QuanluZhang committed
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
  Note: for other examples you need to change trial command `python3` to `python` in each example YAML, if python3 is called through `python` on your machine.

* Wait for the message `INFO: Successfully started experiment!` in the command line. This message indicates that your experiment has been successfully started. You can explore the experiment using the `Web UI url`.

```text
INFO: Starting restful server...
INFO: Successfully started Restful server!
INFO: Setting local config...
INFO: Successfully set local config!
INFO: Starting experiment...
INFO: Successfully started experiment!
-----------------------------------------------------------------------
The experiment id is egchD4qy
The Web UI urls are: http://223.255.255.1:8080   http://127.0.0.1:8080
-----------------------------------------------------------------------

You can use these commands to get more information about the experiment
-----------------------------------------------------------------------
         commands                       description
1. nnictl experiment show        show the information of experiments
2. nnictl trial ls               list all of trial jobs
3. nnictl top                    monitor the status of running experiments
4. nnictl log stderr             show stderr log content
5. nnictl log stdout             show stdout log content
6. nnictl stop                   stop an experiment
7. nnictl trial kill             kill a trial job by id
8. nnictl --help                 get help information about nnictl
-----------------------------------------------------------------------
71
72
```

QuanluZhang's avatar
QuanluZhang committed
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
* Open the `Web UI url` in your browser, you can view detail information of the experiment and all the submitted trial jobs as shown below. [Here](../Tutorial/WebUI.md) are more Web UI pages.

![overview](../../img/webui_overview_page.png)

![detail](../../img/webui_trialdetail_page.png)

## System requirements

Below are the minimum system requirements for NNI on Windows, Windows 10.1809 is well tested and recommend. Due to potential programming changes, the minimum system requirements for NNI may change over time.

|                      | Recommended                                    | Minimum                                |
| -------------------- | ---------------------------------------------- | -------------------------------------- |
| **Operating System** | Windows 10 1809 or above                       |
| **CPU**              | Intel® Core™ i5 or AMD Phenom™ II X3 or better | Intel® Core™ i3 or AMD Phenom™ X3 8650 |
| **GPU**              | NVIDIA® GeForce® GTX 660 or better             | NVIDIA® GeForce® GTX 460               |
| **Memory**           | 6 GB RAM                                       | 4 GB RAM                               |
| **Storage**          | 30 GB available hare drive space               |
| **Internet**         | Boardband internet connection                  |
| **Resolution**       | 1024 x 768 minimum display resolution          |
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139

## FAQ

### simplejson failed when installing NNI

Make sure C++ 14.0 compiler installed.
>building 'simplejson._speedups' extension error: [WinError 3] The system cannot find the path specified

### Trial failed with missing DLL in command line or PowerShell

This error caused by missing LIBIFCOREMD.DLL and LIBMMD.DLL and fail to install SciPy. Using Anaconda or Miniconda with Python(64-bit) can solve it.
>ImportError: DLL load failed

### Trial failed on webUI

Please check the trial log file stderr for more details.

If there is a stderr file, please check out. Two possible cases are as follows:

* forget to change the trial command `python3` into `python` in each experiment YAML.
* forget to install experiment dependencies such as TensorFlow, Keras and so on.

### Fail to use BOHB on Windows
Make sure C++ 14.0 compiler installed then try to run `nnictl package install --name=BOHB` to install the dependencies.

### Not supported tuner on Windows
SMAC is not supported currently, the specific reason can be referred to this [GitHub issue](https://github.com/automl/SMAC3/issues/483).

### Use a Windows server as a remote worker
Currently you can't.

Note:

* If there is any error like `Segmentation fault`, please refer to [FAQ](FAQ.md)


## Further reading

* [Overview](../Overview.md)
* [Use command line tool nnictl](Nnictl.md)
* [Use NNIBoard](WebUI.md)
* [Define search space](SearchSpaceSpec.md)
* [Config an experiment](ExperimentConfig.md)
* [How to run an experiment on local (with multiple GPUs)?](../TrainingService/LocalMode.md)
* [How to run an experiment on multiple machines?](../TrainingService/RemoteMachineMode.md)
* [How to run an experiment on OpenPAI?](../TrainingService/PaiMode.md)
* [How to run an experiment on Kubernetes through Kubeflow?](../TrainingService/KubeflowMode.md)
* [How to run an experiment on Kubernetes through FrameworkController?](../TrainingService/FrameworkControllerMode.md)