README.md 4.5 KB
Newer Older
1 2
# MegEngine

Z
zhanghaolong 已提交
3 4 5
<p align="center">
  <img width="250" height="109" src="logo.png">
</p>
6 7 8

English | [中文](README_CN.md)

W
wenjuan 已提交
9
MegEngine is a fast, scalable and easy-to-use deep learning framework, with auto-differentiation.
10 11 12 13 14

------

## Installation

J
jiakai 已提交
15
**NOTE:** MegEngine now supports Python installation on Linux-64bit/Windows-64bit/MacOS(CPU-Only)-10.14+ 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. Many other platforms are supported for inference.
16 17 18

### Binaries

J
jiakai 已提交
19
To install the pre-built binaries via pip wheels:
20 21

```bash
Z
zhanghaolong 已提交
22
python3 -m pip install megengine -f https://megengine.org.cn/whl/mge.html
23 24
```

J
jiakai 已提交
25
## Building from Source
26 27 28

### Prerequisites

J
jiakai 已提交
29
Most of the dependencies of MegEngine are located in [third_party](third_party) directory, which can be prepared by executing:
30 31 32 33 34 35

```bash
./third_party/prepare.sh
./third_party/install-mkl.sh
```

J
jiakai 已提交
36
But some dependencies need to be installed manually:
37

J
jiakai 已提交
38
* [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.
Z
zhanghaolong 已提交
39 40
* [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.
J
jiakai 已提交
41
* Python(>=3.5) and numpy are required to build Python modules.
42 43 44

### Build

Z
zhanghaolong 已提交
45 46 47
MegEngine uses CMake as the build tool.
We provide the following scripts to facilitate building.

J
jiakai 已提交
48 49
* [host_build.sh](scripts/cmake-build/host_build.sh) builds MegEngine that runs on the same host machine (i.e., no cross compiling).
  The following command displays the usage:
Z
zhanghaolong 已提交
50 51 52
  ```
  scripts/cmake-build/host_build.sh -h
  ```
J
jiakai 已提交
53 54
* [cross_build_android_arm_inference.sh](scripts/cmake-build/cross_build_android_arm_inference.sh) builds MegEngine for DNN inference on Android-ARM platforms.
  The following command displays the usage:
Z
zhanghaolong 已提交
55 56 57
  ```
  scripts/cmake-build/cross_build_android_arm_inference.sh -h
  ```
J
jiakai 已提交
58 59
* [cross_build_linux_arm_inference.sh](scripts/cmake-build/cross_build_linux_arm_inference.sh) builds MegEngine for DNN inference on Linux-ARM platforms.
  The following command displays the usage:
Z
zhanghaolong 已提交
60 61 62
  ```
  scripts/cmake-build/cross_build_linux_arm_inference.sh -h
  ```
J
jiakai 已提交
63 64
* [cross_build_ios_arm_inference.sh](scripts/cmake-build/cross_build_ios_arm_inference.sh) builds MegEngine for DNN inference on iOS (iPhone/iPad) platforms.
  The following command displays the usage:
Z
zhanghaolong 已提交
65 66 67 68
  ```
  scripts/cmake-build/cross_build_ios_arm_inference.sh
  ```
Please refer to [BUILD_README.md](scripts/cmake-build/BUILD_README.md) for more details.
69 70 71

## How to Contribute

J
jiakai 已提交
72 73 74
* MegEngine adopts [Contributor Covenant](https://contributor-covenant.org) as a guideline to run our community. Please read the [Code of Conduct](CODE_OF_CONDUCT.md).
* Every contributor of MegEngine must sign a [Contributor License Agreement (CLA)](CONTRIBUTOR_LICENSE_AGREEMENT.md) to clarify the intellectual property license granted with the contributions.
* You can help improving MegEngine in many ways:
75 76 77 78 79 80 81 82
    * Write code.
    * Improve [documentation](https://github.com/MegEngine/Docs).
    * Answer questions on [MegEngine Forum](https://discuss.megengine.org.cn), or Stack Overflow.
    * Contribute new models in [MegEngine Model Hub](https://github.com/megengine/hub).
    * Try a new idea on [MegStudio](https://studio.brainpp.com).
    * Report or investigate [bugs and issues](https://github.com/MegEngine/MegEngine/issues).
    * Review [Pull Requests](https://github.com/MegEngine/MegEngine/pulls).
    * Star MegEngine repo.
J
jiakai 已提交
83
    * Cite MegEngine in your papers and articles.
84
    * Recommend MegEngine to your friends.
J
jiakai 已提交
85
    * Any other form of contribution is welcomed.
86

J
jiakai 已提交
87
We strive to build an open and friendly community. We aim to power humanity with AI.
88

J
jiakai 已提交
89
## How to Contact Us
90 91 92 93

* 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)
Z
zhanghaolong 已提交
94
* QQ Group: 1029741705
W
wenjuan 已提交
95
* OPENI: [openi.org.cn/MegEngine](https://www.openi.org.cn/html/2020/Framework_0325/18.html)
96 97 98 99 100 101 102 103 104 105 106

## Resources

- [MegEngine](https://megengine.org.cn)
- [MegStudio](https://studio.brainpp.com)
- [Brain++](https://brainpp.megvii.com)

## License

MegEngine is Licensed under the Apache License, Version 2.0

J
jiakai 已提交
107
Copyright (c) 2014-2021 Megvii Inc. All rights reserved.