Skip to main content

Flops counter for convolutional networks in pytorch framework

Project description

# Flops counter for convolutional networks in pytorch framework

This script is designed to compute the theoretical amount of multiply-add operations
in convolutional neural networks. It also can compute the number of parameters and
print per-layer computational cost of a given network.

Supported layers:
- Convolution2d (including grouping)
- BatchNorm2d
- Activations (ReLU, PReLU, ELU, ReLU6, LeakyReLU)
- Linear
- Upsample
- Poolings (AvgPool2d, MaxPool2d and adaptive ones)

Requirements: Pytorch 0.4.1 or 1.0, torchvision 0.2.1

Thanks to @warmspringwinds for the initial version of script.

## Install
```bash
pip install git+https://github.com/sovrasov/flops-counter.pytorch.git
```

## Example
```python
import torchvision.models as models
import torch
from ptflops import get_model_complexity_info

with torch.cuda.device(0):
net = models.densenet161()
flops, params = get_model_complexity_info(net, (224, 224), as_strings=True, print_per_layer_stat=True)
print('Flops: ' + flops)
print('Params: ' + params)
```


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ptflops-0.1.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

ptflops-0.1-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file ptflops-0.1.tar.gz.

File metadata

  • Download URL: ptflops-0.1.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.18.4 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.19.5 CPython/3.5.2

File hashes

Hashes for ptflops-0.1.tar.gz
Algorithm Hash digest
SHA256 b24fd5e04c9568e8269baad15545c3fe06a5265fd6e923141da83812b1a0563c
MD5 a915dff6a886636d29320cf00be9c3f2
BLAKE2b-256 cf207e928eb0aab7cf4a457dbe1b82404be8b8211751927691345ab11a463744

See more details on using hashes here.

File details

Details for the file ptflops-0.1-py3-none-any.whl.

File metadata

  • Download URL: ptflops-0.1-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.18.4 setuptools/41.0.0 requests-toolbelt/0.9.1 tqdm/4.19.5 CPython/3.5.2

File hashes

Hashes for ptflops-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fdb76159aa1957367e6a7d31dc69f85788164898174b0a27595dd5bd1c39fcf3
MD5 9d2fb8fd73450c163bfbf70463f3362b
BLAKE2b-256 fd48707af5fc4c87623b033d16ee0af4eb9310ed41e5881040cbdffa6fb9d7ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page