mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-21 05:34:18 +08:00
This is one of a series of PRs to update us to PEP585 (changing Dict -> dict, List -> list, etc). Most of the PRs were completely automated with RUFF as follows: Since RUFF UP006 is considered an "unsafe" fix first we need to enable unsafe fixes: ``` --- a/tools/linter/adapters/ruff_linter.py +++ b/tools/linter/adapters/ruff_linter.py @@ -313,6 +313,7 @@ "ruff", "check", "--fix-only", + "--unsafe-fixes", "--exit-zero", *([f"--config={config}"] if config else []), "--stdin-filename", ``` Then we need to tell RUFF to allow UP006 (as a final PR once all of these have landed this will be made permanent): ``` --- a/pyproject.toml +++ b/pyproject.toml @@ -40,7 +40,7 @@ [tool.ruff] -target-version = "py38" +target-version = "py39" line-length = 88 src = ["caffe2", "torch", "torchgen", "functorch", "test"] @@ -87,7 +87,6 @@ "SIM116", # Disable Use a dictionary instead of consecutive `if` statements "SIM117", "SIM118", - "UP006", # keep-runtime-typing "UP007", # keep-runtime-typing ] select = [ ``` Finally running `lintrunner -a --take RUFF` will fix up the deprecated uses. Pull Request resolved: https://github.com/pytorch/pytorch/pull/145101 Approved by: https://github.com/bobrenjc93
57 lines
1.4 KiB
Python
57 lines
1.4 KiB
Python
import operator_benchmark as op_bench
|
|
|
|
import torch
|
|
|
|
|
|
"""Microbenchmarks for as_strided operator"""
|
|
|
|
|
|
# Configs for PT as_strided operator
|
|
as_strided_configs_short = op_bench.config_list(
|
|
attr_names=["M", "N", "size", "stride", "storage_offset"],
|
|
attrs=[
|
|
[8, 8, (2, 2), (1, 1), 0],
|
|
[256, 256, (32, 32), (1, 1), 0],
|
|
[512, 512, (64, 64), (2, 2), 1],
|
|
],
|
|
cross_product_configs={
|
|
"device": ["cpu", "cuda"],
|
|
},
|
|
tags=["short"],
|
|
)
|
|
|
|
as_strided_configs_long = op_bench.cross_product_configs(
|
|
M=[512],
|
|
N=[1024],
|
|
size=[(16, 16), (128, 128)],
|
|
stride=[(1, 1)],
|
|
storage_offset=[0, 1],
|
|
device=["cpu", "cuda"],
|
|
tags=["long"],
|
|
)
|
|
|
|
|
|
class As_stridedBenchmark(op_bench.TorchBenchmarkBase):
|
|
def init(self, M, N, size, stride, storage_offset, device):
|
|
self.inputs = {
|
|
"input_one": torch.rand(M, N, device=device),
|
|
"size": size,
|
|
"stride": stride,
|
|
"storage_offset": storage_offset,
|
|
}
|
|
self.set_module_name("as_strided")
|
|
|
|
def forward(
|
|
self, input_one, size: list[int], stride: list[int], storage_offset: int
|
|
):
|
|
return torch.as_strided(input_one, size, stride, storage_offset)
|
|
|
|
|
|
op_bench.generate_pt_test(
|
|
as_strided_configs_short + as_strided_configs_long, As_stridedBenchmark
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
op_bench.benchmark_runner.main()
|