You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

README_CN.md 5.2 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. # MegEngine
  2. ![MegEngine Logo](logo.png)
  3. [English](README.md) | 中文
  4. MegEngine 是一个快速、可拓展、易于使用且支持自动求导的深度学习框架。
  5. ------
  6. ## 安装说明
  7. **注意:** MegEngine 现在仅支持 Linux 平台安装,以及 Python3.5 及以上的版本(不支持 Python2 )。对于 Windows 10 用户,可以通过安装 [WSL(Windows Subsystem for Linux)](https://docs.microsoft.com/en-us/windows/wsl) 进行体验。
  8. ### 通过包管理器安装
  9. 通过 pip 安装的命令如下:
  10. ```bash
  11. pip3 install megengine -f https://megengine.org.cn/whl/mge.html
  12. ```
  13. ## 通过源码编译安装
  14. ### 环境依赖
  15. 大多数编译 MegEngine 的依赖位于 `third_party` 目录,可以通过以下命令自动安装:
  16. ```bash
  17. $ ./third_party/prepare.sh
  18. $ ./third_party/install-mkl.sh
  19. ```
  20. 但是有一些依赖需要手动安装:
  21. * [CUDA](https://developer.nvidia.com/cuda-toolkit-archive)(>=10.1), [cuDNN](https://developer.nvidia.com/cudnn)(>=7.6) ,如果需要编译支持 CUDA 的版本(默认开启)
  22. * [TensorRT](https://docs.nvidia.com/deeplearning/sdk/tensorrt-archived/index.html)(>=5.1.5) ,如果需要编译支持 TensorRT 的版本(默认开启)
  23. * LLVM/Clang(>=6.0) ,如果需要编译支持 Halide JIT 的版本(默认开启)
  24. * Python(>=3.5), Numpy, SWIG(>=3.0) ,如果需要编译生成 Python 模块(默认开启)
  25. ### 开始编译
  26. MegEngine 遵循“源外构建”([Out-of-Source Build](https://zh.m.wikibooks.org/zh-hans/CMake_%E5%85%A5%E9%96%80/Out-of-source_Build))原则,并且使用静态编译方式。编译的具体流程如下:
  27. 1. 创建用于编译的目录:
  28. ```bash
  29. mkdir -p build
  30. cd build
  31. ```
  32. 2. 使用 `CMake` 生成编译配置:
  33. 生成支持 CUDA 环境的配置:
  34. ```bash
  35. cmake .. -DMGE_WITH_TEST=ON
  36. ```
  37. 生成仅支持 CPU 环境的配置,使用 `-DMGE_WITH_CUDA=OFF` 选项:
  38. ```bash
  39. cmake .. -DMGE_WITH_CUDA=OFF -DMGE_WITH_TEST=ON
  40. ```
  41. 生成仅用于 C++ 环境部署的配置,使用 `-DMGE_INFERENCE_ONLY=ON` ,并可用 `-DMGE_WITH_TEST=OFF` 关闭测试:
  42. ```bash
  43. cmake .. -DMGE_INFERENCE_ONLY=ON -DMGE_WITH_TEST=OFF
  44. ```
  45. 可以使用 `-DCMAKE_INSTALL_PREFIX=YOUR_PATH` 指定具体安装目录。
  46. 3. 开始编译:
  47. ```bash
  48. make -j$(nproc)
  49. ```
  50. 4. [可选] 如果需要用于部署,可以安装 MegEngine 的 C++ 库:
  51. ```bash
  52. make install
  53. ```
  54. 以下是其它常用编译选项:
  55. * `MGE_ARCH` 指定编译的目标平台(默认自动检测当前平台)
  56. * `MGE_WITH_DISTRIBUTED` 是否开启多机分布式支持(默认开启)
  57. * `MGE_WITH_PYTHON_MODULE` 是否编译生成 Python 模块(默认开启)
  58. * `MGE_BLAS` 选择 BLAS 的后端实现,可以是 `MKL` 或 `OpenBLAS` (默认 `MKL`)
  59. * `MGE_CUDA_GENCODE` 指定提供给 `nvcc` 的 `-gencode` 选项(默认不指定)
  60. * `MGE_DISABLE_FLOAT16` 是否不提供 `float16` 类型支持(默认关闭)
  61. * `MGE_ENABLE_EXCEPTIONS` 是否开启 C++ 报错支持(默认开启)
  62. * `MGE_ENABLE_LOGGING` 是否开启 MegEngine 日志信息(默认自动检测)
  63. 更多选项可以通过以下命令查看:
  64. ```bash
  65. cd build
  66. cmake -LAH .. 2>/dev/null| grep -B 1 'MGE_' | less
  67. ```
  68. ## 如何参与贡献
  69. * MegEngine 依据 [贡献者公约(Contributor Covenant)](https://contributor-covenant.org)来管理开源社区。请阅读 [行为准则](CODE_OF_CONDUCT.md) 了解更多信息。
  70. * 每一名 MegEngine 的贡献者都需要签署贡献者许可协议(Contributor License Agreement,CLA)来明确贡献内容相关的知识产权许可。更多细节请参考 [协议内容](CONTRIBUTOR_LICENSE_AGREEMENT.md)。
  71. * 我们欢迎你通过以下方式来帮助 MegEngine 变得更好:
  72. * 贡献代码;
  73. * 完善[文档](https://github.com/MegEngine/Docs);
  74. * 在 [MegEngine 论坛](https://discuss.megengine.org.cn) 和 Stack Overflow 回答问题;
  75. * 在 [MegEngine Model Hub](https://github.com/megengine/hub) 贡献新模型;
  76. * 在 [MegStudio](https://studio.brainpp.com) 平台尝试新想法;
  77. * 报告使用中的 [Bugs 和 Issues](https://github.com/MegEngine/MegEngine/issues);
  78. * 审查 [Pull Requests](https://github.com/MegEngine/MegEngine/pulls);
  79. * 给 MegEngine 点亮小星星;
  80. * 在你的论文和文章中引用 MegEngine;
  81. * 向你的好友推荐 MegEngine;
  82. * ...
  83. 我们相信我们能够搭建一个开放友善的开源社区环境,用人工智能造福人类。
  84. ## 联系我们
  85. * 问题: [github.com/MegEngine/MegEngine/issues](https://github.com/MegEngine/MegEngine/issues)
  86. * 邮箱: [megengine-support@megvii.com](mailto:megengine-support@megvii.com)
  87. * 论坛: [discuss.megengine.org.cn](https://discuss.megengine.org.cn)
  88. * QQ: 1029741705
  89. * OPENI: [openi.org.cn/MegEngine](https://www.openi.org.cn/html/2020/Framework_0325/18.html)
  90. ## 资源
  91. - [MegEngine](https://megengine.org.cn)
  92. - [MegStudio](https://studio.brainpp.com)
  93. - [Brain++](https://brainpp.megvii.com)
  94. ## 开源许可
  95. MegEngine 使用 Apache License, Version 2.0
  96. Copyright (c) 2014-2020 Megvii Inc. All rights reserved.

MegEngine 安装包中集成了使用 GPU 运行代码所需的 CUDA 环境,不用区分 CPU 和 GPU 版。 如果想要运行 GPU 程序,请确保机器本身配有 GPU 硬件设备并安装好驱动。 如果你想体验在云端 GPU 算力平台进行深度学习开发的感觉,欢迎访问 MegStudio 平台