pytorch icon indicating copy to clipboard operation
pytorch copied to clipboard

Code update for vectorized interpolate cpu uint8

Open vfdev-5 opened this issue 1 year ago • 1 comments

Stack from ghstack (oldest at bottom):

  • #96848
  • -> #96847
  • code style update
  • use idx_ptr_xmin/idx_ptr_size instead of bounds
  • compute wt_max inside _compute_indices_weights_aa (no significant overhead)
  • added comments and explanations
  • renamed xmin/xmax into ids_min, ids_size

cc @jgong5 @mingfeima @XiaobingSuper @sanchitintel @ashokei @jingxu10 @datumbox @pmeier

vfdev-5 avatar Mar 15 '23 13:03 vfdev-5

:link: Helpful Links

:test_tube: See artifacts and rendered test results at hud.pytorch.org/pr/96847

Note: Links to docs will display an error until the docs builds have been completed.

:white_check_mark: No Failures

As of commit c44323baeed6e2080911d7695cfc5905389d3d36: :green_heart: Looks good so far! There are no failures yet. :green_heart:

This comment was automatically generated by Dr. CI and updates every 15 minutes.

pytorch-bot[bot] avatar Mar 15 '23 13:03 pytorch-bot[bot]

I'll push few updates into the code based on review comments and to avoid accidental merge I set the PR as draft

vfdev-5 avatar Mar 23 '23 14:03 vfdev-5

Results of benchmarks for this PR. There 4 test cases marked with "X" which give unreliable results. I rerun them explicitly and provided results below.

Click here
Description:
- 20230323-164856-pr-96847
Torch version: 2.1.0a0+git7b834d6
Torch config: PyTorch built with:
  - GCC 9.4
  - C++ Version: 201703
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - CPU capability usage: AVX2
  - Build settings: BUILD_TYPE=Release, CXX_COMPILER=/usr/bin/c++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=1 -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOCUPTI -DLIBKINETO_NOROCTRACER -DUSE_PYTORCH_QNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Werror=cast-function-type -Wno-stringop-overflow, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_DISABLE_GPU_ASSERTS=ON, TORCH_VERSION=2.1.0, USE_CUDA=0, USE_CUDNN=OFF, USE_EIGEN_FOR_BLAS=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=OFF, USE_MKLDNN=0, USE_MPI=OFF, USE_NCCL=OFF, USE_NNPACK=0, USE_OPENMP=ON, USE_ROCM=OFF,


- 20230323-172413-nightly
Torch version: 2.1.0a0+git5309c44
Torch config: PyTorch built with:
  - GCC 9.4
  - C++ Version: 201703
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - CPU capability usage: AVX2
  - Build settings: BUILD_TYPE=Release, CXX_COMPILER=/usr/bin/c++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=1 -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOCUPTI -DLIBKINETO_NOROCTRACER -DUSE_PYTORCH_QNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Werror=cast-function-type -Wno-stringop-overflow, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_DISABLE_GPU_ASSERTS=ON, TORCH_VERSION=2.1.0, USE_CUDA=0, USE_CUDNN=OFF, USE_EIGEN_FOR_BLAS=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=OFF, USE_MKLDNN=0, USE_MPI=OFF, USE_NCCL=OFF, USE_NNPACK=0, USE_OPENMP=ON, USE_ROCM=OFF,



[------------------------------------------------------------------------------------------------------------- Resize ------------------------------------------------------------------------------------------------------------]
                                                                                   |  Pillow (9.0.0.post1)  |  torch (2.1.0a0+git7b834d6) ghstack-PR-96847  |  torch (2.1.0a0+git5309c44) nightly  |  Speed-up: PR-96847 vs nightly
1 threads: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      3 torch.uint8 channels_last bilinear (256, 256) -> (32, 32) aa=True          |    38.719 (+-0.511)    |               129.155 (+-1.491)               |          132.050 (+-2.890)           |         1.022 (+-0.000)
      3 torch.uint8 channels_last bilinear (256, 256) -> (32, 32) aa=False         |                        |               112.135 (+-3.153)               |          111.513 (+-2.585)           |         0.994 (+-0.000)
      3 torch.uint8 channels_last bilinear (256, 256) -> (224, 224) aa=True        |   127.837 (+-1.687)    |               295.055 (+-2.561)               |          300.912 (+-1.963)           |         1.020 (+-0.000)
      3 torch.uint8 channels_last bilinear (256, 256) -> (224, 224) aa=False       |                        |               281.954 (+-1.805)               |          287.682 (+-3.179)           |         1.020 (+-0.000)
      3 torch.uint8 channels_last bilinear (256, 256) -> (320, 320) aa=True        |   178.967 (+-1.598)    |               424.912 (+-4.052)               |          435.762 (+-2.653)           |         1.026 (+-0.000)
      3 torch.uint8 channels_last bilinear (256, 256) -> (320, 320) aa=False       |                        |               421.486 (+-3.018)               |          431.192 (+-3.461)           |         1.023 (+-0.000)
      3 torch.uint8 channels_last bilinear (520, 520) -> (32, 32) aa=True          |   112.960 (+-0.995)    |               431.450 (+-4.843)               |          451.762 (+-9.525)           |         1.047 (+-0.000)

X     3 torch.uint8 channels_last bilinear (520, 520) -> (32, 32) aa=False         |                        |               416.816 (+-53.366)              |          363.680 (+-2.959)           |         0.873 (+-0.000)
x     3 torch.uint8 channels_last bilinear (520, 520) -> (224, 224) aa=True        |   281.495 (+-2.045)    |               669.758 (+-2.280)               |          811.035 (+-4.295)           |         1.211 (+-0.000)

      3 torch.uint8 channels_last bilinear (520, 520) -> (224, 224) aa=False       |                        |               623.003 (+-8.695)               |          591.464 (+-2.582)           |         0.949 (+-0.000)
      3 torch.uint8 channels_last bilinear (712, 712) -> (32, 32) aa=True          |   186.052 (+-1.111)    |               770.460 (+-12.775)              |          837.882 (+-21.376)          |         1.088 (+-0.000)

X      3 torch.uint8 channels_last bilinear (712, 712) -> (32, 32) aa=False         |                        |               899.304 (+-13.748)              |          659.327 (+-20.590)          |         0.733 (+-0.000)
X      3 torch.uint8 channels_last bilinear (712, 712) -> (224, 224) aa=True        |   409.952 (+-2.552)    |              1080.221 (+-124.780)             |         1323.303 (+-93.724)          |         1.225 (+-0.000)
      
      3 torch.uint8 channels_last bilinear (712, 712) -> (224, 224) aa=False       |                        |               924.238 (+-3.399)               |         1110.081 (+-154.447)         |         1.201 (+-0.000)
      3 torch.uint8 channels_last bilinear (64, 64) -> (224, 224) aa=True          |    60.513 (+-0.272)    |               157.454 (+-1.262)               |          165.964 (+-2.433)           |         1.054 (+-0.000)
      3 torch.uint8 channels_last bilinear (224, 224) -> (270, 268) aa=True        |   132.726 (+-1.190)    |               319.613 (+-2.402)               |          327.600 (+-2.460)           |         1.025 (+-0.000)
      3 torch.uint8 channels_last bilinear (256, 256) -> (1024, 1024) aa=True      |   947.430 (+-3.370)    |              2580.283 (+-20.541)              |         2772.801 (+-23.188)          |         1.075 (+-0.000)
      3 torch.uint8 channels_last bilinear (224, 224) -> (64, 64) aa=True          |    52.687 (+-0.310)    |               130.011 (+-1.159)               |          134.335 (+-1.196)           |         1.033 (+-0.000)
      3 torch.uint8 channels_last bilinear (270, 268) -> (224, 224) aa=True        |   138.507 (+-1.109)    |               314.773 (+-2.458)               |          318.490 (+-1.922)           |         1.012 (+-0.000)
      3 torch.uint8 channels_last bilinear (1024, 1024) -> (256, 256) aa=True      |   690.144 (+-10.954)   |              1981.538 (+-59.000)              |         2042.357 (+-20.922)          |         1.031 (+-0.000)
      3 torch.uint8 channels_last bilinear (64, 64) -> (224, 224) aa=False         |                        |               155.135 (+-0.878)               |          165.086 (+-2.331)           |         1.064 (+-0.000)
      3 torch.uint8 channels_last bilinear (224, 224) -> (270, 268) aa=False       |                        |               316.657 (+-1.607)               |          323.979 (+-2.686)           |         1.023 (+-0.000)
      3 torch.uint8 channels_last bilinear (256, 256) -> (1024, 1024) aa=False     |                        |              2578.702 (+-21.677)              |         2784.678 (+-22.486)          |         1.080 (+-0.000)
      3 torch.uint8 channels_last bilinear (224, 224) -> (64, 64) aa=False         |                        |               111.604 (+-1.021)               |          111.504 (+-1.046)           |         0.999 (+-0.000)
      3 torch.uint8 channels_last bilinear (270, 268) -> (224, 224) aa=False       |                        |               295.114 (+-2.685)               |          298.357 (+-2.184)           |         1.011 (+-0.000)
      3 torch.uint8 channels_last bilinear (1024, 1024) -> (256, 256) aa=False     |                        |              1726.498 (+-15.274)              |         1724.288 (+-37.707)          |         0.999 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (32, 32) aa=True        |                        |               317.711 (+-1.736)               |          315.736 (+-1.944)           |         0.994 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (32, 32) aa=False       |                        |                24.486 (+-0.118)               |           24.696 (+-0.136)           |         1.009 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (224, 224) aa=True      |                        |               1045.402 (+-5.033)              |          1042.310 (+-5.169)          |         0.997 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (224, 224) aa=False     |                        |               762.002 (+-2.855)               |          759.993 (+-2.310)           |         0.997 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (320, 320) aa=True      |                        |               1766.138 (+-7.833)              |          1768.470 (+-6.633)          |         1.001 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (320, 320) aa=False     |                        |               1542.827 (+-9.588)              |         1538.301 (+-13.990)          |         0.997 (+-0.000)
      3 torch.float32 channels_last bilinear (520, 520) -> (32, 32) aa=True        |                        |               1439.554 (+-6.427)              |          1400.032 (+-5.496)          |         0.973 (+-0.000)
      3 torch.float32 channels_last bilinear (520, 520) -> (32, 32) aa=False       |                        |                26.064 (+-0.097)               |           26.145 (+-0.176)           |         1.003 (+-0.000)
      3 torch.float32 channels_last bilinear (520, 520) -> (224, 224) aa=True      |                        |               2058.325 (+-7.637)              |          2059.229 (+-7.675)          |         1.000 (+-0.000)
      3 torch.float32 channels_last bilinear (520, 520) -> (224, 224) aa=False     |                        |               765.381 (+-2.524)               |          762.443 (+-1.976)           |         0.996 (+-0.000)
      3 torch.float32 channels_last bilinear (712, 712) -> (32, 32) aa=True        |                        |              2669.941 (+-15.326)              |         2658.132 (+-12.180)          |         0.996 (+-0.000)
      3 torch.float32 channels_last bilinear (712, 712) -> (32, 32) aa=False       |                        |                26.666 (+-0.130)               |           26.628 (+-0.130)           |         0.999 (+-0.000)
      3 torch.float32 channels_last bilinear (712, 712) -> (224, 224) aa=True      |                        |              3153.329 (+-20.783)              |         3160.121 (+-15.037)          |         1.002 (+-0.000)
      3 torch.float32 channels_last bilinear (712, 712) -> (224, 224) aa=False     |                        |               766.780 (+-1.709)               |          768.550 (+-3.093)           |         1.002 (+-0.000)
      3 torch.float32 channels_last bilinear (64, 64) -> (224, 224) aa=True        |                        |               712.322 (+-2.249)               |          710.755 (+-2.209)           |         0.998 (+-0.000)
      3 torch.float32 channels_last bilinear (224, 224) -> (270, 268) aa=True      |                        |               1273.656 (+-8.191)              |          1273.996 (+-6.578)          |         1.000 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (1024, 1024) aa=True    |                        |              13920.875 (+-90.444)             |         13959.411 (+-70.105)         |         1.003 (+-0.000)
      3 torch.float32 channels_last bilinear (224, 224) -> (64, 64) aa=True        |                        |               324.637 (+-1.033)               |          322.538 (+-1.938)           |         0.994 (+-0.000)
      3 torch.float32 channels_last bilinear (270, 268) -> (224, 224) aa=True      |                        |               1100.012 (+-6.499)              |          1098.919 (+-7.063)          |         0.999 (+-0.000)
      3 torch.float32 channels_last bilinear (1024, 1024) -> (256, 256) aa=True    |                        |              6061.335 (+-31.139)              |         6032.787 (+-33.749)          |         0.995 (+-0.000)
      3 torch.float32 channels_last bilinear (64, 64) -> (224, 224) aa=False       |                        |               762.300 (+-2.342)               |          763.982 (+-3.370)           |         1.002 (+-0.000)
      3 torch.float32 channels_last bilinear (224, 224) -> (270, 268) aa=False     |                        |               1093.883 (+-7.295)              |          1094.536 (+-8.027)          |         1.001 (+-0.000)
      3 torch.float32 channels_last bilinear (256, 256) -> (1024, 1024) aa=False   |                        |             15773.643 (+-174.540)             |        15761.104 (+-406.822)         |         0.999 (+-0.000)
      3 torch.float32 channels_last bilinear (224, 224) -> (64, 64) aa=False       |                        |                71.518 (+-1.553)               |           70.876 (+-0.218)           |         0.991 (+-0.000)
      3 torch.float32 channels_last bilinear (270, 268) -> (224, 224) aa=False     |                        |               762.252 (+-3.098)               |          760.904 (+-5.392)           |         0.998 (+-0.000)
      3 torch.float32 channels_last bilinear (1024, 1024) -> (256, 256) aa=False   |                        |               1001.154 (+-3.420)              |          1000.705 (+-4.251)          |         1.000 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (32, 32) aa=True          |                        |                51.957 (+-0.247)               |           54.757 (+-0.199)           |         1.054 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (32, 32) aa=False         |                        |                34.697 (+-0.210)               |           34.080 (+-0.174)           |         0.982 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (224, 224) aa=True        |                        |               144.017 (+-1.476)               |          139.483 (+-1.733)           |         0.969 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (224, 224) aa=False       |                        |               129.584 (+-1.338)               |          124.907 (+-1.629)           |         0.964 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (320, 320) aa=True        |                        |               193.730 (+-1.545)               |          185.567 (+-1.365)           |         0.958 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (320, 320) aa=False       |                        |               190.381 (+-1.394)               |          183.485 (+-1.872)           |         0.964 (+-0.000)
      4 torch.uint8 channels_last bilinear (520, 520) -> (32, 32) aa=True          |                        |               122.909 (+-1.114)               |          134.311 (+-1.665)           |         1.093 (+-0.000)
      4 torch.uint8 channels_last bilinear (520, 520) -> (32, 32) aa=False         |                        |                55.997 (+-0.238)               |           54.905 (+-0.237)           |         0.981 (+-0.000)
      4 torch.uint8 channels_last bilinear (520, 520) -> (224, 224) aa=True        |                        |               285.947 (+-1.955)               |          327.057 (+-2.388)           |         1.144 (+-0.000)
      4 torch.uint8 channels_last bilinear (520, 520) -> (224, 224) aa=False       |                        |               211.831 (+-1.315)               |          200.038 (+-1.421)           |         0.944 (+-0.000)
      4 torch.uint8 channels_last bilinear (712, 712) -> (32, 32) aa=True          |                        |               191.767 (+-2.166)               |          207.113 (+-1.347)           |         1.080 (+-0.000)
      4 torch.uint8 channels_last bilinear (712, 712) -> (32, 32) aa=False         |                        |                73.375 (+-0.224)               |           71.915 (+-0.354)           |         0.980 (+-0.000)
      4 torch.uint8 channels_last bilinear (712, 712) -> (224, 224) aa=True        |                        |               420.096 (+-2.266)               |          460.714 (+-2.824)           |         1.097 (+-0.000)
      4 torch.uint8 channels_last bilinear (712, 712) -> (224, 224) aa=False       |                        |               272.428 (+-2.255)               |          253.531 (+-1.630)           |         0.931 (+-0.000)
      4 torch.uint8 channels_last bilinear (64, 64) -> (224, 224) aa=True          |                        |                74.814 (+-0.361)               |           74.655 (+-0.319)           |         0.998 (+-0.000)
      4 torch.uint8 channels_last bilinear (224, 224) -> (270, 268) aa=True        |                        |               150.514 (+-1.199)               |          145.675 (+-1.193)           |         0.968 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (1024, 1024) aa=True      |                        |               895.240 (+-3.512)               |          869.262 (+-2.442)           |         0.971 (+-0.000)
      4 torch.uint8 channels_last bilinear (224, 224) -> (64, 64) aa=True          |                        |                66.707 (+-0.207)               |           70.331 (+-0.370)           |         1.054 (+-0.000)
      4 torch.uint8 channels_last bilinear (270, 268) -> (224, 224) aa=True        |                        |               154.572 (+-1.198)               |          151.285 (+-1.215)           |         0.979 (+-0.000)
      4 torch.uint8 channels_last bilinear (1024, 1024) -> (256, 256) aa=True      |                        |               667.814 (+-2.682)               |          714.797 (+-2.961)           |         1.070 (+-0.000)
      4 torch.uint8 channels_last bilinear (64, 64) -> (224, 224) aa=False         |                        |                72.933 (+-0.247)               |           73.522 (+-0.308)           |         1.008 (+-0.000)
      4 torch.uint8 channels_last bilinear (224, 224) -> (270, 268) aa=False       |                        |               148.658 (+-1.072)               |          144.106 (+-1.085)           |         0.969 (+-0.000)
      4 torch.uint8 channels_last bilinear (256, 256) -> (1024, 1024) aa=False     |                        |               887.989 (+-4.149)               |          871.161 (+-5.846)           |         0.981 (+-0.000)
      4 torch.uint8 channels_last bilinear (224, 224) -> (64, 64) aa=False         |                        |                48.430 (+-0.190)               |           47.099 (+-0.244)           |         0.973 (+-0.000)
      4 torch.uint8 channels_last bilinear (270, 268) -> (224, 224) aa=False       |                        |               135.406 (+-1.191)               |          130.276 (+-1.227)           |         0.962 (+-0.000)
      4 torch.uint8 channels_last bilinear (1024, 1024) -> (256, 256) aa=False     |                        |               421.934 (+-2.683)               |          395.063 (+-2.857)           |         0.936 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (32, 32) aa=True         |    38.256 (+-0.654)    |               129.925 (+-3.938)               |          133.051 (+-1.148)           |         1.024 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (32, 32) aa=False        |                        |               112.929 (+-0.949)               |          111.913 (+-1.015)           |         0.991 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (224, 224) aa=True       |   127.690 (+-1.114)    |               295.840 (+-1.923)               |          307.481 (+-4.318)           |         1.039 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (224, 224) aa=False      |                        |               282.147 (+-2.209)               |          292.091 (+-4.447)           |         1.035 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (320, 320) aa=True       |   178.768 (+-1.925)    |               426.283 (+-2.372)               |          447.584 (+-9.413)           |         1.050 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (320, 320) aa=False      |                        |               423.556 (+-6.367)               |          451.241 (+-8.831)           |         1.065 (+-0.000)
      3 torch.uint8 channels_first bilinear (520, 520) -> (32, 32) aa=True         |   113.096 (+-0.872)    |               433.224 (+-2.394)               |          443.731 (+-2.782)           |         1.024 (+-0.000)
      3 torch.uint8 channels_first bilinear (520, 520) -> (32, 32) aa=False        |                        |               364.883 (+-2.438)               |          365.349 (+-1.669)           |         1.001 (+-0.000)
      3 torch.uint8 channels_first bilinear (520, 520) -> (224, 224) aa=True       |   281.490 (+-2.263)    |               671.439 (+-2.538)               |          729.098 (+-5.497)           |         1.086 (+-0.000)
      3 torch.uint8 channels_first bilinear (520, 520) -> (224, 224) aa=False      |                        |               596.118 (+-2.328)               |          601.511 (+-5.652)           |         1.009 (+-0.000)
      3 torch.uint8 channels_first bilinear (712, 712) -> (32, 32) aa=True         |   185.918 (+-1.693)    |               773.266 (+-2.932)               |          788.039 (+-3.813)           |         1.019 (+-0.000)
      3 torch.uint8 channels_first bilinear (712, 712) -> (32, 32) aa=False        |                        |               654.207 (+-3.507)               |          649.668 (+-2.238)           |         0.993 (+-0.000)
      3 torch.uint8 channels_first bilinear (712, 712) -> (224, 224) aa=True       |   410.836 (+-2.427)    |              1076.095 (+-10.237)              |         1133.274 (+-14.727)          |         1.053 (+-0.000)
      3 torch.uint8 channels_first bilinear (712, 712) -> (224, 224) aa=False      |                        |               926.204 (+-13.314)              |          929.228 (+-5.367)           |         1.003 (+-0.000)
      3 torch.uint8 channels_first bilinear (64, 64) -> (224, 224) aa=True         |    60.375 (+-0.289)    |               157.108 (+-1.625)               |          178.420 (+-6.037)           |         1.136 (+-0.000)
      3 torch.uint8 channels_first bilinear (224, 224) -> (270, 268) aa=True       |   132.439 (+-1.120)    |               319.372 (+-2.045)               |          341.354 (+-6.069)           |         1.069 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (1024, 1024) aa=True     |   944.113 (+-2.681)    |              2591.914 (+-38.223)              |         2819.866 (+-148.463)         |         1.088 (+-0.000)
      3 torch.uint8 channels_first bilinear (224, 224) -> (64, 64) aa=True         |    52.428 (+-0.214)    |               130.977 (+-0.963)               |          136.211 (+-1.751)           |         1.040 (+-0.000)
      3 torch.uint8 channels_first bilinear (270, 268) -> (224, 224) aa=True       |   138.626 (+-1.263)    |               313.966 (+-2.245)               |          337.755 (+-12.921)          |         1.076 (+-0.000)
      3 torch.uint8 channels_first bilinear (1024, 1024) -> (256, 256) aa=True     |   690.426 (+-12.467)   |              1979.607 (+-20.048)              |         2050.545 (+-23.798)          |         1.036 (+-0.000)
      3 torch.uint8 channels_first bilinear (64, 64) -> (224, 224) aa=False        |                        |               155.784 (+-1.254)               |          178.000 (+-7.008)           |         1.143 (+-0.000)
      3 torch.uint8 channels_first bilinear (224, 224) -> (270, 268) aa=False      |                        |               316.951 (+-2.666)               |          339.688 (+-6.401)           |         1.072 (+-0.000)
      3 torch.uint8 channels_first bilinear (256, 256) -> (1024, 1024) aa=False    |                        |              2580.831 (+-33.703)              |         2943.312 (+-160.264)         |         1.140 (+-0.000)
      3 torch.uint8 channels_first bilinear (224, 224) -> (64, 64) aa=False        |                        |               111.623 (+-1.048)               |          112.409 (+-1.393)           |         1.007 (+-0.000)
      3 torch.uint8 channels_first bilinear (270, 268) -> (224, 224) aa=False      |                        |               294.691 (+-1.547)               |          306.256 (+-4.166)           |         1.039 (+-0.000)
      3 torch.uint8 channels_first bilinear (1024, 1024) -> (256, 256) aa=False    |                        |              1729.876 (+-14.071)              |         1732.068 (+-21.338)          |         1.001 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (32, 32) aa=True       |                        |               305.353 (+-0.805)               |          304.727 (+-1.361)           |         0.998 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (32, 32) aa=False      |                        |               153.584 (+-0.698)               |          154.150 (+-0.756)           |         1.004 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (224, 224) aa=True     |                        |               621.918 (+-1.981)               |          618.706 (+-1.102)           |         0.995 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (224, 224) aa=False    |                        |               1047.633 (+-7.071)              |          1049.938 (+-6.541)          |         1.002 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (320, 320) aa=True     |                        |               907.549 (+-1.557)               |          903.190 (+-1.170)           |         0.995 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (320, 320) aa=False    |                        |              1996.973 (+-13.645)              |         1994.139 (+-11.676)          |         0.999 (+-0.000)
      3 torch.float32 channels_first bilinear (520, 520) -> (32, 32) aa=True       |                        |               1427.660 (+-7.690)              |          1387.957 (+-5.681)          |         0.972 (+-0.000)
      3 torch.float32 channels_first bilinear (520, 520) -> (32, 32) aa=False      |                        |               517.519 (+-2.274)               |          517.975 (+-1.560)           |         1.001 (+-0.000)
      3 torch.float32 channels_first bilinear (520, 520) -> (224, 224) aa=True     |                        |              1634.611 (+-12.291)              |         1686.206 (+-11.108)          |         1.032 (+-0.000)
      3 torch.float32 channels_first bilinear (520, 520) -> (224, 224) aa=False    |                        |               1414.320 (+-8.553)              |         1415.925 (+-13.567)          |         1.001 (+-0.000)
      3 torch.float32 channels_first bilinear (712, 712) -> (32, 32) aa=True       |                        |              2654.209 (+-10.720)              |          2641.642 (+-8.319)          |         0.995 (+-0.000)
      3 torch.float32 channels_first bilinear (712, 712) -> (32, 32) aa=False      |                        |               941.203 (+-2.867)               |          946.496 (+-6.012)           |         1.006 (+-0.000)
      3 torch.float32 channels_first bilinear (712, 712) -> (224, 224) aa=True     |                        |              2719.297 (+-11.857)              |         2744.925 (+-21.621)          |         1.009 (+-0.000)
      3 torch.float32 channels_first bilinear (712, 712) -> (224, 224) aa=False    |                        |               1933.822 (+-9.872)              |         1929.558 (+-13.361)          |         0.998 (+-0.000)
      3 torch.float32 channels_first bilinear (64, 64) -> (224, 224) aa=True       |                        |               292.733 (+-1.976)               |          289.194 (+-0.734)           |         0.988 (+-0.000)
      3 torch.float32 channels_first bilinear (224, 224) -> (270, 268) aa=True     |                        |               668.280 (+-2.662)               |          665.056 (+-2.019)           |         0.995 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (1024, 1024) aa=True   |                        |              5049.993 (+-15.111)              |         5045.329 (+-20.733)          |         0.999 (+-0.000)
      3 torch.float32 channels_first bilinear (224, 224) -> (64, 64) aa=True       |                        |               287.186 (+-1.878)               |          290.790 (+-1.505)           |         1.013 (+-0.000)
      3 torch.float32 channels_first bilinear (270, 268) -> (224, 224) aa=True     |                        |               675.495 (+-1.491)               |          672.473 (+-1.233)           |         0.996 (+-0.000)
      3 torch.float32 channels_first bilinear (1024, 1024) -> (256, 256) aa=True   |                        |              5110.720 (+-21.234)              |         5174.141 (+-18.942)          |         1.012 (+-0.000)
      3 torch.float32 channels_first bilinear (64, 64) -> (224, 224) aa=False      |                        |               939.682 (+-2.535)               |          939.575 (+-2.190)           |         1.000 (+-0.000)
      3 torch.float32 channels_first bilinear (224, 224) -> (270, 268) aa=False    |                        |               1424.547 (+-8.681)              |         1424.590 (+-43.012)          |         1.000 (+-0.000)
      3 torch.float32 channels_first bilinear (256, 256) -> (1024, 1024) aa=False  |                        |             21238.039 (+-834.799)             |        21165.362 (+-268.642)         |         0.997 (+-0.000)
      3 torch.float32 channels_first bilinear (224, 224) -> (64, 64) aa=False      |                        |               182.334 (+-1.036)               |          182.746 (+-1.458)           |         1.002 (+-0.000)
      3 torch.float32 channels_first bilinear (270, 268) -> (224, 224) aa=False    |                        |               1060.442 (+-5.567)              |          1059.309 (+-7.065)          |         0.999 (+-0.000)
      3 torch.float32 channels_first bilinear (1024, 1024) -> (256, 256) aa=False  |                        |              3603.374 (+-14.050)              |         3532.147 (+-18.668)          |         0.980 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (32, 32) aa=True         |                        |                70.337 (+-0.525)               |           73.757 (+-0.221)           |         1.049 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (32, 32) aa=False        |                        |                53.316 (+-0.199)               |           53.351 (+-0.232)           |         1.001 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (224, 224) aa=True       |                        |               250.769 (+-1.181)               |          269.099 (+-3.592)           |         1.073 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (224, 224) aa=False      |                        |               236.643 (+-2.056)               |          248.481 (+-5.474)           |         1.050 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (320, 320) aa=True       |                        |               398.118 (+-2.679)               |          410.447 (+-5.681)           |         1.031 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (320, 320) aa=False      |                        |               394.098 (+-2.674)               |          409.395 (+-7.665)           |         1.039 (+-0.000)
      4 torch.uint8 channels_first bilinear (520, 520) -> (32, 32) aa=True         |                        |               190.539 (+-1.206)               |          201.400 (+-1.865)           |         1.057 (+-0.000)
      4 torch.uint8 channels_first bilinear (520, 520) -> (32, 32) aa=False        |                        |               124.083 (+-0.701)               |          123.629 (+-0.985)           |         0.996 (+-0.000)
      4 torch.uint8 channels_first bilinear (520, 520) -> (224, 224) aa=True       |                        |               441.806 (+-1.937)               |          497.115 (+-3.611)           |         1.125 (+-0.000)
      4 torch.uint8 channels_first bilinear (520, 520) -> (224, 224) aa=False      |                        |               368.386 (+-2.056)               |          367.895 (+-3.530)           |         0.999 (+-0.000)
      4 torch.uint8 channels_first bilinear (712, 712) -> (32, 32) aa=True         |                        |               318.859 (+-1.982)               |          337.082 (+-1.912)           |         1.057 (+-0.000)
      4 torch.uint8 channels_first bilinear (712, 712) -> (32, 32) aa=False        |                        |               198.969 (+-1.168)               |          198.284 (+-1.117)           |         0.997 (+-0.000)
      4 torch.uint8 channels_first bilinear (712, 712) -> (224, 224) aa=True       |                        |               641.299 (+-3.068)               |          689.438 (+-4.126)           |         1.075 (+-0.000)
      4 torch.uint8 channels_first bilinear (712, 712) -> (224, 224) aa=False      |                        |               488.206 (+-2.259)               |          514.368 (+-11.502)          |         1.054 (+-0.000)
      4 torch.uint8 channels_first bilinear (64, 64) -> (224, 224) aa=True         |                        |               167.609 (+-1.254)               |          181.377 (+-3.830)           |         1.082 (+-0.000)
      4 torch.uint8 channels_first bilinear (224, 224) -> (270, 268) aa=True       |                        |               294.348 (+-2.478)               |          304.571 (+-4.449)           |         1.035 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (1024, 1024) aa=True     |                        |              2923.097 (+-18.406)              |         3201.017 (+-98.145)          |         1.095 (+-0.000)
      4 torch.uint8 channels_first bilinear (224, 224) -> (64, 64) aa=True         |                        |                87.094 (+-0.349)               |           92.073 (+-0.470)           |         1.057 (+-0.000)
      4 torch.uint8 channels_first bilinear (270, 268) -> (224, 224) aa=True       |                        |               263.140 (+-1.476)               |          283.198 (+-3.817)           |         1.076 (+-0.000)
      4 torch.uint8 channels_first bilinear (1024, 1024) -> (256, 256) aa=True     |                        |              1251.367 (+-81.495)              |         1249.723 (+-34.231)          |         0.999 (+-0.000)
      4 torch.uint8 channels_first bilinear (64, 64) -> (224, 224) aa=False        |                        |               165.496 (+-1.151)               |          177.639 (+-4.100)           |         1.073 (+-0.000)
      4 torch.uint8 channels_first bilinear (224, 224) -> (270, 268) aa=False      |                        |               291.731 (+-1.534)               |          304.440 (+-5.711)           |         1.044 (+-0.000)
      4 torch.uint8 channels_first bilinear (256, 256) -> (1024, 1024) aa=False    |                        |              2915.894 (+-17.840)              |         3241.920 (+-95.356)          |         1.112 (+-0.000)
      4 torch.uint8 channels_first bilinear (224, 224) -> (64, 64) aa=False        |                        |                68.399 (+-0.315)               |           68.497 (+-0.388)           |         1.001 (+-0.000)
      4 torch.uint8 channels_first bilinear (270, 268) -> (224, 224) aa=False      |                        |               243.896 (+-1.334)               |          249.747 (+-3.271)           |         1.024 (+-0.000)
      4 torch.uint8 channels_first bilinear (1024, 1024) -> (256, 256) aa=False    |                        |              1016.406 (+-33.316)              |          929.075 (+-65.485)          |         0.914 (+-0.000)

Times are in microseconds (us).

  • Rerun suspicious cases
Num threads: 1

PIL version:  9.0.0.post1
[--------------------------------------------------------------------------------- Resize ---------------------------------------------------------------------------------]
                                                                             |  torch (2.1.0a0+git7b834d6) ghstack-PR-96847  |   torchvision resize  |  Pillow (9.0.0.post1)
1 threads: -----------------------------------------------------------------------------------------------------------------------------------------------------------------
      3 torch.uint8 channels_last bilinear (520, 520) -> (32, 32) aa=False   |               369.551 (+-10.291)              |   191.607 (+-0.566)   |
      3 torch.uint8 channels_last bilinear (520, 520) -> (224, 224) aa=True  |               673.710 (+-13.528)              |  2347.606 (+-38.950)  |   281.294 (+-1.939)
      3 torch.uint8 channels_last bilinear (712, 712) -> (32, 32) aa=False   |               655.299 (+-8.068)               |   322.105 (+-2.164)   |
      3 torch.uint8 channels_last bilinear (712, 712) -> (224, 224) aa=True  |              1074.346 (+-11.005)              |  3589.572 (+-13.669)  |   410.919 (+-2.393)

[----------------------------------------------------------------------------- Resize ----------------------------------------------------------------------------]
                                                                             |  torch (2.1.0a0+git5309c44) nightly  |   torchvision resize  |  Pillow (9.0.0.post1)
1 threads: --------------------------------------------------------------------------------------------------------------------------------------------------------
      3 torch.uint8 channels_last bilinear (520, 520) -> (32, 32) aa=False   |          363.553 (+-2.929)           |   188.454 (+-0.671)   |
      3 torch.uint8 channels_last bilinear (520, 520) -> (224, 224) aa=True  |          719.061 (+-4.441)           |  2318.282 (+-65.772)  |   282.557 (+-2.095)
      3 torch.uint8 channels_last bilinear (712, 712) -> (32, 32) aa=False   |          678.180 (+-35.905)          |   319.072 (+-1.148)   |
      3 torch.uint8 channels_last bilinear (712, 712) -> (224, 224) aa=True  |         1124.645 (+-16.315)          |  3578.279 (+-88.949)  |   407.529 (+-2.543)

Times are in microseconds (us).

vfdev-5 avatar Mar 23 '23 18:03 vfdev-5

@pytorchbot merge

vfdev-5 avatar Mar 24 '23 15:03 vfdev-5

Merge started

Your change will be merged once all checks pass (ETA 0-4 Hours).

Learn more about merging in the wiki.

Questions? Feedback? Please reach out to the PyTorch DevX Team

Advanced Debugging Check the merge workflow status here

pytorchmergebot avatar Mar 24 '23 15:03 pytorchmergebot