ZJLabDubhe / oneflow-zj

OneFlow is a performance-centered and open-source deep learning framework.
http://www.oneflow.org
Apache License 2.0
2 stars 1 forks source link

OneFlow

OneFlow is a deep learning framework designed to be user-friendly, scalable and efficient. With OneFlow, it is easy to:

Simple CI Nightly Docker Image Nightly Release Documentation

Latest News

Publication

Install OneFlow

System Requirements

Install with Pip Package

Use docker image

docker pull oneflowinc/oneflow:nightly-cuda10.2
docker pull oneflowinc/oneflow:nightly-cuda11.2

Build from Source

Clone Source Code - #### Option 1: Clone source code from GitHub ```bash git clone https://github.com/Oneflow-Inc/oneflow --depth=1 ``` - #### Option 2: Download from Aliyun If you are in China, please download OneFlow source code from: https://oneflow-public.oss-cn-beijing.aliyuncs.com/oneflow-src.zip ```bash curl https://oneflow-public.oss-cn-beijing.aliyuncs.com/oneflow-src.zip -o oneflow-src.zip unzip oneflow-src.zip ```
Build OneFlow - #### Option 1: Build with Conda (recommended) Please refer to [this repo](https://github.com/Oneflow-Inc/conda-env) - #### Option 2: Build in docker container (recommended) - Pull the docker image: ```bash docker pull oneflowinc/manylinux2014_x86_64_cuda11.2 ``` - Follow the instructions in the bare metal build guide below. - #### Option 3: Build on bare metal - Install dependencies (not required if you are using docker): - on Ubuntu 20.04, run: ``` sudo apt install -y libopenblas-dev nasm g++ gcc python3-pip cmake autoconf libtool ``` - on macOS, run: ``` brew install nasm ``` - In the root directory of OneFlow source code, run: ``` mkdir build cd build ``` - Config the project, inside `build` directory: - If you are in China run this to config for CUDA: ``` cmake .. -C ../cmake/caches/cn/cuda.cmake ``` run this to config for CPU-only: ``` cmake .. -C ../cmake/caches/cn/cpu.cmake ``` - If you are not in China run this to config for CUDA: ``` cmake .. -C ../cmake/caches/international/cuda.cmake ``` run this to config for CPU-only: ``` cmake .. -C ../cmake/caches/international/cpu.cmake ``` - Build the project, inside `build` directory, run: ``` make -j$(nproc) ``` - Add oneflow to your PYTHONPATH, inside `build` directory, run: ``` source source.sh ``` Please note that this change is not permanent. - Simple validation ``` python3 -m oneflow --doctor ```

Troubleshooting

Please refer to troubleshooting for common issues you might encounter when compiling and running OneFlow.

Advanced features

Getting Started

Documentation

Model Zoo and Benchmark

Communication

The Team

OneFlow was originally developed by OneFlow Inc and Zhejiang Lab.

License

Apache License 2.0