diff --git a/README.md b/README.md
old mode 100644
new mode 100755
index a3fc407793194ea7a3d3a5a343fd8990da91a2b5..8550c961cc0223894119d14144e85c1d3a1ba942
--- a/README.md
+++ b/README.md
@@ -1,6 +1,8 @@
# MegEngine
-![MegEngine Logo](logo.png)
+
+
+
English | [中文](README_CN.md)
@@ -10,95 +12,61 @@ MegEngine is a fast, scalable and easy-to-use deep learning framework, with auto
## Installation
-**NOTE:** MegEngine now only supports Linux platform with Python 3.5 or higher. On Windows 10 you could try [WSL(Windows Subsystem for Linux)](https://docs.microsoft.com/en-us/windows/wsl) to use Linux within Windows.
+**NOTE:** MegEngine now supports Linux-64bit/Windows-64bit/MacOS-10.14+ (CPU-Only) Platforms with Python from 3.5 to 3.8. On Windows 10 you can either install the Linux distribution through [Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl) or install the Windows distribution directly.
### Binaries
Commands to install from binaries via pip wheels are as follows:
```bash
-pip3 install megengine -f https://megengine.org.cn/whl/mge.html
+python3 -m pip install megengine -f https://megengine.org.cn/whl/mge.html
```
## Build from Source
### Prerequisites
-Most of the dependencies of MegEngine are located in `third_party` directory, and you do
-not need to install these by yourself. you can prepare these repositories by executing:
+Most of the dependencies of MegEngine are located in `third_party` directory, which can be prepared by executing:
```bash
./third_party/prepare.sh
./third_party/install-mkl.sh
```
-But some dependencies should be manually installed:
+But some dependencies need to be Installed manually:
-* [CUDA](https://developer.nvidia.com/cuda-toolkit-archive)(>=10.1), [cuDNN](https://developer.nvidia.com/cudnn)(>=7.6)are required when building MegEngine with CUDA support (default ON)
-* [TensorRT](https://docs.nvidia.com/deeplearning/sdk/tensorrt-archived/index.html)(>=5.1.5) is required when building with TensorRT support (default ON)
-* LLVM/Clang(>=6.0) is required when building with Halide JIT support (default ON)
-* Python(>=3.5), Numpy, SWIG(>=3.0) are required to build Python modules. (default ON)
+* [CUDA](https://developer.nvidia.com/cuda-toolkit-archive)(>=10.1), [cuDNN](https://developer.nvidia.com/cudnn)(>=7.6)are required when building MegEngine with CUDA support.
+* [TensorRT](https://docs.nvidia.com/deeplearning/sdk/tensorrt-archived/index.html)(>=5.1.5) is required when building with TensorRT support.
+* LLVM/Clang(>=6.0) is required when building with Halide JIT support.
+* Python(>=3.5), Numpy, are required to build Python modules.
### Build
-MegEngine prefers `Out-Of-Source` flavor, and compile in a `mostly-static` way.
-Here are the instructions:
-1. Make a directory for the build.
- ```bash
- mkdir -p build
- cd build
- ```
-
-2. Generate build configurations by `CMake`.
-
- For CUDA build:
- ```bash
- cmake .. -DMGE_WITH_TEST=ON
- ```
-
- For CPU only build, use `-DMGE_WITH_CUDA=OFF`:
- ```bash
- cmake .. -DMGE_WITH_CUDA=OFF -DMGE_WITH_TEST=ON
- ```
-
- For deployment with C++ only, use `-DMGE_INFERENCE_ONLY=ON`, and turn off test with `-DMGE_WITH_TEST=OFF`:
- ```bash
- cmake .. -DMGE_INFERENCE_ONLY=ON -DMGE_WITH_TEST=OFF
- ```
-
- Use `-DCMAKE_INSTALL_PREFIX=YOUR_PATH` to specify the install path.
-
-
-3. Start to build.
-
- ```bash
- make -j$(nproc)
- ```
-
-4. [optional] Install the library if compiled for deployment at step 2.
-
- ```bash
- make install
- ```
-
-Here are some other useful options for the build.
-
-* `MGE_ARCH` specifies which arch MegEngine are building for. (default AUTO)
-* `MGE_WITH_DISTRIBUTED` if multiple machine distributed support is enabled. (default ON)
-* `MGE_WITH_PYTHON_MODULE` if build python module. (default ON)
-* `MGE_BLAS` chooses `MKL` or `OpenBLAS` as BLAS library for MegEngine. (default `MKL`)
-* `MGE_CUDA_GENCODE` supplies the `-gencode` option for `nvcc`. (default not supply)
-* `MGE_DISABLE_FLOAT16` if disable float16 support. (default OFF)
-* `MGE_ENABLE_EXCEPTIONS` if enable exception support in C++. (default ON)
-* `MGE_ENABLE_LOGGING` if enable logging in MegEngine. (default AUTO)
-
-More options can be found by:
-
-```bash
-cd build
-cmake -LAH .. 2>/dev/null| grep -B 1 'MGE_' | less
-```
+MegEngine uses CMake as the build tool.
+We provide the following scripts to facilitate building.
+
+* [host_build.sh](scripts/cmake-build/host_build.sh) is to build MegEngine targeted to run on the same host machine.
+Please run the following command to get help information:
+ ```
+ scripts/cmake-build/host_build.sh -h
+ ```
+* [cross_build_android_arm_inference.sh](scripts/cmake-build/cross_build_android_arm_inference.sh) is to build MegEngine targeted to run at Android-ARM platforms.
+Please run the following command to get help information:
+ ```
+ scripts/cmake-build/cross_build_android_arm_inference.sh -h
+ ```
+* [cross_build_linux_arm_inference.sh](scripts/cmake-build/cross_build_linux_arm_inference.sh) is to build MegEngine targeted to run at Linux-ARM platforms.
+Please run the following command to get help information:
+ ```
+ scripts/cmake-build/cross_build_linux_arm_inference.sh -h
+ ```
+* [cross_build_ios_arm_inference.sh](scripts/cmake-build/cross_build_ios_arm_inference.sh) is to build MegEngine targeted to run iphone/iPad platforms.
+Please run the following command to get help information:
+ ```
+ scripts/cmake-build/cross_build_ios_arm_inference.sh
+ ```
+Please refer to [BUILD_README.md](scripts/cmake-build/BUILD_README.md) for more details.
## How to Contribute
@@ -124,7 +92,7 @@ We believe we can build an open and friendly community and power humanity with A
* Issue: [github.com/MegEngine/MegEngine/issues](https://github.com/MegEngine/MegEngine/issues)
* Email: [megengine-support@megvii.com](mailto:megengine-support@megvii.com)
* Forum: [discuss.megengine.org.cn](https://discuss.megengine.org.cn)
-* QQ: 1029741705
+* QQ Group: 1029741705
* OPENI: [openi.org.cn/MegEngine](https://www.openi.org.cn/html/2020/Framework_0325/18.html)
## Resources
diff --git a/README_CN.md b/README_CN.md
old mode 100644
new mode 100755
index aac559acc93d7b5b61c3f84c78312a595702632c..b8abb296fb1d6174d86a8ca638a58745a802aa0d
--- a/README_CN.md
+++ b/README_CN.md
@@ -1,6 +1,8 @@
# MegEngine
-![MegEngine Logo](logo.png)
+
+
+
[English](README.md) | 中文
@@ -11,14 +13,14 @@ MegEngine 是一个快速、可拓展、易于使用且支持自动求导的深
## 安装说明
-**注意:** MegEngine 现在仅支持 Linux 平台安装,以及 Python3.5 及以上的版本(不支持 Python2 )。对于 Windows 10 用户,可以通过安装 [WSL(Windows Subsystem for Linux)](https://docs.microsoft.com/en-us/windows/wsl) 进行体验。
+**注意:** MegEngine 现在支持 Linux-64bit/Windows-64bit/macos-10.14及其以上 (MacOS只支持cpu) 平台安装,支持Python3.5 到 Python3.8。对于 Windows 10 用户,可以通过安装 [Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl) 进行体验,同时我们也原生支持Windows。
### 通过包管理器安装
通过 pip 安装的命令如下:
```bash
-pip3 install megengine -f https://megengine.org.cn/whl/mge.html
+python3 -m pip install megengine -f https://megengine.org.cn/whl/mge.html
```
## 通过源码编译安装
@@ -34,69 +36,41 @@ $ ./third_party/install-mkl.sh
但是有一些依赖需要手动安装:
-* [CUDA](https://developer.nvidia.com/cuda-toolkit-archive)(>=10.1), [cuDNN](https://developer.nvidia.com/cudnn)(>=7.6) ,如果需要编译支持 CUDA 的版本(默认开启)
-* [TensorRT](https://docs.nvidia.com/deeplearning/sdk/tensorrt-archived/index.html)(>=5.1.5) ,如果需要编译支持 TensorRT 的版本(默认开启)
-* LLVM/Clang(>=6.0) ,如果需要编译支持 Halide JIT 的版本(默认开启)
-* Python(>=3.5), Numpy, SWIG(>=3.0) ,如果需要编译生成 Python 模块(默认开启)
+* [CUDA](https://developer.nvidia.com/cuda-toolkit-archive)(>=10.1), [cuDNN](https://developer.nvidia.com/cudnn)(>=7.6) ,如果需要编译支持 CUDA 的版本。
+* [TensorRT](https://docs.nvidia.com/deeplearning/sdk/tensorrt-archived/index.html)(>=5.1.5) ,如果需要编译支持 TensorRT 的版本。
+* LLVM/Clang(>=6.0) ,如果需要编译支持 Halide JIT 的版本(默认开启)。
+* Python(>=3.5), Numpy, SWIG(>=3.0) ,如果需要编译生成 Python 模块。
### 开始编译
-MegEngine 遵循“源外构建”([Out-of-Source Build](https://zh.m.wikibooks.org/zh-hans/CMake_%E5%85%A5%E9%96%80/Out-of-source_Build))原则,并且使用静态编译方式。编译的具体流程如下:
+MegEngine使用CMake作为构建工具。我们提供以下脚本来帮助编译:
+
+* [host_build.sh](scripts/cmake-build/host_build.sh) 用于本地编译。
+参数 -h 可用于查询脚本支持的参数:
+
+ ```
+ scripts/cmake-build/host_build.sh -h
+ ```
+* [cross_build_android_arm_inference.sh](scripts/cmake-build/cross_build_android_arm_inference.sh) 用于ARM-安卓交叉编译。
+参数 -h 可用于查询脚本支持的参数:
+
+ ```
+ scripts/cmake-build/cross_build_android_arm_inference.sh -h
+ ```
+* [cross_build_linux_arm_inference.sh](scripts/cmake-build/cross_build_linux_arm_inference.sh) 用于ARM-Linux交叉编译。
+参数 -h 可用于查询脚本支持的参数:
+
+ ```
+ scripts/cmake-build/cross_build_linux_arm_inference.sh -h
+ ```
+* [cross_build_ios_arm_inference.sh](scripts/cmake-build/cross_build_ios_arm_inference.sh) 用于IOS交叉编译。
+ 参数 -h 可用于查询脚本支持的参数:
+
+ ```
+ scripts/cmake-build/cross_build_ios_arm_inference.sh
+ ```
+ 更多细节请参考 [BUILD_README.md](scripts/cmake-build/BUILD_README.md)
-1. 创建用于编译的目录:
- ```bash
- mkdir -p build
- cd build
- ```
-
-2. 使用 `CMake` 生成编译配置:
-
- 生成支持 CUDA 环境的配置:
- ```bash
- cmake .. -DMGE_WITH_TEST=ON
- ```
-
- 生成仅支持 CPU 环境的配置,使用 `-DMGE_WITH_CUDA=OFF` 选项:
- ```bash
- cmake .. -DMGE_WITH_CUDA=OFF -DMGE_WITH_TEST=ON
- ```
-
- 生成仅用于 C++ 环境部署的配置,使用 `-DMGE_INFERENCE_ONLY=ON` ,并可用 `-DMGE_WITH_TEST=OFF` 关闭测试:
- ```bash
- cmake .. -DMGE_INFERENCE_ONLY=ON -DMGE_WITH_TEST=OFF
- ```
-
- 可以使用 `-DCMAKE_INSTALL_PREFIX=YOUR_PATH` 指定具体安装目录。
-
-3. 开始编译:
-
- ```bash
- make -j$(nproc)
- ```
-
-4. [可选] 如果需要用于部署,可以安装 MegEngine 的 C++ 库:
-
- ```bash
- make install
- ```
-
-以下是其它常用编译选项:
-
-* `MGE_ARCH` 指定编译的目标平台(默认自动检测当前平台)
-* `MGE_WITH_DISTRIBUTED` 是否开启多机分布式支持(默认开启)
-* `MGE_WITH_PYTHON_MODULE` 是否编译生成 Python 模块(默认开启)
-* `MGE_BLAS` 选择 BLAS 的后端实现,可以是 `MKL` 或 `OpenBLAS` (默认 `MKL`)
-* `MGE_CUDA_GENCODE` 指定提供给 `nvcc` 的 `-gencode` 选项(默认不指定)
-* `MGE_DISABLE_FLOAT16` 是否不提供 `float16` 类型支持(默认关闭)
-* `MGE_ENABLE_EXCEPTIONS` 是否开启 C++ 报错支持(默认开启)
-* `MGE_ENABLE_LOGGING` 是否开启 MegEngine 日志信息(默认自动检测)
-
-更多选项可以通过以下命令查看:
-
-```bash
-cd build
-cmake -LAH .. 2>/dev/null| grep -B 1 'MGE_' | less
-```
## 如何参与贡献