https://github.com/pfcclab/paddlefx
An experimental project for paddle python IR.
https://github.com/pfcclab/paddlefx
Last synced: 4 months ago
JSON representation
An experimental project for paddle python IR.
- Host: GitHub
- URL: https://github.com/pfcclab/paddlefx
- Owner: PFCCLab
- License: apache-2.0
- Created: 2023-02-15T06:45:16.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-04T07:28:32.000Z (about 2 years ago)
- Last Synced: 2024-04-17T02:08:50.093Z (almost 2 years ago)
- Language: Python
- Homepage:
- Size: 133 KB
- Stars: 14
- Watchers: 5
- Forks: 16
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# paddlefx
paddlefx is an experimental project for building [PaddlePaddle](https://github.com/PaddlePaddle/Paddle) Python IR.
## Community activities
- Tracking issue for PaddleSOT project: https://github.com/PaddlePaddle/PaddleSOT/issues/133
- Online tech discussion meeting: https://github.com/PaddlePaddle/PaddleSOT/discussions/149
- China open source software innovation challenge: https://github.com/PaddlePaddle/Paddle/issues/53172#paddlepaddle01
If you are interested in these activities, please send a email to ext_paddle_oss@baidu.com, we'll invite you into wechat group.
## Quick Start
```bash
pip install -r requirements_dev.txt
pip install -e .
pytest -n3 tests
```
## Explore its Capabilities
Here are some examples of what paddlefx can do:
- Capture and compile python bytecodes into a fx graph. See [this example](https://github.com/PFCCLab/paddlefx/blob/main/examples/targets/target_0_add.py).
- Run the captured ResNet fx Graph on TVM. See [this example](https://github.com/PFCCLab/paddlefx/blob/main/examples/resnet_dynamo.py)
- Trace ResNet and 10 other vision models. See [this example](https://github.com/PFCCLab/paddlefx/blob/main/examples/resnet_trace.py) and [this test](https://github.com/PFCCLab/paddlefx/blob/main/tests/test_trace.py).
- Edit fx graphs. See [this example](https://github.com/PFCCLab/paddlefx/blob/main/examples/graph_editing.py).
- Profile ResNet. See [this example](https://github.com/PFCCLab/paddlefx/blob/main/examples/fx_profiling.py).
- Demonstrate how to lower the fx graph IR to a native interpreter. See [this example](https://github.com/PFCCLab/paddlefx/tree/main/examples/native_interpreter).
## Contribution
This is a community driven project, maintenance of this project is on a "best effort" basis. The ideas and even lots of codes are borrowed from [pytorch 2.0](https://pytorch.org/get-started/pytorch-2.0/).
If you'd like to contribute, please feel free to raise a pull request, discuss in [issues](https://github.com/PFCCLab/paddlefx/issues) or [discussions](https://github.com/PFCCLab/paddlefx/discussions).