Fork from this repository from Facebook. Fvcore offers operation level FLOP estimation. This repository adapts this tool to take into account quantization when calculating model flops and size.
This tool can be used together with bitorch to create and evaluate quantized deep learning models. The documentation may not yet be up-to-date yet. Read more about the original project below.
fvcore is a light-weight core library that provides the most common and essential functionality shared in various computer vision frameworks developed in FAIR, such as Detectron2, PySlowFast, and ClassyVision. All components in this library are type-annotated, tested, and benchmarked.
The computer vision team in FAIR is responsible for maintaining fvcore.
Besides some basic utilities, fvcore includes the following features:
- Common pytorch layers, functions and losses in fvcore.nn.
- A hierarchical per-operator flop counting tool: see this note for details.
- Recursive parameter counting: see API doc.
- Recompute BatchNorm population statistics: see its API doc.
- A stateless, scale-invariant hyperparameter scheduler: see its API doc.
fvbitcore requires pytorch and python >= 3.6.
Use one of the following ways to install:
pip install -U fvbitcore
(Not yet supported.)
conda install -c fvbitcore -c iopath -c conda-forge fvbitcore
pip install -U 'git+https://github.com/hpi-xnor/fvbitcore'
git clone https://github.com/hpi-xnor/fvbitcore
pip install -e fvbitcore
This library is released under the Apache 2.0 license.