• Mingzhe Li's avatar
    introduce auto_set to simplify benchmarking the backward path of operators (#23276) · 3c986dff
    Mingzhe Li 提交于
    Summary:
    Pull Request resolved: https://github.com/pytorch/pytorch/pull/23276
    
    This diff introduces a new feature to simplify benchmarking the backward path of ops. Here is an example:
    
    ```
    ...
    self.input_one = torch.rand(M, N, K, requires_grad=self.auto_set())
    self.input_two = torch.rand(M, N, K, requires_grad=self.auto_set())
    ...
    ```
    
    In this way, the benchmark will generate three different test cases.
    1. input_one requires grad
    2. input_two requires grad
    3. both inputs require grad
    
    Here is a sample output:
    ```
    # Benchmarking PyTorch: add
    # Mode: Eager
    # Name: add_M1_N8_K8_bwdall
    # Input: M: 1, N: 8, K: 8
    Backward Execution Time (us) : 863.744
    
    # Benchmarking PyTorch: add
    # Mode: Eager
    # Name: add_M1_N8_K8_bwd1
    # Input: M: 1, N: 8, K: 8
    Backward Execution Time (us) : 727.915
    
    # Benchmarking PyTorch: add
    # Mode: Eager
    # Name: add_M1_N8_K8_bwd2
    # Input: M: 1, N: 8, K: 8
    Backward Execution Time (us) : 687.626
    ```
    
    Reviewed By: zheng-xq
    
    Differential Revision: D16450355
    
    fbshipit-source-id: 50ae0916e81c3ff9f0c482ed6d386319eb15b305
    3c986dff
名称
最后提交
最后更新
.circleci Loading commit data...
.ctags.d Loading commit data...
.github Loading commit data...
.jenkins Loading commit data...
aten Loading commit data...
benchmarks Loading commit data...
binaries Loading commit data...
c10 Loading commit data...
caffe2 Loading commit data...
cmake Loading commit data...
docker Loading commit data...
docs Loading commit data...
modules Loading commit data...
scripts Loading commit data...
submodules Loading commit data...
test Loading commit data...
third_party Loading commit data...
tools Loading commit data...
torch Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.dockerignore Loading commit data...
.flake8 Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
.travis.aten.yml Loading commit data...
.travis.yml Loading commit data...
CITATION Loading commit data...
CMakeLists.txt Loading commit data...
CODEOWNERS Loading commit data...
CONTRIBUTING.md Loading commit data...
LICENSE Loading commit data...
Makefile Loading commit data...
NOTICE Loading commit data...
README.md Loading commit data...
azure-pipelines.yml Loading commit data...
mypy-README.md Loading commit data...
mypy-files.txt Loading commit data...
mypy.ini Loading commit data...
requirements.txt Loading commit data...
setup.py Loading commit data...
ubsan.supp Loading commit data...