Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev fused bn functional #6077

Merged
merged 16 commits into from
Sep 10, 2021
Merged

Dev fused bn functional #6077

merged 16 commits into from
Sep 10, 2021

Conversation

MARD1NO
Copy link
Contributor

@MARD1NO MARD1NO commented Aug 27, 2021

增加 BatchNorm add Relu 的接口

一些未完成的细节:

  1. cpu版本没实现,后续考虑补齐
  2. affine = False参数不支持,需要在functional做较大改动,用户一般不会选择这样的选项

@MARD1NO MARD1NO marked this pull request as draft August 27, 2021 03:56
@MARD1NO MARD1NO marked this pull request as ready for review September 2, 2021 05:20
@github-actions
Copy link
Contributor

Speed stats:
GPU Name: GeForce GTX 1080 

OneFlow resnet50 time: 127.9ms (= 6394.0ms / 50, input_shape=[16, 3, 224, 224])
PyTorch resnet50 time: 141.1ms (= 7052.6ms / 50, input_shape=[16, 3, 224, 224])
✔️ Relative speed: 1.10 (= 141.1ms / 127.9ms)

OneFlow resnet50 time: 74.3ms (= 3712.6ms / 50, input_shape=[8, 3, 224, 224])
PyTorch resnet50 time: 83.8ms (= 4189.7ms / 50, input_shape=[8, 3, 224, 224])
✔️ Relative speed: 1.13 (= 83.8ms / 74.3ms)

OneFlow resnet50 time: 50.3ms (= 2513.7ms / 50, input_shape=[4, 3, 224, 224])
PyTorch resnet50 time: 61.4ms (= 3072.1ms / 50, input_shape=[4, 3, 224, 224])
✔️ Relative speed: 1.22 (= 61.4ms / 50.3ms)

OneFlow resnet50 time: 44.9ms (= 2244.0ms / 50, input_shape=[2, 3, 224, 224])
PyTorch resnet50 time: 49.1ms (= 2457.2ms / 50, input_shape=[2, 3, 224, 224])
✔️ Relative speed: 1.10 (= 49.1ms / 44.9ms)

OneFlow resnet50 time: 48.1ms (= 2403.8ms / 50, input_shape=[1, 3, 224, 224])
PyTorch resnet50 time: 43.3ms (= 2166.8ms / 50, input_shape=[1, 3, 224, 224])
❌ Relative speed: 0.90 (= 43.3ms / 48.1ms)

OneFlow resnet50 time: 152.1ms (= 7603.1ms / 50, input_shape=[16, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 163.7ms (= 8186.2ms / 50, input_shape=[16, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.08 (= 163.7ms / 152.1ms)

OneFlow resnet50 time: 100.8ms (= 5037.7ms / 50, input_shape=[8, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 109.5ms (= 5474.5ms / 50, input_shape=[8, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.09 (= 109.5ms / 100.8ms)

OneFlow resnet50 time: 84.0ms (= 4202.0ms / 50, input_shape=[4, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 94.3ms (= 4713.4ms / 50, input_shape=[4, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.12 (= 94.3ms / 84.0ms)

OneFlow resnet50 time: 72.5ms (= 3624.2ms / 50, input_shape=[2, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 77.2ms (= 3857.8ms / 50, input_shape=[2, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.06 (= 77.2ms / 72.5ms)

OneFlow resnet50 time: 79.9ms (= 3993.9ms / 50, input_shape=[1, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 62.6ms (= 3130.5ms / 50, input_shape=[1, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 0.78 (= 62.6ms / 79.9ms)

@oneflow-ci-bot oneflow-ci-bot removed their request for review September 10, 2021 04:53
@oneflow-ci-bot oneflow-ci-bot self-requested a review September 10, 2021 05:41
@MARD1NO MARD1NO requested review from oneflow-ci-bot and removed request for oneflow-ci-bot September 10, 2021 05:52
@oneflow-ci-bot oneflow-ci-bot requested review from oneflow-ci-bot and removed request for oneflow-ci-bot September 10, 2021 07:15
@oneflow-ci-bot oneflow-ci-bot self-requested a review September 10, 2021 08:10
@github-actions
Copy link
Contributor

Speed stats:
GPU Name: GeForce GTX 1080 

OneFlow resnet50 time: 128.0ms (= 6402.3ms / 50, input_shape=[16, 3, 224, 224])
PyTorch resnet50 time: 141.6ms (= 7078.1ms / 50, input_shape=[16, 3, 224, 224])
✔️ Relative speed: 1.11 (= 141.6ms / 128.0ms)

OneFlow resnet50 time: 74.3ms (= 3716.6ms / 50, input_shape=[8, 3, 224, 224])
PyTorch resnet50 time: 83.3ms (= 4166.0ms / 50, input_shape=[8, 3, 224, 224])
✔️ Relative speed: 1.12 (= 83.3ms / 74.3ms)

OneFlow resnet50 time: 47.2ms (= 2361.2ms / 50, input_shape=[4, 3, 224, 224])
PyTorch resnet50 time: 61.0ms (= 3048.8ms / 50, input_shape=[4, 3, 224, 224])
✔️ Relative speed: 1.29 (= 61.0ms / 47.2ms)

OneFlow resnet50 time: 40.9ms (= 2046.2ms / 50, input_shape=[2, 3, 224, 224])
PyTorch resnet50 time: 51.2ms (= 2560.0ms / 50, input_shape=[2, 3, 224, 224])
✔️ Relative speed: 1.25 (= 51.2ms / 40.9ms)

OneFlow resnet50 time: 39.7ms (= 1987.2ms / 50, input_shape=[1, 3, 224, 224])
PyTorch resnet50 time: 43.3ms (= 2167.0ms / 50, input_shape=[1, 3, 224, 224])
✔️ Relative speed: 1.09 (= 43.3ms / 39.7ms)

OneFlow resnet50 time: 152.5ms (= 7624.0ms / 50, input_shape=[16, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 163.1ms (= 8154.7ms / 50, input_shape=[16, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.07 (= 163.1ms / 152.5ms)

OneFlow resnet50 time: 100.1ms (= 5002.8ms / 50, input_shape=[8, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 103.1ms (= 5153.2ms / 50, input_shape=[8, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.03 (= 103.1ms / 100.1ms)

OneFlow resnet50 time: 79.8ms (= 3992.1ms / 50, input_shape=[4, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 80.6ms (= 4032.1ms / 50, input_shape=[4, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.01 (= 80.6ms / 79.8ms)

OneFlow resnet50 time: 69.6ms (= 3478.1ms / 50, input_shape=[2, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 72.3ms (= 3616.5ms / 50, input_shape=[2, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.04 (= 72.3ms / 69.6ms)

OneFlow resnet50 time: 71.5ms (= 3572.8ms / 50, input_shape=[1, 3, 224, 224], ddp, world size=2)
PyTorch resnet50 time: 100.9ms (= 5043.4ms / 50, input_shape=[1, 3, 224, 224], ddp, world size=2)
✔️ Relative speed: 1.41 (= 100.9ms / 71.5ms)

@oneflow-ci-bot oneflow-ci-bot merged commit c834fe4 into master Sep 10, 2021
@oneflow-ci-bot oneflow-ci-bot deleted the dev_fused_bn branch September 10, 2021 08:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants