2024-08-06T20:16:55.8876884Z Current runner version: '2.318.0' 2024-08-06T20:16:55.8884929Z Runner name: 'i-0e18f27a51b7f397a' 2024-08-06T20:16:55.8885839Z Runner group name: 'Default' 2024-08-06T20:16:55.8886995Z Machine name: 'ip-10-0-9-165' 2024-08-06T20:16:55.8891689Z ##[group]GITHUB_TOKEN Permissions 2024-08-06T20:16:55.8894882Z Actions: read 2024-08-06T20:16:55.8895595Z Attestations: read 2024-08-06T20:16:55.8896242Z Checks: read 2024-08-06T20:16:55.8896817Z Contents: read 2024-08-06T20:16:55.8897518Z Deployments: read 2024-08-06T20:16:55.8898168Z Discussions: read 2024-08-06T20:16:55.8898739Z Issues: read 2024-08-06T20:16:55.8899358Z Metadata: read 2024-08-06T20:16:55.8899991Z Packages: read 2024-08-06T20:16:55.8900552Z Pages: read 2024-08-06T20:16:55.8901178Z PullRequests: read 2024-08-06T20:16:55.8901852Z RepositoryProjects: read 2024-08-06T20:16:55.8902499Z SecurityEvents: read 2024-08-06T20:16:55.8903141Z Statuses: read 2024-08-06T20:16:55.8903764Z ##[endgroup] 2024-08-06T20:16:55.8907526Z Secret source: Actions 2024-08-06T20:16:55.8908614Z Prepare workflow directory 2024-08-06T20:16:56.2074111Z Prepare all required actions 2024-08-06T20:16:56.2119550Z Getting action download info 2024-08-06T20:16:56.3635512Z Download action repository 'pytorch/test-infra@main' (SHA:a1f5a89251fc4258ab59806094fe3108f7d6741a) 2024-08-06T20:16:57.7857222Z Download action repository 'pytorch/pytorch@main' (SHA:de00c7958301ce81b9716bdef5731ed40d4d14ca) 2024-08-06T20:17:10.1378340Z Download action repository 'aws-actions/configure-aws-credentials@v3' (SHA:50ac8dd1e1b10d09dac7b8727528b91bed831ac0) 2024-08-06T20:17:10.3621101Z Download action repository 'seemethere/upload-artifact-s3@v5' (SHA:baba72d0712b404f646cebe0730933554ebce96a) 2024-08-06T20:17:10.7095431Z Getting action download info 2024-08-06T20:17:10.7999589Z Download action repository 'malfet/checkout@silent-checkout' (SHA:e07af140b3ccefc05679e3755b9db68f4ee4589c) 2024-08-06T20:17:11.1230726Z Getting action download info 2024-08-06T20:17:11.2312267Z Download action repository 'nick-fields/retry@3e91a01664abd3c5cd539100d10d33b9c5b68482' (SHA:3e91a01664abd3c5cd539100d10d33b9c5b68482) 2024-08-06T20:17:11.3995592Z Uses: pytorch/pytorch/.github/workflows/_linux-test.yml@refs/pull/132710/merge (bf5bb5a1585a03379137fab341e87c02c77e76cd) 2024-08-06T20:17:11.3997736Z ##[group] Inputs 2024-08-06T20:17:11.3998106Z build-environment: linux-focal-py3.12-clang10 2024-08-06T20:17:11.4000347Z test-matrix: {"include": [{"config": "default", "shard": 1, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 2, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 3, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 4, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 1, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 2, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 3, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}]} 2024-08-06T20:17:11.4002894Z docker-image: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:17:11.4003672Z sync-tag: 2024-08-06T20:17:11.4004540Z timeout-minutes: 600 2024-08-06T20:17:11.4004830Z use-gha: 2024-08-06T20:17:11.4005079Z dashboard-tag: 2024-08-06T20:17:11.4005320Z s3-bucket: gha-artifacts 2024-08-06T20:17:11.4005609Z aws-role-to-assume: 2024-08-06T20:17:11.4005877Z ##[endgroup] 2024-08-06T20:17:11.4006302Z Complete job name: linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:17:11.4462587Z A job started hook has been configured by the self-hosted runner administrator 2024-08-06T20:17:11.4572051Z ##[group]Run '/home/ec2-user/runner-scripts/before_job.sh' 2024-08-06T20:17:11.4581710Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:17:11.4582402Z ##[endgroup] 2024-08-06T20:17:13.2040648Z Runner Type: amz2023.linux.2xlarge 2024-08-06T20:17:13.2041540Z Instance Type: c5.2xlarge 2024-08-06T20:17:13.2041897Z AMI Name: al2023-ami-2023.5.20240701.0-kernel-6.1-x86_64 2024-08-06T20:17:13.2042278Z AMI ID: ami-06c68f701d8090592 2024-08-06T20:17:19.6171412Z ##[group]Run pytorch/test-infra/.github/actions/setup-ssh@main 2024-08-06T20:17:19.6171923Z with: 2024-08-06T20:17:19.6172712Z github-secret: *** 2024-08-06T20:17:19.6173459Z instructions: All testing is done inside the container, to start an interactive session run: docker exec -it $(docker container ps --format '{{.ID}}') bash 2024-08-06T20:17:19.6174393Z activate-with-label: false 2024-08-06T20:17:19.6174689Z label: with-ssh 2024-08-06T20:17:19.6174934Z remove-existing-keys: true 2024-08-06T20:17:19.6175227Z fail-silently: true 2024-08-06T20:17:19.6175461Z env: 2024-08-06T20:17:19.6175680Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:17:19.6175963Z ##[endgroup] 2024-08-06T20:17:19.7046530Z Please see https://github.com/pytorch/pytorch/wiki/Debugging-using-with-ssh-for-Github-Actions for more info. 2024-08-06T20:17:20.0123997Z Grabbing public ssh keys from https://github.com/drisspg.keys 2024-08-06T20:17:20.1530661Z ~/.ssh/authorized_keys file found on node, removing ~/.ssh and starting fresh 2024-08-06T20:17:20.1544219Z Public keys pulled and installed to /home/ec2-user/.ssh/authorized_keys 2024-08-06T20:17:20.1577057Z Login using: ssh ec2-user@ec2-54-161-54-0.compute-1.amazonaws.com 2024-08-06T20:17:20.1577654Z All testing is done inside the container, to start an interactive session run: 2024-08-06T20:17:20.1578235Z docker exec -it $(docker container ps --format '{{.ID}}') bash 2024-08-06T20:17:20.1709672Z ##[group]Run pytorch/pytorch/.github/actions/checkout-pytorch@main 2024-08-06T20:17:20.1710140Z with: 2024-08-06T20:17:20.1710366Z submodules: recursive 2024-08-06T20:17:20.1710638Z fetch-depth: 0 2024-08-06T20:17:20.1710877Z env: 2024-08-06T20:17:20.1711090Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:17:20.1711366Z ##[endgroup] 2024-08-06T20:17:20.1798567Z ##[group]Run retry () { 2024-08-06T20:17:20.1798949Z retry () { 2024-08-06T20:17:20.1799288Z  $* || (sleep 1 && $*) || (sleep 2 && $*) || (sleep 4 && $*) || (sleep 8 && $*) 2024-08-06T20:17:20.1799693Z } 2024-08-06T20:17:20.1799937Z echo "${GITHUB_WORKSPACE}" 2024-08-06T20:17:20.1800251Z if [ -z "${NO_SUDO}" ]; then 2024-08-06T20:17:20.1800610Z  retry sudo rm -rf "${GITHUB_WORKSPACE}" 2024-08-06T20:17:20.1800956Z else 2024-08-06T20:17:20.1801206Z  retry rm -rf "${GITHUB_WORKSPACE}" 2024-08-06T20:17:20.1801534Z fi 2024-08-06T20:17:20.1801839Z mkdir "${GITHUB_WORKSPACE}" 2024-08-06T20:17:20.1810705Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:17:20.1811118Z env: 2024-08-06T20:17:20.1811441Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:17:20.1811717Z NO_SUDO: 2024-08-06T20:17:20.1811936Z ##[endgroup] 2024-08-06T20:17:20.1839599Z /home/ec2-user/actions-runner/_work/pytorch/pytorch 2024-08-06T20:17:22.3965034Z ##[group]Run malfet/checkout@silent-checkout 2024-08-06T20:17:22.3965389Z with: 2024-08-06T20:17:22.3965644Z ref: b9d86fa89636e301796d4201f36d86c73f6e49bc 2024-08-06T20:17:22.3965969Z fetch-depth: 0 2024-08-06T20:17:22.3966210Z submodules: recursive 2024-08-06T20:17:22.3966473Z quiet-checkout: true 2024-08-06T20:17:22.3966735Z repository: pytorch/pytorch 2024-08-06T20:17:22.3967161Z token: *** 2024-08-06T20:17:22.3967388Z ssh-strict: true 2024-08-06T20:17:22.3967635Z persist-credentials: true 2024-08-06T20:17:22.3967913Z clean: true 2024-08-06T20:17:22.3968182Z sparse-checkout-cone-mode: true 2024-08-06T20:17:22.3968470Z lfs: false 2024-08-06T20:17:22.3968705Z set-safe-directory: true 2024-08-06T20:17:22.3968976Z env: 2024-08-06T20:17:22.3969182Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:17:22.3969444Z ##[endgroup] 2024-08-06T20:17:22.4951288Z Syncing repository: pytorch/pytorch 2024-08-06T20:17:22.4952741Z ##[group]Getting Git version info 2024-08-06T20:17:22.4953615Z Working directory is '/home/ec2-user/actions-runner/_work/pytorch/pytorch' 2024-08-06T20:17:22.4954324Z [command]/usr/bin/git version 2024-08-06T20:17:22.4954622Z git version 2.40.1 2024-08-06T20:17:22.4969029Z ##[endgroup] 2024-08-06T20:17:22.4983067Z Temporarily overriding HOME='/home/ec2-user/actions-runner/_work/_temp/54c6739f-954f-4357-b9eb-b2d110521ee5' before making global git config changes 2024-08-06T20:17:22.4984067Z Adding repository directory to the temporary git global config as a safe directory 2024-08-06T20:17:22.4988032Z [command]/usr/bin/git config --global --add safe.directory /home/ec2-user/actions-runner/_work/pytorch/pytorch 2024-08-06T20:17:22.5030740Z Deleting the contents of '/home/ec2-user/actions-runner/_work/pytorch/pytorch' 2024-08-06T20:17:22.5034828Z ##[group]Initializing the repository 2024-08-06T20:17:22.5037638Z [command]/usr/bin/git init /home/ec2-user/actions-runner/_work/pytorch/pytorch 2024-08-06T20:17:22.5113758Z hint: Using 'master' as the name for the initial branch. This default branch name 2024-08-06T20:17:22.5114412Z hint: is subject to change. To configure the initial branch name to use in all 2024-08-06T20:17:22.5114996Z hint: of your new repositories, which will suppress this warning, call: 2024-08-06T20:17:22.5115436Z hint: 2024-08-06T20:17:22.5115751Z hint: git config --global init.defaultBranch 2024-08-06T20:17:22.5116110Z hint: 2024-08-06T20:17:22.5116457Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 2024-08-06T20:17:22.5117045Z hint: 'development'. The just-created branch can be renamed via this command: 2024-08-06T20:17:22.5117766Z hint: 2024-08-06T20:17:22.5118008Z hint: git branch -m 2024-08-06T20:17:22.5118554Z Initialized empty Git repository in /home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/ 2024-08-06T20:17:22.5124872Z [command]/usr/bin/git remote add origin https://github.com/pytorch/pytorch 2024-08-06T20:17:22.5167378Z ##[endgroup] 2024-08-06T20:17:22.5167830Z ##[group]Disabling automatic garbage collection 2024-08-06T20:17:22.5170085Z [command]/usr/bin/git config --local gc.auto 0 2024-08-06T20:17:22.5201933Z ##[endgroup] 2024-08-06T20:17:22.5202330Z ##[group]Setting up auth 2024-08-06T20:17:22.5208790Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand 2024-08-06T20:17:22.5242796Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" 2024-08-06T20:17:22.5511689Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader 2024-08-06T20:17:22.5546112Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" 2024-08-06T20:17:22.5813591Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic *** 2024-08-06T20:17:22.5863798Z ##[endgroup] 2024-08-06T20:17:22.5864284Z ##[group]Fetching the repository 2024-08-06T20:17:22.5870157Z [command]/usr/bin/git -c protocol.version=2 fetch --prune --progress --no-recurse-submodules --quiet origin +refs/heads/*:refs/remotes/origin/* +refs/tags/*:refs/tags/* 2024-08-06T20:17:25.1943960Z remote: Enumerating objects: 1008384 2024-08-06T20:17:25.1944428Z remote: Enumerating objects: 1008664, done. 2024-08-06T20:17:25.1945576Z remote: Counting objects: 0% (1/280) 2024-08-06T20:17:25.1946207Z remote: Counting objects: 1% (3/280) 2024-08-06T20:17:25.1946907Z remote: Counting objects: 2% (6/280) 2024-08-06T20:17:25.1947498Z remote: Counting objects: 3% (9/280) 2024-08-06T20:17:25.1948193Z remote: Counting objects: 4% (12/280) 2024-08-06T20:17:25.1948690Z remote: Counting objects: 5% (14/280) 2024-08-06T20:17:25.1949297Z remote: Counting objects: 6% (17/280) 2024-08-06T20:17:25.1949831Z remote: Counting objects: 7% (20/280) 2024-08-06T20:17:25.1951268Z remote: Counting objects: 8% (23/280) 2024-08-06T20:17:25.1951904Z remote: Counting objects: 9% (26/280) 2024-08-06T20:17:25.1952590Z remote: Counting objects: 10% (28/280) 2024-08-06T20:17:25.1953291Z remote: Counting objects: 11% (31/280) 2024-08-06T20:17:25.1953927Z remote: Counting objects: 12% (34/280) 2024-08-06T20:17:25.1954289Z remote: Counting objects: 13% (37/280) 2024-08-06T20:17:25.1954921Z remote: Counting objects: 14% (40/280) 2024-08-06T20:17:25.1955635Z remote: Counting objects: 15% (42/280) 2024-08-06T20:17:25.1956308Z remote: Counting objects: 16% (45/280) 2024-08-06T20:17:25.1956992Z remote: Counting objects: 17% (48/280) 2024-08-06T20:17:25.1957701Z remote: Counting objects: 18% (51/280) 2024-08-06T20:17:25.1958074Z remote: Counting objects: 19% (54/280) 2024-08-06T20:17:25.1958447Z remote: Counting objects: 20% (56/280) 2024-08-06T20:17:25.1958825Z remote: Counting objects: 21% (59/280) 2024-08-06T20:17:25.1959183Z remote: Counting objects: 22% (62/280) 2024-08-06T20:17:25.1959553Z remote: Counting objects: 23% (65/280) 2024-08-06T20:17:25.1959925Z remote: Counting objects: 24% (68/280) 2024-08-06T20:17:25.1960284Z remote: Counting objects: 25% (70/280) 2024-08-06T20:17:25.1960657Z remote: Counting objects: 26% (73/280) 2024-08-06T20:17:25.1961118Z remote: Counting objects: 27% (76/280) 2024-08-06T20:17:25.1961670Z remote: Counting objects: 28% (79/280) 2024-08-06T20:17:25.1962048Z remote: Counting objects: 29% (82/280) 2024-08-06T20:17:25.1962422Z remote: Counting objects: 30% (84/280) 2024-08-06T20:17:25.1962977Z remote: Counting objects: 31% (87/280) 2024-08-06T20:17:25.1963351Z remote: Counting objects: 32% (90/280) 2024-08-06T20:17:25.1963727Z remote: Counting objects: 33% (93/280) 2024-08-06T20:17:25.1964090Z remote: Counting objects: 34% (96/280) 2024-08-06T20:17:25.1964463Z remote: Counting objects: 35% (98/280) 2024-08-06T20:17:25.1964834Z remote: Counting objects: 36% (101/280) 2024-08-06T20:17:25.1965195Z remote: Counting objects: 37% (104/280) 2024-08-06T20:17:25.1965569Z remote: Counting objects: 38% (107/280) 2024-08-06T20:17:25.1965943Z remote: Counting objects: 39% (110/280) 2024-08-06T20:17:25.1966302Z remote: Counting objects: 40% (112/280) 2024-08-06T20:17:25.1966687Z remote: Counting objects: 41% (115/280) 2024-08-06T20:17:25.1967064Z remote: Counting objects: 42% (118/280) 2024-08-06T20:17:25.1967427Z remote: Counting objects: 43% (121/280) 2024-08-06T20:17:25.1967806Z remote: Counting objects: 44% (124/280) 2024-08-06T20:17:25.1968180Z remote: Counting objects: 45% (126/280) 2024-08-06T20:17:25.1968550Z remote: Counting objects: 46% (129/280) 2024-08-06T20:17:25.1968927Z remote: Counting objects: 47% (132/280) 2024-08-06T20:17:25.1969298Z remote: Counting objects: 48% (135/280) 2024-08-06T20:17:25.1969693Z remote: Counting objects: 49% (138/280) 2024-08-06T20:17:25.1970075Z remote: Counting objects: 50% (140/280) 2024-08-06T20:17:25.1970442Z remote: Counting objects: 51% (143/280) 2024-08-06T20:17:25.1970818Z remote: Counting objects: 52% (146/280) 2024-08-06T20:17:25.1971199Z remote: Counting objects: 53% (149/280) 2024-08-06T20:17:25.1971562Z remote: Counting objects: 54% (152/280) 2024-08-06T20:17:25.1971947Z remote: Counting objects: 55% (154/280) 2024-08-06T20:17:25.1972325Z remote: Counting objects: 56% (157/280) 2024-08-06T20:17:25.1972691Z remote: Counting objects: 57% (160/280) 2024-08-06T20:17:25.1973122Z remote: Counting objects: 58% (163/280) 2024-08-06T20:17:25.1973574Z remote: Counting objects: 59% (166/280) 2024-08-06T20:17:25.1974099Z remote: Counting objects: 60% (168/280) 2024-08-06T20:17:25.1974482Z remote: Counting objects: 61% (171/280) 2024-08-06T20:17:25.1974864Z remote: Counting objects: 62% (174/280) 2024-08-06T20:17:25.1975287Z remote: Counting objects: 63% (177/280) 2024-08-06T20:17:25.1975659Z remote: Counting objects: 64% (180/280) 2024-08-06T20:17:25.1976038Z remote: Counting objects: 65% (182/280) 2024-08-06T20:17:25.1976415Z remote: Counting objects: 66% (185/280) 2024-08-06T20:17:25.1976781Z remote: Counting objects: 67% (188/280) 2024-08-06T20:17:25.1977167Z remote: Counting objects: 68% (191/280) 2024-08-06T20:17:25.1977549Z remote: Counting objects: 69% (194/280) 2024-08-06T20:17:25.1977910Z remote: Counting objects: 70% (196/280) 2024-08-06T20:17:25.1978284Z remote: Counting objects: 71% (199/280) 2024-08-06T20:17:25.1978658Z remote: Counting objects: 72% (202/280) 2024-08-06T20:17:25.1979018Z remote: Counting objects: 73% (205/280) 2024-08-06T20:17:25.1979416Z remote: Counting objects: 74% (208/280) 2024-08-06T20:17:25.1979788Z remote: Counting objects: 75% (210/280) 2024-08-06T20:17:25.1980148Z remote: Counting objects: 76% (213/280) 2024-08-06T20:17:25.1980521Z remote: Counting objects: 77% (216/280) 2024-08-06T20:17:25.1980894Z remote: Counting objects: 78% (219/280) 2024-08-06T20:17:25.1981258Z remote: Counting objects: 79% (222/280) 2024-08-06T20:17:25.1981633Z remote: Counting objects: 80% (224/280) 2024-08-06T20:17:25.1982118Z remote: Counting objects: 81% (227/280) 2024-08-06T20:17:25.1982488Z remote: Counting objects: 82% (230/280) 2024-08-06T20:17:25.1982865Z remote: Counting objects: 83% (233/280) 2024-08-06T20:17:25.1983242Z remote: Counting objects: 84% (236/280) 2024-08-06T20:17:25.1983605Z remote: Counting objects: 85% (238/280) 2024-08-06T20:17:25.1983984Z remote: Counting objects: 86% (241/280) 2024-08-06T20:17:25.1984369Z remote: Counting objects: 87% (244/280) 2024-08-06T20:17:25.1984731Z remote: Counting objects: 88% (247/280) 2024-08-06T20:17:25.1985103Z remote: Counting objects: 89% (250/280) 2024-08-06T20:17:25.1985476Z remote: Counting objects: 90% (252/280) 2024-08-06T20:17:25.1985839Z remote: Counting objects: 91% (255/280) 2024-08-06T20:17:25.1986212Z remote: Counting objects: 92% (258/280) 2024-08-06T20:17:25.1986589Z remote: Counting objects: 93% (261/280) 2024-08-06T20:17:25.1986955Z remote: Counting objects: 94% (264/280) 2024-08-06T20:17:25.1987329Z remote: Counting objects: 95% (266/280) 2024-08-06T20:17:25.1987708Z remote: Counting objects: 96% (269/280) 2024-08-06T20:17:25.1988069Z remote: Counting objects: 97% (272/280) 2024-08-06T20:17:25.1988446Z remote: Counting objects: 98% (275/280) 2024-08-06T20:17:25.1988820Z remote: Counting objects: 99% (278/280) 2024-08-06T20:17:25.1989186Z remote: Counting objects: 100% (280/280) 2024-08-06T20:17:25.1989589Z remote: Counting objects: 100% (280/280), done. 2024-08-06T20:17:25.1990004Z remote: Compressing objects: 0% (1/209) 2024-08-06T20:17:25.2023665Z remote: Compressing objects: 1% (3/209) 2024-08-06T20:17:25.2127977Z remote: Compressing objects: 2% (5/209) 2024-08-06T20:17:25.2140863Z remote: Compressing objects: 3% (7/209) 2024-08-06T20:17:25.2277708Z remote: Compressing objects: 4% (9/209) 2024-08-06T20:17:25.2455979Z remote: Compressing objects: 5% (11/209) 2024-08-06T20:17:25.2521854Z remote: Compressing objects: 6% (13/209) 2024-08-06T20:17:25.2552645Z remote: Compressing objects: 7% (15/209) 2024-08-06T20:17:25.2640236Z remote: Compressing objects: 8% (17/209) 2024-08-06T20:17:25.2739080Z remote: Compressing objects: 9% (19/209) 2024-08-06T20:17:25.2802400Z remote: Compressing objects: 10% (21/209) 2024-08-06T20:17:25.2966620Z remote: Compressing objects: 11% (23/209) 2024-08-06T20:17:25.3027691Z remote: Compressing objects: 12% (26/209) 2024-08-06T20:17:25.3090790Z remote: Compressing objects: 13% (28/209) 2024-08-06T20:17:25.3235254Z remote: Compressing objects: 14% (30/209) 2024-08-06T20:17:25.3321497Z remote: Compressing objects: 15% (32/209) 2024-08-06T20:17:25.3371057Z remote: Compressing objects: 16% (34/209) 2024-08-06T20:17:25.3392304Z remote: Compressing objects: 17% (36/209) 2024-08-06T20:17:25.3397266Z remote: Compressing objects: 18% (38/209) 2024-08-06T20:17:25.3397936Z remote: Compressing objects: 19% (40/209) 2024-08-06T20:17:25.3400974Z remote: Compressing objects: 20% (42/209) 2024-08-06T20:17:25.3401813Z remote: Compressing objects: 21% (44/209) 2024-08-06T20:17:25.3404787Z remote: Compressing objects: 22% (46/209) 2024-08-06T20:17:25.3408436Z remote: Compressing objects: 23% (49/209) 2024-08-06T20:17:25.3412002Z remote: Compressing objects: 24% (51/209) 2024-08-06T20:17:25.3415752Z remote: Compressing objects: 25% (53/209) 2024-08-06T20:17:25.3420714Z remote: Compressing objects: 26% (55/209) 2024-08-06T20:17:25.3424224Z remote: Compressing objects: 27% (57/209) 2024-08-06T20:17:25.3428360Z remote: Compressing objects: 28% (59/209) 2024-08-06T20:17:25.3429084Z remote: Compressing objects: 29% (61/209) 2024-08-06T20:17:25.3429524Z remote: Compressing objects: 30% (63/209) 2024-08-06T20:17:25.3430240Z remote: Compressing objects: 31% (65/209) 2024-08-06T20:17:25.3431294Z remote: Compressing objects: 32% (67/209) 2024-08-06T20:17:25.3435425Z remote: Compressing objects: 33% (69/209) 2024-08-06T20:17:25.3439278Z remote: Compressing objects: 34% (72/209) 2024-08-06T20:17:25.3442895Z remote: Compressing objects: 35% (74/209) 2024-08-06T20:17:25.3470007Z remote: Compressing objects: 36% (76/209) 2024-08-06T20:17:25.3470606Z remote: Compressing objects: 37% (78/209) 2024-08-06T20:17:25.3470994Z remote: Compressing objects: 38% (80/209) 2024-08-06T20:17:25.3471388Z remote: Compressing objects: 39% (82/209) 2024-08-06T20:17:25.3471978Z remote: Compressing objects: 40% (84/209) 2024-08-06T20:17:25.3472555Z remote: Compressing objects: 41% (86/209) 2024-08-06T20:17:25.3472943Z remote: Compressing objects: 42% (88/209) 2024-08-06T20:17:25.3473384Z remote: Compressing objects: 43% (90/209) 2024-08-06T20:17:25.3474112Z remote: Compressing objects: 44% (92/209) 2024-08-06T20:17:25.3474503Z remote: Compressing objects: 45% (95/209) 2024-08-06T20:17:25.3475239Z remote: Compressing objects: 46% (97/209) 2024-08-06T20:17:25.3475660Z remote: Compressing objects: 47% (99/209) 2024-08-06T20:17:25.3476055Z remote: Compressing objects: 48% (101/209) 2024-08-06T20:17:25.3484478Z remote: Compressing objects: 49% (103/209) 2024-08-06T20:17:25.3489157Z remote: Compressing objects: 50% (105/209) 2024-08-06T20:17:25.3493227Z remote: Compressing objects: 51% (107/209) 2024-08-06T20:17:25.3499624Z remote: Compressing objects: 52% (109/209) 2024-08-06T20:17:25.3502001Z remote: Compressing objects: 53% (111/209) 2024-08-06T20:17:25.3502720Z remote: Compressing objects: 54% (113/209) 2024-08-06T20:17:25.3506429Z remote: Compressing objects: 55% (115/209) 2024-08-06T20:17:25.3508682Z remote: Compressing objects: 56% (118/209) 2024-08-06T20:17:25.3510250Z remote: Compressing objects: 57% (120/209) 2024-08-06T20:17:25.3512210Z remote: Compressing objects: 58% (122/209) 2024-08-06T20:17:25.3513883Z remote: Compressing objects: 59% (124/209) 2024-08-06T20:17:25.3516352Z remote: Compressing objects: 60% (126/209) 2024-08-06T20:17:25.3518698Z remote: Compressing objects: 61% (128/209) 2024-08-06T20:17:25.3520254Z remote: Compressing objects: 62% (130/209) 2024-08-06T20:17:25.3521906Z remote: Compressing objects: 63% (132/209) 2024-08-06T20:17:25.3522920Z remote: Compressing objects: 64% (134/209) 2024-08-06T20:17:25.3523645Z remote: Compressing objects: 65% (136/209) 2024-08-06T20:17:25.3524660Z remote: Compressing objects: 66% (138/209) 2024-08-06T20:17:25.3525325Z remote: Compressing objects: 67% (141/209) 2024-08-06T20:17:25.3525786Z remote: Compressing objects: 68% (143/209) 2024-08-06T20:17:25.3526517Z remote: Compressing objects: 69% (145/209) 2024-08-06T20:17:25.3526912Z remote: Compressing objects: 70% (147/209) 2024-08-06T20:17:25.3527553Z remote: Compressing objects: 71% (149/209) 2024-08-06T20:17:25.3528086Z remote: Compressing objects: 72% (151/209) 2024-08-06T20:17:25.3528847Z remote: Compressing objects: 73% (153/209) 2024-08-06T20:17:25.3529978Z remote: Compressing objects: 74% (155/209) 2024-08-06T20:17:25.3531023Z remote: Compressing objects: 75% (157/209) 2024-08-06T20:17:25.3532269Z remote: Compressing objects: 76% (159/209) 2024-08-06T20:17:25.3534225Z remote: Compressing objects: 77% (161/209) 2024-08-06T20:17:25.3534965Z remote: Compressing objects: 78% (164/209) 2024-08-06T20:17:25.3536318Z remote: Compressing objects: 79% (166/209) 2024-08-06T20:17:25.3537064Z remote: Compressing objects: 80% (168/209) 2024-08-06T20:17:25.3538417Z remote: Compressing objects: 81% (170/209) 2024-08-06T20:17:25.3539094Z remote: Compressing objects: 82% (172/209) 2024-08-06T20:17:25.3540840Z remote: Compressing objects: 83% (174/209) 2024-08-06T20:17:25.3541578Z remote: Compressing objects: 84% (176/209) 2024-08-06T20:17:25.3542326Z remote: Compressing objects: 85% (178/209) 2024-08-06T20:17:25.3543075Z remote: Compressing objects: 86% (180/209) 2024-08-06T20:17:25.3543831Z remote: Compressing objects: 87% (182/209) 2024-08-06T20:17:25.3544550Z remote: Compressing objects: 88% (184/209) 2024-08-06T20:17:25.3545052Z remote: Compressing objects: 89% (187/209) 2024-08-06T20:17:25.3545771Z remote: Compressing objects: 90% (189/209) 2024-08-06T20:17:25.3546524Z remote: Compressing objects: 91% (191/209) 2024-08-06T20:17:25.3547266Z remote: Compressing objects: 92% (193/209) 2024-08-06T20:17:25.3547928Z remote: Compressing objects: 93% (195/209) 2024-08-06T20:17:25.3548672Z remote: Compressing objects: 94% (197/209) 2024-08-06T20:17:25.3549418Z remote: Compressing objects: 95% (199/209) 2024-08-06T20:17:25.3550139Z remote: Compressing objects: 96% (201/209) 2024-08-06T20:17:25.3550860Z remote: Compressing objects: 97% (203/209) 2024-08-06T20:17:25.3551597Z remote: Compressing objects: 98% (205/209) 2024-08-06T20:17:25.3552309Z remote: Compressing objects: 99% (207/209) 2024-08-06T20:17:25.3552817Z remote: Compressing objects: 100% (209/209) 2024-08-06T20:17:25.3553244Z remote: Compressing objects: 100% (209/209), done. 2024-08-06T20:17:45.9965621Z remote: Total 1008664 (delta 126), reused 167 (delta 69), pack-reused 1008384 2024-08-06T20:18:13.7504857Z [command]/usr/bin/git rev-parse --verify --quiet b9d86fa89636e301796d4201f36d86c73f6e49bc^{object} 2024-08-06T20:18:13.7534541Z b9d86fa89636e301796d4201f36d86c73f6e49bc 2024-08-06T20:18:13.7538814Z ##[endgroup] 2024-08-06T20:18:13.7539275Z ##[group]Determining the checkout info 2024-08-06T20:18:13.7540260Z ##[endgroup] 2024-08-06T20:18:13.7540653Z ##[group]Checking out the ref 2024-08-06T20:18:13.7543856Z [command]/usr/bin/git checkout --quiet --force b9d86fa89636e301796d4201f36d86c73f6e49bc 2024-08-06T20:18:15.1455054Z ##[endgroup] 2024-08-06T20:18:15.1455524Z ##[group]Setting up auth for fetching submodules 2024-08-06T20:18:15.1458142Z [command]/usr/bin/git config --global http.https://github.com/.extraheader AUTHORIZATION: basic *** 2024-08-06T20:18:15.1509047Z [command]/usr/bin/git config --global --unset-all url.https://github.com/.insteadOf 2024-08-06T20:18:15.1542965Z [command]/usr/bin/git config --global --add url.https://github.com/.insteadOf git@github.com: 2024-08-06T20:18:15.1574457Z [command]/usr/bin/git config --global --add url.https://github.com/.insteadOf org-21003710@github.com: 2024-08-06T20:18:15.1602451Z ##[endgroup] 2024-08-06T20:18:15.1603040Z ##[group]Fetching submodules 2024-08-06T20:18:15.1607353Z [command]/usr/bin/git submodule sync --recursive 2024-08-06T20:18:15.1899436Z [command]/usr/bin/git -c protocol.version=2 submodule update --init --force --recursive 2024-08-06T20:18:15.2189688Z Submodule 'android/libs/fbjni' (https://github.com/facebookincubator/fbjni.git) registered for path 'android/libs/fbjni' 2024-08-06T20:18:15.2190783Z Submodule 'third_party/NNPACK_deps/FP16' (https://github.com/Maratyszcza/FP16.git) registered for path 'third_party/FP16' 2024-08-06T20:18:15.2192265Z Submodule 'third_party/NNPACK_deps/FXdiv' (https://github.com/Maratyszcza/FXdiv.git) registered for path 'third_party/FXdiv' 2024-08-06T20:18:15.2194158Z Submodule 'third_party/NNPACK' (https://github.com/Maratyszcza/NNPACK.git) registered for path 'third_party/NNPACK' 2024-08-06T20:18:15.2197071Z Submodule 'third_party/VulkanMemoryAllocator' (https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git) registered for path 'third_party/VulkanMemoryAllocator' 2024-08-06T20:18:15.2199523Z Submodule 'third_party/XNNPACK' (https://github.com/google/XNNPACK.git) registered for path 'third_party/XNNPACK' 2024-08-06T20:18:15.2202011Z Submodule 'third_party/benchmark' (https://github.com/google/benchmark.git) registered for path 'third_party/benchmark' 2024-08-06T20:18:15.2204824Z Submodule 'third_party/cpp-httplib' (https://github.com/yhirose/cpp-httplib.git) registered for path 'third_party/cpp-httplib' 2024-08-06T20:18:15.2207593Z Submodule 'third_party/cpuinfo' (https://github.com/pytorch/cpuinfo.git) registered for path 'third_party/cpuinfo' 2024-08-06T20:18:15.2210841Z Submodule 'third_party/cudnn_frontend' (https://github.com/NVIDIA/cudnn-frontend.git) registered for path 'third_party/cudnn_frontend' 2024-08-06T20:18:15.2213972Z Submodule 'third_party/cutlass' (https://github.com/NVIDIA/cutlass.git) registered for path 'third_party/cutlass' 2024-08-06T20:18:15.2217194Z Submodule 'third_party/eigen' (https://gitlab.com/libeigen/eigen.git) registered for path 'third_party/eigen' 2024-08-06T20:18:15.2220476Z Submodule 'third_party/fbgemm' (https://github.com/pytorch/fbgemm) registered for path 'third_party/fbgemm' 2024-08-06T20:18:15.2223932Z Submodule 'third_party/flatbuffers' (https://github.com/google/flatbuffers.git) registered for path 'third_party/flatbuffers' 2024-08-06T20:18:15.2227183Z Submodule 'third_party/fmt' (https://github.com/fmtlib/fmt.git) registered for path 'third_party/fmt' 2024-08-06T20:18:15.2231795Z Submodule 'third_party/foxi' (https://github.com/houseroad/foxi.git) registered for path 'third_party/foxi' 2024-08-06T20:18:15.2237240Z Submodule 'third_party/gemmlowp/gemmlowp' (https://github.com/google/gemmlowp.git) registered for path 'third_party/gemmlowp/gemmlowp' 2024-08-06T20:18:15.2240987Z Submodule 'third_party/gloo' (https://github.com/facebookincubator/gloo) registered for path 'third_party/gloo' 2024-08-06T20:18:15.2244877Z Submodule 'third_party/googletest' (https://github.com/google/googletest.git) registered for path 'third_party/googletest' 2024-08-06T20:18:15.2248977Z Submodule 'third_party/ideep' (https://github.com/intel/ideep) registered for path 'third_party/ideep' 2024-08-06T20:18:15.2253012Z Submodule 'third_party/ittapi' (https://github.com/intel/ittapi.git) registered for path 'third_party/ittapi' 2024-08-06T20:18:15.2257279Z Submodule 'third_party/kineto' (https://github.com/pytorch/kineto) registered for path 'third_party/kineto' 2024-08-06T20:18:15.2261303Z Submodule 'third_party/mimalloc' (https://github.com/microsoft/mimalloc.git) registered for path 'third_party/mimalloc' 2024-08-06T20:18:15.2266271Z Submodule 'third_party/nccl/nccl' (https://github.com/NVIDIA/nccl) registered for path 'third_party/nccl/nccl' 2024-08-06T20:18:15.2270492Z Submodule 'third_party/nlohmann' (https://github.com/nlohmann/json.git) registered for path 'third_party/nlohmann' 2024-08-06T20:18:15.2274884Z Submodule 'third_party/onnx' (https://github.com/onnx/onnx.git) registered for path 'third_party/onnx' 2024-08-06T20:18:15.2279732Z Submodule 'third_party/opentelemetry-cpp' (https://github.com/open-telemetry/opentelemetry-cpp.git) registered for path 'third_party/opentelemetry-cpp' 2024-08-06T20:18:15.2284238Z Submodule 'third_party/pocketfft' (https://github.com/mreineck/pocketfft) registered for path 'third_party/pocketfft' 2024-08-06T20:18:15.2289033Z Submodule 'third_party/protobuf' (https://github.com/protocolbuffers/protobuf.git) registered for path 'third_party/protobuf' 2024-08-06T20:18:15.2293911Z Submodule 'third_party/NNPACK_deps/psimd' (https://github.com/Maratyszcza/psimd.git) registered for path 'third_party/psimd' 2024-08-06T20:18:15.2299049Z Submodule 'third_party/NNPACK_deps/pthreadpool' (https://github.com/Maratyszcza/pthreadpool.git) registered for path 'third_party/pthreadpool' 2024-08-06T20:18:15.2303945Z Submodule 'third_party/pybind11' (https://github.com/pybind/pybind11.git) registered for path 'third_party/pybind11' 2024-08-06T20:18:15.2309207Z Submodule 'third_party/python-peachpy' (https://github.com/malfet/PeachPy.git) registered for path 'third_party/python-peachpy' 2024-08-06T20:18:15.2316280Z Submodule 'third_party/sleef' (https://github.com/shibatch/sleef) registered for path 'third_party/sleef' 2024-08-06T20:18:15.2321984Z Submodule 'third_party/tensorpipe' (https://github.com/pytorch/tensorpipe.git) registered for path 'third_party/tensorpipe' 2024-08-06T20:18:15.2354973Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/android/libs/fbjni'... 2024-08-06T20:18:15.5957395Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/FP16'... 2024-08-06T20:18:15.7693948Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/FXdiv'... 2024-08-06T20:18:15.9620937Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/NNPACK'... 2024-08-06T20:18:16.2022309Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/VulkanMemoryAllocator'... 2024-08-06T20:18:18.4670781Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/XNNPACK'... 2024-08-06T20:18:32.3258936Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/benchmark'... 2024-08-06T20:18:32.7554016Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/cpp-httplib'... 2024-08-06T20:18:33.3148552Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/cpuinfo'... 2024-08-06T20:18:33.9414425Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/cudnn_frontend'... 2024-08-06T20:18:35.1529735Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/cutlass'... 2024-08-06T20:18:37.0759391Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/eigen'... 2024-08-06T20:18:42.6808586Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/fbgemm'... 2024-08-06T20:18:43.9830840Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/flatbuffers'... 2024-08-06T20:18:45.9023079Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/fmt'... 2024-08-06T20:18:47.4119303Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/foxi'... 2024-08-06T20:18:47.6025202Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/gemmlowp/gemmlowp'... 2024-08-06T20:18:48.0104244Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/gloo'... 2024-08-06T20:18:48.3427536Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/googletest'... 2024-08-06T20:18:49.6744135Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/ideep'... 2024-08-06T20:18:50.0494728Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/ittapi'... 2024-08-06T20:18:50.2829726Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto'... 2024-08-06T20:18:51.8385049Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/mimalloc'... 2024-08-06T20:18:52.6102546Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/nccl/nccl'... 2024-08-06T20:18:53.2660609Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/nlohmann'... 2024-08-06T20:18:59.5693598Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/onnx'... 2024-08-06T20:19:01.7446797Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp'... 2024-08-06T20:19:07.6848166Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/pocketfft'... 2024-08-06T20:19:07.9522871Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/protobuf'... 2024-08-06T20:19:17.2411473Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/psimd'... 2024-08-06T20:19:17.4130594Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/pthreadpool'... 2024-08-06T20:19:17.6255299Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/pybind11'... 2024-08-06T20:19:18.5178358Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/python-peachpy'... 2024-08-06T20:19:18.8481695Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/sleef'... 2024-08-06T20:19:19.4579731Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/tensorpipe'... 2024-08-06T20:19:19.8646693Z Submodule path 'android/libs/fbjni': checked out '7e1e1fe3858c63c251c637ae41a20de425dde96f' 2024-08-06T20:19:19.8770913Z Submodule path 'third_party/FP16': checked out '4dfe081cf6bcd15db339cf2680b9281b8451eeb3' 2024-08-06T20:19:19.8863231Z Submodule path 'third_party/FXdiv': checked out 'b408327ac2a15ec3e43352421954f5b1967701d1' 2024-08-06T20:19:19.9103696Z Submodule path 'third_party/NNPACK': checked out 'c07e3a0400713d546e0dea2d5466dd22ea389c73' 2024-08-06T20:19:19.9465142Z Submodule path 'third_party/VulkanMemoryAllocator': checked out 'a6bfc237255a6bac1513f7c1ebde6d8aed6b5191' 2024-08-06T20:19:20.8863788Z Submodule path 'third_party/XNNPACK': checked out 'fcbf55af6cf28a4627bcd1f703ab7ad843f0f3a2' 2024-08-06T20:19:20.9098662Z Submodule path 'third_party/benchmark': checked out '0d98dba29d66e93259db7daa53a9327df767a415' 2024-08-06T20:19:20.9543771Z Submodule path 'third_party/cpp-httplib': checked out '3b6597bba913d51161383657829b7e644e59c006' 2024-08-06T20:19:21.0508832Z Submodule path 'third_party/cpuinfo': checked out '3c8b1533ac03dd6531ab6e7b9245d488f13a82a5' 2024-08-06T20:19:21.0842697Z Submodule path 'third_party/cudnn_frontend': checked out '98ca4e1941fe3263f128f74f10063a3ea35c7019' 2024-08-06T20:19:21.5796687Z Submodule path 'third_party/cutlass': checked out 'bbe579a9e3beb6ea6626d9227ec32d0dae119a49' 2024-08-06T20:19:21.8278954Z Submodule path 'third_party/eigen': checked out '3147391d946bb4b6c68edd901f2add6ac1f31f8c' 2024-08-06T20:19:21.9075840Z Submodule path 'third_party/fbgemm': checked out 'dbc3157bf256f1339b3fa1fef2be89ac4078be0e' 2024-08-06T20:19:21.9094032Z Submodule 'third_party/asmjit' (https://github.com/asmjit/asmjit.git) registered for path 'third_party/fbgemm/third_party/asmjit' 2024-08-06T20:19:21.9096349Z Submodule 'third_party/cpuinfo' (https://github.com/pytorch/cpuinfo) registered for path 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T20:19:21.9098336Z Submodule 'third_party/cutlass' (https://github.com/NVIDIA/cutlass.git) registered for path 'third_party/fbgemm/third_party/cutlass' 2024-08-06T20:19:21.9100775Z Submodule 'third_party/googletest' (https://github.com/google/googletest) registered for path 'third_party/fbgemm/third_party/googletest' 2024-08-06T20:19:21.9104035Z Submodule 'third_party/hipify_torch' (https://github.com/ROCmSoftwarePlatform/hipify_torch.git) registered for path 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T20:19:21.9131980Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/fbgemm/third_party/asmjit'... 2024-08-06T20:19:22.9402133Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/fbgemm/third_party/cpuinfo'... 2024-08-06T20:19:23.5454634Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/fbgemm/third_party/cutlass'... 2024-08-06T20:19:25.4743964Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/fbgemm/third_party/googletest'... 2024-08-06T20:19:26.6422156Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/fbgemm/third_party/hipify_torch'... 2024-08-06T20:19:27.0027241Z Submodule path 'third_party/fbgemm/third_party/asmjit': checked out 'd3fbf7c9bc7c1d1365a94a45614b91c5a3706b81' 2024-08-06T20:19:27.0967023Z Submodule path 'third_party/fbgemm/third_party/cpuinfo': checked out 'ed8b86a253800bafdb7b25c5c399f91bff9cb1f3' 2024-08-06T20:19:27.4928576Z Submodule path 'third_party/fbgemm/third_party/cutlass': checked out 'fc9ebc645b63f3a6bc80aaefde5c063fb72110d6' 2024-08-06T20:19:27.5558628Z Submodule path 'third_party/fbgemm/third_party/googletest': checked out 'cbf019de22c8dd37b2108da35b2748fd702d1796' 2024-08-06T20:19:27.5692093Z Submodule path 'third_party/fbgemm/third_party/hipify_torch': checked out '23f53b025b466d8ec3c45d52290d3442f7fbe6b1' 2024-08-06T20:19:27.6855424Z Submodule path 'third_party/flatbuffers': checked out '01834de25e4bf3975a9a00e816292b1ad0fe184b' 2024-08-06T20:19:27.7268324Z Submodule path 'third_party/fmt': checked out '0c9fce2ffefecfdce794e1859584e25877b7b592' 2024-08-06T20:19:27.7364337Z Submodule path 'third_party/foxi': checked out 'c278588e34e535f0bb8f00df3880d26928038cad' 2024-08-06T20:19:27.7767490Z Submodule path 'third_party/gemmlowp/gemmlowp': checked out '3fb5c176c17c765a3492cd2f0321b0dab712f350' 2024-08-06T20:19:27.8026937Z Submodule path 'third_party/gloo': checked out '5354032ea08eadd7fc4456477f7f7c6308818509' 2024-08-06T20:19:27.8486038Z Submodule path 'third_party/googletest': checked out 'e2239ee6043f73722e7aa812a459f54a28552929' 2024-08-06T20:19:27.8612079Z Submodule path 'third_party/ideep': checked out '55ca0191687aaf19aca5cdb7881c791e3bea442b' 2024-08-06T20:19:27.8629474Z Submodule 'mkl-dnn' (https://github.com/intel/mkl-dnn.git) registered for path 'third_party/ideep/mkl-dnn' 2024-08-06T20:19:27.8655067Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/ideep/mkl-dnn'... 2024-08-06T20:19:42.1777949Z Submodule path 'third_party/ideep/mkl-dnn': checked out '1137e04ec0b5251ca2b4400a4fd3c667ce843d67' 2024-08-06T20:19:42.1963409Z Submodule path 'third_party/ittapi': checked out '5b8a7d7422611c3a0d799fb5fc5dd4abfae35b42' 2024-08-06T20:19:42.2828988Z Submodule path 'third_party/kineto': checked out 'da2f2682cabaf95d601fa2a9b7e0979f84fe7667' 2024-08-06T20:19:42.2846250Z Submodule 'libkineto/third_party/dynolog' (https://github.com/facebookincubator/dynolog.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T20:19:42.2848013Z Submodule 'libkineto/third_party/fmt' (https://github.com/fmtlib/fmt.git) registered for path 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T20:19:42.2850490Z Submodule 'libkineto/third_party/googletest' (https://github.com/google/googletest.git) registered for path 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T20:19:42.2876970Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog'... 2024-08-06T20:19:42.8952756Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/fmt'... 2024-08-06T20:19:44.1635239Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/googletest'... 2024-08-06T20:19:45.4248505Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog': checked out '7d04a0053a845370ae06ce317a22a48e9edcc74e' 2024-08-06T20:19:45.4265593Z Submodule 'third_party/DCGM' (https://github.com/NVIDIA/DCGM.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T20:19:45.4267990Z Submodule 'third_party/cpr' (https://github.com/libcpr/cpr.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T20:19:45.4270785Z Submodule 'third_party/fmt' (https://github.com/fmtlib/fmt.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T20:19:45.4273661Z Submodule 'third_party/gflags' (https://github.com/gflags/gflags.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T20:19:45.4277009Z Submodule 'third_party/glog' (https://github.com/google/glog.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T20:19:45.4280394Z Submodule 'third_party/googletest' (https://github.com/google/googletest.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T20:19:45.4283561Z Submodule 'third_party/json' (https://github.com/nlohmann/json.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T20:19:45.4287170Z Submodule 'third_party/pfs' (https://github.com/dtrugman/pfs.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T20:19:45.4317558Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM'... 2024-08-06T20:19:46.2779696Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/cpr'... 2024-08-06T20:19:46.6437221Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/fmt'... 2024-08-06T20:19:47.9262459Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/gflags'... 2024-08-06T20:19:48.2058656Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/glog'... 2024-08-06T20:19:48.7445402Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/googletest'... 2024-08-06T20:19:49.9307497Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/json'... 2024-08-06T20:19:57.3863874Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/pfs'... 2024-08-06T20:19:57.8110624Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM': checked out 'ffde4e54bc7249a6039a5e6b45b395141e1217f9' 2024-08-06T20:19:57.8299302Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr': checked out '871ed52d350214a034f6ef8a3b8f51c5ce1bd400' 2024-08-06T20:19:57.8671822Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt': checked out 'cd4af11efc9c622896a3e4cb599fa28668ca3d05' 2024-08-06T20:19:57.8809417Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags': checked out 'e171aa2d15ed9eb17054558e0b3a6a413bb01067' 2024-08-06T20:19:57.8827026Z Submodule 'doc' (https://github.com/gflags/gflags.git) registered for path 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T20:19:57.8853304Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc'... 2024-08-06T20:19:58.3333260Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc': checked out '8411df715cf522606e3b1aca386ddfc0b63d34b4' 2024-08-06T20:19:58.3516415Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog': checked out 'b33e3bad4c46c8a6345525fd822af355e5ef9446' 2024-08-06T20:19:58.3923245Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest': checked out '58d77fa8070e8cec2dc1ed015d66b454c8d78850' 2024-08-06T20:19:58.4939521Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/json': checked out '4f8fba14066156b73f1189a2b8bd568bde5284c5' 2024-08-06T20:19:58.5115056Z Submodule path 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs': checked out 'f68a2fa8ea36c783bdd760371411fcb495aa3150' 2024-08-06T20:19:58.5537119Z Submodule path 'third_party/kineto/libkineto/third_party/fmt': checked out '0041a40c1350ba702d475b9c4ad62da77caea164' 2024-08-06T20:19:58.6125916Z Submodule path 'third_party/kineto/libkineto/third_party/googletest': checked out '7aca84427f224eeed3144123d5230d5871e93347' 2024-08-06T20:19:58.6497909Z Submodule path 'third_party/mimalloc': checked out 'b66e3214d8a104669c2ec05ae91ebc26a8f5ab78' 2024-08-06T20:19:58.6754557Z Submodule path 'third_party/nccl/nccl': checked out 'ab2b89c4c339bd7f816fbc114a4b05d386b66290' 2024-08-06T20:19:58.7788724Z Submodule path 'third_party/nlohmann': checked out '87cda1d6646592ac5866dc703c8e1839046a6806' 2024-08-06T20:19:59.1325476Z Submodule path 'third_party/onnx': checked out '3bf92c03a9f27eba3bda1e5b9e63ea20ec213557' 2024-08-06T20:19:59.1361845Z Submodule 'third_party/benchmark' (https://github.com/google/benchmark.git) registered for path 'third_party/onnx/third_party/benchmark' 2024-08-06T20:19:59.1365136Z Submodule 'third_party/pybind11' (https://github.com/pybind/pybind11.git) registered for path 'third_party/onnx/third_party/pybind11' 2024-08-06T20:19:59.1390897Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/onnx/third_party/benchmark'... 2024-08-06T20:19:59.7825162Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/onnx/third_party/pybind11'... 2024-08-06T20:20:00.7328428Z Submodule path 'third_party/onnx/third_party/benchmark': checked out '2dd015dfef425c866d9a43f2c67d8b52d709acb6' 2024-08-06T20:20:00.7667142Z Submodule path 'third_party/onnx/third_party/pybind11': checked out '5b0a6fc2017fcc176545afe3e09c9f9885283242' 2024-08-06T20:20:00.8349273Z Submodule path 'third_party/opentelemetry-cpp': checked out 'a799f4aed9c94b765dcdaabaeab7d5e7e2310878' 2024-08-06T20:20:00.8369299Z Submodule 'third_party/benchmark' (https://github.com/google/benchmark) registered for path 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T20:20:00.8371365Z Submodule 'third_party/googletest' (https://github.com/google/googletest) registered for path 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T20:20:00.8373636Z Submodule 'third_party/ms-gsl' (https://github.com/microsoft/GSL) registered for path 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T20:20:00.8376278Z Submodule 'third_party/nlohmann-json' (https://github.com/nlohmann/json) registered for path 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T20:20:00.8379009Z Submodule 'third_party/opentelemetry-proto' (https://github.com/open-telemetry/opentelemetry-proto) registered for path 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T20:20:00.8381590Z Submodule 'third_party/opentracing-cpp' (https://github.com/opentracing/opentracing-cpp.git) registered for path 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T20:20:00.8384828Z Submodule 'third_party/prometheus-cpp' (https://github.com/jupp0r/prometheus-cpp) registered for path 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T20:20:00.8387650Z Submodule 'tools/vcpkg' (https://github.com/Microsoft/vcpkg) registered for path 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T20:20:00.8415579Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/benchmark'... 2024-08-06T20:20:01.2616342Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/googletest'... 2024-08-06T20:20:02.4299376Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/ms-gsl'... 2024-08-06T20:20:02.7811563Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/nlohmann-json'... 2024-08-06T20:20:09.1091912Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/opentelemetry-proto'... 2024-08-06T20:20:09.3740548Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/opentracing-cpp'... 2024-08-06T20:20:09.6115329Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/prometheus-cpp'... 2024-08-06T20:20:10.0438716Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/tools/vcpkg'... 2024-08-06T20:20:17.8225452Z Submodule path 'third_party/opentelemetry-cpp/third_party/benchmark': checked out 'd572f4777349d43653b21d6c2fc63020ab326db2' 2024-08-06T20:20:17.8630937Z Submodule path 'third_party/opentelemetry-cpp/third_party/googletest': checked out 'b796f7d44681514f58a683a3a71ff17c94edb0c1' 2024-08-06T20:20:17.8792671Z Submodule path 'third_party/opentelemetry-cpp/third_party/ms-gsl': checked out '6f4529395c5b7c2d661812257cd6780c67e54afa' 2024-08-06T20:20:17.9769399Z Submodule path 'third_party/opentelemetry-cpp/third_party/nlohmann-json': checked out 'bc889afb4c5bf1c0d8ee29ef35eaaf4c8bef8a5d' 2024-08-06T20:20:17.9901460Z Submodule path 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto': checked out '4ca4f0335c63cda7ab31ea7ed70d6553aee14dce' 2024-08-06T20:20:18.0048680Z Submodule path 'third_party/opentelemetry-cpp/third_party/opentracing-cpp': checked out '06b57f48ded1fa3bdd3d4346f6ef29e40e08eaf5' 2024-08-06T20:20:18.0212398Z Submodule path 'third_party/opentelemetry-cpp/third_party/prometheus-cpp': checked out 'c9ffcdda9086ffd9e1283ea7a0276d831f3c8a8d' 2024-08-06T20:20:18.0228282Z Submodule 'civetweb' (https://github.com/civetweb/civetweb.git) registered for path 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T20:20:18.0230992Z Submodule 'googletest' (https://github.com/google/googletest.git) registered for path 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T20:20:18.0257278Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb'... 2024-08-06T20:20:20.2044262Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest'... 2024-08-06T20:20:21.6728643Z Submodule path 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb': checked out 'eefb26f82b233268fc98577d265352720d477ba4' 2024-08-06T20:20:21.7195303Z Submodule path 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest': checked out 'e2239ee6043f73722e7aa812a459f54a28552929' 2024-08-06T20:20:22.1873981Z Submodule path 'third_party/opentelemetry-cpp/tools/vcpkg': checked out '8eb57355a4ffb410a2e94c07b4dca2dffbee8e50' 2024-08-06T20:20:22.1999025Z Submodule path 'third_party/pocketfft': checked out '9d3ab05a7fffbc71a492bc6a17be034e83e8f0fe' 2024-08-06T20:20:22.4632976Z Submodule path 'third_party/protobuf': checked out 'd1eca4e4b421cd2997495c4b4e65cea6be4e9b8a' 2024-08-06T20:20:22.4656031Z Submodule 'third_party/benchmark' (https://github.com/google/benchmark.git) registered for path 'third_party/protobuf/third_party/benchmark' 2024-08-06T20:20:22.4658524Z Submodule 'third_party/googletest' (https://github.com/google/googletest.git) registered for path 'third_party/protobuf/third_party/googletest' 2024-08-06T20:20:22.4687273Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/protobuf/third_party/benchmark'... 2024-08-06T20:20:22.9253310Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/protobuf/third_party/googletest'... 2024-08-06T20:20:24.1233858Z Submodule path 'third_party/protobuf/third_party/benchmark': checked out '5b7683f49e1e9223cf9927b24f6fd3d6bd82e3f8' 2024-08-06T20:20:24.1947770Z Submodule path 'third_party/protobuf/third_party/googletest': checked out '5ec7f0c4a113e2f18ac2c6cc7df51ad6afc24081' 2024-08-06T20:20:24.2041594Z Submodule path 'third_party/psimd': checked out '072586a71b55b7f8c584153d223e95687148a900' 2024-08-06T20:20:24.2165475Z Submodule path 'third_party/pthreadpool': checked out '4fe0e1e183925bf8cfa6aae24237e724a96479b8' 2024-08-06T20:20:24.2535673Z Submodule path 'third_party/pybind11': checked out '941f45bcb51457884fa1afd6e24a67377d70f75c' 2024-08-06T20:20:24.2829058Z Submodule path 'third_party/python-peachpy': checked out 'f45429b087dd7d5bc78bb40dc7cf06425c252d67' 2024-08-06T20:20:24.3245022Z Submodule path 'third_party/sleef': checked out '60e76d2bce17d278b439d9da17177c8f957a9e9b' 2024-08-06T20:20:24.3510923Z Submodule path 'third_party/tensorpipe': checked out '52791a2fd214b2a9dc5759d36725909c1daa7f2e' 2024-08-06T20:20:24.3528705Z Submodule 'third_party/googletest' (https://github.com/google/googletest.git) registered for path 'third_party/tensorpipe/third_party/googletest' 2024-08-06T20:20:24.3531186Z Submodule 'third_party/libnop' (https://github.com/google/libnop.git) registered for path 'third_party/tensorpipe/third_party/libnop' 2024-08-06T20:20:24.3533408Z Submodule 'third_party/libuv' (https://github.com/libuv/libuv.git) registered for path 'third_party/tensorpipe/third_party/libuv' 2024-08-06T20:20:24.3535987Z Submodule 'third_party/pybind11' (https://github.com/pybind/pybind11.git) registered for path 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T20:20:24.3563512Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/tensorpipe/third_party/googletest'... 2024-08-06T20:20:25.5423105Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/tensorpipe/third_party/libnop'... 2024-08-06T20:20:25.7711171Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/tensorpipe/third_party/libuv'... 2024-08-06T20:20:26.9528251Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/tensorpipe/third_party/pybind11'... 2024-08-06T20:20:27.9264946Z Submodule path 'third_party/tensorpipe/third_party/googletest': checked out 'aee0f9d9b5b87796ee8a0ab26b7587ec30e8858e' 2024-08-06T20:20:27.9418912Z Submodule path 'third_party/tensorpipe/third_party/libnop': checked out '910b55815be16109f04f4180e9adee14fb4ce281' 2024-08-06T20:20:28.0104032Z Submodule path 'third_party/tensorpipe/third_party/libuv': checked out '1dff88e5161cba5c59276d2070d2e304e4dcb242' 2024-08-06T20:20:28.0392396Z Submodule path 'third_party/tensorpipe/third_party/pybind11': checked out 'a23996fce38ff6ccfbcdc09f1e63f2c4be5ea2ef' 2024-08-06T20:20:28.0409396Z Submodule 'tools/clang' (https://github.com/wjakob/clang-cindex-python3) registered for path 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T20:20:28.0435940Z Cloning into '/home/ec2-user/actions-runner/_work/pytorch/pytorch/third_party/tensorpipe/third_party/pybind11/tools/clang'... 2024-08-06T20:20:28.3046079Z Submodule path 'third_party/tensorpipe/third_party/pybind11/tools/clang': checked out '6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5' 2024-08-06T20:20:28.3079824Z [command]/usr/bin/git submodule foreach --recursive git config --local gc.auto 0 2024-08-06T20:20:28.3376265Z Entering 'android/libs/fbjni' 2024-08-06T20:20:28.3419577Z Entering 'third_party/FP16' 2024-08-06T20:20:28.3461194Z Entering 'third_party/FXdiv' 2024-08-06T20:20:28.3502717Z Entering 'third_party/NNPACK' 2024-08-06T20:20:28.3544543Z Entering 'third_party/VulkanMemoryAllocator' 2024-08-06T20:20:28.3586315Z Entering 'third_party/XNNPACK' 2024-08-06T20:20:28.3645024Z Entering 'third_party/benchmark' 2024-08-06T20:20:28.3688097Z Entering 'third_party/cpp-httplib' 2024-08-06T20:20:28.3729200Z Entering 'third_party/cpuinfo' 2024-08-06T20:20:28.3772399Z Entering 'third_party/cudnn_frontend' 2024-08-06T20:20:28.3814111Z Entering 'third_party/cutlass' 2024-08-06T20:20:28.3865845Z Entering 'third_party/eigen' 2024-08-06T20:20:28.3909324Z Entering 'third_party/fbgemm' 2024-08-06T20:20:28.3950687Z Entering 'third_party/fbgemm/third_party/asmjit' 2024-08-06T20:20:28.3992272Z Entering 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T20:20:28.4032827Z Entering 'third_party/fbgemm/third_party/cutlass' 2024-08-06T20:20:28.4078604Z Entering 'third_party/fbgemm/third_party/googletest' 2024-08-06T20:20:28.4117354Z Entering 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T20:20:28.4157202Z Entering 'third_party/flatbuffers' 2024-08-06T20:20:28.4200967Z Entering 'third_party/fmt' 2024-08-06T20:20:28.4240375Z Entering 'third_party/foxi' 2024-08-06T20:20:28.4279899Z Entering 'third_party/gemmlowp/gemmlowp' 2024-08-06T20:20:28.4319753Z Entering 'third_party/gloo' 2024-08-06T20:20:28.4359462Z Entering 'third_party/googletest' 2024-08-06T20:20:28.4399331Z Entering 'third_party/ideep' 2024-08-06T20:20:28.4438878Z Entering 'third_party/ideep/mkl-dnn' 2024-08-06T20:20:28.4488087Z Entering 'third_party/ittapi' 2024-08-06T20:20:28.4529724Z Entering 'third_party/kineto' 2024-08-06T20:20:28.4571308Z Entering 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T20:20:28.4612076Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T20:20:28.4654626Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T20:20:28.4698876Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T20:20:28.4740821Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T20:20:28.4782284Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T20:20:28.4827073Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T20:20:28.4869578Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T20:20:28.4910239Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T20:20:28.4953496Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T20:20:28.4999993Z Entering 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T20:20:28.5040025Z Entering 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T20:20:28.5083562Z Entering 'third_party/mimalloc' 2024-08-06T20:20:28.5125108Z Entering 'third_party/nccl/nccl' 2024-08-06T20:20:28.5165927Z Entering 'third_party/nlohmann' 2024-08-06T20:20:28.5207409Z Entering 'third_party/onnx' 2024-08-06T20:20:28.5265760Z Entering 'third_party/onnx/third_party/benchmark' 2024-08-06T20:20:28.5306118Z Entering 'third_party/onnx/third_party/pybind11' 2024-08-06T20:20:28.5349529Z Entering 'third_party/opentelemetry-cpp' 2024-08-06T20:20:28.5395052Z Entering 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T20:20:28.5434327Z Entering 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T20:20:28.5474751Z Entering 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T20:20:28.5514505Z Entering 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T20:20:28.5555318Z Entering 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T20:20:28.5594083Z Entering 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T20:20:28.5631701Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T20:20:28.5671619Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T20:20:28.5712915Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T20:20:28.5754033Z Entering 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T20:20:28.5816210Z Entering 'third_party/pocketfft' 2024-08-06T20:20:28.5860364Z Entering 'third_party/protobuf' 2024-08-06T20:20:28.5904765Z Entering 'third_party/protobuf/third_party/benchmark' 2024-08-06T20:20:28.5945031Z Entering 'third_party/protobuf/third_party/googletest' 2024-08-06T20:20:28.5986806Z Entering 'third_party/psimd' 2024-08-06T20:20:28.6027867Z Entering 'third_party/pthreadpool' 2024-08-06T20:20:28.6069697Z Entering 'third_party/pybind11' 2024-08-06T20:20:28.6110318Z Entering 'third_party/python-peachpy' 2024-08-06T20:20:28.6150371Z Entering 'third_party/sleef' 2024-08-06T20:20:28.6191513Z Entering 'third_party/tensorpipe' 2024-08-06T20:20:28.6231670Z Entering 'third_party/tensorpipe/third_party/googletest' 2024-08-06T20:20:28.6272025Z Entering 'third_party/tensorpipe/third_party/libnop' 2024-08-06T20:20:28.6310428Z Entering 'third_party/tensorpipe/third_party/libuv' 2024-08-06T20:20:28.6350210Z Entering 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T20:20:28.6389635Z Entering 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T20:20:28.6448039Z ##[endgroup] 2024-08-06T20:20:28.6449289Z ##[group]Persisting credentials for submodules 2024-08-06T20:20:28.6452562Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'url\.https\:\/\/github\.com\/\.insteadOf' && git config --local --unset-all 'url.https://github.com/.insteadOf' || :" 2024-08-06T20:20:28.6752831Z Entering 'android/libs/fbjni' 2024-08-06T20:20:28.6811842Z Entering 'third_party/FP16' 2024-08-06T20:20:28.6865130Z Entering 'third_party/FXdiv' 2024-08-06T20:20:28.6918684Z Entering 'third_party/NNPACK' 2024-08-06T20:20:28.6972276Z Entering 'third_party/VulkanMemoryAllocator' 2024-08-06T20:20:28.7024784Z Entering 'third_party/XNNPACK' 2024-08-06T20:20:28.7094517Z Entering 'third_party/benchmark' 2024-08-06T20:20:28.7147021Z Entering 'third_party/cpp-httplib' 2024-08-06T20:20:28.7199954Z Entering 'third_party/cpuinfo' 2024-08-06T20:20:28.7253347Z Entering 'third_party/cudnn_frontend' 2024-08-06T20:20:28.7307655Z Entering 'third_party/cutlass' 2024-08-06T20:20:28.7369450Z Entering 'third_party/eigen' 2024-08-06T20:20:28.7424966Z Entering 'third_party/fbgemm' 2024-08-06T20:20:28.7480838Z Entering 'third_party/fbgemm/third_party/asmjit' 2024-08-06T20:20:28.7533583Z Entering 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T20:20:28.7586142Z Entering 'third_party/fbgemm/third_party/cutlass' 2024-08-06T20:20:28.7644638Z Entering 'third_party/fbgemm/third_party/googletest' 2024-08-06T20:20:28.7699754Z Entering 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T20:20:28.7752657Z Entering 'third_party/flatbuffers' 2024-08-06T20:20:28.7808505Z Entering 'third_party/fmt' 2024-08-06T20:20:28.7860636Z Entering 'third_party/foxi' 2024-08-06T20:20:28.7914961Z Entering 'third_party/gemmlowp/gemmlowp' 2024-08-06T20:20:28.7968270Z Entering 'third_party/gloo' 2024-08-06T20:20:28.8019732Z Entering 'third_party/googletest' 2024-08-06T20:20:28.8071285Z Entering 'third_party/ideep' 2024-08-06T20:20:28.8122008Z Entering 'third_party/ideep/mkl-dnn' 2024-08-06T20:20:28.8183597Z Entering 'third_party/ittapi' 2024-08-06T20:20:28.8237273Z Entering 'third_party/kineto' 2024-08-06T20:20:28.8291408Z Entering 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T20:20:28.8344589Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T20:20:28.8401260Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T20:20:28.8454943Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T20:20:28.8509800Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T20:20:28.8561733Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T20:20:28.8617319Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T20:20:28.8669862Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T20:20:28.8722188Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T20:20:28.8775974Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T20:20:28.8829320Z Entering 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T20:20:28.8881836Z Entering 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T20:20:28.8936883Z Entering 'third_party/mimalloc' 2024-08-06T20:20:28.8990356Z Entering 'third_party/nccl/nccl' 2024-08-06T20:20:28.9044001Z Entering 'third_party/nlohmann' 2024-08-06T20:20:28.9097219Z Entering 'third_party/onnx' 2024-08-06T20:20:28.9165470Z Entering 'third_party/onnx/third_party/benchmark' 2024-08-06T20:20:28.9219382Z Entering 'third_party/onnx/third_party/pybind11' 2024-08-06T20:20:28.9275515Z Entering 'third_party/opentelemetry-cpp' 2024-08-06T20:20:28.9329764Z Entering 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T20:20:28.9382283Z Entering 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T20:20:28.9434658Z Entering 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T20:20:28.9487387Z Entering 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T20:20:28.9541098Z Entering 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T20:20:28.9594344Z Entering 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T20:20:28.9650293Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T20:20:28.9703008Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T20:20:28.9758993Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T20:20:28.9813397Z Entering 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T20:20:28.9885655Z Entering 'third_party/pocketfft' 2024-08-06T20:20:28.9939055Z Entering 'third_party/protobuf' 2024-08-06T20:20:28.9993821Z Entering 'third_party/protobuf/third_party/benchmark' 2024-08-06T20:20:29.0046687Z Entering 'third_party/protobuf/third_party/googletest' 2024-08-06T20:20:29.0101257Z Entering 'third_party/psimd' 2024-08-06T20:20:29.0154561Z Entering 'third_party/pthreadpool' 2024-08-06T20:20:29.0209083Z Entering 'third_party/pybind11' 2024-08-06T20:20:29.0261943Z Entering 'third_party/python-peachpy' 2024-08-06T20:20:29.0314443Z Entering 'third_party/sleef' 2024-08-06T20:20:29.0367195Z Entering 'third_party/tensorpipe' 2024-08-06T20:20:29.0419675Z Entering 'third_party/tensorpipe/third_party/googletest' 2024-08-06T20:20:29.0471952Z Entering 'third_party/tensorpipe/third_party/libnop' 2024-08-06T20:20:29.0522655Z Entering 'third_party/tensorpipe/third_party/libuv' 2024-08-06T20:20:29.0574386Z Entering 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T20:20:29.0625336Z Entering 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T20:20:29.0696489Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local 'http.https://github.com/.extraheader' 'AUTHORIZATION: basic ***' && git config --local --show-origin --name-only --get-regexp remote.origin.url" 2024-08-06T20:20:29.0991142Z Entering 'android/libs/fbjni' 2024-08-06T20:20:29.1041963Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/android/libs/fbjni/config remote.origin.url 2024-08-06T20:20:29.1058812Z Entering 'third_party/FP16' 2024-08-06T20:20:29.1108397Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/NNPACK_deps/FP16/config remote.origin.url 2024-08-06T20:20:29.1124206Z Entering 'third_party/FXdiv' 2024-08-06T20:20:29.1175557Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/NNPACK_deps/FXdiv/config remote.origin.url 2024-08-06T20:20:29.1191006Z Entering 'third_party/NNPACK' 2024-08-06T20:20:29.1239552Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/NNPACK/config remote.origin.url 2024-08-06T20:20:29.1255082Z Entering 'third_party/VulkanMemoryAllocator' 2024-08-06T20:20:29.1303322Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/VulkanMemoryAllocator/config remote.origin.url 2024-08-06T20:20:29.1318882Z Entering 'third_party/XNNPACK' 2024-08-06T20:20:29.1367032Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/XNNPACK/config remote.origin.url 2024-08-06T20:20:29.1400275Z Entering 'third_party/benchmark' 2024-08-06T20:20:29.1449298Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/benchmark/config remote.origin.url 2024-08-06T20:20:29.1465405Z Entering 'third_party/cpp-httplib' 2024-08-06T20:20:29.1513944Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/cpp-httplib/config remote.origin.url 2024-08-06T20:20:29.1529323Z Entering 'third_party/cpuinfo' 2024-08-06T20:20:29.1578951Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/cpuinfo/config remote.origin.url 2024-08-06T20:20:29.1595428Z Entering 'third_party/cudnn_frontend' 2024-08-06T20:20:29.1644687Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/cudnn_frontend/config remote.origin.url 2024-08-06T20:20:29.1660856Z Entering 'third_party/cutlass' 2024-08-06T20:20:29.1710211Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/cutlass/config remote.origin.url 2024-08-06T20:20:29.1734444Z Entering 'third_party/eigen' 2024-08-06T20:20:29.1783856Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/eigen/config remote.origin.url 2024-08-06T20:20:29.1801800Z Entering 'third_party/fbgemm' 2024-08-06T20:20:29.1850633Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/fbgemm/config remote.origin.url 2024-08-06T20:20:29.1866784Z Entering 'third_party/fbgemm/third_party/asmjit' 2024-08-06T20:20:29.1915695Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/fbgemm/modules/third_party/asmjit/config remote.origin.url 2024-08-06T20:20:29.1930882Z Entering 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T20:20:29.1978686Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/fbgemm/modules/third_party/cpuinfo/config remote.origin.url 2024-08-06T20:20:29.1993785Z Entering 'third_party/fbgemm/third_party/cutlass' 2024-08-06T20:20:29.2041301Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/fbgemm/modules/third_party/cutlass/config remote.origin.url 2024-08-06T20:20:29.2063220Z Entering 'third_party/fbgemm/third_party/googletest' 2024-08-06T20:20:29.2112091Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/fbgemm/modules/third_party/googletest/config remote.origin.url 2024-08-06T20:20:29.2127157Z Entering 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T20:20:29.2175519Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/fbgemm/modules/third_party/hipify_torch/config remote.origin.url 2024-08-06T20:20:29.2191831Z Entering 'third_party/flatbuffers' 2024-08-06T20:20:29.2240270Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/flatbuffers/config remote.origin.url 2024-08-06T20:20:29.2258554Z Entering 'third_party/fmt' 2024-08-06T20:20:29.2307155Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/fmt/config remote.origin.url 2024-08-06T20:20:29.2322663Z Entering 'third_party/foxi' 2024-08-06T20:20:29.2370664Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/foxi/config remote.origin.url 2024-08-06T20:20:29.2385665Z Entering 'third_party/gemmlowp/gemmlowp' 2024-08-06T20:20:29.2432735Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/gemmlowp/gemmlowp/config remote.origin.url 2024-08-06T20:20:29.2448866Z Entering 'third_party/gloo' 2024-08-06T20:20:29.2496773Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/gloo/config remote.origin.url 2024-08-06T20:20:29.2512789Z Entering 'third_party/googletest' 2024-08-06T20:20:29.2560345Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/googletest/config remote.origin.url 2024-08-06T20:20:29.2576628Z Entering 'third_party/ideep' 2024-08-06T20:20:29.2625429Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/ideep/config remote.origin.url 2024-08-06T20:20:29.2639913Z Entering 'third_party/ideep/mkl-dnn' 2024-08-06T20:20:29.2688752Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/ideep/modules/mkl-dnn/config remote.origin.url 2024-08-06T20:20:29.2711914Z Entering 'third_party/ittapi' 2024-08-06T20:20:29.2761554Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/ittapi/config remote.origin.url 2024-08-06T20:20:29.2777425Z Entering 'third_party/kineto' 2024-08-06T20:20:29.2827118Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/config remote.origin.url 2024-08-06T20:20:29.2842585Z Entering 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T20:20:29.2895227Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/config remote.origin.url 2024-08-06T20:20:29.2910011Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T20:20:29.2960471Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/DCGM/config remote.origin.url 2024-08-06T20:20:29.2976150Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T20:20:29.3024656Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/cpr/config remote.origin.url 2024-08-06T20:20:29.3038805Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T20:20:29.3090338Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/fmt/config remote.origin.url 2024-08-06T20:20:29.3106199Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T20:20:29.3156314Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/gflags/config remote.origin.url 2024-08-06T20:20:29.3170921Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T20:20:29.3220420Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/gflags/modules/doc/config remote.origin.url 2024-08-06T20:20:29.3237612Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T20:20:29.3286908Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/glog/config remote.origin.url 2024-08-06T20:20:29.3302466Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T20:20:29.3351078Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/googletest/config remote.origin.url 2024-08-06T20:20:29.3367183Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T20:20:29.3416521Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/json/config remote.origin.url 2024-08-06T20:20:29.3432976Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T20:20:29.3483992Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/dynolog/modules/third_party/pfs/config remote.origin.url 2024-08-06T20:20:29.3501423Z Entering 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T20:20:29.3550346Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/fmt/config remote.origin.url 2024-08-06T20:20:29.3565880Z Entering 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T20:20:29.3614507Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/kineto/modules/libkineto/third_party/googletest/config remote.origin.url 2024-08-06T20:20:29.3632613Z Entering 'third_party/mimalloc' 2024-08-06T20:20:29.3684553Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/mimalloc/config remote.origin.url 2024-08-06T20:20:29.3700847Z Entering 'third_party/nccl/nccl' 2024-08-06T20:20:29.3749654Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/nccl/nccl/config remote.origin.url 2024-08-06T20:20:29.3769172Z Entering 'third_party/nlohmann' 2024-08-06T20:20:29.3817060Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/nlohmann/config remote.origin.url 2024-08-06T20:20:29.3834829Z Entering 'third_party/onnx' 2024-08-06T20:20:29.3883054Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/onnx/config remote.origin.url 2024-08-06T20:20:29.3914543Z Entering 'third_party/onnx/third_party/benchmark' 2024-08-06T20:20:29.3963236Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/onnx/modules/third_party/benchmark/config remote.origin.url 2024-08-06T20:20:29.3978816Z Entering 'third_party/onnx/third_party/pybind11' 2024-08-06T20:20:29.4026930Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/onnx/modules/third_party/pybind11/config remote.origin.url 2024-08-06T20:20:29.4044608Z Entering 'third_party/opentelemetry-cpp' 2024-08-06T20:20:29.4094369Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/config remote.origin.url 2024-08-06T20:20:29.4112180Z Entering 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T20:20:29.4161089Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/benchmark/config remote.origin.url 2024-08-06T20:20:29.4178452Z Entering 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T20:20:29.4228316Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/googletest/config remote.origin.url 2024-08-06T20:20:29.4243020Z Entering 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T20:20:29.4299809Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/ms-gsl/config remote.origin.url 2024-08-06T20:20:29.4314485Z Entering 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T20:20:29.4365495Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/nlohmann-json/config remote.origin.url 2024-08-06T20:20:29.4382047Z Entering 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T20:20:29.4430575Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/opentelemetry-proto/config remote.origin.url 2024-08-06T20:20:29.4445410Z Entering 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T20:20:29.4495262Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/opentracing-cpp/config remote.origin.url 2024-08-06T20:20:29.4509683Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T20:20:29.4558769Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/prometheus-cpp/config remote.origin.url 2024-08-06T20:20:29.4574747Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T20:20:29.4626143Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/prometheus-cpp/modules/civetweb/config remote.origin.url 2024-08-06T20:20:29.4644015Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T20:20:29.4696200Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/third_party/prometheus-cpp/modules/googletest/config remote.origin.url 2024-08-06T20:20:29.4712659Z Entering 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T20:20:29.4764873Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/opentelemetry-cpp/modules/tools/vcpkg/config remote.origin.url 2024-08-06T20:20:29.4799355Z Entering 'third_party/pocketfft' 2024-08-06T20:20:29.4850654Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/pocketfft/config remote.origin.url 2024-08-06T20:20:29.4867360Z Entering 'third_party/protobuf' 2024-08-06T20:20:29.4916796Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/protobuf/config remote.origin.url 2024-08-06T20:20:29.4936060Z Entering 'third_party/protobuf/third_party/benchmark' 2024-08-06T20:20:29.4988368Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/protobuf/modules/third_party/benchmark/config remote.origin.url 2024-08-06T20:20:29.5002512Z Entering 'third_party/protobuf/third_party/googletest' 2024-08-06T20:20:29.5051893Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/protobuf/modules/third_party/googletest/config remote.origin.url 2024-08-06T20:20:29.5069594Z Entering 'third_party/psimd' 2024-08-06T20:20:29.5120139Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/NNPACK_deps/psimd/config remote.origin.url 2024-08-06T20:20:29.5135359Z Entering 'third_party/pthreadpool' 2024-08-06T20:20:29.5185703Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/NNPACK_deps/pthreadpool/config remote.origin.url 2024-08-06T20:20:29.5200109Z Entering 'third_party/pybind11' 2024-08-06T20:20:29.5248969Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/pybind11/config remote.origin.url 2024-08-06T20:20:29.5266787Z Entering 'third_party/python-peachpy' 2024-08-06T20:20:29.5317167Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/python-peachpy/config remote.origin.url 2024-08-06T20:20:29.5333057Z Entering 'third_party/sleef' 2024-08-06T20:20:29.5384587Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/sleef/config remote.origin.url 2024-08-06T20:20:29.5400467Z Entering 'third_party/tensorpipe' 2024-08-06T20:20:29.5451946Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/tensorpipe/config remote.origin.url 2024-08-06T20:20:29.5469484Z Entering 'third_party/tensorpipe/third_party/googletest' 2024-08-06T20:20:29.5518035Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/tensorpipe/modules/third_party/googletest/config remote.origin.url 2024-08-06T20:20:29.5533282Z Entering 'third_party/tensorpipe/third_party/libnop' 2024-08-06T20:20:29.5582595Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/tensorpipe/modules/third_party/libnop/config remote.origin.url 2024-08-06T20:20:29.5596959Z Entering 'third_party/tensorpipe/third_party/libuv' 2024-08-06T20:20:29.5646138Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/tensorpipe/modules/third_party/libuv/config remote.origin.url 2024-08-06T20:20:29.5661639Z Entering 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T20:20:29.5710527Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/tensorpipe/modules/third_party/pybind11/config remote.origin.url 2024-08-06T20:20:29.5723824Z Entering 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T20:20:29.5773514Z file:/home/ec2-user/actions-runner/_work/pytorch/pytorch/.git/modules/third_party/tensorpipe/modules/third_party/pybind11/modules/tools/clang/config remote.origin.url 2024-08-06T20:20:29.6554398Z [command]/usr/bin/git submodule foreach --recursive git config --local --add 'url.https://github.com/.insteadOf' 'git@github.com:' 2024-08-06T20:20:29.6847231Z Entering 'android/libs/fbjni' 2024-08-06T20:20:29.6887692Z Entering 'third_party/FP16' 2024-08-06T20:20:29.6928190Z Entering 'third_party/FXdiv' 2024-08-06T20:20:29.6968266Z Entering 'third_party/NNPACK' 2024-08-06T20:20:29.7008655Z Entering 'third_party/VulkanMemoryAllocator' 2024-08-06T20:20:29.7049550Z Entering 'third_party/XNNPACK' 2024-08-06T20:20:29.7109845Z Entering 'third_party/benchmark' 2024-08-06T20:20:29.7151700Z Entering 'third_party/cpp-httplib' 2024-08-06T20:20:29.7193977Z Entering 'third_party/cpuinfo' 2024-08-06T20:20:29.7235974Z Entering 'third_party/cudnn_frontend' 2024-08-06T20:20:29.7277172Z Entering 'third_party/cutlass' 2024-08-06T20:20:29.7326775Z Entering 'third_party/eigen' 2024-08-06T20:20:29.7370474Z Entering 'third_party/fbgemm' 2024-08-06T20:20:29.7412533Z Entering 'third_party/fbgemm/third_party/asmjit' 2024-08-06T20:20:29.7453986Z Entering 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T20:20:29.7495305Z Entering 'third_party/fbgemm/third_party/cutlass' 2024-08-06T20:20:29.7542409Z Entering 'third_party/fbgemm/third_party/googletest' 2024-08-06T20:20:29.7582925Z Entering 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T20:20:29.7625371Z Entering 'third_party/flatbuffers' 2024-08-06T20:20:29.7670178Z Entering 'third_party/fmt' 2024-08-06T20:20:29.7711144Z Entering 'third_party/foxi' 2024-08-06T20:20:29.7751800Z Entering 'third_party/gemmlowp/gemmlowp' 2024-08-06T20:20:29.7794614Z Entering 'third_party/gloo' 2024-08-06T20:20:29.7835982Z Entering 'third_party/googletest' 2024-08-06T20:20:29.7877686Z Entering 'third_party/ideep' 2024-08-06T20:20:29.7917025Z Entering 'third_party/ideep/mkl-dnn' 2024-08-06T20:20:29.7966801Z Entering 'third_party/ittapi' 2024-08-06T20:20:29.8007683Z Entering 'third_party/kineto' 2024-08-06T20:20:29.8048478Z Entering 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T20:20:29.8089163Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T20:20:29.8129903Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T20:20:29.8170190Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T20:20:29.8209278Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T20:20:29.8247364Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T20:20:29.8291104Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T20:20:29.8331629Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T20:20:29.8372500Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T20:20:29.8414089Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T20:20:29.8456467Z Entering 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T20:20:29.8496777Z Entering 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T20:20:29.8537688Z Entering 'third_party/mimalloc' 2024-08-06T20:20:29.8580179Z Entering 'third_party/nccl/nccl' 2024-08-06T20:20:29.8620014Z Entering 'third_party/nlohmann' 2024-08-06T20:20:29.8662040Z Entering 'third_party/onnx' 2024-08-06T20:20:29.8719752Z Entering 'third_party/onnx/third_party/benchmark' 2024-08-06T20:20:29.8762082Z Entering 'third_party/onnx/third_party/pybind11' 2024-08-06T20:20:29.8806583Z Entering 'third_party/opentelemetry-cpp' 2024-08-06T20:20:29.8851113Z Entering 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T20:20:29.8894269Z Entering 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T20:20:29.8933715Z Entering 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T20:20:29.8972859Z Entering 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T20:20:29.9013204Z Entering 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T20:20:29.9052744Z Entering 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T20:20:29.9092266Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T20:20:29.9133095Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T20:20:29.9174138Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T20:20:29.9216492Z Entering 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T20:20:29.9277866Z Entering 'third_party/pocketfft' 2024-08-06T20:20:29.9318845Z Entering 'third_party/protobuf' 2024-08-06T20:20:29.9363182Z Entering 'third_party/protobuf/third_party/benchmark' 2024-08-06T20:20:29.9402660Z Entering 'third_party/protobuf/third_party/googletest' 2024-08-06T20:20:29.9443891Z Entering 'third_party/psimd' 2024-08-06T20:20:29.9485916Z Entering 'third_party/pthreadpool' 2024-08-06T20:20:29.9525333Z Entering 'third_party/pybind11' 2024-08-06T20:20:29.9567108Z Entering 'third_party/python-peachpy' 2024-08-06T20:20:29.9608586Z Entering 'third_party/sleef' 2024-08-06T20:20:29.9649944Z Entering 'third_party/tensorpipe' 2024-08-06T20:20:29.9691689Z Entering 'third_party/tensorpipe/third_party/googletest' 2024-08-06T20:20:29.9732760Z Entering 'third_party/tensorpipe/third_party/libnop' 2024-08-06T20:20:29.9774583Z Entering 'third_party/tensorpipe/third_party/libuv' 2024-08-06T20:20:29.9815564Z Entering 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T20:20:29.9856869Z Entering 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T20:20:29.9916199Z [command]/usr/bin/git submodule foreach --recursive git config --local --add 'url.https://github.com/.insteadOf' 'org-21003710@github.com:' 2024-08-06T20:20:30.0214162Z Entering 'android/libs/fbjni' 2024-08-06T20:20:30.0254801Z Entering 'third_party/FP16' 2024-08-06T20:20:30.0295673Z Entering 'third_party/FXdiv' 2024-08-06T20:20:30.0336186Z Entering 'third_party/NNPACK' 2024-08-06T20:20:30.0377537Z Entering 'third_party/VulkanMemoryAllocator' 2024-08-06T20:20:30.0417462Z Entering 'third_party/XNNPACK' 2024-08-06T20:20:30.0475133Z Entering 'third_party/benchmark' 2024-08-06T20:20:30.0515483Z Entering 'third_party/cpp-httplib' 2024-08-06T20:20:30.0556287Z Entering 'third_party/cpuinfo' 2024-08-06T20:20:30.0599200Z Entering 'third_party/cudnn_frontend' 2024-08-06T20:20:30.0641084Z Entering 'third_party/cutlass' 2024-08-06T20:20:30.0694455Z Entering 'third_party/eigen' 2024-08-06T20:20:30.0741440Z Entering 'third_party/fbgemm' 2024-08-06T20:20:30.0781596Z Entering 'third_party/fbgemm/third_party/asmjit' 2024-08-06T20:20:30.0821723Z Entering 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T20:20:30.0861872Z Entering 'third_party/fbgemm/third_party/cutlass' 2024-08-06T20:20:30.0909427Z Entering 'third_party/fbgemm/third_party/googletest' 2024-08-06T20:20:30.0948875Z Entering 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T20:20:30.0989714Z Entering 'third_party/flatbuffers' 2024-08-06T20:20:30.1033073Z Entering 'third_party/fmt' 2024-08-06T20:20:30.1074107Z Entering 'third_party/foxi' 2024-08-06T20:20:30.1114905Z Entering 'third_party/gemmlowp/gemmlowp' 2024-08-06T20:20:30.1155775Z Entering 'third_party/gloo' 2024-08-06T20:20:30.1197674Z Entering 'third_party/googletest' 2024-08-06T20:20:30.1239148Z Entering 'third_party/ideep' 2024-08-06T20:20:30.1281403Z Entering 'third_party/ideep/mkl-dnn' 2024-08-06T20:20:30.1330239Z Entering 'third_party/ittapi' 2024-08-06T20:20:30.1373658Z Entering 'third_party/kineto' 2024-08-06T20:20:30.1417515Z Entering 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T20:20:30.1459122Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T20:20:30.1501925Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T20:20:30.1540885Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T20:20:30.1581485Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T20:20:30.1619177Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T20:20:30.1663009Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T20:20:30.1703352Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T20:20:30.1743771Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T20:20:30.1784276Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T20:20:30.1825711Z Entering 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T20:20:30.1865434Z Entering 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T20:20:30.1906331Z Entering 'third_party/mimalloc' 2024-08-06T20:20:30.1947948Z Entering 'third_party/nccl/nccl' 2024-08-06T20:20:30.1988744Z Entering 'third_party/nlohmann' 2024-08-06T20:20:30.2029527Z Entering 'third_party/onnx' 2024-08-06T20:20:30.2086252Z Entering 'third_party/onnx/third_party/benchmark' 2024-08-06T20:20:30.2126671Z Entering 'third_party/onnx/third_party/pybind11' 2024-08-06T20:20:30.2169980Z Entering 'third_party/opentelemetry-cpp' 2024-08-06T20:20:30.2212116Z Entering 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T20:20:30.2251704Z Entering 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T20:20:30.2291562Z Entering 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T20:20:30.2332026Z Entering 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T20:20:30.2376191Z Entering 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T20:20:30.2415192Z Entering 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T20:20:30.2454650Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T20:20:30.2495728Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T20:20:30.2538767Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T20:20:30.2583166Z Entering 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T20:20:30.2645591Z Entering 'third_party/pocketfft' 2024-08-06T20:20:30.2688678Z Entering 'third_party/protobuf' 2024-08-06T20:20:30.2733267Z Entering 'third_party/protobuf/third_party/benchmark' 2024-08-06T20:20:30.2774178Z Entering 'third_party/protobuf/third_party/googletest' 2024-08-06T20:20:30.2818123Z Entering 'third_party/psimd' 2024-08-06T20:20:30.2862156Z Entering 'third_party/pthreadpool' 2024-08-06T20:20:30.2903457Z Entering 'third_party/pybind11' 2024-08-06T20:20:30.2944353Z Entering 'third_party/python-peachpy' 2024-08-06T20:20:30.2987420Z Entering 'third_party/sleef' 2024-08-06T20:20:30.3028198Z Entering 'third_party/tensorpipe' 2024-08-06T20:20:30.3069413Z Entering 'third_party/tensorpipe/third_party/googletest' 2024-08-06T20:20:30.3109567Z Entering 'third_party/tensorpipe/third_party/libnop' 2024-08-06T20:20:30.3150076Z Entering 'third_party/tensorpipe/third_party/libuv' 2024-08-06T20:20:30.3191052Z Entering 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T20:20:30.3231955Z Entering 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T20:20:30.3286723Z ##[endgroup] 2024-08-06T20:20:30.3329291Z [command]/usr/bin/git log -1 --format='%H' 2024-08-06T20:20:30.3366010Z 'b9d86fa89636e301796d4201f36d86c73f6e49bc' 2024-08-06T20:20:30.3519988Z Prepare all required actions 2024-08-06T20:20:30.3520560Z Getting action download info 2024-08-06T20:20:30.4871107Z ##[group]Run ./.github/actions/setup-linux 2024-08-06T20:20:30.4871607Z env: 2024-08-06T20:20:30.4871828Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:30.4872097Z ##[endgroup] 2024-08-06T20:20:30.4920883Z ##[group]Run set -euo pipefail 2024-08-06T20:20:30.4921251Z set -euo pipefail 2024-08-06T20:20:30.4921544Z function get_ec2_metadata() { 2024-08-06T20:20:30.4921942Z  # Pulled from instance metadata endpoint for EC2 2024-08-06T20:20:30.4922600Z  # see https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-retrieval.html 2024-08-06T20:20:30.4923167Z  category=$1 2024-08-06T20:20:30.4923542Z  # If it is GCP runner (runner name contains gcp), do not run this 2024-08-06T20:20:30.4923990Z  runner_name_str=i-0e18f27a51b7f397a 2024-08-06T20:20:30.4924399Z  if [[ -f /.inarc ]]; then 2024-08-06T20:20:30.4924755Z  echo "ARC Runner, no info on ec2 metadata" 2024-08-06T20:20:30.4925142Z  elif [[ $runner_name_str == *"gcp"* ]]; then 2024-08-06T20:20:30.4925647Z  echo "Runner is from Google Cloud Platform, No info on ec2 metadata" 2024-08-06T20:20:30.4926102Z  else 2024-08-06T20:20:30.4926461Z  curl -fsSL "http://169.254.169.254/latest/meta-data/${category}" 2024-08-06T20:20:30.4926889Z  fi 2024-08-06T20:20:30.4927102Z } 2024-08-06T20:20:30.4927374Z echo "ami-id: $(get_ec2_metadata ami-id)" 2024-08-06T20:20:30.4927816Z echo "instance-id: $(get_ec2_metadata instance-id)" 2024-08-06T20:20:30.4928296Z echo "instance-type: $(get_ec2_metadata instance-type)" 2024-08-06T20:20:30.4928732Z echo "system info $(uname -a)" 2024-08-06T20:20:30.4937005Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:30.4937390Z env: 2024-08-06T20:20:30.4937637Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:30.4937911Z ##[endgroup] 2024-08-06T20:20:30.5031280Z ami-id: ami-06c68f701d8090592 2024-08-06T20:20:30.5084198Z instance-id: i-0e18f27a51b7f397a 2024-08-06T20:20:30.5135783Z instance-type: c5.2xlarge 2024-08-06T20:20:30.5145426Z system info Linux ip-10-0-9-165.ec2.internal 6.1.94-99.176.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Jun 18 14:57:56 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux 2024-08-06T20:20:30.5176965Z ##[group]Run echo "IN_ARC_RUNNER=$([ -f /.inarc ] && echo true || echo false)" >> $GITHUB_OUTPUT 2024-08-06T20:20:30.5177643Z echo "IN_ARC_RUNNER=$([ -f /.inarc ] && echo true || echo false)" >> $GITHUB_OUTPUT 2024-08-06T20:20:30.5184031Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:30.5184424Z env: 2024-08-06T20:20:30.5184648Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:30.5184905Z ##[endgroup] 2024-08-06T20:20:30.5260867Z ##[group]Run if systemctl is-active --quiet docker; then 2024-08-06T20:20:30.5261365Z if systemctl is-active --quiet docker; then 2024-08-06T20:20:30.5261749Z  echo "Docker daemon is running..."; 2024-08-06T20:20:30.5262097Z else 2024-08-06T20:20:30.5262460Z  echo "Starting docker deamon..." && sudo systemctl start docker; 2024-08-06T20:20:30.5263159Z fi 2024-08-06T20:20:30.5268792Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:30.5269183Z env: 2024-08-06T20:20:30.5269394Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:30.5269661Z ##[endgroup] 2024-08-06T20:20:30.5341353Z Docker daemon is running... 2024-08-06T20:20:30.5390367Z ##[group]Run nick-fields/retry@3e91a01664abd3c5cd539100d10d33b9c5b68482 2024-08-06T20:20:30.5390797Z with: 2024-08-06T20:20:30.5391019Z shell: bash 2024-08-06T20:20:30.5391255Z timeout_minutes: 5 2024-08-06T20:20:30.5391495Z max_attempts: 3 2024-08-06T20:20:30.5391743Z retry_wait_seconds: 30 2024-08-06T20:20:30.5393014Z command: AWS_ACCOUNT_ID=$(aws sts get-caller-identity|grep Account|cut -f4 -d\") aws ecr get-login-password --region "$AWS_DEFAULT_REGION" | docker login --username AWS \ --password-stdin "$AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com" 2024-08-06T20:20:30.5394254Z polling_interval_seconds: 1 2024-08-06T20:20:30.5394536Z warning_on_retry: true 2024-08-06T20:20:30.5394816Z continue_on_error: false 2024-08-06T20:20:30.5395085Z env: 2024-08-06T20:20:30.5395288Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:30.5395558Z AWS_RETRY_MODE: standard 2024-08-06T20:20:30.5395827Z AWS_MAX_ATTEMPTS: 5 2024-08-06T20:20:30.5396079Z AWS_DEFAULT_REGION: us-east-1 2024-08-06T20:20:30.5396363Z ##[endgroup] 2024-08-06T20:20:31.8363236Z WARNING! Your password will be stored unencrypted in /home/ec2-user/.docker/config.json. 2024-08-06T20:20:31.8363907Z Configure a credential helper to remove this warning. See 2024-08-06T20:20:31.8364518Z https://docs.docker.com/engine/reference/commandline/login/#credentials-store 2024-08-06T20:20:31.8364922Z 2024-08-06T20:20:31.8365055Z Login Succeeded 2024-08-06T20:20:32.5979168Z Command completed after 1 attempt(s). 2024-08-06T20:20:32.6034735Z ##[group]Run env | grep '^GITHUB' >> "/tmp/github_env_${GITHUB_RUN_ID}" 2024-08-06T20:20:32.6035326Z env | grep '^GITHUB' >> "/tmp/github_env_${GITHUB_RUN_ID}" 2024-08-06T20:20:32.6035791Z env | grep '^CI' >> "/tmp/github_env_${GITHUB_RUN_ID}" 2024-08-06T20:20:32.6041851Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:32.6042250Z env: 2024-08-06T20:20:32.6042464Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:32.6042735Z ##[endgroup] 2024-08-06T20:20:32.6126246Z ##[group]Run # ignore expansion of "docker ps -q" since it could be empty 2024-08-06T20:20:32.6126852Z # ignore expansion of "docker ps -q" since it could be empty 2024-08-06T20:20:32.6127282Z # shellcheck disable=SC2046 2024-08-06T20:20:32.6127630Z docker stop $(docker ps -q) || true 2024-08-06T20:20:32.6128009Z # Prune all of the docker images 2024-08-06T20:20:32.6128337Z docker system prune -af 2024-08-06T20:20:32.6134026Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:32.6134448Z env: 2024-08-06T20:20:32.6134664Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:32.6134935Z ##[endgroup] 2024-08-06T20:20:32.6404371Z "docker stop" requires at least 1 argument. 2024-08-06T20:20:32.6404805Z See 'docker stop --help'. 2024-08-06T20:20:32.6404987Z 2024-08-06T20:20:32.6563647Z Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...] 2024-08-06T20:20:32.6563989Z 2024-08-06T20:20:32.6564109Z Stop one or more running containers 2024-08-06T20:20:32.6564444Z Total reclaimed space: 0B 2024-08-06T20:20:32.6634369Z ##[group]Run set +e 2024-08-06T20:20:32.6634674Z set +e 2024-08-06T20:20:32.6634914Z set -x 2024-08-06T20:20:32.6635148Z  2024-08-06T20:20:32.6635387Z PT_DOMAIN=download.pytorch.org 2024-08-06T20:20:32.6635999Z # TODO: Flaky access to download.pytorch.org https://github.com/pytorch/pytorch/issues/100400, 2024-08-06T20:20:32.6636776Z # cleaning this up once the issue is fixed. There are more than one resolved IP here, the last 2024-08-06T20:20:32.6637317Z # one is returned at random 2024-08-06T20:20:32.6637718Z RESOLVED_IP=$(dig -4 +short "${PT_DOMAIN}" | tail -n1) 2024-08-06T20:20:32.6638106Z  2024-08-06T20:20:32.6638331Z if [ -z "${RESOLVED_IP}" ]; then 2024-08-06T20:20:32.6638772Z  echo "Couldn't resolve ${PT_DOMAIN}, retrying with Google DNS..." 2024-08-06T20:20:32.6639306Z  RESOLVED_IP=$(dig -4 +short "${PT_DOMAIN}" @8.8.8.8 | tail -n1) 2024-08-06T20:20:32.6639700Z  2024-08-06T20:20:32.6639943Z  if [ -z "${RESOLVED_IP}" ]; then 2024-08-06T20:20:32.6640337Z  echo "Couldn't resolve ${PT_DOMAIN}, exiting..." 2024-08-06T20:20:32.6640701Z  exit 1 2024-08-06T20:20:32.6640942Z  fi 2024-08-06T20:20:32.6641325Z fi 2024-08-06T20:20:32.6641535Z  2024-08-06T20:20:32.6641806Z if grep -r "${PT_DOMAIN}" /etc/hosts; then 2024-08-06T20:20:32.6642308Z  # Clean up any old records first 2024-08-06T20:20:32.6642666Z  sudo sed -i "/${PT_DOMAIN}/d" /etc/hosts 2024-08-06T20:20:32.6643005Z fi 2024-08-06T20:20:32.6643220Z  2024-08-06T20:20:32.6643528Z echo "${RESOLVED_IP} ${PT_DOMAIN}" | sudo tee -a /etc/hosts 2024-08-06T20:20:32.6643936Z cat /etc/hosts 2024-08-06T20:20:32.6649621Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:32.6649998Z env: 2024-08-06T20:20:32.6650223Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:32.6650495Z ##[endgroup] 2024-08-06T20:20:32.6674220Z + PT_DOMAIN=download.pytorch.org 2024-08-06T20:20:32.6679852Z ++ dig -4 +short download.pytorch.org 2024-08-06T20:20:32.6680412Z ++ tail -n1 2024-08-06T20:20:32.7393048Z + RESOLVED_IP=18.160.10.28 2024-08-06T20:20:32.7393410Z + '[' -z 18.160.10.28 ']' 2024-08-06T20:20:32.7393709Z + grep -r download.pytorch.org /etc/hosts 2024-08-06T20:20:32.7405595Z 108.138.85.68 download.pytorch.org 2024-08-06T20:20:32.7406827Z + sudo sed -i /download.pytorch.org/d /etc/hosts 2024-08-06T20:20:32.9851287Z + echo '18.160.10.28 download.pytorch.org' 2024-08-06T20:20:32.9851971Z + sudo tee -a /etc/hosts 2024-08-06T20:20:33.0266706Z 18.160.10.28 download.pytorch.org 2024-08-06T20:20:33.0282666Z + cat /etc/hosts 2024-08-06T20:20:33.0292168Z 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 2024-08-06T20:20:33.0298289Z ::1 localhost6 localhost6.localdomain6 2024-08-06T20:20:33.0298686Z 18.160.10.28 download.pytorch.org 2024-08-06T20:20:33.0431620Z ##[group]Run pytorch/test-infra/.github/actions/calculate-docker-image@main 2024-08-06T20:20:33.0432130Z with: 2024-08-06T20:20:33.0432825Z docker-image-name: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0433626Z docker-build-dir: .ci/docker 2024-08-06T20:20:33.0433927Z working-directory: . 2024-08-06T20:20:33.0434283Z docker-registry: 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.0434698Z force-push: false 2024-08-06T20:20:33.0434934Z env: 2024-08-06T20:20:33.0435154Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:33.0435408Z ##[endgroup] 2024-08-06T20:20:33.0460642Z ##[group]Run set -ex 2024-08-06T20:20:33.0460962Z set -ex 2024-08-06T20:20:33.0461197Z  2024-08-06T20:20:33.0461602Z # If the docker build directory or the build script doesn't exist, the action will 2024-08-06T20:20:33.0462341Z # gracefully return the docker image name as it is. Pulling docker image in Linux 2024-08-06T20:20:33.0463180Z # job could then download the pre-built image as usual 2024-08-06T20:20:33.0463720Z if [[ ! -d "${DOCKER_BUILD_DIR}" ]] || [[ ! -f "${DOCKER_BUILD_DIR}/build.sh" ]]; then 2024-08-06T20:20:33.0464212Z  echo "skip=true" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0464677Z  echo "docker-image=${DOCKER_IMAGE_NAME}" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0465103Z  2024-08-06T20:20:33.0465495Z  echo "There is no Docker build script in ${REPO_NAME} repo, skipping..." 2024-08-06T20:20:33.0466113Z  exit 0 2024-08-06T20:20:33.0466415Z else 2024-08-06T20:20:33.0466812Z  echo "skip=false" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0467212Z fi 2024-08-06T20:20:33.0467416Z  2024-08-06T20:20:33.0467761Z if [[ "${DOCKER_IMAGE_NAME}" == *"${DOCKER_REGISTRY}/${REPO_NAME}"* ]]; then 2024-08-06T20:20:33.0468386Z  # The docker image name already includes the ECR prefix and tag, so we can just 2024-08-06T20:20:33.0468923Z  # use it as it is, but first let's extract the tag 2024-08-06T20:20:33.0469418Z  DOCKER_TAG=$(echo "${DOCKER_IMAGE_NAME}" | awk -F '[:,]' '{print $2}') 2024-08-06T20:20:33.0469940Z  echo "docker-tag=${DOCKER_TAG}" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0470432Z  echo "docker-image=${DOCKER_IMAGE_NAME}" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0471019Z else 2024-08-06T20:20:33.0471342Z  DOCKER_TAG=$(git rev-parse HEAD:"${DOCKER_BUILD_DIR}") 2024-08-06T20:20:33.0471805Z  echo "docker-tag=${DOCKER_TAG}" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0472465Z  echo "docker-image=${DOCKER_REGISTRY}/${REPO_NAME}/${DOCKER_IMAGE_NAME}:${DOCKER_TAG}" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0473050Z fi 2024-08-06T20:20:33.0481639Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:33.0482023Z env: 2024-08-06T20:20:33.0482250Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:33.0482516Z REPO_NAME: pytorch 2024-08-06T20:20:33.0483241Z DOCKER_IMAGE_NAME: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0484030Z DOCKER_BUILD_DIR: .ci/docker 2024-08-06T20:20:33.0484409Z DOCKER_REGISTRY: 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.0484807Z ##[endgroup] 2024-08-06T20:20:33.0512038Z + [[ ! -d .ci/docker ]] 2024-08-06T20:20:33.0512345Z + [[ ! -f .ci/docker/build.sh ]] 2024-08-06T20:20:33.0512642Z + echo skip=false 2024-08-06T20:20:33.0513646Z + [[ 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 == *\3\0\8\5\3\5\3\8\5\1\1\4\.\d\k\r\.\e\c\r\.\u\s\-\e\a\s\t\-\1\.\a\m\a\z\o\n\a\w\s\.\c\o\m\/\p\y\t\o\r\c\h* ]] 2024-08-06T20:20:33.0519873Z ++ echo 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0520859Z ++ awk -F '[:,]' '{print $2}' 2024-08-06T20:20:33.0688254Z + DOCKER_TAG=02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0689003Z + echo docker-tag=02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0690424Z + echo docker-image=308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0724268Z ##[group]Run set +e 2024-08-06T20:20:33.0724627Z set +e 2024-08-06T20:20:33.0724858Z set -x 2024-08-06T20:20:33.0725091Z  2024-08-06T20:20:33.0725316Z login() { 2024-08-06T20:20:33.0725796Z  aws ecr get-login-password --region us-east-1 | docker login -u AWS --password-stdin "$1" 2024-08-06T20:20:33.0726336Z } 2024-08-06T20:20:33.0726556Z  2024-08-06T20:20:33.0726762Z retry () { 2024-08-06T20:20:33.0727058Z  $* || (sleep 1 && $*) || (sleep 2 && $*) 2024-08-06T20:20:33.0727387Z } 2024-08-06T20:20:33.0727596Z  2024-08-06T20:20:33.0727836Z retry login "${DOCKER_REGISTRY}" 2024-08-06T20:20:33.0728147Z  2024-08-06T20:20:33.0728493Z # Check if image already exists, if it does then skip building it 2024-08-06T20:20:33.0729005Z if docker manifest inspect "${DOCKER_IMAGE}"; then 2024-08-06T20:20:33.0729401Z  exit 0 2024-08-06T20:20:33.0729624Z fi 2024-08-06T20:20:33.0729841Z  2024-08-06T20:20:33.0730189Z # NB: This part requires a full checkout. Otherwise, the merge base will 2024-08-06T20:20:33.0730780Z # be empty. The default action would be to continue rebuild the image 2024-08-06T20:20:33.0731314Z if [[ "$BASE_REVISION" = "$(git rev-parse HEAD)" ]]; then 2024-08-06T20:20:33.0731787Z  # if we're on the base branch then use the parent commit 2024-08-06T20:20:33.0732199Z  MERGE_BASE=$(git rev-parse HEAD~) 2024-08-06T20:20:33.0732532Z else 2024-08-06T20:20:33.0732872Z  # otherwise we're on a PR, so use the most recent base commit 2024-08-06T20:20:33.0733354Z  MERGE_BASE=$(git merge-base HEAD "$BASE_REVISION") 2024-08-06T20:20:33.0733733Z fi 2024-08-06T20:20:33.0733955Z  2024-08-06T20:20:33.0734189Z if [[ -z "${MERGE_BASE}" ]]; then 2024-08-06T20:20:33.0734764Z  echo "rebuild=true" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0735225Z  2024-08-06T20:20:33.0735707Z  echo "Finding merge base only works with full checkout, please set fetch-depth to 0, continuing ..." 2024-08-06T20:20:33.0736291Z  exit 0 2024-08-06T20:20:33.0736530Z fi 2024-08-06T20:20:33.0736735Z  2024-08-06T20:20:33.0737049Z if ! git rev-parse "${MERGE_BASE}:${DOCKER_BUILD_DIR}"; then 2024-08-06T20:20:33.0737770Z  echo "Directory '${DOCKER_BUILD_DIR}' not found in commit $MERGE_BASE, you should rebase onto a more recent commit" 2024-08-06T20:20:33.0738368Z  exit 1 2024-08-06T20:20:33.0738601Z fi 2024-08-06T20:20:33.0738820Z  2024-08-06T20:20:33.0739186Z PREVIOUS_DOCKER_TAG=$(git rev-parse "${MERGE_BASE}:${DOCKER_BUILD_DIR}") 2024-08-06T20:20:33.0739874Z # If no image exists but the hash is the same as the previous hash then we should error out here 2024-08-06T20:20:33.0740503Z if [[ "${PREVIOUS_DOCKER_TAG}" == "${DOCKER_TAG}" ]]; then 2024-08-06T20:20:33.0741211Z  echo "WARNING: Something has gone wrong and the previous image isn't available for the merge-base of your branch" 2024-08-06T20:20:33.0742000Z  echo " Will re-build docker image to store in local cache, TTS may be longer" 2024-08-06T20:20:33.0742481Z fi 2024-08-06T20:20:33.0742709Z  2024-08-06T20:20:33.0743117Z echo "rebuild=true" >> "${GITHUB_OUTPUT}" 2024-08-06T20:20:33.0749166Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:33.0749566Z env: 2024-08-06T20:20:33.0749779Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:33.0750069Z DOCKER_BUILD_DIR: .ci/docker 2024-08-06T20:20:33.0750423Z BASE_REVISION: 1736af7cf736184c356be1bb00f59fb2feea6d7d 2024-08-06T20:20:33.0751240Z DOCKER_IMAGE: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0752080Z DOCKER_TAG: 02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.0752546Z DOCKER_REGISTRY: 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.0752937Z ##[endgroup] 2024-08-06T20:20:33.0777991Z + retry login 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.0778470Z + login 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.0781257Z + aws ecr get-login-password --region us-east-1 2024-08-06T20:20:33.0782286Z + docker login -u AWS --password-stdin 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.6607331Z WARNING! Your password will be stored unencrypted in /home/ec2-user/.docker/config.json. 2024-08-06T20:20:33.6608320Z Configure a credential helper to remove this warning. See 2024-08-06T20:20:33.6609157Z https://docs.docker.com/engine/reference/commandline/login/#credentials-store 2024-08-06T20:20:33.6609611Z 2024-08-06T20:20:33.6609713Z Login Succeeded 2024-08-06T20:20:33.6621831Z + docker manifest inspect 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.9284657Z { 2024-08-06T20:20:33.9285073Z "schemaVersion": 2, 2024-08-06T20:20:33.9285687Z "mediaType": "application/vnd.docker.distribution.manifest.v2+json", 2024-08-06T20:20:33.9286177Z "config": { 2024-08-06T20:20:33.9286824Z "mediaType": "application/vnd.docker.container.image.v1+json", 2024-08-06T20:20:33.9287464Z "size": 43414, 2024-08-06T20:20:33.9288013Z "digest": "sha256:7572c787a966437be85abe02d1578158976ce242058ff35a46097c5cce747b65" 2024-08-06T20:20:33.9288766Z }, 2024-08-06T20:20:33.9289061Z "layers": [ 2024-08-06T20:20:33.9289370Z { 2024-08-06T20:20:33.9289859Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9290477Z "size": 28584223, 2024-08-06T20:20:33.9291105Z "digest": "sha256:560c024910bebac6b404791af28ebd48a8289303b8377d17b67ffdfe52754f2a" 2024-08-06T20:20:33.9292230Z }, 2024-08-06T20:20:33.9292502Z { 2024-08-06T20:20:33.9293004Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9293646Z "size": 1822, 2024-08-06T20:20:33.9294274Z "digest": "sha256:5536cf60f3353cab34bbce66124d23c38fe8dac18bca4bca3ae2631b6b85a81f" 2024-08-06T20:20:33.9295103Z }, 2024-08-06T20:20:33.9295387Z { 2024-08-06T20:20:33.9295848Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9296485Z "size": 313380106, 2024-08-06T20:20:33.9297200Z "digest": "sha256:2d2a994403d33421760be4f1c2a243befab9a77b80f68a65c0f32711ab782878" 2024-08-06T20:20:33.9297800Z }, 2024-08-06T20:20:33.9298012Z { 2024-08-06T20:20:33.9298358Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9298784Z "size": 803, 2024-08-06T20:20:33.9299222Z "digest": "sha256:8bb2baf0f93788d32f2ce037b906658b4e4c87afbfef932480cda3e691b7cb97" 2024-08-06T20:20:33.9299718Z }, 2024-08-06T20:20:33.9299921Z { 2024-08-06T20:20:33.9300272Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9300961Z "size": 79404549, 2024-08-06T20:20:33.9301570Z "digest": "sha256:2a29c47c7450141d488fe7bc16ac331ccb66ed16b6cc9d19793e203fe096e060" 2024-08-06T20:20:33.9302427Z }, 2024-08-06T20:20:33.9302615Z { 2024-08-06T20:20:33.9302966Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9303403Z "size": 545, 2024-08-06T20:20:33.9303990Z "digest": "sha256:60ae3239e75d1461d147ab3bd69c1217afd55cb29100779a14a085e7fbaaf908" 2024-08-06T20:20:33.9304481Z }, 2024-08-06T20:20:33.9304682Z { 2024-08-06T20:20:33.9305008Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9305455Z "size": 1279, 2024-08-06T20:20:33.9305805Z + exit 0 2024-08-06T20:20:33.9306190Z "digest": "sha256:0e2a419f6d38f0e1b868e461361c2e677838793270624db20324ce4825489f34" 2024-08-06T20:20:33.9306672Z }, 2024-08-06T20:20:33.9306883Z { 2024-08-06T20:20:33.9307209Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9307654Z "size": 484, 2024-08-06T20:20:33.9308074Z "digest": "sha256:2f7615e08b2618517ad5b82973ab0657af282736064d1a6e7f1abb49924a19f9" 2024-08-06T20:20:33.9308553Z }, 2024-08-06T20:20:33.9308756Z { 2024-08-06T20:20:33.9309095Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9309512Z "size": 110, 2024-08-06T20:20:33.9309946Z "digest": "sha256:5231e76a47c795a4aa5d6b401accab9c3a1d79e4722383f9d16655103283ad44" 2024-08-06T20:20:33.9310443Z }, 2024-08-06T20:20:33.9310634Z { 2024-08-06T20:20:33.9310974Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9311406Z "size": 3681, 2024-08-06T20:20:33.9311820Z "digest": "sha256:32d63b5acf81c170d93242ccf5214bdae2cf3c37952bc183ea361a9e78f32266" 2024-08-06T20:20:33.9312322Z }, 2024-08-06T20:20:33.9312525Z { 2024-08-06T20:20:33.9312855Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9313292Z "size": 1909, 2024-08-06T20:20:33.9313727Z "digest": "sha256:e9f6f1ca5fb088cd0bb3f4c12f4dd454f89f6df793ab507c9a84a656ffd35680" 2024-08-06T20:20:33.9314213Z }, 2024-08-06T20:20:33.9314423Z { 2024-08-06T20:20:33.9314762Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9315177Z "size": 701, 2024-08-06T20:20:33.9315601Z "digest": "sha256:5715243311bd88bfc926449cd5053e50aedd515572c986c781e2db9a4c0c8991" 2024-08-06T20:20:33.9316085Z }, 2024-08-06T20:20:33.9316277Z { 2024-08-06T20:20:33.9316620Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9317042Z "size": 2585794277, 2024-08-06T20:20:33.9317481Z "digest": "sha256:2ac7d65122e50a4f8b57ad3176545ff639459cb73d978104e0a7a29a5447bb07" 2024-08-06T20:20:33.9317978Z }, 2024-08-06T20:20:33.9318166Z { 2024-08-06T20:20:33.9318505Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9319051Z "size": 32, 2024-08-06T20:20:33.9319468Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9319972Z }, 2024-08-06T20:20:33.9320180Z { 2024-08-06T20:20:33.9320503Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9320931Z "size": 380, 2024-08-06T20:20:33.9321362Z "digest": "sha256:6b61f599dafaa81f81469e1cdad5530f9ad3df687599ef13dd3bfdcba41886f6" 2024-08-06T20:20:33.9321848Z }, 2024-08-06T20:20:33.9322051Z { 2024-08-06T20:20:33.9322385Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9322803Z "size": 104, 2024-08-06T20:20:33.9323222Z "digest": "sha256:1f11bb841d2a98bd7348d3b8979dbc18b2b355b41f71338c63d0ea29fbfa9f33" 2024-08-06T20:20:33.9323715Z }, 2024-08-06T20:20:33.9323899Z { 2024-08-06T20:20:33.9324235Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9324669Z "size": 230, 2024-08-06T20:20:33.9325082Z "digest": "sha256:fab16dc9bed3dc0912065243712962b5532f709db4ecbaedf053f7cf7784abd3" 2024-08-06T20:20:33.9325578Z }, 2024-08-06T20:20:33.9325790Z { 2024-08-06T20:20:33.9326120Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9326554Z "size": 2912841, 2024-08-06T20:20:33.9326983Z "digest": "sha256:4702c9016e32c1c7537c912b32d5bd945d00e788a611606a630e92ecfe45fc5c" 2024-08-06T20:20:33.9327445Z }, 2024-08-06T20:20:33.9327641Z { 2024-08-06T20:20:33.9328074Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9328501Z "size": 1805, 2024-08-06T20:20:33.9328938Z "digest": "sha256:4578fa00ba8af1b2eadd5dddca3885a4b528ceef846c7a5bc814bed061ae54f7" 2024-08-06T20:20:33.9329443Z }, 2024-08-06T20:20:33.9329633Z { 2024-08-06T20:20:33.9329969Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9330407Z "size": 105, 2024-08-06T20:20:33.9330834Z "digest": "sha256:5e0b7a7387b14484830472fd831949c23407afcb4eeac47a29057fce6c29b966" 2024-08-06T20:20:33.9331322Z }, 2024-08-06T20:20:33.9331511Z { 2024-08-06T20:20:33.9331850Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9332283Z "size": 563, 2024-08-06T20:20:33.9332697Z "digest": "sha256:3b12a15a2dd87d5515712a76fc832f7b7b47e2a5e9f8ccc96ca24159312591a0" 2024-08-06T20:20:33.9333184Z }, 2024-08-06T20:20:33.9333393Z { 2024-08-06T20:20:33.9333727Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9334161Z "size": 32, 2024-08-06T20:20:33.9334586Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9335204Z }, 2024-08-06T20:20:33.9335415Z { 2024-08-06T20:20:33.9335761Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9336190Z "size": 104, 2024-08-06T20:20:33.9336621Z "digest": "sha256:efc9e54882bafea71db06828b216c5077aa06139662454fc8483ce7a977e6a2d" 2024-08-06T20:20:33.9337123Z }, 2024-08-06T20:20:33.9337317Z { 2024-08-06T20:20:33.9337650Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9338079Z "size": 504, 2024-08-06T20:20:33.9338494Z "digest": "sha256:bbcce21dddee149606b4c0775fb99193daab8c54752b227e57590adb5cf06327" 2024-08-06T20:20:33.9338985Z }, 2024-08-06T20:20:33.9339179Z { 2024-08-06T20:20:33.9339508Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9339944Z "size": 121478476, 2024-08-06T20:20:33.9340386Z "digest": "sha256:0ffc6f4509fe9f64fd79a9fa4fb340f1c9c0fae94b93e820b91c59626ff8fd01" 2024-08-06T20:20:33.9340865Z }, 2024-08-06T20:20:33.9341060Z { 2024-08-06T20:20:33.9341390Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9341806Z "size": 109, 2024-08-06T20:20:33.9342231Z "digest": "sha256:c43dca7e37c0de34f90f99bfb68ce3e73a21bf118f4450d15491cfff0443cfe6" 2024-08-06T20:20:33.9342829Z }, 2024-08-06T20:20:33.9343018Z { 2024-08-06T20:20:33.9343356Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9343784Z "size": 489, 2024-08-06T20:20:33.9344193Z "digest": "sha256:380952bfb408997e576cde3e55c9b91190786bef90c7f9a545a73df50d34df44" 2024-08-06T20:20:33.9344676Z }, 2024-08-06T20:20:33.9344866Z { 2024-08-06T20:20:33.9345208Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9345639Z "size": 376, 2024-08-06T20:20:33.9346050Z "digest": "sha256:ceb2379cb498e47101adf29eda0997a20467d7eeb84edf01796bedd3d73459a9" 2024-08-06T20:20:33.9346545Z }, 2024-08-06T20:20:33.9346744Z { 2024-08-06T20:20:33.9347065Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9347494Z "size": 103, 2024-08-06T20:20:33.9347912Z "digest": "sha256:62a07c6fa5fcb74cb108417ed17cb0163340be080dbfc4b9d354e42870f4ba49" 2024-08-06T20:20:33.9348392Z }, 2024-08-06T20:20:33.9348592Z { 2024-08-06T20:20:33.9348926Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9349341Z "size": 1473, 2024-08-06T20:20:33.9349773Z "digest": "sha256:8b5570c513a9ec392b38efe96ad40e1e2fa2ceb0705deb503d983ee0cbbff2b0" 2024-08-06T20:20:33.9350261Z }, 2024-08-06T20:20:33.9350445Z { 2024-08-06T20:20:33.9350782Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9351209Z "size": 451344161, 2024-08-06T20:20:33.9351718Z "digest": "sha256:88d03497075ed1dabc47bb6ef8d57c159f33c60d0a86112cb17950c625dbb28c" 2024-08-06T20:20:33.9352217Z }, 2024-08-06T20:20:33.9352419Z { 2024-08-06T20:20:33.9352741Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9353177Z "size": 159, 2024-08-06T20:20:33.9353606Z "digest": "sha256:39d053a85f7c4cfa8f6304a09a7dfd8a75d1bdf5155ff2becc6d52ec439b670d" 2024-08-06T20:20:33.9354085Z }, 2024-08-06T20:20:33.9354288Z { 2024-08-06T20:20:33.9354621Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9355036Z "size": 2210, 2024-08-06T20:20:33.9355456Z "digest": "sha256:04f7d0566845f5541998f6d694c32d4a5f28ed3eeb44ed7c8fb2244987ba627b" 2024-08-06T20:20:33.9355937Z }, 2024-08-06T20:20:33.9356121Z { 2024-08-06T20:20:33.9356457Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9356888Z "size": 152, 2024-08-06T20:20:33.9357292Z "digest": "sha256:87202a98d13193304d79038eade1774f266ed90cdd19043ece314ab9cd2b7be9" 2024-08-06T20:20:33.9357783Z }, 2024-08-06T20:20:33.9357979Z { 2024-08-06T20:20:33.9358300Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9358731Z "size": 647, 2024-08-06T20:20:33.9359135Z "digest": "sha256:3d149566d7ff3080783ad2df6ea2460a5045e869982cbe123b85ebffb7c77ceb" 2024-08-06T20:20:33.9359617Z }, 2024-08-06T20:20:33.9359818Z { 2024-08-06T20:20:33.9360141Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9360574Z "size": 32, 2024-08-06T20:20:33.9361000Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9361479Z }, 2024-08-06T20:20:33.9361686Z { 2024-08-06T20:20:33.9362031Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9362452Z "size": 163, 2024-08-06T20:20:33.9363144Z "digest": "sha256:18983ac58952bdcdd130de9a58f69766a20fde41b806debe147b64c631c9a908" 2024-08-06T20:20:33.9363652Z }, 2024-08-06T20:20:33.9363843Z { 2024-08-06T20:20:33.9364182Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9364615Z "size": 109, 2024-08-06T20:20:33.9365023Z "digest": "sha256:d1f3066e929d60eae97b465e9769c5b2d7cce1130a14bcd769ff18c28879e0c9" 2024-08-06T20:20:33.9365512Z }, 2024-08-06T20:20:33.9365709Z { 2024-08-06T20:20:33.9366032Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9366681Z "size": 102, 2024-08-06T20:20:33.9367133Z "digest": "sha256:a3cbced61652fcd0c3123ba63a41a1c8155f662c0bab9be651235aacfff0d314" 2024-08-06T20:20:33.9367620Z }, 2024-08-06T20:20:33.9367824Z { 2024-08-06T20:20:33.9368164Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9368589Z "size": 422, 2024-08-06T20:20:33.9369018Z "digest": "sha256:e5ca241cc120099bc20c3f1920e58adee0ea9c51d7737e355f9e86224f22b0ff" 2024-08-06T20:20:33.9369513Z }, 2024-08-06T20:20:33.9369707Z { 2024-08-06T20:20:33.9370054Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9370495Z "size": 32, 2024-08-06T20:20:33.9370910Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9371402Z }, 2024-08-06T20:20:33.9371611Z { 2024-08-06T20:20:33.9371938Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9372374Z "size": 111, 2024-08-06T20:20:33.9372812Z "digest": "sha256:2a68b738ffe12165eb788c7fbdaf40d8fc21860bc5b7d9a03aa6f135e4f2e0ab" 2024-08-06T20:20:33.9373292Z }, 2024-08-06T20:20:33.9373496Z { 2024-08-06T20:20:33.9373826Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9374254Z "size": 474, 2024-08-06T20:20:33.9374678Z "digest": "sha256:3767fa07553ab8d93e1a7b3ce8e636e12cfaba2c66cd5e3543472c9d29fcbc8a" 2024-08-06T20:20:33.9375229Z }, 2024-08-06T20:20:33.9375433Z { 2024-08-06T20:20:33.9375917Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9376335Z "size": 32, 2024-08-06T20:20:33.9376758Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9377249Z }, 2024-08-06T20:20:33.9377440Z { 2024-08-06T20:20:33.9377774Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9378205Z "size": 112, 2024-08-06T20:20:33.9378611Z "digest": "sha256:1367c503435c49ceb390a03d938b5aa2d986715e5950978ca5a32acf72cb654b" 2024-08-06T20:20:33.9379090Z }, 2024-08-06T20:20:33.9379287Z { 2024-08-06T20:20:33.9379609Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9380042Z "size": 563, 2024-08-06T20:20:33.9380454Z "digest": "sha256:3106fe3922267547aed6d4a190d673d351035f4b88c0301b6ffc05c7901fe8dc" 2024-08-06T20:20:33.9380920Z }, 2024-08-06T20:20:33.9381119Z { 2024-08-06T20:20:33.9381455Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9381874Z "size": 43148059, 2024-08-06T20:20:33.9382308Z "digest": "sha256:e673200c085d29e77084bef4d357c23a517922baebceb2f0ed0dbbdbbda8c5e3" 2024-08-06T20:20:33.9382794Z }, 2024-08-06T20:20:33.9382986Z { 2024-08-06T20:20:33.9383316Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9383742Z "size": 106, 2024-08-06T20:20:33.9384150Z "digest": "sha256:734e3d036d23ceadfc624d4800115dc0155de41d8fc796b6384b30ad313f5407" 2024-08-06T20:20:33.9384639Z }, 2024-08-06T20:20:33.9384835Z { 2024-08-06T20:20:33.9385163Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9385650Z "size": 294, 2024-08-06T20:20:33.9386078Z "digest": "sha256:d7ff8fb3636bcf2c32cc5a39218ff7234163648b36520c630a5936eea006ab53" 2024-08-06T20:20:33.9386550Z }, 2024-08-06T20:20:33.9386750Z { 2024-08-06T20:20:33.9387093Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9387513Z "size": 32, 2024-08-06T20:20:33.9387937Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9388427Z }, 2024-08-06T20:20:33.9388609Z { 2024-08-06T20:20:33.9388940Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9389354Z "size": 106, 2024-08-06T20:20:33.9389773Z "digest": "sha256:1cce4640fddce320c32835af9319a54f5f28ea22c4b39114bb4cb16239d72028" 2024-08-06T20:20:33.9390354Z }, 2024-08-06T20:20:33.9390540Z { 2024-08-06T20:20:33.9390879Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9391312Z "size": 425, 2024-08-06T20:20:33.9391724Z "digest": "sha256:427d59d82d28af568ef990144a246b2522c9189da44da36bdca9c83abc767103" 2024-08-06T20:20:33.9392211Z }, 2024-08-06T20:20:33.9392408Z { 2024-08-06T20:20:33.9392732Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9393159Z "size": 20262042, 2024-08-06T20:20:33.9393593Z "digest": "sha256:411f34d6d581d441597919ddfea46ae9f5c05f0c9089e56ebe814cc458a2fbd0" 2024-08-06T20:20:33.9394064Z }, 2024-08-06T20:20:33.9394260Z { 2024-08-06T20:20:33.9394591Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9395010Z "size": 108, 2024-08-06T20:20:33.9395440Z "digest": "sha256:4d13e386b5bf3c6a8088cc4cdfe170ac94b65e7aa3a8eaceadfd17a25a739602" 2024-08-06T20:20:33.9395931Z }, 2024-08-06T20:20:33.9396119Z { 2024-08-06T20:20:33.9396450Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9396876Z "size": 439, 2024-08-06T20:20:33.9397284Z "digest": "sha256:0f9cdfa3c55df60f32863c499989f9cc17753c563a63b29f4f004670f1d53fd9" 2024-08-06T20:20:33.9397765Z }, 2024-08-06T20:20:33.9397965Z { 2024-08-06T20:20:33.9398292Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9398725Z "size": 701, 2024-08-06T20:20:33.9399216Z "digest": "sha256:5715243311bd88bfc926449cd5053e50aedd515572c986c781e2db9a4c0c8991" 2024-08-06T20:20:33.9399687Z }, 2024-08-06T20:20:33.9399885Z { 2024-08-06T20:20:33.9400217Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9400633Z "size": 142, 2024-08-06T20:20:33.9401049Z "digest": "sha256:cfbf800d7f896643807b5ebf93094c89d75f891602f97bb13f42a7eae3ec6914" 2024-08-06T20:20:33.9401532Z }, 2024-08-06T20:20:33.9401717Z { 2024-08-06T20:20:33.9402055Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9402472Z "size": 135, 2024-08-06T20:20:33.9402887Z "digest": "sha256:31934c84f92c7a8f845ee088c73d0c375e9996ff5603e034ff0da258a99e1d62" 2024-08-06T20:20:33.9403362Z }, 2024-08-06T20:20:33.9403548Z { 2024-08-06T20:20:33.9403885Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9404317Z "size": 32, 2024-08-06T20:20:33.9404728Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9405225Z }, 2024-08-06T20:20:33.9405422Z { 2024-08-06T20:20:33.9405747Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9406181Z "size": 190, 2024-08-06T20:20:33.9406595Z "digest": "sha256:91254fa13f2599947661fa73b239a91f80ebb6c592a4d5188b55aaecea015547" 2024-08-06T20:20:33.9407063Z }, 2024-08-06T20:20:33.9407269Z { 2024-08-06T20:20:33.9407601Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9408026Z "size": 1212, 2024-08-06T20:20:33.9408451Z "digest": "sha256:13d99bf6f0744ac0c61b926053a038c1a56f2c854b73a8c6a2b21a8dbc704fcf" 2024-08-06T20:20:33.9408934Z }, 2024-08-06T20:20:33.9409117Z { 2024-08-06T20:20:33.9409455Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9409879Z "size": 701, 2024-08-06T20:20:33.9410279Z "digest": "sha256:5715243311bd88bfc926449cd5053e50aedd515572c986c781e2db9a4c0c8991" 2024-08-06T20:20:33.9410758Z }, 2024-08-06T20:20:33.9410956Z { 2024-08-06T20:20:33.9411279Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9411707Z "size": 137, 2024-08-06T20:20:33.9412125Z "digest": "sha256:aa216cf24a5c81aee474b0c03d31383b6b2251ac4257b26b68a7997b1d97b174" 2024-08-06T20:20:33.9412597Z }, 2024-08-06T20:20:33.9412933Z { 2024-08-06T20:20:33.9413545Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9414192Z "size": 32, 2024-08-06T20:20:33.9414700Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9415416Z }, 2024-08-06T20:20:33.9415717Z { 2024-08-06T20:20:33.9416141Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9416681Z "size": 153, 2024-08-06T20:20:33.9417197Z "digest": "sha256:8a75636074ed6d643459275efdbb311aa6043a223eb4e6a4f70f07d518410312" 2024-08-06T20:20:33.9417762Z }, 2024-08-06T20:20:33.9418060Z { 2024-08-06T20:20:33.9418498Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9419004Z "size": 848, 2024-08-06T20:20:33.9419533Z "digest": "sha256:bc60d0ee2efa37210cf919b215d6eed40479cc312d009f02f029019849378b3c" 2024-08-06T20:20:33.9420114Z }, 2024-08-06T20:20:33.9445645Z { 2024-08-06T20:20:33.9446266Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9446856Z "size": 701, 2024-08-06T20:20:33.9447454Z "digest": "sha256:5715243311bd88bfc926449cd5053e50aedd515572c986c781e2db9a4c0c8991" 2024-08-06T20:20:33.9448157Z }, 2024-08-06T20:20:33.9448454Z { 2024-08-06T20:20:33.9448965Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9449591Z "size": 139, 2024-08-06T20:20:33.9450237Z "digest": "sha256:d7b6bfdc4ac481494910e7375b1d7765e61101befb89c12cdfeeb22c3e4711a5" 2024-08-06T20:20:33.9450977Z }, 2024-08-06T20:20:33.9451271Z { 2024-08-06T20:20:33.9452039Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9452714Z "size": 32, 2024-08-06T20:20:33.9453317Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9454018Z }, 2024-08-06T20:20:33.9454323Z { 2024-08-06T20:20:33.9454870Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9455589Z "size": 158, 2024-08-06T20:20:33.9456220Z "digest": "sha256:362577cee7200295830cc17230f5d0ae7423ba924269513822f2e97277a61f1d" 2024-08-06T20:20:33.9457084Z }, 2024-08-06T20:20:33.9457295Z { 2024-08-06T20:20:33.9457625Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9458061Z "size": 908, 2024-08-06T20:20:33.9458493Z "digest": "sha256:dd997f1a9a7a1ad6f0aed34be6770334fe6bcd72a90a342eb925a85addc505ca" 2024-08-06T20:20:33.9458979Z }, 2024-08-06T20:20:33.9459178Z { 2024-08-06T20:20:33.9459503Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9459943Z "size": 701, 2024-08-06T20:20:33.9460364Z "digest": "sha256:5715243311bd88bfc926449cd5053e50aedd515572c986c781e2db9a4c0c8991" 2024-08-06T20:20:33.9460828Z }, 2024-08-06T20:20:33.9461029Z { 2024-08-06T20:20:33.9461363Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9461779Z "size": 134, 2024-08-06T20:20:33.9462205Z "digest": "sha256:e1b7d62c8da3a9809e65ec1561d0bf2c9f4cb1d46b2495c6a83c835df2ed1b7e" 2024-08-06T20:20:33.9462703Z }, 2024-08-06T20:20:33.9463111Z { 2024-08-06T20:20:33.9463456Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9463889Z "size": 32, 2024-08-06T20:20:33.9464299Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9464796Z }, 2024-08-06T20:20:33.9464994Z { 2024-08-06T20:20:33.9465312Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9465744Z "size": 156, 2024-08-06T20:20:33.9466168Z "digest": "sha256:5b5ac0963a87f14795f6cc3e918f6505c1175f3b4f81bac89fbd37bbba385881" 2024-08-06T20:20:33.9466643Z }, 2024-08-06T20:20:33.9466846Z { 2024-08-06T20:20:33.9467179Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9467594Z "size": 1579, 2024-08-06T20:20:33.9468017Z "digest": "sha256:0926e4f103f36ebfbeaae0be346a2e7797d7462155903fe231c854aade1edb77" 2024-08-06T20:20:33.9468506Z }, 2024-08-06T20:20:33.9468961Z { 2024-08-06T20:20:33.9469303Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9469733Z "size": 32, 2024-08-06T20:20:33.9470144Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9470636Z }, 2024-08-06T20:20:33.9470834Z { 2024-08-06T20:20:33.9471154Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9471586Z "size": 128, 2024-08-06T20:20:33.9472023Z "digest": "sha256:f29ef8d2e14ddfce63e017f9d01d5565bd774e81d7f47fe7540a2aad3db2f92e" 2024-08-06T20:20:33.9472502Z }, 2024-08-06T20:20:33.9472703Z { 2024-08-06T20:20:33.9473024Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9473453Z "size": 379, 2024-08-06T20:20:33.9473877Z "digest": "sha256:a1f65f5ee1b9e2a0b50e542115a4fb4c40d74af180e677b7564364af570e3bb6" 2024-08-06T20:20:33.9474348Z }, 2024-08-06T20:20:33.9474548Z { 2024-08-06T20:20:33.9474888Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9475303Z "size": 32, 2024-08-06T20:20:33.9475724Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9476212Z }, 2024-08-06T20:20:33.9476394Z { 2024-08-06T20:20:33.9476728Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9477156Z "size": 104, 2024-08-06T20:20:33.9477558Z "digest": "sha256:b612a56e3264a78b894344fe08c85d8ca5def27c59682d0a8a05280f03ac03c1" 2024-08-06T20:20:33.9478149Z }, 2024-08-06T20:20:33.9478355Z { 2024-08-06T20:20:33.9478675Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9479105Z "size": 1841, 2024-08-06T20:20:33.9479522Z "digest": "sha256:7586204541024fd269c979c13158bd840eecbb24c8200c03a33d1c4112dc079e" 2024-08-06T20:20:33.9479982Z }, 2024-08-06T20:20:33.9480183Z { 2024-08-06T20:20:33.9480523Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9480946Z "size": 7529636, 2024-08-06T20:20:33.9481372Z "digest": "sha256:53bc8a6759fcb58e6e15b36e1d754da0417d69a313cfe53f0d498923fa31c06d" 2024-08-06T20:20:33.9481857Z }, 2024-08-06T20:20:33.9482039Z { 2024-08-06T20:20:33.9482368Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9482794Z "size": 106, 2024-08-06T20:20:33.9483194Z "digest": "sha256:df484cabb091817a184cbff78cd30b37308f0676f888a1058591103661359092" 2024-08-06T20:20:33.9483674Z }, 2024-08-06T20:20:33.9483876Z { 2024-08-06T20:20:33.9484194Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9484621Z "size": 164, 2024-08-06T20:20:33.9485048Z "digest": "sha256:c6845d12fa9cf399f5183a45e75edde15eb9d4adde3920eb32e6c330e912fb0b" 2024-08-06T20:20:33.9485525Z }, 2024-08-06T20:20:33.9485719Z { 2024-08-06T20:20:33.9486061Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9486480Z "size": 7944, 2024-08-06T20:20:33.9486908Z "digest": "sha256:753c44cee6e1f1bf167d235a71aeade5a6762991dc8eb28f5c8c48460a2f30e9" 2024-08-06T20:20:33.9487403Z }, 2024-08-06T20:20:33.9487591Z { 2024-08-06T20:20:33.9487922Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9488336Z "size": 8067, 2024-08-06T20:20:33.9488757Z "digest": "sha256:44405015d60832892b4846efcae8ac22b0e45dee5522ce2f259dfb2cb07b219a" 2024-08-06T20:20:33.9489239Z }, 2024-08-06T20:20:33.9489424Z { 2024-08-06T20:20:33.9489761Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9490186Z "size": 301, 2024-08-06T20:20:33.9490595Z "digest": "sha256:c4f46162314640b03c3abb7bb1eac99fd16bb002668abb80824661675e2ee79e" 2024-08-06T20:20:33.9491080Z }, 2024-08-06T20:20:33.9491276Z { 2024-08-06T20:20:33.9491603Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9492030Z "size": 32, 2024-08-06T20:20:33.9492539Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9493021Z }, 2024-08-06T20:20:33.9493224Z { 2024-08-06T20:20:33.9493565Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9493985Z "size": 108, 2024-08-06T20:20:33.9494403Z "digest": "sha256:6acbdc2527c9c427993060927e64e711d53a60280d67883952e995257a31abe9" 2024-08-06T20:20:33.9494876Z }, 2024-08-06T20:20:33.9495166Z { 2024-08-06T20:20:33.9495518Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9495952Z "size": 54145774, 2024-08-06T20:20:33.9496377Z "digest": "sha256:82264f8de02acc48e8335869bcd920e2327c637515a5a11dad8da6d2cb6c9294" 2024-08-06T20:20:33.9496862Z }, 2024-08-06T20:20:33.9497062Z { 2024-08-06T20:20:33.9497391Z "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip", 2024-08-06T20:20:33.9497818Z "size": 32, 2024-08-06T20:20:33.9498239Z "digest": "sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1" 2024-08-06T20:20:33.9498720Z } 2024-08-06T20:20:33.9498921Z ] 2024-08-06T20:20:33.9499117Z } 2024-08-06T20:20:33.9573263Z ##[group]Run tag=${ECR_DOCKER_IMAGE##*/} 2024-08-06T20:20:33.9573666Z tag=${ECR_DOCKER_IMAGE##*/} 2024-08-06T20:20:33.9574082Z echo "docker pull ghcr.io/pytorch/ci-image:${tag/:/-}" 2024-08-06T20:20:33.9580076Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:33.9580466Z env: 2024-08-06T20:20:33.9580692Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:33.9581436Z ECR_DOCKER_IMAGE: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.9582202Z ##[endgroup] 2024-08-06T20:20:33.9608864Z docker pull ghcr.io/pytorch/ci-image:pytorch-linux-focal-py3.12-clang10-02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.9662666Z ##[group]Run pytorch/test-infra/.github/actions/pull-docker-image@main 2024-08-06T20:20:33.9663416Z with: 2024-08-06T20:20:33.9664088Z docker-image: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.9664961Z docker-registry: 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.9665365Z env: 2024-08-06T20:20:33.9665575Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:33.9665847Z ##[endgroup] 2024-08-06T20:20:33.9694877Z ##[group]Run set -x 2024-08-06T20:20:33.9695306Z set -x 2024-08-06T20:20:33.9695532Z set +e 2024-08-06T20:20:33.9695762Z  2024-08-06T20:20:33.9695980Z login() { 2024-08-06T20:20:33.9696465Z  aws ecr get-login-password --region us-east-1 | docker login -u AWS --password-stdin "$1" 2024-08-06T20:20:33.9697008Z } 2024-08-06T20:20:33.9697234Z  2024-08-06T20:20:33.9697505Z retry () { 2024-08-06T20:20:33.9697920Z  $* || (sleep 1 && $*) || (sleep 2 && $*) 2024-08-06T20:20:33.9698264Z } 2024-08-06T20:20:33.9698486Z  2024-08-06T20:20:33.9698719Z retry login "${DOCKER_REGISTRY}" 2024-08-06T20:20:33.9699040Z  2024-08-06T20:20:33.9699254Z set -e 2024-08-06T20:20:33.9699595Z # ignore output since only exit code is used for conditional 2024-08-06T20:20:33.9700107Z # only pull docker image if it's not available locally 2024-08-06T20:20:33.9700676Z if ! docker inspect --type=image "${DOCKER_IMAGE}" >/dev/null 2>/dev/null; then 2024-08-06T20:20:33.9701185Z  retry docker pull "${DOCKER_IMAGE}" 2024-08-06T20:20:33.9701525Z fi 2024-08-06T20:20:33.9707310Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:20:33.9707688Z env: 2024-08-06T20:20:33.9707909Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:20:33.9708645Z DOCKER_IMAGE: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:33.9709687Z DOCKER_REGISTRY: 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.9710077Z ##[endgroup] 2024-08-06T20:20:33.9734358Z + set +e 2024-08-06T20:20:33.9734741Z + retry login 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.9735272Z + login 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:33.9738654Z + aws ecr get-login-password --region us-east-1 2024-08-06T20:20:33.9739741Z + docker login -u AWS --password-stdin 308535385114.dkr.ecr.us-east-1.amazonaws.com 2024-08-06T20:20:34.5596757Z WARNING! Your password will be stored unencrypted in /home/ec2-user/.docker/config.json. 2024-08-06T20:20:34.5597421Z Configure a credential helper to remove this warning. See 2024-08-06T20:20:34.5598192Z https://docs.docker.com/engine/reference/commandline/login/#credentials-store 2024-08-06T20:20:34.5598675Z 2024-08-06T20:20:34.5598778Z Login Succeeded 2024-08-06T20:20:34.5610753Z + set -e 2024-08-06T20:20:34.5611530Z + docker inspect --type=image 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:34.5743590Z + retry docker pull 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:34.5744867Z + docker pull 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:20:34.7982353Z 02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9: Pulling from pytorch/pytorch-linux-focal-py3.12-clang10 2024-08-06T20:20:34.8002352Z 560c024910be: Pulling fs layer 2024-08-06T20:20:34.8004662Z 5536cf60f335: Pulling fs layer 2024-08-06T20:20:34.8006005Z 2d2a994403d3: Pulling fs layer 2024-08-06T20:20:34.8006716Z 8bb2baf0f937: Pulling fs layer 2024-08-06T20:20:34.8007245Z 2a29c47c7450: Pulling fs layer 2024-08-06T20:20:34.8008092Z 60ae3239e75d: Pulling fs layer 2024-08-06T20:20:34.8008567Z 0e2a419f6d38: Pulling fs layer 2024-08-06T20:20:34.8009122Z 2f7615e08b26: Pulling fs layer 2024-08-06T20:20:34.8009594Z 5231e76a47c7: Pulling fs layer 2024-08-06T20:20:34.8010104Z 32d63b5acf81: Pulling fs layer 2024-08-06T20:20:34.8010629Z e9f6f1ca5fb0: Pulling fs layer 2024-08-06T20:20:34.8011143Z 5715243311bd: Pulling fs layer 2024-08-06T20:20:34.8011618Z 2ac7d65122e5: Pulling fs layer 2024-08-06T20:20:34.8012119Z 4f4fb700ef54: Pulling fs layer 2024-08-06T20:20:34.8012589Z 6b61f599dafa: Pulling fs layer 2024-08-06T20:20:34.8013091Z 1f11bb841d2a: Pulling fs layer 2024-08-06T20:20:34.8013587Z fab16dc9bed3: Pulling fs layer 2024-08-06T20:20:34.8014135Z 2a29c47c7450: Waiting 2024-08-06T20:20:34.8014413Z 4702c9016e32: Pulling fs layer 2024-08-06T20:20:34.8014691Z 2f7615e08b26: Waiting 2024-08-06T20:20:34.8014936Z 4578fa00ba8a: Pulling fs layer 2024-08-06T20:20:34.8015284Z 60ae3239e75d: Waiting 2024-08-06T20:20:34.8015587Z 5231e76a47c7: Waiting 2024-08-06T20:20:34.8015874Z 5e0b7a7387b1: Pulling fs layer 2024-08-06T20:20:34.8016150Z 0e2a419f6d38: Waiting 2024-08-06T20:20:34.8016400Z 32d63b5acf81: Waiting 2024-08-06T20:20:34.8016715Z 3b12a15a2dd8: Pulling fs layer 2024-08-06T20:20:34.8016983Z e9f6f1ca5fb0: Waiting 2024-08-06T20:20:34.8017242Z fab16dc9bed3: Waiting 2024-08-06T20:20:34.8017576Z efc9e54882ba: Pulling fs layer 2024-08-06T20:20:34.8017864Z bbcce21dddee: Pulling fs layer 2024-08-06T20:20:34.8018207Z 0ffc6f4509fe: Pulling fs layer 2024-08-06T20:20:34.8018498Z c43dca7e37c0: Pulling fs layer 2024-08-06T20:20:34.8018770Z 8bb2baf0f937: Waiting 2024-08-06T20:20:34.8019026Z 380952bfb408: Pulling fs layer 2024-08-06T20:20:34.8019306Z 1f11bb841d2a: Waiting 2024-08-06T20:20:34.8019551Z ceb2379cb498: Pulling fs layer 2024-08-06T20:20:34.8019834Z 6b61f599dafa: Waiting 2024-08-06T20:20:34.8020068Z 2ac7d65122e5: Waiting 2024-08-06T20:20:34.8020324Z 62a07c6fa5fc: Pulling fs layer 2024-08-06T20:20:34.8020599Z 4702c9016e32: Waiting 2024-08-06T20:20:34.8020839Z 4f4fb700ef54: Waiting 2024-08-06T20:20:34.8021091Z 8b5570c513a9: Pulling fs layer 2024-08-06T20:20:34.8021537Z 5715243311bd: Waiting 2024-08-06T20:20:34.8021768Z 4578fa00ba8a: Waiting 2024-08-06T20:20:34.8022025Z 88d03497075e: Pulling fs layer 2024-08-06T20:20:34.8022307Z efc9e54882ba: Waiting 2024-08-06T20:20:34.8022546Z 5e0b7a7387b1: Waiting 2024-08-06T20:20:34.8022798Z bbcce21dddee: Waiting 2024-08-06T20:20:34.8023103Z 39d053a85f7c: Pulling fs layer 2024-08-06T20:20:34.8023389Z 3b12a15a2dd8: Waiting 2024-08-06T20:20:34.8023639Z c43dca7e37c0: Waiting 2024-08-06T20:20:34.8023939Z 380952bfb408: Waiting 2024-08-06T20:20:34.8024177Z 0ffc6f4509fe: Waiting 2024-08-06T20:20:34.8024439Z 04f7d0566845: Pulling fs layer 2024-08-06T20:20:34.8024774Z 8b5570c513a9: Waiting 2024-08-06T20:20:34.8025010Z 62a07c6fa5fc: Waiting 2024-08-06T20:20:34.8025272Z 87202a98d131: Pulling fs layer 2024-08-06T20:20:34.8025600Z 39d053a85f7c: Waiting 2024-08-06T20:20:34.8025880Z 04f7d0566845: Waiting 2024-08-06T20:20:34.8026154Z 88d03497075e: Waiting 2024-08-06T20:20:34.8026454Z 3d149566d7ff: Pulling fs layer 2024-08-06T20:20:34.8026741Z 87202a98d131: Waiting 2024-08-06T20:20:34.8027047Z 18983ac58952: Pulling fs layer 2024-08-06T20:20:34.8027328Z d1f3066e929d: Pulling fs layer 2024-08-06T20:20:34.8027623Z a3cbced61652: Pulling fs layer 2024-08-06T20:20:34.8027970Z e5ca241cc120: Pulling fs layer 2024-08-06T20:20:34.8028241Z 3d149566d7ff: Waiting 2024-08-06T20:20:34.8028558Z 2a68b738ffe1: Pulling fs layer 2024-08-06T20:20:34.8028843Z d1f3066e929d: Waiting 2024-08-06T20:20:34.8029089Z 3767fa07553a: Pulling fs layer 2024-08-06T20:20:34.8029429Z a3cbced61652: Waiting 2024-08-06T20:20:34.8029677Z e5ca241cc120: Waiting 2024-08-06T20:20:34.8029924Z 1367c503435c: Pulling fs layer 2024-08-06T20:20:34.8030255Z 2a68b738ffe1: Waiting 2024-08-06T20:20:34.8030505Z 3106fe392226: Pulling fs layer 2024-08-06T20:20:34.8030817Z 3767fa07553a: Waiting 2024-08-06T20:20:34.8031079Z e673200c085d: Pulling fs layer 2024-08-06T20:20:34.8031450Z 18983ac58952: Waiting 2024-08-06T20:20:34.8031916Z 734e3d036d23: Pulling fs layer 2024-08-06T20:20:34.8032197Z 3106fe392226: Waiting 2024-08-06T20:20:34.8032492Z e673200c085d: Waiting 2024-08-06T20:20:34.8032757Z d7ff8fb3636b: Pulling fs layer 2024-08-06T20:20:34.8033058Z 1367c503435c: Waiting 2024-08-06T20:20:34.8033336Z 1cce4640fddc: Pulling fs layer 2024-08-06T20:20:34.8033621Z 734e3d036d23: Waiting 2024-08-06T20:20:34.8033930Z 427d59d82d28: Pulling fs layer 2024-08-06T20:20:34.8034207Z 411f34d6d581: Pulling fs layer 2024-08-06T20:20:34.8034494Z 4d13e386b5bf: Pulling fs layer 2024-08-06T20:20:34.8034843Z 0f9cdfa3c55d: Pulling fs layer 2024-08-06T20:20:34.8035113Z 411f34d6d581: Waiting 2024-08-06T20:20:34.8035389Z 4d13e386b5bf: Waiting 2024-08-06T20:20:34.8035668Z cfbf800d7f89: Pulling fs layer 2024-08-06T20:20:34.8035938Z 1cce4640fddc: Waiting 2024-08-06T20:20:34.8036246Z 31934c84f92c: Pulling fs layer 2024-08-06T20:20:34.8036537Z 91254fa13f25: Pulling fs layer 2024-08-06T20:20:34.8036811Z 13d99bf6f074: Pulling fs layer 2024-08-06T20:20:34.8037153Z 91254fa13f25: Waiting 2024-08-06T20:20:34.8037402Z cfbf800d7f89: Waiting 2024-08-06T20:20:34.8037687Z aa216cf24a5c: Pulling fs layer 2024-08-06T20:20:34.8038071Z 31934c84f92c: Waiting 2024-08-06T20:20:34.8038331Z 8a75636074ed: Pulling fs layer 2024-08-06T20:20:34.8038673Z bc60d0ee2efa: Pulling fs layer 2024-08-06T20:20:34.8038968Z d7b6bfdc4ac4: Pulling fs layer 2024-08-06T20:20:34.8039288Z aa216cf24a5c: Waiting 2024-08-06T20:20:34.8039550Z 362577cee720: Pulling fs layer 2024-08-06T20:20:34.8039829Z bc60d0ee2efa: Waiting 2024-08-06T20:20:34.8040133Z dd997f1a9a7a: Pulling fs layer 2024-08-06T20:20:34.8040413Z 362577cee720: Waiting 2024-08-06T20:20:34.8040666Z e1b7d62c8da3: Pulling fs layer 2024-08-06T20:20:34.8040997Z dd997f1a9a7a: Waiting 2024-08-06T20:20:34.8041242Z e1b7d62c8da3: Waiting 2024-08-06T20:20:34.8041512Z 5b5ac0963a87: Pulling fs layer 2024-08-06T20:20:34.8041827Z 0926e4f103f3: Pulling fs layer 2024-08-06T20:20:34.8042119Z f29ef8d2e14d: Pulling fs layer 2024-08-06T20:20:34.8042461Z 0926e4f103f3: Waiting 2024-08-06T20:20:34.8042704Z f29ef8d2e14d: Waiting 2024-08-06T20:20:34.8043104Z a1f65f5ee1b9: Pulling fs layer 2024-08-06T20:20:34.8043417Z b612a56e3264: Pulling fs layer 2024-08-06T20:20:34.8043688Z 758620454102: Pulling fs layer 2024-08-06T20:20:34.8044034Z 53bc8a6759fc: Pulling fs layer 2024-08-06T20:20:34.8044360Z df484cabb091: Pulling fs layer 2024-08-06T20:20:34.8044679Z a1f65f5ee1b9: Waiting 2024-08-06T20:20:34.8044953Z 758620454102: Waiting 2024-08-06T20:20:34.8045205Z c6845d12fa9c: Pulling fs layer 2024-08-06T20:20:34.8045515Z b612a56e3264: Waiting 2024-08-06T20:20:34.8045773Z 753c44cee6e1: Pulling fs layer 2024-08-06T20:20:34.8046045Z 44405015d608: Pulling fs layer 2024-08-06T20:20:34.8046327Z c4f461623146: Pulling fs layer 2024-08-06T20:20:34.8046615Z 6acbdc2527c9: Pulling fs layer 2024-08-06T20:20:34.8046890Z 82264f8de02a: Pulling fs layer 2024-08-06T20:20:34.8047166Z 753c44cee6e1: Waiting 2024-08-06T20:20:34.8047408Z c4f461623146: Waiting 2024-08-06T20:20:34.8047646Z 6acbdc2527c9: Waiting 2024-08-06T20:20:34.8047895Z 44405015d608: Waiting 2024-08-06T20:20:34.8048146Z 53bc8a6759fc: Waiting 2024-08-06T20:20:34.8048379Z 82264f8de02a: Waiting 2024-08-06T20:20:34.8785738Z 5536cf60f335: Download complete 2024-08-06T20:20:34.9546093Z 8bb2baf0f937: Verifying Checksum 2024-08-06T20:20:34.9546660Z 8bb2baf0f937: Download complete 2024-08-06T20:20:35.1460172Z 560c024910be: Verifying Checksum 2024-08-06T20:20:35.1460617Z 560c024910be: Download complete 2024-08-06T20:20:35.2495276Z 60ae3239e75d: Download complete 2024-08-06T20:20:35.3218194Z 0e2a419f6d38: Verifying Checksum 2024-08-06T20:20:35.3218819Z 0e2a419f6d38: Download complete 2024-08-06T20:20:35.3991967Z 2f7615e08b26: Verifying Checksum 2024-08-06T20:20:35.3992562Z 2f7615e08b26: Download complete 2024-08-06T20:20:35.4827743Z 5231e76a47c7: Verifying Checksum 2024-08-06T20:20:35.4828300Z 5231e76a47c7: Download complete 2024-08-06T20:20:35.5683536Z 32d63b5acf81: Download complete 2024-08-06T20:20:35.6419716Z e9f6f1ca5fb0: Verifying Checksum 2024-08-06T20:20:35.6420283Z e9f6f1ca5fb0: Download complete 2024-08-06T20:20:35.7538312Z 5715243311bd: Download complete 2024-08-06T20:20:35.7992136Z 2a29c47c7450: Verifying Checksum 2024-08-06T20:20:35.7992663Z 2a29c47c7450: Download complete 2024-08-06T20:20:35.8088692Z 4f4fb700ef54: Verifying Checksum 2024-08-06T20:20:35.8089328Z 4f4fb700ef54: Download complete 2024-08-06T20:20:35.8890237Z 6b61f599dafa: Download complete 2024-08-06T20:20:35.9594721Z 1f11bb841d2a: Verifying Checksum 2024-08-06T20:20:35.9595305Z 1f11bb841d2a: Download complete 2024-08-06T20:20:36.0357948Z fab16dc9bed3: Verifying Checksum 2024-08-06T20:20:36.0358357Z fab16dc9bed3: Download complete 2024-08-06T20:20:36.0502674Z 560c024910be: Pull complete 2024-08-06T20:20:36.0676076Z 5536cf60f335: Pull complete 2024-08-06T20:20:36.1808236Z 4702c9016e32: Verifying Checksum 2024-08-06T20:20:36.1808612Z 4702c9016e32: Download complete 2024-08-06T20:20:36.2490171Z 4578fa00ba8a: Verifying Checksum 2024-08-06T20:20:36.2490603Z 4578fa00ba8a: Download complete 2024-08-06T20:20:36.3236238Z 5e0b7a7387b1: Verifying Checksum 2024-08-06T20:20:36.3236718Z 5e0b7a7387b1: Download complete 2024-08-06T20:20:36.3937926Z 3b12a15a2dd8: Verifying Checksum 2024-08-06T20:20:36.3938491Z 3b12a15a2dd8: Download complete 2024-08-06T20:20:36.5067055Z efc9e54882ba: Download complete 2024-08-06T20:20:36.5796623Z bbcce21dddee: Verifying Checksum 2024-08-06T20:20:36.5797195Z bbcce21dddee: Download complete 2024-08-06T20:20:37.8381063Z 0ffc6f4509fe: Verifying Checksum 2024-08-06T20:20:37.8381468Z 0ffc6f4509fe: Download complete 2024-08-06T20:20:37.9265972Z c43dca7e37c0: Verifying Checksum 2024-08-06T20:20:37.9266526Z c43dca7e37c0: Download complete 2024-08-06T20:20:37.9890499Z 380952bfb408: Download complete 2024-08-06T20:20:37.9926840Z 2d2a994403d3: Verifying Checksum 2024-08-06T20:20:37.9927391Z 2d2a994403d3: Download complete 2024-08-06T20:20:38.0630813Z ceb2379cb498: Verifying Checksum 2024-08-06T20:20:38.0631342Z ceb2379cb498: Download complete 2024-08-06T20:20:38.0650238Z 62a07c6fa5fc: Verifying Checksum 2024-08-06T20:20:38.0650791Z 62a07c6fa5fc: Download complete 2024-08-06T20:20:38.1368266Z 8b5570c513a9: Verifying Checksum 2024-08-06T20:20:38.1368877Z 8b5570c513a9: Download complete 2024-08-06T20:20:38.2179423Z 39d053a85f7c: Verifying Checksum 2024-08-06T20:20:38.2179954Z 39d053a85f7c: Download complete 2024-08-06T20:20:38.2957197Z 04f7d0566845: Download complete 2024-08-06T20:20:38.3713203Z 87202a98d131: Verifying Checksum 2024-08-06T20:20:38.3713788Z 87202a98d131: Download complete 2024-08-06T20:20:38.4472176Z 3d149566d7ff: Download complete 2024-08-06T20:20:38.5408921Z 18983ac58952: Verifying Checksum 2024-08-06T20:20:38.5409405Z 18983ac58952: Download complete 2024-08-06T20:20:38.6283613Z d1f3066e929d: Verifying Checksum 2024-08-06T20:20:38.6284210Z d1f3066e929d: Download complete 2024-08-06T20:20:38.6928234Z a3cbced61652: Download complete 2024-08-06T20:20:38.7788584Z e5ca241cc120: Verifying Checksum 2024-08-06T20:20:38.7788998Z e5ca241cc120: Download complete 2024-08-06T20:20:38.8545182Z 2a68b738ffe1: Verifying Checksum 2024-08-06T20:20:38.8545632Z 2a68b738ffe1: Download complete 2024-08-06T20:20:38.9220722Z 3767fa07553a: Verifying Checksum 2024-08-06T20:20:38.9221267Z 3767fa07553a: Download complete 2024-08-06T20:20:38.9926694Z 1367c503435c: Verifying Checksum 2024-08-06T20:20:38.9927277Z 1367c503435c: Download complete 2024-08-06T20:20:39.0721249Z 3106fe392226: Download complete 2024-08-06T20:20:39.6226450Z e673200c085d: Download complete 2024-08-06T20:20:39.7045617Z 734e3d036d23: Verifying Checksum 2024-08-06T20:20:39.7046001Z 734e3d036d23: Download complete 2024-08-06T20:20:39.7788658Z d7ff8fb3636b: Download complete 2024-08-06T20:20:39.8557848Z 1cce4640fddc: Download complete 2024-08-06T20:20:39.9227406Z 427d59d82d28: Verifying Checksum 2024-08-06T20:20:39.9228024Z 427d59d82d28: Download complete 2024-08-06T20:20:40.1867539Z 411f34d6d581: Verifying Checksum 2024-08-06T20:20:40.1868209Z 411f34d6d581: Download complete 2024-08-06T20:20:40.2637721Z 4d13e386b5bf: Verifying Checksum 2024-08-06T20:20:40.2638339Z 4d13e386b5bf: Download complete 2024-08-06T20:20:40.3309621Z 0f9cdfa3c55d: Verifying Checksum 2024-08-06T20:20:40.3310069Z 0f9cdfa3c55d: Download complete 2024-08-06T20:20:40.4246189Z cfbf800d7f89: Verifying Checksum 2024-08-06T20:20:40.4246725Z cfbf800d7f89: Download complete 2024-08-06T20:20:40.5115909Z 31934c84f92c: Verifying Checksum 2024-08-06T20:20:40.5116453Z 31934c84f92c: Download complete 2024-08-06T20:20:40.5799493Z 91254fa13f25: Download complete 2024-08-06T20:20:40.6922006Z 13d99bf6f074: Verifying Checksum 2024-08-06T20:20:40.6922677Z 13d99bf6f074: Download complete 2024-08-06T20:20:40.8216139Z aa216cf24a5c: Download complete 2024-08-06T20:20:40.9287961Z 8a75636074ed: Download complete 2024-08-06T20:20:41.0103844Z bc60d0ee2efa: Verifying Checksum 2024-08-06T20:20:41.0104301Z bc60d0ee2efa: Download complete 2024-08-06T20:20:41.0839515Z d7b6bfdc4ac4: Verifying Checksum 2024-08-06T20:20:41.0840080Z d7b6bfdc4ac4: Download complete 2024-08-06T20:20:41.1841919Z 362577cee720: Verifying Checksum 2024-08-06T20:20:41.2663126Z dd997f1a9a7a: Verifying Checksum 2024-08-06T20:20:41.2663903Z dd997f1a9a7a: Download complete 2024-08-06T20:20:41.3448430Z e1b7d62c8da3: Verifying Checksum 2024-08-06T20:20:41.3448986Z e1b7d62c8da3: Download complete 2024-08-06T20:20:41.4158732Z 5b5ac0963a87: Verifying Checksum 2024-08-06T20:20:41.4159332Z 5b5ac0963a87: Download complete 2024-08-06T20:20:41.4924741Z 0926e4f103f3: Verifying Checksum 2024-08-06T20:20:41.4925229Z 0926e4f103f3: Download complete 2024-08-06T20:20:41.5655927Z f29ef8d2e14d: Verifying Checksum 2024-08-06T20:20:41.5656388Z f29ef8d2e14d: Download complete 2024-08-06T20:20:41.6495773Z a1f65f5ee1b9: Download complete 2024-08-06T20:20:41.7192302Z b612a56e3264: Verifying Checksum 2024-08-06T20:20:41.7192922Z b612a56e3264: Download complete 2024-08-06T20:20:41.8081259Z 758620454102: Verifying Checksum 2024-08-06T20:20:41.8081747Z 758620454102: Download complete 2024-08-06T20:20:41.9663793Z 53bc8a6759fc: Verifying Checksum 2024-08-06T20:20:41.9664460Z 53bc8a6759fc: Download complete 2024-08-06T20:20:42.0360815Z df484cabb091: Download complete 2024-08-06T20:20:42.1044303Z c6845d12fa9c: Download complete 2024-08-06T20:20:42.1842914Z 753c44cee6e1: Verifying Checksum 2024-08-06T20:20:42.1843420Z 753c44cee6e1: Download complete 2024-08-06T20:20:42.2572206Z 44405015d608: Download complete 2024-08-06T20:20:42.3566511Z c4f461623146: Verifying Checksum 2024-08-06T20:20:42.3567356Z c4f461623146: Download complete 2024-08-06T20:20:42.4312723Z 6acbdc2527c9: Verifying Checksum 2024-08-06T20:20:42.4313238Z 6acbdc2527c9: Download complete 2024-08-06T20:20:42.9250809Z 88d03497075e: Verifying Checksum 2024-08-06T20:20:42.9251418Z 88d03497075e: Download complete 2024-08-06T20:20:43.0276404Z 82264f8de02a: Verifying Checksum 2024-08-06T20:20:43.0276961Z 82264f8de02a: Download complete 2024-08-06T20:20:46.6268244Z 2d2a994403d3: Pull complete 2024-08-06T20:20:46.6797527Z 8bb2baf0f937: Pull complete 2024-08-06T20:20:48.3562448Z 2a29c47c7450: Pull complete 2024-08-06T20:20:48.4901878Z 60ae3239e75d: Pull complete 2024-08-06T20:20:48.5652563Z 0e2a419f6d38: Pull complete 2024-08-06T20:20:48.6071521Z 2f7615e08b26: Pull complete 2024-08-06T20:20:48.7020931Z 5231e76a47c7: Pull complete 2024-08-06T20:20:48.8722347Z 32d63b5acf81: Pull complete 2024-08-06T20:20:48.9797393Z e9f6f1ca5fb0: Pull complete 2024-08-06T20:20:49.0637115Z 5715243311bd: Pull complete 2024-08-06T20:21:01.6596740Z 2ac7d65122e5: Verifying Checksum 2024-08-06T20:21:42.6339804Z 2ac7d65122e5: Pull complete 2024-08-06T20:21:42.6528345Z 4f4fb700ef54: Pull complete 2024-08-06T20:21:42.6703518Z 6b61f599dafa: Pull complete 2024-08-06T20:21:42.6905235Z 1f11bb841d2a: Pull complete 2024-08-06T20:21:42.7098874Z fab16dc9bed3: Pull complete 2024-08-06T20:21:42.7705907Z 4702c9016e32: Pull complete 2024-08-06T20:21:42.7893104Z 4578fa00ba8a: Pull complete 2024-08-06T20:21:42.8053955Z 5e0b7a7387b1: Pull complete 2024-08-06T20:21:42.8218583Z 3b12a15a2dd8: Pull complete 2024-08-06T20:21:42.8617781Z efc9e54882ba: Pull complete 2024-08-06T20:21:42.8783524Z bbcce21dddee: Pull complete 2024-08-06T20:21:46.4813552Z 0ffc6f4509fe: Pull complete 2024-08-06T20:21:46.6793732Z c43dca7e37c0: Pull complete 2024-08-06T20:21:46.8857963Z 380952bfb408: Pull complete 2024-08-06T20:21:47.0833423Z ceb2379cb498: Pull complete 2024-08-06T20:21:47.2859146Z 62a07c6fa5fc: Pull complete 2024-08-06T20:21:47.4715831Z 8b5570c513a9: Pull complete 2024-08-06T20:21:55.4504600Z 88d03497075e: Pull complete 2024-08-06T20:21:55.4668976Z 39d053a85f7c: Pull complete 2024-08-06T20:21:55.4846532Z 04f7d0566845: Pull complete 2024-08-06T20:21:55.5017163Z 87202a98d131: Pull complete 2024-08-06T20:21:55.5195450Z 3d149566d7ff: Pull complete 2024-08-06T20:21:55.5606445Z 18983ac58952: Pull complete 2024-08-06T20:21:55.5771156Z d1f3066e929d: Pull complete 2024-08-06T20:21:55.5947181Z a3cbced61652: Pull complete 2024-08-06T20:21:55.6129923Z e5ca241cc120: Pull complete 2024-08-06T20:21:55.6503593Z 2a68b738ffe1: Pull complete 2024-08-06T20:21:55.6685420Z 3767fa07553a: Pull complete 2024-08-06T20:21:55.7073052Z 1367c503435c: Pull complete 2024-08-06T20:21:55.7255561Z 3106fe392226: Pull complete 2024-08-06T20:21:57.6235240Z e673200c085d: Pull complete 2024-08-06T20:21:57.7676131Z 734e3d036d23: Pull complete 2024-08-06T20:21:57.8756286Z d7ff8fb3636b: Pull complete 2024-08-06T20:21:58.2784148Z 1cce4640fddc: Pull complete 2024-08-06T20:21:58.4397722Z 427d59d82d28: Pull complete 2024-08-06T20:21:58.8681138Z 411f34d6d581: Pull complete 2024-08-06T20:21:59.0513902Z 4d13e386b5bf: Pull complete 2024-08-06T20:21:59.2393258Z 0f9cdfa3c55d: Pull complete 2024-08-06T20:21:59.5464171Z cfbf800d7f89: Pull complete 2024-08-06T20:21:59.7373182Z 31934c84f92c: Pull complete 2024-08-06T20:22:00.1488782Z 91254fa13f25: Pull complete 2024-08-06T20:22:00.3565535Z 13d99bf6f074: Pull complete 2024-08-06T20:22:00.7605265Z aa216cf24a5c: Pull complete 2024-08-06T20:22:01.1869076Z 8a75636074ed: Pull complete 2024-08-06T20:22:01.3867180Z bc60d0ee2efa: Pull complete 2024-08-06T20:22:01.6218276Z d7b6bfdc4ac4: Pull complete 2024-08-06T20:22:01.6590873Z 362577cee720: Pull complete 2024-08-06T20:22:01.6782890Z dd997f1a9a7a: Pull complete 2024-08-06T20:22:01.7151729Z e1b7d62c8da3: Pull complete 2024-08-06T20:22:01.7486836Z 5b5ac0963a87: Pull complete 2024-08-06T20:22:01.7650906Z 0926e4f103f3: Pull complete 2024-08-06T20:22:01.8025555Z f29ef8d2e14d: Pull complete 2024-08-06T20:22:01.8240556Z a1f65f5ee1b9: Pull complete 2024-08-06T20:22:01.8609426Z b612a56e3264: Pull complete 2024-08-06T20:22:01.8789442Z 758620454102: Pull complete 2024-08-06T20:22:02.0192059Z 53bc8a6759fc: Pull complete 2024-08-06T20:22:02.0371320Z df484cabb091: Pull complete 2024-08-06T20:22:02.0560066Z c6845d12fa9c: Pull complete 2024-08-06T20:22:02.0737967Z 753c44cee6e1: Pull complete 2024-08-06T20:22:02.0909712Z 44405015d608: Pull complete 2024-08-06T20:22:02.1076292Z c4f461623146: Pull complete 2024-08-06T20:22:02.1402503Z 6acbdc2527c9: Pull complete 2024-08-06T20:22:03.6434758Z 82264f8de02a: Pull complete 2024-08-06T20:22:03.6731013Z Digest: sha256:23992c65342e016e38c0d53a2566219b4cc3d16d20e9c923ad93c35946fb362b 2024-08-06T20:22:03.6759048Z Status: Downloaded newer image for 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:22:03.6788454Z 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:22:03.6838324Z ##[group]Run echo "IN_ARC_RUNNER=$([ -f /.inarc ] && echo true || echo false)" >> "$GITHUB_OUTPUT" 2024-08-06T20:22:03.6839046Z echo "IN_ARC_RUNNER=$([ -f /.inarc ] && echo true || echo false)" >> "$GITHUB_OUTPUT" 2024-08-06T20:22:03.6847427Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:03.6847814Z env: 2024-08-06T20:22:03.6848040Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:03.6848311Z ##[endgroup] 2024-08-06T20:22:03.6925138Z ##[group]Run python3 -m pip install psutil==5.9.1 nvidia-ml-py==11.525.84 2024-08-06T20:22:03.6925739Z python3 -m pip install psutil==5.9.1 nvidia-ml-py==11.525.84 2024-08-06T20:22:03.6926283Z python3 -m tools.stats.monitor > usage_log.txt 2>&1 & 2024-08-06T20:22:03.6926784Z echo "monitor-script-pid=${!}" >> "${GITHUB_OUTPUT}" 2024-08-06T20:22:03.6932517Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:03.6932910Z env: 2024-08-06T20:22:03.6933138Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:03.6933395Z ##[endgroup] 2024-08-06T20:22:04.1786441Z Defaulting to user installation because normal site-packages is not writeable 2024-08-06T20:22:04.2086053Z Requirement already satisfied: psutil==5.9.1 in /home/ec2-user/.local/lib/python3.9/site-packages (5.9.1) 2024-08-06T20:22:04.2092657Z Requirement already satisfied: nvidia-ml-py==11.525.84 in /home/ec2-user/.local/lib/python3.9/site-packages (11.525.84) 2024-08-06T20:22:04.3958497Z Prepare all required actions 2024-08-06T20:22:04.3959350Z Getting action download info 2024-08-06T20:22:04.6765747Z Download action repository 'seemethere/download-artifact-s3@v4' (SHA:1da556a7aa0a088e3153970611f6c432d58e80e6) 2024-08-06T20:22:04.9412094Z Download action repository 'actions/download-artifact@v3' (SHA:9bc31d5ccc31df68ecc42ccf4149144866c47d8a) 2024-08-06T20:22:05.1252036Z ##[group]Run ./.github/actions/download-build-artifacts 2024-08-06T20:22:05.1252435Z with: 2024-08-06T20:22:05.1252682Z name: linux-focal-py3.12-clang10 2024-08-06T20:22:05.1252987Z s3-bucket: gha-artifacts 2024-08-06T20:22:05.1253259Z env: 2024-08-06T20:22:05.1253479Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:05.1253734Z ##[endgroup] 2024-08-06T20:22:05.1293950Z ##[group]Run seemethere/download-artifact-s3@v4 2024-08-06T20:22:05.1294423Z with: 2024-08-06T20:22:05.1294651Z name: linux-focal-py3.12-clang10 2024-08-06T20:22:05.1294973Z s3-bucket: gha-artifacts 2024-08-06T20:22:05.1295302Z region: us-east-1 2024-08-06T20:22:05.1295540Z env: 2024-08-06T20:22:05.1295748Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:05.1296023Z ##[endgroup] 2024-08-06T20:22:05.6277896Z (node:173973) NOTE: We are formalizing our plans to enter AWS SDK for JavaScript (v2) into maintenance mode in 2023. 2024-08-06T20:22:05.6278706Z 2024-08-06T20:22:05.6278904Z Please migrate your code to use AWS SDK for JavaScript (v3). 2024-08-06T20:22:05.6279469Z For more information, check the migration guide at https://a.co/7PzMCcy 2024-08-06T20:22:05.6280040Z (Use `node --trace-warnings ...` to show where the warning was created) 2024-08-06T20:22:05.7170423Z Found 1 objects with prefix pytorch/pytorch/10273124344/linux-focal-py3.12-clang10/ 2024-08-06T20:22:05.7171184Z Starting download (1/1): /home/ec2-user/actions-runner/_work/pytorch/pytorch/artifacts.zip 2024-08-06T20:22:09.5554870Z Finished download (1/1): /home/ec2-user/actions-runner/_work/pytorch/pytorch/artifacts.zip 2024-08-06T20:22:09.5561516Z Artifact download has finished successfully 2024-08-06T20:22:09.5730450Z ##[group]Run unzip -o artifacts.zip 2024-08-06T20:22:09.5730832Z unzip -o artifacts.zip 2024-08-06T20:22:09.5736814Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:09.5737241Z env: 2024-08-06T20:22:09.5737451Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:09.5737728Z ##[endgroup] 2024-08-06T20:22:09.5788135Z Archive: artifacts.zip 2024-08-06T20:22:09.5788964Z creating: dist/ 2024-08-06T20:22:10.5154185Z inflating: dist/torch-2.5.0a0+gitb9d86fa-cp312-cp312-linux_x86_64.whl 2024-08-06T20:22:10.5154733Z creating: build/custom_test_artifacts/ 2024-08-06T20:22:10.5155147Z creating: build/custom_test_artifacts/custom-op-build/ 2024-08-06T20:22:10.5155656Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/ 2024-08-06T20:22:10.5157089Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/CMakeOutput.log 2024-08-06T20:22:10.5157788Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/ 2024-08-06T20:22:10.5158483Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CMakeSystem.cmake 2024-08-06T20:22:10.5159209Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdC/ 2024-08-06T20:22:10.5159959Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdC/tmp/ 2024-08-06T20:22:10.5160806Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdC/CMakeCCompilerId.c 2024-08-06T20:22:10.5162238Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdC/a.out 2024-08-06T20:22:10.5163187Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdCXX/ 2024-08-06T20:22:10.5164009Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdCXX/tmp/ 2024-08-06T20:22:10.5165617Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdCXX/CMakeCXXCompilerId.cpp 2024-08-06T20:22:10.5166641Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CompilerIdCXX/a.out 2024-08-06T20:22:10.5168283Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CMakeDetermineCompilerABI_C.bin 2024-08-06T20:22:10.5169166Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CMakeCCompiler.cmake 2024-08-06T20:22:10.5170269Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CMakeDetermineCompilerABI_CXX.bin 2024-08-06T20:22:10.5171352Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/3.18.5/CMakeCXXCompiler.cmake 2024-08-06T20:22:10.5172073Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/CMakeTmp/ 2024-08-06T20:22:10.5172785Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/cmake.check_cache 2024-08-06T20:22:10.5173486Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/ 2024-08-06T20:22:10.5196507Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/depend.make 2024-08-06T20:22:10.5197312Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/link.txt 2024-08-06T20:22:10.5198315Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/cmake_clean.cmake 2024-08-06T20:22:10.5199143Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/build.make 2024-08-06T20:22:10.5199950Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/DependInfo.cmake 2024-08-06T20:22:10.5200775Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/flags.make 2024-08-06T20:22:10.5201584Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/progress.make 2024-08-06T20:22:10.5249453Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/CXX.includecache 2024-08-06T20:22:10.5267301Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/depend.internal 2024-08-06T20:22:10.5360289Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/custom_ops.dir/op.cpp.o 2024-08-06T20:22:10.5361068Z creating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/ 2024-08-06T20:22:10.5385524Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/depend.make 2024-08-06T20:22:10.5386437Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/link.txt 2024-08-06T20:22:10.5387304Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/cmake_clean.cmake 2024-08-06T20:22:10.5388177Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/build.make 2024-08-06T20:22:10.5389028Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/DependInfo.cmake 2024-08-06T20:22:10.5389903Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/flags.make 2024-08-06T20:22:10.5390751Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/progress.make 2024-08-06T20:22:10.5438448Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/CXX.includecache 2024-08-06T20:22:10.5455714Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/depend.internal 2024-08-06T20:22:10.5503968Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/test_custom_ops.dir/test_custom_ops.cpp.o 2024-08-06T20:22:10.5504889Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/CMakeDirectoryInformation.cmake 2024-08-06T20:22:10.5505868Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/TargetDirectories.txt 2024-08-06T20:22:10.5506863Z extracting: build/custom_test_artifacts/custom-op-build/CMakeFiles/progress.marks 2024-08-06T20:22:10.5507555Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/Makefile2 2024-08-06T20:22:10.5508225Z inflating: build/custom_test_artifacts/custom-op-build/CMakeFiles/Makefile.cmake 2024-08-06T20:22:10.5509386Z inflating: build/custom_test_artifacts/custom-op-build/CMakeCache.txt 2024-08-06T20:22:10.5510192Z inflating: build/custom_test_artifacts/custom-op-build/Makefile 2024-08-06T20:22:10.5510786Z inflating: build/custom_test_artifacts/custom-op-build/cmake_install.cmake 2024-08-06T20:22:10.5596764Z inflating: build/custom_test_artifacts/custom-op-build/libcustom_ops.so 2024-08-06T20:22:10.5635340Z inflating: build/custom_test_artifacts/custom-op-build/test_custom_ops 2024-08-06T20:22:10.5635875Z creating: build/custom_test_artifacts/jit-hook-build/ 2024-08-06T20:22:10.5636370Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/ 2024-08-06T20:22:10.5637884Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/CMakeOutput.log 2024-08-06T20:22:10.5638521Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/ 2024-08-06T20:22:10.5639198Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CMakeSystem.cmake 2024-08-06T20:22:10.5640160Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdC/ 2024-08-06T20:22:10.5640859Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdC/tmp/ 2024-08-06T20:22:10.5641677Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdC/CMakeCCompilerId.c 2024-08-06T20:22:10.5642593Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdC/a.out 2024-08-06T20:22:10.5643332Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdCXX/ 2024-08-06T20:22:10.5644046Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdCXX/tmp/ 2024-08-06T20:22:10.5645244Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdCXX/CMakeCXXCompilerId.cpp 2024-08-06T20:22:10.5646569Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CompilerIdCXX/a.out 2024-08-06T20:22:10.5648176Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CMakeDetermineCompilerABI_C.bin 2024-08-06T20:22:10.5649039Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CMakeCCompiler.cmake 2024-08-06T20:22:10.5650331Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CMakeDetermineCompilerABI_CXX.bin 2024-08-06T20:22:10.5651462Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/3.18.5/CMakeCXXCompiler.cmake 2024-08-06T20:22:10.5652172Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/CMakeTmp/ 2024-08-06T20:22:10.5652844Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/cmake.check_cache 2024-08-06T20:22:10.5653552Z creating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/ 2024-08-06T20:22:10.5677647Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/depend.make 2024-08-06T20:22:10.5678456Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/link.txt 2024-08-06T20:22:10.5679303Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/cmake_clean.cmake 2024-08-06T20:22:10.5680146Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/build.make 2024-08-06T20:22:10.5680990Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/DependInfo.cmake 2024-08-06T20:22:10.5681814Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/flags.make 2024-08-06T20:22:10.5682641Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/progress.make 2024-08-06T20:22:10.5731124Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/CXX.includecache 2024-08-06T20:22:10.5748468Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/depend.internal 2024-08-06T20:22:10.5780306Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/test_jit_hooks.dir/test_jit_hooks.cpp.o 2024-08-06T20:22:10.5781218Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/CMakeDirectoryInformation.cmake 2024-08-06T20:22:10.5809581Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/TargetDirectories.txt 2024-08-06T20:22:10.5810370Z extracting: build/custom_test_artifacts/jit-hook-build/CMakeFiles/progress.marks 2024-08-06T20:22:10.5811131Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/Makefile2 2024-08-06T20:22:10.5811884Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeFiles/Makefile.cmake 2024-08-06T20:22:10.5813143Z inflating: build/custom_test_artifacts/jit-hook-build/CMakeCache.txt 2024-08-06T20:22:10.5813763Z inflating: build/custom_test_artifacts/jit-hook-build/Makefile 2024-08-06T20:22:10.5814409Z inflating: build/custom_test_artifacts/jit-hook-build/cmake_install.cmake 2024-08-06T20:22:10.5815411Z inflating: build/custom_test_artifacts/jit-hook-build/test_jit_hooks 2024-08-06T20:22:10.5816436Z creating: build/custom_test_artifacts/custom-backend-build/ 2024-08-06T20:22:10.5817456Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/ 2024-08-06T20:22:10.5818125Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/CMakeOutput.log 2024-08-06T20:22:10.5818855Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/ 2024-08-06T20:22:10.5819938Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CMakeSystem.cmake 2024-08-06T20:22:10.5821083Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdC/ 2024-08-06T20:22:10.5822191Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdC/tmp/ 2024-08-06T20:22:10.5823398Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdC/CMakeCCompilerId.c 2024-08-06T20:22:10.5824603Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdC/a.out 2024-08-06T20:22:10.5825571Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdCXX/ 2024-08-06T20:22:10.5826946Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdCXX/tmp/ 2024-08-06T20:22:10.5828237Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdCXX/CMakeCXXCompilerId.cpp 2024-08-06T20:22:10.5829783Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CompilerIdCXX/a.out 2024-08-06T20:22:10.5830942Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CMakeDetermineCompilerABI_C.bin 2024-08-06T20:22:10.5831860Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CMakeCCompiler.cmake 2024-08-06T20:22:10.5832773Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CMakeDetermineCompilerABI_CXX.bin 2024-08-06T20:22:10.5833724Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/3.18.5/CMakeCXXCompiler.cmake 2024-08-06T20:22:10.5834496Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/CMakeTmp/ 2024-08-06T20:22:10.5835200Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/cmake.check_cache 2024-08-06T20:22:10.5835983Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/ 2024-08-06T20:22:10.5856532Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/depend.make 2024-08-06T20:22:10.5858572Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/link.txt 2024-08-06T20:22:10.5859908Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/cmake_clean.cmake 2024-08-06T20:22:10.5860868Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/build.make 2024-08-06T20:22:10.5861851Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/DependInfo.cmake 2024-08-06T20:22:10.5862988Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/flags.make 2024-08-06T20:22:10.5863939Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/progress.make 2024-08-06T20:22:10.5908950Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/CXX.includecache 2024-08-06T20:22:10.5926170Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/depend.internal 2024-08-06T20:22:10.5949552Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/test_custom_backend.dir/test_custom_backend.cpp.o 2024-08-06T20:22:10.5950478Z creating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/ 2024-08-06T20:22:10.5953750Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/depend.make 2024-08-06T20:22:10.5955357Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/link.txt 2024-08-06T20:22:10.5956962Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/cmake_clean.cmake 2024-08-06T20:22:10.5957880Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/build.make 2024-08-06T20:22:10.5958805Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/DependInfo.cmake 2024-08-06T20:22:10.5959725Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/flags.make 2024-08-06T20:22:10.5960611Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/progress.make 2024-08-06T20:22:10.5962972Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/CXX.includecache 2024-08-06T20:22:10.5966236Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/depend.internal 2024-08-06T20:22:10.6048519Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/custom_backend.dir/custom_backend.cpp.o 2024-08-06T20:22:10.6050257Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/CMakeDirectoryInformation.cmake 2024-08-06T20:22:10.6051437Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/TargetDirectories.txt 2024-08-06T20:22:10.6052525Z extracting: build/custom_test_artifacts/custom-backend-build/CMakeFiles/progress.marks 2024-08-06T20:22:10.6053813Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/Makefile2 2024-08-06T20:22:10.6054950Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeFiles/Makefile.cmake 2024-08-06T20:22:10.6055651Z inflating: build/custom_test_artifacts/custom-backend-build/CMakeCache.txt 2024-08-06T20:22:10.6056263Z inflating: build/custom_test_artifacts/custom-backend-build/Makefile 2024-08-06T20:22:10.6056901Z inflating: build/custom_test_artifacts/custom-backend-build/cmake_install.cmake 2024-08-06T20:22:10.6126105Z inflating: build/custom_test_artifacts/custom-backend-build/libcustom_backend.so 2024-08-06T20:22:10.6144972Z inflating: build/custom_test_artifacts/custom-backend-build/test_custom_backend 2024-08-06T20:22:10.6145558Z creating: build/lib/ 2024-08-06T20:22:10.6145872Z inflating: build/lib/libclog.a 2024-08-06T20:22:10.6154459Z inflating: build/lib/libpthreadpool.a 2024-08-06T20:22:10.6161836Z inflating: build/lib/libcpuinfo.a 2024-08-06T20:22:10.6168365Z inflating: build/lib/libcpuinfo_internals.a 2024-08-06T20:22:10.6240234Z inflating: build/lib/libprotobuf-lite.a 2024-08-06T20:22:10.6295889Z inflating: build/lib/libgtest.a 2024-08-06T20:22:10.6303238Z inflating: build/lib/libittnotify.a 2024-08-06T20:22:10.6363571Z inflating: build/lib/libbenchmark.a 2024-08-06T20:22:10.6387934Z inflating: build/lib/libtensorpipe_uv.a 2024-08-06T20:22:10.6447866Z inflating: build/lib/libasmjit.a 2024-08-06T20:22:10.6824077Z inflating: build/lib/libprotobuf.a 2024-08-06T20:22:10.6903436Z inflating: build/lib/libgloo.a 2024-08-06T20:22:10.6922276Z inflating: build/lib/libfmt.a 2024-08-06T20:22:10.6923118Z inflating: build/lib/libfoxi_loader.a 2024-08-06T20:22:10.6924443Z inflating: build/lib/libtorch_global_deps.so 2024-08-06T20:22:10.7005943Z inflating: build/lib/libc10.so 2024-08-06T20:22:10.7023388Z inflating: build/lib/libpytorch_qnnpack.a 2024-08-06T20:22:10.7026089Z inflating: build/lib/libnnpack_reference_layers.a 2024-08-06T20:22:10.7038214Z inflating: build/lib/libgmock.a 2024-08-06T20:22:10.7039044Z inflating: build/lib/libgtest_main.a 2024-08-06T20:22:10.7039467Z inflating: build/lib/libbenchmark_main.a 2024-08-06T20:22:10.7457940Z inflating: build/lib/libprotoc.a 2024-08-06T20:22:10.7909331Z inflating: build/lib/libtensorpipe.a 2024-08-06T20:22:10.8863868Z inflating: build/lib/libfbgemm.a 2024-08-06T20:22:10.8864332Z inflating: build/lib/libgmock_main.a 2024-08-06T20:22:12.1130211Z inflating: build/lib/libdnnl.a 2024-08-06T20:22:12.1384604Z inflating: build/lib/libkineto.a 2024-08-06T20:22:12.1425472Z inflating: build/lib/libonnx_proto.a 2024-08-06T20:22:12.1441867Z inflating: build/lib/libnnpack.a 2024-08-06T20:22:12.1626452Z inflating: build/lib/libXNNPACK.a 2024-08-06T20:22:12.2266691Z inflating: build/lib/libonnx.a 2024-08-06T20:22:14.4430716Z inflating: build/lib/libtorch_cpu.so 2024-08-06T20:22:14.4431295Z inflating: build/lib/libtorch.so 2024-08-06T20:22:14.4435548Z inflating: build/lib/libunbox_lib.a 2024-08-06T20:22:14.4439534Z inflating: build/lib/libshm.so 2024-08-06T20:22:14.4461057Z inflating: build/lib/libjitbackend_test.so 2024-08-06T20:22:14.4534204Z inflating: build/lib/libtorchbind_test.so 2024-08-06T20:22:14.4560561Z inflating: build/lib/libaoti_custom_ops.so 2024-08-06T20:22:14.4586201Z inflating: build/lib/libbackend_with_compiler.so 2024-08-06T20:22:14.6484432Z inflating: build/lib/libtorch_python.so 2024-08-06T20:22:14.6520419Z inflating: build/lib/libnnapi_backend.so 2024-08-06T20:22:14.6520895Z creating: build/bin/ 2024-08-06T20:22:14.6521210Z creating: build/bin/CMakeFiles/ 2024-08-06T20:22:14.6521764Z inflating: build/bin/CMakeFiles/CMakeDirectoryInformation.cmake 2024-08-06T20:22:14.6522363Z extracting: build/bin/CMakeFiles/progress.marks 2024-08-06T20:22:14.6522967Z inflating: build/bin/Makefile 2024-08-06T20:22:14.6523717Z inflating: build/bin/cmake_install.cmake 2024-08-06T20:22:14.6524135Z inflating: build/bin/CTestTestfile.cmake 2024-08-06T20:22:14.6568143Z inflating: build/bin/c10_TypeTraits_test 2024-08-06T20:22:14.6612900Z inflating: build/bin/c10_Device_test 2024-08-06T20:22:14.6658260Z inflating: build/bin/c10_TypeList_test 2024-08-06T20:22:14.6704677Z inflating: build/bin/c10_TypeIndex_test 2024-08-06T20:22:14.6749022Z inflating: build/bin/c10_Synchronized_test 2024-08-06T20:22:14.6792873Z inflating: build/bin/c10_ConstexprCrc_test 2024-08-06T20:22:14.6839034Z inflating: build/bin/c10_ssize_test 2024-08-06T20:22:14.6889192Z inflating: build/bin/c10_LeftRight_test 2024-08-06T20:22:14.6933969Z inflating: build/bin/c10_DeadlockDetection_test 2024-08-06T20:22:14.6979464Z inflating: build/bin/c10_Half_test 2024-08-06T20:22:14.7028192Z inflating: build/bin/c10_ThreadLocal_test 2024-08-06T20:22:14.7080989Z inflating: build/bin/c10_DispatchKeySet_test 2024-08-06T20:22:14.7124932Z inflating: build/bin/c10_StreamGuard_test 2024-08-06T20:22:14.7180388Z inflating: build/bin/c10_ordered_preserving_dict_test 2024-08-06T20:22:14.7225258Z inflating: build/bin/c10_tempfile_test 2024-08-06T20:22:14.7270896Z inflating: build/bin/c10_DeviceGuard_test 2024-08-06T20:22:14.7315435Z inflating: build/bin/c10_CompileTimeFunctionPointer_test 2024-08-06T20:22:14.7363447Z inflating: build/bin/c10_typeid_test 2024-08-06T20:22:14.7410924Z inflating: build/bin/c10_Scalar_test 2024-08-06T20:22:14.7472357Z inflating: build/bin/c10_cow_test 2024-08-06T20:22:14.7518951Z inflating: build/bin/c10_Bitset_test 2024-08-06T20:22:14.7564424Z inflating: build/bin/c10_SymInt_test 2024-08-06T20:22:14.7614507Z inflating: build/bin/c10_SizesAndStrides_test 2024-08-06T20:22:14.7664629Z inflating: build/bin/c10_InlineStreamGuard_test 2024-08-06T20:22:14.7713385Z inflating: build/bin/c10_InlineDeviceGuard_test 2024-08-06T20:22:14.7759576Z inflating: build/bin/c10_accumulate_test 2024-08-06T20:22:14.7805638Z inflating: build/bin/c10_bit_cast_test 2024-08-06T20:22:14.7856771Z inflating: build/bin/c10_string_view_test 2024-08-06T20:22:14.7902697Z inflating: build/bin/c10_irange_test 2024-08-06T20:22:14.7951411Z inflating: build/bin/c10_bfloat16_test 2024-08-06T20:22:14.7998818Z inflating: build/bin/c10_exception_test 2024-08-06T20:22:14.8047963Z inflating: build/bin/c10_complex_test 2024-08-06T20:22:14.8093769Z inflating: build/bin/c10_flags_test 2024-08-06T20:22:14.8138229Z inflating: build/bin/c10_generic_math_test 2024-08-06T20:22:14.8266499Z inflating: build/bin/c10_intrusive_ptr_test 2024-08-06T20:22:14.8317819Z inflating: build/bin/c10_complex_math_test 2024-08-06T20:22:14.8367685Z inflating: build/bin/c10_logging_test 2024-08-06T20:22:14.8436630Z inflating: build/bin/c10_optional_test 2024-08-06T20:22:14.8484718Z inflating: build/bin/c10_registry_test 2024-08-06T20:22:14.8613575Z inflating: build/bin/c10_small_vector_test 2024-08-06T20:22:14.8660772Z inflating: build/bin/c10_lazy_test 2024-08-06T20:22:14.8707183Z inflating: build/bin/c10_string_util_test 2024-08-06T20:22:14.8754721Z inflating: build/bin/c10_Metaprogramming_test 2024-08-06T20:22:14.8793346Z inflating: build/bin/c10_intrusive_ptr_benchmark 2024-08-06T20:22:14.9151599Z inflating: build/bin/protoc-3.13.0.0 2024-08-06T20:22:14.9509685Z inflating: build/bin/protoc 2024-08-06T20:22:14.9851878Z inflating: build/bin/vec_test_all_types_AVX2 2024-08-06T20:22:15.0179302Z inflating: build/bin/vec_test_all_types_AVX512 2024-08-06T20:22:15.0498649Z inflating: build/bin/vec_test_all_types_DEFAULT 2024-08-06T20:22:15.0545288Z inflating: build/bin/HashStoreTest 2024-08-06T20:22:15.0595162Z inflating: build/bin/TCPStoreTest 2024-08-06T20:22:15.0642423Z inflating: build/bin/FileStoreTest 2024-08-06T20:22:15.0702657Z inflating: build/bin/ProcessGroupGlooTest 2024-08-06T20:22:15.0748578Z inflating: build/bin/BackoffTest 2024-08-06T20:22:15.0751239Z inflating: build/bin/example_allreduce 2024-08-06T20:22:15.0800099Z inflating: build/bin/test_dist_autograd 2024-08-06T20:22:15.0802372Z inflating: build/bin/parallel_benchmark 2024-08-06T20:22:15.0811495Z inflating: build/bin/aot_model_compiler_test 2024-08-06T20:22:15.0872862Z inflating: build/bin/test_mobile_nnc 2024-08-06T20:22:15.0916951Z inflating: build/bin/op_allowlist_test 2024-08-06T20:22:15.0978094Z inflating: build/bin/test_cpp_rpc 2024-08-06T20:22:15.1069182Z inflating: build/bin/make_boxed_from_unboxed_functor_test 2024-08-06T20:22:15.1123980Z inflating: build/bin/kernel_stackbased_test 2024-08-06T20:22:15.1174153Z inflating: build/bin/backend_fallback_test 2024-08-06T20:22:15.1264185Z inflating: build/bin/kernel_function_test 2024-08-06T20:22:15.1384801Z inflating: build/bin/kernel_function_legacy_test 2024-08-06T20:22:15.1694712Z inflating: build/bin/test_lazy 2024-08-06T20:22:15.1752180Z inflating: build/bin/KernelFunction_test 2024-08-06T20:22:15.1805822Z inflating: build/bin/IListRef_test 2024-08-06T20:22:15.1852371Z inflating: build/bin/xla_tensor_test 2024-08-06T20:22:15.1899495Z inflating: build/bin/type_ptr_test 2024-08-06T20:22:15.1964933Z inflating: build/bin/legacy_vmap_test 2024-08-06T20:22:15.2019786Z inflating: build/bin/type_test 2024-08-06T20:22:15.2094035Z inflating: build/bin/tensor_iterator_test 2024-08-06T20:22:15.2141173Z inflating: build/bin/stride_properties_test 2024-08-06T20:22:15.2186241Z inflating: build/bin/StorageUtils_test 2024-08-06T20:22:15.2238499Z inflating: build/bin/apply_utils_test 2024-08-06T20:22:15.2284442Z inflating: build/bin/weakref_test 2024-08-06T20:22:15.2337695Z inflating: build/bin/scalar_test 2024-08-06T20:22:15.2388084Z inflating: build/bin/NamedTensor_test 2024-08-06T20:22:15.2452551Z inflating: build/bin/Dict_test 2024-08-06T20:22:15.2510611Z inflating: build/bin/basic 2024-08-06T20:22:15.2559221Z inflating: build/bin/broadcast_test 2024-08-06T20:22:15.2618655Z inflating: build/bin/MaybeOwned_test 2024-08-06T20:22:15.2670577Z inflating: build/bin/cpu_generator_test 2024-08-06T20:22:15.2718365Z inflating: build/bin/test_parallel 2024-08-06T20:22:15.2766310Z inflating: build/bin/cpu_profiling_allocator_test 2024-08-06T20:22:15.2862201Z inflating: build/bin/kernel_lambda_test 2024-08-06T20:22:15.2910001Z inflating: build/bin/half_test 2024-08-06T20:22:15.3032037Z inflating: build/bin/kernel_lambda_legacy_test 2024-08-06T20:22:15.3077917Z inflating: build/bin/cpu_allocator_test 2024-08-06T20:22:15.3128614Z inflating: build/bin/static_runtime_bench 2024-08-06T20:22:15.3130172Z inflating: build/bin/verify_api_visibility 2024-08-06T20:22:15.3176992Z inflating: build/bin/Dimname_test 2024-08-06T20:22:15.3230128Z inflating: build/bin/atest 2024-08-06T20:22:15.3510617Z inflating: build/bin/static_runtime_test 2024-08-06T20:22:15.3557687Z inflating: build/bin/memory_overlapping_test 2024-08-06T20:22:15.3643068Z inflating: build/bin/cpu_rng_test 2024-08-06T20:22:15.3699159Z inflating: build/bin/inline_container_test 2024-08-06T20:22:15.3701654Z inflating: build/bin/thread_init_test 2024-08-06T20:22:15.3746551Z inflating: build/bin/dispatch_key_set_test 2024-08-06T20:22:15.3839435Z inflating: build/bin/List_test 2024-08-06T20:22:15.3885266Z inflating: build/bin/operators_test 2024-08-06T20:22:15.3930338Z inflating: build/bin/operator_name_test 2024-08-06T20:22:15.3975518Z inflating: build/bin/dlconvertor_test 2024-08-06T20:22:15.4021510Z inflating: build/bin/wrapdim_test 2024-08-06T20:22:15.4074663Z inflating: build/bin/extension_backend_test 2024-08-06T20:22:15.4121159Z inflating: build/bin/undefined_tensor_test 2024-08-06T20:22:15.4166137Z inflating: build/bin/lazy_tensor_test 2024-08-06T20:22:15.4214650Z inflating: build/bin/mobile_memory_cleanup 2024-08-06T20:22:15.4303358Z inflating: build/bin/ivalue_test 2024-08-06T20:22:15.4348631Z inflating: build/bin/CppSignature_test 2024-08-06T20:22:15.5596026Z inflating: build/bin/test_api 2024-08-06T20:22:15.5647690Z inflating: build/bin/scalar_tensor_test 2024-08-06T20:22:15.5954432Z inflating: build/bin/op_registration_test 2024-08-06T20:22:15.6001725Z inflating: build/bin/math_kernel_test 2024-08-06T20:22:15.6049402Z inflating: build/bin/memory_format_test 2024-08-06T20:22:15.6101172Z inflating: build/bin/native_test 2024-08-06T20:22:15.6145999Z inflating: build/bin/reduce_ops_test 2024-08-06T20:22:15.6192341Z inflating: build/bin/packedtensoraccessor_test 2024-08-06T20:22:15.6243837Z inflating: build/bin/quantized_test 2024-08-06T20:22:15.6289805Z inflating: build/bin/reportMemoryUsage_test 2024-08-06T20:22:15.6354288Z inflating: build/bin/pow_test 2024-08-06T20:22:15.6402040Z inflating: build/bin/test_edge_op_registration 2024-08-06T20:22:15.6417933Z inflating: build/bin/tutorial_tensorexpr 2024-08-06T20:22:15.6421675Z inflating: build/bin/torch_shm_manager 2024-08-06T20:22:15.7412331Z inflating: build/bin/test_tensorexpr 2024-08-06T20:22:15.7970838Z inflating: build/bin/test_jit 2024-08-06T20:22:15.7971276Z creating: .additional_ci_files/ 2024-08-06T20:22:15.8026511Z inflating: .additional_ci_files/test-times.json 2024-08-06T20:22:15.8249031Z inflating: .additional_ci_files/test-class-times.json 2024-08-06T20:22:15.8278540Z ##[group]Run rm artifacts.zip 2024-08-06T20:22:15.8278903Z rm artifacts.zip 2024-08-06T20:22:15.8284538Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:15.8284956Z env: 2024-08-06T20:22:15.8285189Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:15.8285450Z ##[endgroup] 2024-08-06T20:22:15.9716845Z ##[group]Run df -H 2024-08-06T20:22:15.9717285Z df -H 2024-08-06T20:22:15.9723648Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:15.9724239Z env: 2024-08-06T20:22:15.9724561Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:15.9724870Z ##[endgroup] 2024-08-06T20:22:15.9774384Z Filesystem Size Used Avail Use% Mounted on 2024-08-06T20:22:15.9774804Z devtmpfs 4.2M 0 4.2M 0% /dev 2024-08-06T20:22:15.9775364Z tmpfs 8.2G 1.3M 8.2G 1% /dev/shm 2024-08-06T20:22:15.9775719Z tmpfs 3.3G 488k 3.3G 1% /run 2024-08-06T20:22:15.9776073Z /dev/nvme0n1p1 161G 21G 141G 13% / 2024-08-06T20:22:15.9776794Z tmpfs 8.2G 13k 8.2G 1% /tmp 2024-08-06T20:22:15.9777471Z /dev/nvme0n1p128 11M 1.4M 9.2M 13% /boot/efi 2024-08-06T20:22:15.9824738Z Prepare all required actions 2024-08-06T20:22:15.9825347Z Getting action download info 2024-08-06T20:22:16.1170618Z ##[group]Run ./.github/actions/download-td-artifacts 2024-08-06T20:22:16.1171002Z with: 2024-08-06T20:22:16.1171198Z env: 2024-08-06T20:22:16.1171420Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:16.1171691Z ##[endgroup] 2024-08-06T20:22:16.1339224Z ##[group]Run seemethere/download-artifact-s3@v4 2024-08-06T20:22:16.1339596Z with: 2024-08-06T20:22:16.1339821Z name: td_results 2024-08-06T20:22:16.1340061Z s3-bucket: gha-artifacts 2024-08-06T20:22:16.1340361Z region: us-east-1 2024-08-06T20:22:16.1340594Z env: 2024-08-06T20:22:16.1340801Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:16.1341066Z ##[endgroup] 2024-08-06T20:22:16.6294942Z (node:173994) NOTE: We are formalizing our plans to enter AWS SDK for JavaScript (v2) into maintenance mode in 2023. 2024-08-06T20:22:16.6295471Z 2024-08-06T20:22:16.6295749Z Please migrate your code to use AWS SDK for JavaScript (v3). 2024-08-06T20:22:16.6296303Z For more information, check the migration guide at https://a.co/7PzMCcy 2024-08-06T20:22:16.6296886Z (Use `node --trace-warnings ...` to show where the warning was created) 2024-08-06T20:22:16.7032137Z Found 1 objects with prefix pytorch/pytorch/10273124344/td_results/ 2024-08-06T20:22:16.7032838Z Starting download (1/1): /home/ec2-user/actions-runner/_work/pytorch/pytorch/td_results.json 2024-08-06T20:22:16.7541741Z Finished download (1/1): /home/ec2-user/actions-runner/_work/pytorch/pytorch/td_results.json 2024-08-06T20:22:16.7548537Z Artifact download has finished successfully 2024-08-06T20:22:16.7757723Z ##[group]Run mkdir -p .additional_ci_files 2024-08-06T20:22:16.7758130Z mkdir -p .additional_ci_files 2024-08-06T20:22:16.7758554Z mv td_results.json .additional_ci_files/td_results.json 2024-08-06T20:22:16.7765529Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:16.7765918Z env: 2024-08-06T20:22:16.7766177Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:16.7766435Z ##[endgroup] 2024-08-06T20:22:16.7993772Z ##[group]Run .github/scripts/parse_ref.py 2024-08-06T20:22:16.7994451Z .github/scripts/parse_ref.py 2024-08-06T20:22:16.8004105Z shell: /usr/bin/bash -e {0} 2024-08-06T20:22:16.8004580Z env: 2024-08-06T20:22:16.8004949Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:16.8005399Z ##[endgroup] 2024-08-06T20:22:16.8297948Z Prepare all required actions 2024-08-06T20:22:16.8353554Z ##[group]Run ./.github/actions/get-workflow-job-id 2024-08-06T20:22:16.8353927Z with: 2024-08-06T20:22:16.8354429Z github-token: *** 2024-08-06T20:22:16.8354678Z env: 2024-08-06T20:22:16.8354902Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:16.8355157Z ##[endgroup] 2024-08-06T20:22:16.8433943Z ##[group]Run set -eux 2024-08-06T20:22:16.8434249Z set -eux 2024-08-06T20:22:16.8434694Z python3 .github/scripts/get_workflow_job_id.py "${GITHUB_RUN_ID}" "${RUNNER_NAME}" 2024-08-06T20:22:16.8440585Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:16.8440986Z env: 2024-08-06T20:22:16.8441203Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:16.8441783Z GITHUB_TOKEN: *** 2024-08-06T20:22:16.8442036Z ##[endgroup] 2024-08-06T20:22:16.8465787Z + python3 .github/scripts/get_workflow_job_id.py 10273124344 i-0e18f27a51b7f397a 2024-08-06T20:22:20.6827428Z setting job-id=28427540862 2024-08-06T20:22:20.6828127Z setting job-name=linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:22:20.7020938Z Prepare all required actions 2024-08-06T20:22:20.7021395Z Getting action download info 2024-08-06T20:22:20.8349324Z ##[group]Run ./.github/actions/filter-test-configs 2024-08-06T20:22:20.8349700Z with: 2024-08-06T20:22:20.8350154Z github-token: *** 2024-08-06T20:22:20.8352180Z test-matrix: {"include": [{"config": "default", "shard": 1, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 2, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 3, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 4, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 1, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 2, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 3, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}]} 2024-08-06T20:22:20.8354507Z job-name: linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:22:20.8354975Z env: 2024-08-06T20:22:20.8355198Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:20.8355487Z ##[endgroup] 2024-08-06T20:22:20.8399458Z ##[group]Run nick-fields/retry@3e91a01664abd3c5cd539100d10d33b9c5b68482 2024-08-06T20:22:20.8399901Z with: 2024-08-06T20:22:20.8400124Z shell: bash 2024-08-06T20:22:20.8400366Z timeout_minutes: 10 2024-08-06T20:22:20.8400614Z max_attempts: 5 2024-08-06T20:22:20.8400863Z retry_wait_seconds: 30 2024-08-06T20:22:20.8401689Z command: set -eux # PyYAML 6.0 doesn't work with MacOS x86 anymore # This must run on Python-3.7 (AmazonLinux2) so can't use request=3.32.2 python3 -m pip install requests==2.27.1 pyyaml==6.0.1 2024-08-06T20:22:20.8402555Z polling_interval_seconds: 1 2024-08-06T20:22:20.8402839Z warning_on_retry: true 2024-08-06T20:22:20.8403111Z continue_on_error: false 2024-08-06T20:22:20.8403365Z env: 2024-08-06T20:22:20.8403589Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:20.8404225Z GITHUB_TOKEN: *** 2024-08-06T20:22:20.8404473Z ##[endgroup] 2024-08-06T20:22:20.9109634Z + python3 -m pip install requests==2.27.1 pyyaml==6.0.1 2024-08-06T20:22:21.1629185Z Defaulting to user installation because normal site-packages is not writeable 2024-08-06T20:22:21.1793307Z Requirement already satisfied: requests==2.27.1 in /home/ec2-user/.local/lib/python3.9/site-packages (2.27.1) 2024-08-06T20:22:21.1797389Z Requirement already satisfied: pyyaml==6.0.1 in /home/ec2-user/.local/lib/python3.9/site-packages (6.0.1) 2024-08-06T20:22:21.1923549Z Requirement already satisfied: idna<4,>=2.5 in /usr/lib/python3.9/site-packages (from requests==2.27.1) (2.10) 2024-08-06T20:22:21.1928229Z Requirement already satisfied: certifi>=2017.4.17 in /home/ec2-user/.local/lib/python3.9/site-packages (from requests==2.27.1) (2024.7.4) 2024-08-06T20:22:21.1937992Z Requirement already satisfied: charset-normalizer~=2.0.0 in /home/ec2-user/.local/lib/python3.9/site-packages (from requests==2.27.1) (2.0.12) 2024-08-06T20:22:21.1944012Z Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/lib/python3.9/site-packages (from requests==2.27.1) (1.25.10) 2024-08-06T20:22:21.8936509Z Command completed after 1 attempt(s). 2024-08-06T20:22:21.8989817Z ##[group]Run set -x 2024-08-06T20:22:21.8990109Z set -x 2024-08-06T20:22:21.8990331Z  2024-08-06T20:22:21.8990735Z # Use relative path here as this could be checked out anywhere, not necessarily 2024-08-06T20:22:21.8991242Z # in runner workspace 2024-08-06T20:22:21.8991640Z python3 "${GITHUB_ACTION_PATH}/../../scripts/parse_ref.py" 2024-08-06T20:22:21.8997761Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:21.8998165Z env: 2024-08-06T20:22:21.8998391Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:21.8998668Z ##[endgroup] 2024-08-06T20:22:21.9022741Z + python3 /home/ec2-user/actions-runner/_work/pytorch/pytorch/./.github/actions/filter-test-configs/../../scripts/parse_ref.py 2024-08-06T20:22:21.9273462Z ##[group]Run echo "Workflow: ${GITHUB_WORKFLOW}" 2024-08-06T20:22:21.9273900Z echo "Workflow: ${GITHUB_WORKFLOW}" 2024-08-06T20:22:21.9274389Z echo "Job name: ${JOB_NAME}" 2024-08-06T20:22:21.9274688Z  2024-08-06T20:22:21.9275083Z # Use relative path here as this could be checked out anywhere, not necessarily 2024-08-06T20:22:21.9275578Z # in runner workspace 2024-08-06T20:22:21.9276006Z python3 "${GITHUB_ACTION_PATH}/../../scripts/filter_test_configs.py" \ 2024-08-06T20:22:21.9276504Z  --workflow "${GITHUB_WORKFLOW}" \ 2024-08-06T20:22:21.9276855Z  --job-name "${JOB_NAME}" \ 2024-08-06T20:22:21.9278974Z  --test-matrix "{"include": [{"config": "default", "shard": 1, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 2, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 3, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 4, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 1, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 2, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 3, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}]}" \ 2024-08-06T20:22:21.9281253Z  --selected-test-configs "" \ 2024-08-06T20:22:21.9281894Z  --pr-number "${PR_NUMBER}" \ 2024-08-06T20:22:21.9282244Z  --tag "${TAG}" \ 2024-08-06T20:22:21.9282548Z  --event-name "${EVENT_NAME}" \ 2024-08-06T20:22:21.9282878Z  --schedule "${SCHEDULE}" \ 2024-08-06T20:22:21.9283205Z  --branch "${HEAD_BRANCH}" 2024-08-06T20:22:21.9289229Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:21.9289619Z env: 2024-08-06T20:22:21.9289852Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:21.9290348Z GITHUB_TOKEN: *** 2024-08-06T20:22:21.9290757Z JOB_NAME: linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:22:21.9291245Z PR_NUMBER: 132710 2024-08-06T20:22:21.9291491Z TAG: 2024-08-06T20:22:21.9291700Z EVENT_NAME: pull_request 2024-08-06T20:22:21.9291967Z SCHEDULE: 2024-08-06T20:22:21.9292191Z HEAD_BRANCH: 2024-08-06T20:22:21.9292408Z ##[endgroup] 2024-08-06T20:22:21.9315660Z Workflow: pull 2024-08-06T20:22:21.9316109Z Job name: linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:22:22.1965634Z INFO:root:Found no test-config label on the PR, so all test configs are included 2024-08-06T20:22:22.3620855Z ##[group]Run echo "Filtered matrix:" 2024-08-06T20:22:22.3621218Z echo "Filtered matrix:" 2024-08-06T20:22:22.3623328Z echo "{"include": [{"config": "default", "shard": 1, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 2, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 3, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "default", "shard": 4, "num_shards": 4, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 1, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 2, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}, {"config": "dynamo", "shard": 3, "num_shards": 3, "runner": "amz2023.linux.2xlarge"}]}" 2024-08-06T20:22:22.3625422Z  2024-08-06T20:22:22.3625624Z echo 2024-08-06T20:22:22.3625930Z echo "Is the current job unstable? False" 2024-08-06T20:22:22.3626285Z  2024-08-06T20:22:22.3626489Z echo 2024-08-06T20:22:22.3626759Z echo "Is keep-going label set? False" 2024-08-06T20:22:22.3627099Z  2024-08-06T20:22:22.3627299Z echo 2024-08-06T20:22:22.3627546Z echo "Renabled issues? " 2024-08-06T20:22:22.3633220Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:22.3633606Z env: 2024-08-06T20:22:22.3633843Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:22.3634300Z ##[endgroup] 2024-08-06T20:22:22.3657461Z Filtered matrix: 2024-08-06T20:22:22.3660132Z {include: [{config: default, shard: 1, num_shards: 4, runner: amz2023.linux.2xlarge}, {config: default, shard: 2, num_shards: 4, runner: amz2023.linux.2xlarge}, {config: default, shard: 3, num_shards: 4, runner: amz2023.linux.2xlarge}, {config: default, shard: 4, num_shards: 4, runner: amz2023.linux.2xlarge}, {config: dynamo, shard: 1, num_shards: 3, runner: amz2023.linux.2xlarge}, {config: dynamo, shard: 2, num_shards: 3, runner: amz2023.linux.2xlarge}, {config: dynamo, shard: 3, num_shards: 3, runner: amz2023.linux.2xlarge}]} 2024-08-06T20:22:22.3662216Z 2024-08-06T20:22:22.3662335Z Is the current job unstable? False 2024-08-06T20:22:22.3662559Z 2024-08-06T20:22:22.3662675Z Is keep-going label set? False 2024-08-06T20:22:22.3663032Z 2024-08-06T20:22:22.3663143Z Renabled issues? 2024-08-06T20:22:22.3709298Z ##[group]Run echo "timeout=$((JOB_TIMEOUT-30))" >> "${GITHUB_OUTPUT}" 2024-08-06T20:22:22.3709830Z echo "timeout=$((JOB_TIMEOUT-30))" >> "${GITHUB_OUTPUT}" 2024-08-06T20:22:22.3715515Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T20:22:22.3715929Z env: 2024-08-06T20:22:22.3716140Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:22.3716413Z JOB_TIMEOUT: 600 2024-08-06T20:22:22.3716652Z ##[endgroup] 2024-08-06T20:22:22.3833651Z ##[group]Run set -x 2024-08-06T20:22:22.3834008Z set -x 2024-08-06T20:22:22.3834237Z  2024-08-06T20:22:22.3834496Z if [[ $TEST_CONFIG == 'multigpu' ]]; then 2024-08-06T20:22:22.3834909Z  TEST_COMMAND=.ci/pytorch/multigpu-test.sh 2024-08-06T20:22:22.3835309Z elif [[ $BUILD_ENVIRONMENT == *onnx* ]]; then 2024-08-06T20:22:22.3835689Z  TEST_COMMAND=.ci/onnx/test.sh 2024-08-06T20:22:22.3836008Z else 2024-08-06T20:22:22.3836258Z  TEST_COMMAND=.ci/pytorch/test.sh 2024-08-06T20:22:22.3836582Z fi 2024-08-06T20:22:22.3836799Z  2024-08-06T20:22:22.3837135Z # detached container should get cleaned up by teardown_ec2_linux 2024-08-06T20:22:22.3837694Z # TODO: Stop building test binaries as part of the build phase 2024-08-06T20:22:22.3838200Z # Used for GPU_FLAG since that doesn't play nice 2024-08-06T20:22:22.3838643Z # shellcheck disable=SC2086,SC2090 2024-08-06T20:22:22.3838982Z container_name=$(docker run \ 2024-08-06T20:22:22.3839310Z  ${GPU_FLAG:-} \ 2024-08-06T20:22:22.3839602Z  -e BUILD_ENVIRONMENT \ 2024-08-06T20:22:22.3839901Z  -e PR_NUMBER \ 2024-08-06T20:22:22.3840184Z  -e GITHUB_ACTIONS \ 2024-08-06T20:22:22.3840494Z  -e GITHUB_REPOSITORY \ 2024-08-06T20:22:22.3840798Z  -e GITHUB_WORKFLOW \ 2024-08-06T20:22:22.3841099Z  -e GITHUB_JOB \ 2024-08-06T20:22:22.3841382Z  -e GITHUB_RUN_ID \ 2024-08-06T20:22:22.3841661Z  -e GITHUB_RUN_NUMBER \ 2024-08-06T20:22:22.3841973Z  -e GITHUB_RUN_ATTEMPT \ 2024-08-06T20:22:22.3842281Z  -e JOB_ID \ 2024-08-06T20:22:22.3842532Z  -e JOB_NAME \ 2024-08-06T20:22:22.3842809Z  -e BASE_SHA \ 2024-08-06T20:22:22.3843082Z  -e BRANCH \ 2024-08-06T20:22:22.3843330Z  -e SHA1 \ 2024-08-06T20:22:22.3843600Z  -e AWS_DEFAULT_REGION \ 2024-08-06T20:22:22.3843912Z  -e IN_WHEEL_TEST \ 2024-08-06T20:22:22.3844192Z  -e SHARD_NUMBER \ 2024-08-06T20:22:22.3844477Z  -e TEST_CONFIG \ 2024-08-06T20:22:22.3844763Z  -e NUM_TEST_SHARDS \ 2024-08-06T20:22:22.3845055Z  -e REENABLED_ISSUES \ 2024-08-06T20:22:22.3845367Z  -e CONTINUE_THROUGH_ERROR \ 2024-08-06T20:22:22.3845693Z  -e VERBOSE_TEST_LOGS \ 2024-08-06T20:22:22.3845990Z  -e TEST_SHOWLOCALS \ 2024-08-06T20:22:22.3846723Z  -e NO_TEST_TIMEOUT \ 2024-08-06T20:22:22.3847016Z  -e NO_TD \ 2024-08-06T20:22:22.3847271Z  -e TD_DISTRIBUTED \ 2024-08-06T20:22:22.3847570Z  -e PR_LABELS \ 2024-08-06T20:22:22.3847879Z  -e MAX_JOBS="$(nproc --ignore=2)" \ 2024-08-06T20:22:22.3848376Z  -e SCCACHE_BUCKET \ 2024-08-06T20:22:22.3848685Z  -e SCCACHE_S3_KEY_PREFIX \ 2024-08-06T20:22:22.3848999Z  -e XLA_CUDA \ 2024-08-06T20:22:22.3849292Z  -e XLA_CLANG_CACHE_S3_BUCKET_NAME \ 2024-08-06T20:22:22.3849666Z  -e PYTORCH_TEST_CUDA_MEM_LEAK_CHECK \ 2024-08-06T20:22:22.3850050Z  -e PYTORCH_TEST_RERUN_DISABLED_TESTS \ 2024-08-06T20:22:22.3850415Z  -e SKIP_SCCACHE_INITIALIZATION=1 \ 2024-08-06T20:22:22.3850770Z  -e HUGGING_FACE_HUB_TOKEN \ 2024-08-06T20:22:22.3851094Z  -e DASHBOARD_TAG \ 2024-08-06T20:22:22.3851430Z  --env-file="/tmp/github_env_${GITHUB_RUN_ID}" \ 2024-08-06T20:22:22.3851841Z  --security-opt seccomp=unconfined \ 2024-08-06T20:22:22.3852200Z  --cap-add=SYS_PTRACE \ 2024-08-06T20:22:22.3852494Z  --ipc=host \ 2024-08-06T20:22:22.3852773Z  --shm-size="${SHM_SIZE}" \ 2024-08-06T20:22:22.3853086Z  --tty \ 2024-08-06T20:22:22.3853320Z  --detach \ 2024-08-06T20:22:22.3853594Z  --name="${container_name}" \ 2024-08-06T20:22:22.3854086Z  --user jenkins \ 2024-08-06T20:22:22.3854445Z  -v "${GITHUB_WORKSPACE}:/var/lib/jenkins/workspace" \ 2024-08-06T20:22:22.3854869Z  -w /var/lib/jenkins/workspace \ 2024-08-06T20:22:22.3855208Z  "${DOCKER_IMAGE}" 2024-08-06T20:22:22.3855471Z ) 2024-08-06T20:22:22.3855775Z # Propagate download.pytorch.org IP to container 2024-08-06T20:22:22.3856478Z grep download.pytorch.org /etc/hosts | docker exec -i "${container_name}" sudo bash -c "/bin/cat >> /etc/hosts" 2024-08-06T20:22:22.3857207Z echo "DOCKER_CONTAINER_ID=${container_name}" >> "${GITHUB_ENV}" 2024-08-06T20:22:22.3857895Z docker exec -t "${container_name}" sh -c "pip install $(echo dist/*.whl)[opt-einsum] && ${TEST_COMMAND}" 2024-08-06T20:22:22.3864353Z shell: /usr/bin/bash -e {0} 2024-08-06T20:22:22.3864672Z env: 2024-08-06T20:22:22.3864907Z GIT_DEFAULT_BRANCH: main 2024-08-06T20:22:22.3865237Z BUILD_ENVIRONMENT: linux-focal-py3.12-clang10 2024-08-06T20:22:22.3865586Z PR_NUMBER: 132710 2024-08-06T20:22:22.3865857Z GITHUB_REPOSITORY: pytorch/pytorch 2024-08-06T20:22:22.3866177Z GITHUB_WORKFLOW: pull 2024-08-06T20:22:22.3866424Z GITHUB_JOB: test 2024-08-06T20:22:22.3866676Z GITHUB_RUN_ID: 10273124344 2024-08-06T20:22:22.3866957Z GITHUB_RUN_NUMBER: 233985 2024-08-06T20:22:22.3867223Z GITHUB_RUN_ATTEMPT: 1 2024-08-06T20:22:22.3867478Z JOB_ID: 28427540862 2024-08-06T20:22:22.3867889Z JOB_NAME: linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:22:22.3868358Z BRANCH: pull/132710 2024-08-06T20:22:22.3868644Z SHA1: b9d86fa89636e301796d4201f36d86c73f6e49bc 2024-08-06T20:22:22.3869027Z BASE_SHA: 1736af7cf736184c356be1bb00f59fb2feea6d7d 2024-08-06T20:22:22.3869369Z TEST_CONFIG: dynamo 2024-08-06T20:22:22.3869626Z SHARD_NUMBER: 1 2024-08-06T20:22:22.3869867Z NUM_TEST_SHARDS: 3 2024-08-06T20:22:22.3870104Z REENABLED_ISSUES: 2024-08-06T20:22:22.3870368Z CONTINUE_THROUGH_ERROR: False 2024-08-06T20:22:22.3870682Z VERBOSE_TEST_LOGS: False 2024-08-06T20:22:22.3870952Z TEST_SHOWLOCALS: False 2024-08-06T20:22:22.3871229Z NO_TEST_TIMEOUT: False 2024-08-06T20:22:22.3871494Z NO_TD: False 2024-08-06T20:22:22.3871717Z TD_DISTRIBUTED: False 2024-08-06T20:22:22.3872035Z SCCACHE_BUCKET: ossci-compiler-cache-circleci-v2 2024-08-06T20:22:22.3872410Z SCCACHE_S3_KEY_PREFIX: pull 2024-08-06T20:22:22.3872682Z SHM_SIZE: 1g 2024-08-06T20:22:22.3873372Z DOCKER_IMAGE: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:22:22.3874128Z XLA_CUDA: 2024-08-06T20:22:22.3874478Z XLA_CLANG_CACHE_S3_BUCKET_NAME: ossci-compiler-clang-cache-circleci-xla 2024-08-06T20:22:22.3874954Z PYTORCH_TEST_CUDA_MEM_LEAK_CHECK: 0 2024-08-06T20:22:22.3875411Z PYTORCH_TEST_RERUN_DISABLED_TESTS: 0 2024-08-06T20:22:22.3875720Z DASHBOARD_TAG: 2024-08-06T20:22:22.3875975Z HUGGING_FACE_HUB_TOKEN: 2024-08-06T20:22:22.3876252Z ##[endgroup] 2024-08-06T20:22:22.3899860Z + [[ dynamo == \m\u\l\t\i\g\p\u ]] 2024-08-06T20:22:22.3900236Z + [[ linux-focal-py3.12-clang10 == *onnx* ]] 2024-08-06T20:22:22.3900588Z + TEST_COMMAND=.ci/pytorch/test.sh 2024-08-06T20:22:22.3908226Z +++ nproc --ignore=2 2024-08-06T20:22:22.3926919Z ++ docker run -e BUILD_ENVIRONMENT -e PR_NUMBER -e GITHUB_ACTIONS -e GITHUB_REPOSITORY -e GITHUB_WORKFLOW -e GITHUB_JOB -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_RUN_ATTEMPT -e JOB_ID -e JOB_NAME -e BASE_SHA -e BRANCH -e SHA1 -e AWS_DEFAULT_REGION -e IN_WHEEL_TEST -e SHARD_NUMBER -e TEST_CONFIG -e NUM_TEST_SHARDS -e REENABLED_ISSUES -e CONTINUE_THROUGH_ERROR -e VERBOSE_TEST_LOGS -e TEST_SHOWLOCALS -e NO_TEST_TIMEOUT -e NO_TD -e TD_DISTRIBUTED -e PR_LABELS -e MAX_JOBS=6 -e SCCACHE_BUCKET -e SCCACHE_S3_KEY_PREFIX -e XLA_CUDA -e XLA_CLANG_CACHE_S3_BUCKET_NAME -e PYTORCH_TEST_CUDA_MEM_LEAK_CHECK -e PYTORCH_TEST_RERUN_DISABLED_TESTS -e SKIP_SCCACHE_INITIALIZATION=1 -e HUGGING_FACE_HUB_TOKEN -e DASHBOARD_TAG --env-file=/tmp/github_env_10273124344 --security-opt seccomp=unconfined --cap-add=SYS_PTRACE --ipc=host --shm-size=1g --tty --detach --name= --user jenkins -v /home/ec2-user/actions-runner/_work/pytorch/pytorch:/var/lib/jenkins/workspace -w /var/lib/jenkins/workspace 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T20:22:31.2507002Z + container_name=38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T20:22:31.2511464Z + grep download.pytorch.org /etc/hosts 2024-08-06T20:22:31.2513653Z + docker exec -i 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 sudo bash -c '/bin/cat >> /etc/hosts' 2024-08-06T20:22:31.4294004Z + echo DOCKER_CONTAINER_ID=38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T20:22:31.4297881Z ++ echo dist/torch-2.5.0a0+gitb9d86fa-cp312-cp312-linux_x86_64.whl 2024-08-06T20:22:31.4300391Z + docker exec -t 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 sh -c 'pip install dist/torch-2.5.0a0+gitb9d86fa-cp312-cp312-linux_x86_64.whl[opt-einsum] && .ci/pytorch/test.sh' 2024-08-06T20:22:32.1474766Z Processing ./dist/torch-2.5.0a0+gitb9d86fa-cp312-cp312-linux_x86_64.whl (from torch==2.5.0a0+gitb9d86fa) 2024-08-06T20:22:32.5822615Z Requirement already satisfied: filelock in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (3.13.1) 2024-08-06T20:22:32.5831829Z Requirement already satisfied: typing-extensions>=4.8.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (4.12.2) 2024-08-06T20:22:32.5841580Z Requirement already satisfied: networkx in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (2.8.8) 2024-08-06T20:22:32.5848388Z Requirement already satisfied: jinja2 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (3.1.4) 2024-08-06T20:22:32.5862490Z Requirement already satisfied: fsspec in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (2024.6.1) 2024-08-06T20:22:32.5871899Z Requirement already satisfied: setuptools in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (69.5.1) 2024-08-06T20:22:32.5889257Z Requirement already satisfied: sympy>=1.13.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (1.13.1) 2024-08-06T20:22:32.5972748Z Requirement already satisfied: opt-einsum>=3.3 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (3.3.0) 2024-08-06T20:22:32.6025006Z Requirement already satisfied: numpy>=1.7 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from opt-einsum>=3.3->torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (1.26.0) 2024-08-06T20:22:32.6061605Z Requirement already satisfied: mpmath<1.4,>=1.1.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from sympy>=1.13.0->torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (1.3.0) 2024-08-06T20:22:32.6641371Z Requirement already satisfied: MarkupSafe>=2.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from jinja2->torch==2.5.0a0+gitb9d86fa->torch==2.5.0a0+gitb9d86fa) (2.1.5) 2024-08-06T20:22:33.3955388Z Installing collected packages: torch 2024-08-06T20:22:42.9362628Z Successfully installed torch-2.5.0a0+gitb9d86fa 2024-08-06T20:22:43.0798040Z ++ dirname .ci/pytorch/test.sh 2024-08-06T20:22:43.0819668Z + source .ci/pytorch/common.sh 2024-08-06T20:22:43.0827696Z +++ dirname .ci/pytorch/common.sh 2024-08-06T20:22:43.0833671Z ++ source .ci/pytorch/common_utils.sh 2024-08-06T20:22:43.0841024Z +++ declare -f -t trap_add 2024-08-06T20:22:43.0846613Z ++ set -ex 2024-08-06T20:22:43.0847059Z ++ [[ linux-focal-py3.12-clang10 == *rocm* ]] 2024-08-06T20:22:43.0848100Z ++ BUILD_TEST_LIBTORCH=0 2024-08-06T20:22:43.0848682Z + [[ linux-focal-py3.12-clang10 != *rocm* ]] 2024-08-06T20:22:43.0851247Z ++ stat -c %u /var/lib/jenkins/workspace 2024-08-06T20:22:43.0887597Z + WORKSPACE_ORIGINAL_OWNER_ID=1000 2024-08-06T20:22:43.0887959Z + trap_add cleanup_workspace EXIT 2024-08-06T20:22:43.0888283Z + trap_add_cmd=cleanup_workspace 2024-08-06T20:22:43.0888573Z + shift 2024-08-06T20:22:43.0888806Z + for trap_add_name in "$@" 2024-08-06T20:22:43.0894833Z +++ trap -p EXIT 2024-08-06T20:22:43.0897218Z ++ eval 'extract_trap_cmd ' 2024-08-06T20:22:43.0897671Z +++ extract_trap_cmd 2024-08-06T20:22:43.0897940Z +++ printf '%s\n' '' 2024-08-06T20:22:43.0898201Z ++ printf '%s\n' cleanup_workspace 2024-08-06T20:22:43.0899641Z + trap -- ' 2024-08-06T20:22:43.0899922Z cleanup_workspace' EXIT 2024-08-06T20:22:43.0900326Z + sudo chown -R jenkins /var/lib/jenkins/workspace 2024-08-06T20:22:43.5454835Z + git config --global --add safe.directory /var/lib/jenkins/workspace 2024-08-06T20:22:43.5721755Z + echo 'Environment variables:' 2024-08-06T20:22:43.5722284Z Environment variables: 2024-08-06T20:22:43.5722537Z + env 2024-08-06T20:22:43.5744211Z INSTALLED_DB=yes 2024-08-06T20:22:43.5745029Z GITHUB_WORKSPACE=/home/ec2-user/actions-runner/_work/pytorch/pytorch 2024-08-06T20:22:43.5745870Z CONTINUE_THROUGH_ERROR=False 2024-08-06T20:22:43.5746215Z BUILD_ENVIRONMENT=linux-focal-py3.12-clang10 2024-08-06T20:22:43.5746592Z HOSTNAME=38c9753a9a29 2024-08-06T20:22:43.5747234Z GITHUB_PATH=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/add_path_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5747953Z GITHUB_ACTION=__self 2024-08-06T20:22:43.5748268Z PYTORCH_TEST_CUDA_MEM_LEAK_CHECK=0 2024-08-06T20:22:43.5748581Z GITHUB_RUN_NUMBER=233985 2024-08-06T20:22:43.5748879Z TEST_CONFIG=dynamo 2024-08-06T20:22:43.5749284Z GITHUB_REPOSITORY_OWNER_ID=21003710 2024-08-06T20:22:43.5749628Z TORCH_NVCC_FLAGS=-Xfatbin -compress-all 2024-08-06T20:22:43.5749968Z GITHUB_TRIGGERING_ACTOR=drisspg 2024-08-06T20:22:43.5750260Z GITHUB_REF_TYPE=branch 2024-08-06T20:22:43.5750554Z TORCH_CUDA_ARCH_LIST=Maxwell 2024-08-06T20:22:43.5750895Z BASE_SHA=1736af7cf736184c356be1bb00f59fb2feea6d7d 2024-08-06T20:22:43.5751227Z XLA_CUDA= 2024-08-06T20:22:43.5751501Z HUGGING_FACE_HUB_TOKEN= 2024-08-06T20:22:43.5751942Z *** 2024-08-06T20:22:43.5752205Z GITHUB_REPOSITORY_ID=65600975 2024-08-06T20:22:43.5752493Z GITHUB_ACTIONS=true 2024-08-06T20:22:43.5752772Z SHA1=b9d86fa89636e301796d4201f36d86c73f6e49bc 2024-08-06T20:22:43.5753194Z GITHUB_SHA=bf5bb5a1585a03379137fab341e87c02c77e76cd 2024-08-06T20:22:43.5753813Z GITHUB_WORKFLOW_REF=pytorch/pytorch/.github/workflows/pull.yml@refs/pull/132710/merge 2024-08-06T20:22:43.5754337Z UCC_HOME=/usr 2024-08-06T20:22:43.5754603Z VERBOSE_TEST_LOGS=False 2024-08-06T20:22:43.5754878Z GITHUB_REF=refs/pull/132710/merge 2024-08-06T20:22:43.5755490Z SHARD_NUMBER=1 2024-08-06T20:22:43.5755723Z GITHUB_REF_PROTECTED=false 2024-08-06T20:22:43.5756046Z HOME=/var/lib/jenkins 2024-08-06T20:22:43.5756346Z GITHUB_API_URL=https://api.github.com 2024-08-06T20:22:43.5756729Z PYTORCH_TEST_RERUN_DISABLED_TESTS=0 2024-08-06T20:22:43.5757035Z UCX_COMMIT= 2024-08-06T20:22:43.5757269Z SCCACHE_S3_KEY_PREFIX=pull 2024-08-06T20:22:43.5757598Z NUM_TEST_SHARDS=3 2024-08-06T20:22:43.5757839Z UCX_HOME=/usr 2024-08-06T20:22:43.5758496Z GITHUB_STATE=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/save_state_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5759370Z JOB_NAME=linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:22:43.5760223Z GITHUB_ENV=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/set_env_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5761118Z GITHUB_EVENT_PATH=/home/ec2-user/actions-runner/_work/_temp/_github_workflow/event.json 2024-08-06T20:22:43.5761636Z GITHUB_EVENT_NAME=pull_request 2024-08-06T20:22:43.5761928Z DASHBOARD_TAG= 2024-08-06T20:22:43.5762216Z GITHUB_RUN_ID=10273124344 2024-08-06T20:22:43.5763207Z GITHUB_STEP_SUMMARY=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/step_summary_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5763928Z GITHUB_ACTOR=drisspg 2024-08-06T20:22:43.5764198Z PR_NUMBER=132710 2024-08-06T20:22:43.5764482Z DESIRED_CUDA= 2024-08-06T20:22:43.5764713Z GITHUB_RUN_ATTEMPT=1 2024-08-06T20:22:43.5764979Z ANACONDA_PYTHON_VERSION=3.12 2024-08-06T20:22:43.5765313Z GITHUB_GRAPHQL_URL=https://api.github.com/graphql 2024-08-06T20:22:43.5765693Z TERM=xterm 2024-08-06T20:22:43.5765906Z INSTALLED_VISION=yes 2024-08-06T20:22:43.5766164Z BRANCH=pull/132710 2024-08-06T20:22:43.5766408Z OPENSSL_ROOT_DIR=/opt/openssl 2024-08-06T20:22:43.5766704Z CUDA_PATH=/usr/local/cuda 2024-08-06T20:22:43.5767245Z GITHUB_ACTION_PATH=/home/ec2-user/actions-runner/_work/pytorch/pytorch/./.github/actions/setup-linux 2024-08-06T20:22:43.5767842Z GITHUB_SERVER_URL=https://github.com 2024-08-06T20:22:43.5768215Z UCC_COMMIT= 2024-08-06T20:22:43.5768443Z REENABLED_ISSUES= 2024-08-06T20:22:43.5768667Z DOCS= 2024-08-06T20:22:43.5768893Z INSTALLED_ANDROID= 2024-08-06T20:22:43.5769135Z SHLVL=1 2024-08-06T20:22:43.5769334Z MAX_JOBS=6 2024-08-06T20:22:43.5769558Z GITHUB_ACTOR_ID=32754868 2024-08-06T20:22:43.5769915Z GITHUB_WORKFLOW_SHA=bf5bb5a1585a03379137fab341e87c02c77e76cd 2024-08-06T20:22:43.5770312Z GITHUB_REF_NAME=132710/merge 2024-08-06T20:22:43.5770727Z XLA_CLANG_CACHE_S3_BUCKET_NAME=ossci-compiler-clang-cache-circleci-xla 2024-08-06T20:22:43.5771183Z GITHUB_JOB=test 2024-08-06T20:22:43.5771415Z NO_TEST_TIMEOUT=False 2024-08-06T20:22:43.5771678Z TD_DISTRIBUTED=False 2024-08-06T20:22:43.5771952Z GITHUB_REPOSITORY=pytorch/pytorch 2024-08-06T20:22:43.5772249Z GITHUB_RETENTION_DAYS=90 2024-08-06T20:22:43.5772518Z OPENSSL_DIR=/opt/openssl 2024-08-06T20:22:43.5772787Z GITHUB_ACTION_REPOSITORY= 2024-08-06T20:22:43.5773641Z PATH=/opt/cache/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/opt/conda/envs/py_3.12/bin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 2024-08-06T20:22:43.5774511Z GITHUB_BASE_REF=gh/drisspg/23/base 2024-08-06T20:22:43.5774821Z INSTALLED_ACL= 2024-08-06T20:22:43.5775085Z CI=true 2024-08-06T20:22:43.5775323Z GITHUB_REPOSITORY_OWNER=pytorch 2024-08-06T20:22:43.5775610Z JOB_ID=28427540862 2024-08-06T20:22:43.5775840Z INSTALLED_PROTOBUF=yes 2024-08-06T20:22:43.5776114Z GITHUB_HEAD_REF=gh/drisspg/23/head 2024-08-06T20:22:43.5776402Z GITHUB_ACTION_REF= 2024-08-06T20:22:43.5776701Z SCCACHE_BUCKET=ossci-compiler-cache-circleci-v2 2024-08-06T20:22:43.5777071Z TEST_SHOWLOCALS=False 2024-08-06T20:22:43.5777319Z GITHUB_WORKFLOW=pull 2024-08-06T20:22:43.5777591Z DEBIAN_FRONTEND=noninteractive 2024-08-06T20:22:43.5778244Z GITHUB_OUTPUT=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/set_output_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5778890Z NO_TD=False 2024-08-06T20:22:43.5779302Z SKIP_SCCACHE_INITIALIZATION=1 2024-08-06T20:22:43.5779588Z _=/usr/bin/env 2024-08-06T20:22:43.5779912Z ++ python -c 'import site; print(site.getsitepackages()[0])' 2024-08-06T20:22:43.5928213Z + TORCH_INSTALL_DIR=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch 2024-08-06T20:22:43.5929215Z + TORCH_BIN_DIR=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/bin 2024-08-06T20:22:43.5929829Z + TORCH_LIB_DIR=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib 2024-08-06T20:22:43.5930434Z + TORCH_TEST_DIR=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/test 2024-08-06T20:22:43.5930904Z + BUILD_DIR=build 2024-08-06T20:22:43.5931170Z + BUILD_RENAMED_DIR=build_renamed 2024-08-06T20:22:43.5931569Z + BUILD_BIN_DIR=build/bin 2024-08-06T20:22:43.5931848Z + SHARD_NUMBER=1 2024-08-06T20:22:43.5932159Z + NUM_TEST_SHARDS=3 2024-08-06T20:22:43.5932569Z + export VALGRIND=ON 2024-08-06T20:22:43.5933027Z + VALGRIND=ON 2024-08-06T20:22:43.5933321Z + [[ linux-focal-py3.12-clang10 == *clang9* ]] 2024-08-06T20:22:43.5933740Z + [[ 0 == \1 ]] 2024-08-06T20:22:43.5933972Z + [[ False == \1 ]] 2024-08-06T20:22:43.5934233Z + [[ linux-focal-py3.12-clang10 != *bazel* ]] 2024-08-06T20:22:43.5934879Z ++ realpath build/custom_test_artifacts 2024-08-06T20:22:43.5953034Z + CUSTOM_TEST_ARTIFACT_BUILD_DIR=/var/lib/jenkins/workspace/build/custom_test_artifacts 2024-08-06T20:22:43.5953573Z + [[ -n '' ]] 2024-08-06T20:22:43.5953811Z + echo 'Environment variables' 2024-08-06T20:22:43.5954105Z Environment variables 2024-08-06T20:22:43.5954354Z + env 2024-08-06T20:22:43.5961135Z INSTALLED_DB=yes 2024-08-06T20:22:43.5961893Z GITHUB_WORKSPACE=/home/ec2-user/actions-runner/_work/pytorch/pytorch 2024-08-06T20:22:43.5962445Z CONTINUE_THROUGH_ERROR=False 2024-08-06T20:22:43.5963123Z BUILD_ENVIRONMENT=linux-focal-py3.12-clang10 2024-08-06T20:22:43.5963619Z HOSTNAME=38c9753a9a29 2024-08-06T20:22:43.5964368Z GITHUB_PATH=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/add_path_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5965478Z GITHUB_ACTION=__self 2024-08-06T20:22:43.5965757Z PYTORCH_TEST_CUDA_MEM_LEAK_CHECK=0 2024-08-06T20:22:43.5966130Z GITHUB_RUN_NUMBER=233985 2024-08-06T20:22:43.5966385Z TEST_CONFIG=dynamo 2024-08-06T20:22:43.5966654Z GITHUB_REPOSITORY_OWNER_ID=21003710 2024-08-06T20:22:43.5966993Z TORCH_NVCC_FLAGS=-Xfatbin -compress-all 2024-08-06T20:22:43.5967320Z GITHUB_TRIGGERING_ACTOR=drisspg 2024-08-06T20:22:43.5967616Z GITHUB_REF_TYPE=branch 2024-08-06T20:22:43.5967882Z TORCH_CUDA_ARCH_LIST=Maxwell 2024-08-06T20:22:43.5968197Z BASE_SHA=1736af7cf736184c356be1bb00f59fb2feea6d7d 2024-08-06T20:22:43.5968540Z XLA_CUDA= 2024-08-06T20:22:43.5968764Z HUGGING_FACE_HUB_TOKEN= 2024-08-06T20:22:43.5969151Z *** 2024-08-06T20:22:43.5969377Z GITHUB_REPOSITORY_ID=65600975 2024-08-06T20:22:43.5969691Z GITHUB_ACTIONS=true 2024-08-06T20:22:43.5969988Z SHA1=b9d86fa89636e301796d4201f36d86c73f6e49bc 2024-08-06T20:22:43.5970371Z GITHUB_SHA=bf5bb5a1585a03379137fab341e87c02c77e76cd 2024-08-06T20:22:43.5970930Z GITHUB_WORKFLOW_REF=pytorch/pytorch/.github/workflows/pull.yml@refs/pull/132710/merge 2024-08-06T20:22:43.5971444Z UCC_HOME=/usr 2024-08-06T20:22:43.5971685Z VERBOSE_TEST_LOGS=False 2024-08-06T20:22:43.5971967Z GITHUB_REF=refs/pull/132710/merge 2024-08-06T20:22:43.5972254Z SHARD_NUMBER=1 2024-08-06T20:22:43.5972495Z GITHUB_REF_PROTECTED=false 2024-08-06T20:22:43.5972773Z HOME=/var/lib/jenkins 2024-08-06T20:22:43.5973050Z GITHUB_API_URL=https://api.github.com 2024-08-06T20:22:43.5973390Z PYTORCH_TEST_RERUN_DISABLED_TESTS=0 2024-08-06T20:22:43.5973763Z UCX_COMMIT= 2024-08-06T20:22:43.5973989Z SCCACHE_S3_KEY_PREFIX=pull 2024-08-06T20:22:43.5974271Z NUM_TEST_SHARDS=3 2024-08-06T20:22:43.5974497Z UCX_HOME=/usr 2024-08-06T20:22:43.5975092Z GITHUB_STATE=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/save_state_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5975930Z JOB_NAME=linux-focal-py3.12-clang10 / test (dynamo, 1, 3, amz2023.linux.2xlarge) 2024-08-06T20:22:43.5976813Z GITHUB_ENV=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/set_env_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5977893Z GITHUB_EVENT_PATH=/home/ec2-user/actions-runner/_work/_temp/_github_workflow/event.json 2024-08-06T20:22:43.5978443Z GITHUB_EVENT_NAME=pull_request 2024-08-06T20:22:43.5978744Z DASHBOARD_TAG= 2024-08-06T20:22:43.5978975Z GITHUB_RUN_ID=10273124344 2024-08-06T20:22:43.5979637Z GITHUB_STEP_SUMMARY=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/step_summary_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5980347Z GITHUB_ACTOR=drisspg 2024-08-06T20:22:43.5980595Z PR_NUMBER=132710 2024-08-06T20:22:43.5980838Z DESIRED_CUDA= 2024-08-06T20:22:43.5981080Z GITHUB_RUN_ATTEMPT=1 2024-08-06T20:22:43.5981319Z VALGRIND=ON 2024-08-06T20:22:43.5981558Z ANACONDA_PYTHON_VERSION=3.12 2024-08-06T20:22:43.5981897Z GITHUB_GRAPHQL_URL=https://api.github.com/graphql 2024-08-06T20:22:43.5982264Z TERM=xterm 2024-08-06T20:22:43.5982514Z INSTALLED_VISION=yes 2024-08-06T20:22:43.5982777Z BRANCH=pull/132710 2024-08-06T20:22:43.5983026Z OPENSSL_ROOT_DIR=/opt/openssl 2024-08-06T20:22:43.5983328Z CUDA_PATH=/usr/local/cuda 2024-08-06T20:22:43.5983984Z GITHUB_ACTION_PATH=/home/ec2-user/actions-runner/_work/pytorch/pytorch/./.github/actions/setup-linux 2024-08-06T20:22:43.5984582Z GITHUB_SERVER_URL=https://github.com 2024-08-06T20:22:43.5984896Z UCC_COMMIT= 2024-08-06T20:22:43.5985122Z REENABLED_ISSUES= 2024-08-06T20:22:43.5985342Z DOCS= 2024-08-06T20:22:43.5985555Z INSTALLED_ANDROID= 2024-08-06T20:22:43.5985777Z SHLVL=1 2024-08-06T20:22:43.5985986Z MAX_JOBS=6 2024-08-06T20:22:43.5986219Z GITHUB_ACTOR_ID=32754868 2024-08-06T20:22:43.5986564Z GITHUB_WORKFLOW_SHA=bf5bb5a1585a03379137fab341e87c02c77e76cd 2024-08-06T20:22:43.5986978Z GITHUB_REF_NAME=132710/merge 2024-08-06T20:22:43.5987400Z XLA_CLANG_CACHE_S3_BUCKET_NAME=ossci-compiler-clang-cache-circleci-xla 2024-08-06T20:22:43.5987836Z GITHUB_JOB=test 2024-08-06T20:22:43.5988081Z NO_TEST_TIMEOUT=False 2024-08-06T20:22:43.5988339Z TD_DISTRIBUTED=False 2024-08-06T20:22:43.5988607Z GITHUB_REPOSITORY=pytorch/pytorch 2024-08-06T20:22:43.5988915Z GITHUB_RETENTION_DAYS=90 2024-08-06T20:22:43.5989191Z OPENSSL_DIR=/opt/openssl 2024-08-06T20:22:43.5989463Z GITHUB_ACTION_REPOSITORY= 2024-08-06T20:22:43.5990357Z PATH=/opt/cache/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/opt/conda/envs/py_3.12/bin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 2024-08-06T20:22:43.5991219Z GITHUB_BASE_REF=gh/drisspg/23/base 2024-08-06T20:22:43.5991514Z INSTALLED_ACL= 2024-08-06T20:22:43.5991741Z CI=true 2024-08-06T20:22:43.5991974Z GITHUB_REPOSITORY_OWNER=pytorch 2024-08-06T20:22:43.5992254Z JOB_ID=28427540862 2024-08-06T20:22:43.5992500Z INSTALLED_PROTOBUF=yes 2024-08-06T20:22:43.5992778Z GITHUB_HEAD_REF=gh/drisspg/23/head 2024-08-06T20:22:43.5993069Z GITHUB_ACTION_REF= 2024-08-06T20:22:43.5993366Z SCCACHE_BUCKET=ossci-compiler-cache-circleci-v2 2024-08-06T20:22:43.5993732Z TEST_SHOWLOCALS=False 2024-08-06T20:22:43.5993981Z GITHUB_WORKFLOW=pull 2024-08-06T20:22:43.5994254Z DEBIAN_FRONTEND=noninteractive 2024-08-06T20:22:43.5994903Z GITHUB_OUTPUT=/home/ec2-user/actions-runner/_work/_temp/_runner_file_commands/set_output_7fce8c8a-7788-45d2-94de-d6d552e12826 2024-08-06T20:22:43.5995558Z NO_TD=False 2024-08-06T20:22:43.5995798Z SKIP_SCCACHE_INITIALIZATION=1 2024-08-06T20:22:43.5996088Z _=/usr/bin/env 2024-08-06T20:22:43.5996315Z + echo 'Testing pytorch' 2024-08-06T20:22:43.5996582Z Testing pytorch 2024-08-06T20:22:43.5996811Z + export LANG=C.UTF-8 2024-08-06T20:22:43.5997063Z + LANG=C.UTF-8 2024-08-06T20:22:43.6041969Z + PR_NUMBER=132710 2024-08-06T20:22:43.6042498Z + [[ dynamo == \d\e\f\a\u\l\t ]] 2024-08-06T20:22:43.6042953Z + [[ dynamo == \d\i\s\t\r\i\b\u\t\e\d ]] 2024-08-06T20:22:43.6043504Z + [[ dynamo == \s\l\o\w ]] 2024-08-06T20:22:43.6044136Z + [[ linux-focal-py3.12-clang10 == *slow-gradcheck* ]] 2024-08-06T20:22:43.6044876Z + [[ linux-focal-py3.12-clang10 == *cuda* ]] 2024-08-06T20:22:43.6045240Z + [[ linux-focal-py3.12-clang10 == *rocm* ]] 2024-08-06T20:22:43.6045755Z + [[ linux-focal-py3.12-clang10 == *xpu* ]] 2024-08-06T20:22:43.6046095Z + [[ dynamo == *crossref* ]] 2024-08-06T20:22:43.6046406Z + [[ linux-focal-py3.12-clang10 == *rocm* ]] 2024-08-06T20:22:43.6046758Z + [[ linux-focal-py3.12-clang10 == *xpu* ]] 2024-08-06T20:22:43.6047148Z + [[ linux-focal-py3.12-clang10 != *-bazel-* ]] 2024-08-06T20:22:43.6047510Z + pip_install --user ninja==1.10.2 2024-08-06T20:22:43.6047869Z + pip install --progress-bar off --user ninja==1.10.2 2024-08-06T20:22:44.1620187Z Collecting ninja==1.10.2 2024-08-06T20:22:44.1795087Z Downloading ninja-1.10.2-py2.py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl.metadata (5.0 kB) 2024-08-06T20:22:44.1936504Z Downloading ninja-1.10.2-py2.py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.whl (108 kB) 2024-08-06T20:22:44.8232028Z Installing collected packages: ninja 2024-08-06T20:22:44.8314257Z  WARNING: The script ninja is installed in '/var/lib/jenkins/.local/bin' which is not on PATH. 2024-08-06T20:22:44.8315310Z Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location. 2024-08-06T20:22:44.8419783Z Successfully installed ninja-1.10.2 2024-08-06T20:22:44.9891748Z + export PATH=/var/lib/jenkins/.local/bin:/opt/cache/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/opt/conda/envs/py_3.12/bin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 2024-08-06T20:22:44.9893471Z + PATH=/var/lib/jenkins/.local/bin:/opt/cache/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/opt/conda/envs/py_3.12/bin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 2024-08-06T20:22:44.9894557Z + [[ linux-focal-py3.12-clang10 == *aarch64* ]] 2024-08-06T20:22:44.9894925Z + install_tlparse 2024-08-06T20:22:44.9895203Z + pip_install --user tlparse==0.3.7 2024-08-06T20:22:44.9895578Z + pip install --progress-bar off --user tlparse==0.3.7 2024-08-06T20:22:45.4632847Z Collecting tlparse==0.3.7 2024-08-06T20:22:45.4808651Z Downloading tlparse-0.3.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (346 bytes) 2024-08-06T20:22:45.4950857Z Downloading tlparse-0.3.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB) 2024-08-06T20:22:46.1647884Z Installing collected packages: tlparse 2024-08-06T20:22:46.2060230Z Successfully installed tlparse-0.3.7 2024-08-06T20:22:46.3494479Z ++ python -m site --user-base 2024-08-06T20:22:46.3678005Z + PATH=/var/lib/jenkins/.local/bin:/var/lib/jenkins/.local/bin:/opt/cache/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/opt/conda/envs/py_3.12/bin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 2024-08-06T20:22:46.3679401Z + [[ linux-focal-py3.12-clang10 == *asan* ]] 2024-08-06T20:22:46.3679790Z + [[ linux-focal-py3.12-clang10 == *-debug* ]] 2024-08-06T20:22:46.3680177Z + [[ linux-focal-py3.12-clang10 != *-bazel-* ]] 2024-08-06T20:22:46.3680705Z + echo 'We are not in debug mode: linux-focal-py3.12-clang10. Expect the assertion to pass' 2024-08-06T20:22:46.3681419Z We are not in debug mode: linux-focal-py3.12-clang10. Expect the assertion to pass 2024-08-06T20:22:46.3682954Z + cd test 2024-08-06T20:22:46.3683708Z + python -c 'import torch; torch._C._crash_if_debug_asserts_fail(424242)' 2024-08-06T20:22:47.9674773Z + [[ dynamo == \n\o\g\p\u\_\N\O\_\A\V\X\2 ]] 2024-08-06T20:22:47.9675185Z + [[ dynamo == \n\o\g\p\u\_\A\V\X\5\1\2 ]] 2024-08-06T20:22:47.9679318Z + DYNAMO_BENCHMARK_FLAGS=() 2024-08-06T20:22:47.9679736Z + [[ dynamo == *dynamo_eager* ]] 2024-08-06T20:22:47.9680138Z + [[ dynamo == *aot_eager* ]] 2024-08-06T20:22:47.9680423Z + [[ dynamo == *aot_inductor* ]] 2024-08-06T20:22:47.9680722Z + [[ dynamo == *inductor* ]] 2024-08-06T20:22:47.9681008Z + [[ dynamo == *dynamic* ]] 2024-08-06T20:22:47.9681276Z + [[ dynamo == *cpu* ]] 2024-08-06T20:22:47.9683121Z + DYNAMO_BENCHMARK_FLAGS+=(--device cuda) 2024-08-06T20:22:47.9715398Z + [[ linux-focal-py3.12-clang10 == *libtorch* ]] 2024-08-06T20:22:47.9715807Z + [[ linux-focal-py3.12-clang10 == *-bazel-* ]] 2024-08-06T20:22:47.9718535Z + cd test 2024-08-06T20:22:47.9719173Z + python -c 'import torch; print(torch.__config__.show())' 2024-08-06T20:22:49.2367573Z PyTorch built with: 2024-08-06T20:22:49.2367897Z - GCC 4.2 2024-08-06T20:22:49.2368153Z - C++ Version: 201703 2024-08-06T20:22:49.2368424Z - clang 10.0.0 2024-08-06T20:22:49.2368993Z - Intel(R) oneAPI Math Kernel Library Version 2021.4-Product Build 20210904 for Intel(R) 64 architecture applications 2024-08-06T20:22:49.2369725Z - Intel(R) MKL-DNN v3.4.2 (Git Hash 1137e04ec0b5251ca2b4400a4fd3c667ce843d67) 2024-08-06T20:22:49.2370182Z - OpenMP 201511 (a.k.a. OpenMP 4.5) 2024-08-06T20:22:49.2370535Z - LAPACK is enabled (usually provided by MKL) 2024-08-06T20:22:49.2370869Z - NNPACK is enabled 2024-08-06T20:22:49.2371143Z - CPU capability usage: AVX512 2024-08-06T20:22:49.2377259Z - Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CXX_COMPILER=/opt/cache/bin/clang++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=1 -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOCUPTI -DLIBKINETO_NOROCTRACER -DUSE_FBGEMM -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=braced-scalar-init -Werror=range-loop-construct -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-strict-overflow -Wno-strict-aliasing -Wvla-extension -Wnewline-eof -Winconsistent-missing-override -Winconsistent-missing-destructor-override -Wno-pass-failed -Wno-error=pedantic -Wno-error=old-style-cast -Wconstant-conversion -Wno-invalid-partial-specialization -Wno-missing-braces -Qunused-arguments -fcolor-diagnostics -faligned-new -Werror -fno-math-errno -fno-trapping-math -Werror=format, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=2.5.0, USE_CUDA=OFF, USE_CUDNN=OFF, USE_CUSPARSELT=OFF, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_GLOO=ON, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=OFF, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF, USE_ROCM_KERNEL_ASSERT=OFF, 2024-08-06T20:22:49.2383171Z 2024-08-06T20:22:49.5581059Z + cd test 2024-08-06T20:22:49.5581531Z + python -c 'import torch; print(torch.__config__.parallel_info())' 2024-08-06T20:22:50.8313893Z ATen/Parallel: 2024-08-06T20:22:50.8314221Z at::get_num_threads() : 4 2024-08-06T20:22:50.8314536Z at::get_num_interop_threads() : 4 2024-08-06T20:22:50.8314855Z OpenMP 201511 (a.k.a. OpenMP 4.5) 2024-08-06T20:22:50.8315150Z omp_get_max_threads() : 4 2024-08-06T20:22:50.8315737Z Intel(R) oneAPI Math Kernel Library Version 2021.4-Product Build 20210904 for Intel(R) 64 architecture applications 2024-08-06T20:22:50.8316355Z mkl_get_max_threads() : 4 2024-08-06T20:22:50.8316738Z Intel(R) MKL-DNN v3.4.2 (Git Hash 1137e04ec0b5251ca2b4400a4fd3c667ce843d67) 2024-08-06T20:22:50.8317196Z std::thread::hardware_concurrency() : 8 2024-08-06T20:22:50.8317531Z Environment variables: 2024-08-06T20:22:50.8317818Z OMP_NUM_THREADS : [not set] 2024-08-06T20:22:50.8318103Z MKL_NUM_THREADS : [not set] 2024-08-06T20:22:50.8318394Z ATen parallel backend: OpenMP 2024-08-06T20:22:50.8318585Z 2024-08-06T20:22:51.1533170Z + [[ linux-focal-py3.12-clang10 == *aarch64* ]] 2024-08-06T20:22:51.1533675Z + [[ dynamo == *backward* ]] 2024-08-06T20:22:51.1533955Z + [[ dynamo == *xla* ]] 2024-08-06T20:22:51.1534242Z + [[ dynamo == *executorch* ]] 2024-08-06T20:22:51.1534539Z + [[ dynamo == \j\i\t\_\l\e\g\a\c\y ]] 2024-08-06T20:22:51.1534880Z + [[ linux-focal-py3.12-clang10 == *libtorch* ]] 2024-08-06T20:22:51.1535237Z + [[ dynamo == distributed ]] 2024-08-06T20:22:51.1535538Z + [[ dynamo == *inductor_distributed* ]] 2024-08-06T20:22:51.1535861Z + [[ dynamo == *inductor-halide* ]] 2024-08-06T20:22:51.1536199Z + [[ dynamo == *inductor-micro-benchmark* ]] 2024-08-06T20:22:51.1536614Z + [[ dynamo == *huggingface* ]] 2024-08-06T20:22:51.1537017Z + [[ dynamo == *timm* ]] 2024-08-06T20:22:51.1537351Z + [[ dynamo == *torchbench* ]] 2024-08-06T20:22:51.1537987Z + [[ dynamo == *inductor_cpp_wrapper_abi_compatible* ]] 2024-08-06T20:22:51.1538365Z + [[ dynamo == *inductor* ]] 2024-08-06T20:22:51.1538651Z + [[ dynamo == *dynamo* ]] 2024-08-06T20:22:51.1538927Z + install_torchvision 2024-08-06T20:22:51.1539183Z + local orig_preload 2024-08-06T20:22:51.1539431Z + local commit 2024-08-06T20:22:51.1539665Z ++ get_pinned_commit vision 2024-08-06T20:22:51.1539964Z ++ cat .github/ci_commit_pins/vision.txt 2024-08-06T20:22:51.1556308Z + commit=d23a6e1664d20707c11781299611436e1f0c104f 2024-08-06T20:22:51.1556731Z + orig_preload= 2024-08-06T20:22:51.1556973Z + '[' -n '' ']' 2024-08-06T20:22:51.1557567Z + pip_install --no-use-pep517 --user git+https://github.com/pytorch/vision.git@d23a6e1664d20707c11781299611436e1f0c104f 2024-08-06T20:22:51.1558592Z + pip install --progress-bar off --no-use-pep517 --user git+https://github.com/pytorch/vision.git@d23a6e1664d20707c11781299611436e1f0c104f 2024-08-06T20:22:51.5875635Z Collecting git+https://github.com/pytorch/vision.git@d23a6e1664d20707c11781299611436e1f0c104f 2024-08-06T20:22:51.5881675Z Cloning https://github.com/pytorch/vision.git (to revision d23a6e1664d20707c11781299611436e1f0c104f) to /tmp/pip-req-build-sxhigyv_ 2024-08-06T20:22:51.5907085Z Running command git clone --filter=blob:none --quiet https://github.com/pytorch/vision.git /tmp/pip-req-build-sxhigyv_ 2024-08-06T20:22:53.2868082Z Running command git rev-parse -q --verify 'sha^d23a6e1664d20707c11781299611436e1f0c104f' 2024-08-06T20:22:53.2887777Z Running command git fetch -q https://github.com/pytorch/vision.git d23a6e1664d20707c11781299611436e1f0c104f 2024-08-06T20:22:54.6270258Z Running command git checkout -q d23a6e1664d20707c11781299611436e1f0c104f 2024-08-06T20:22:54.9187953Z Resolved https://github.com/pytorch/vision.git to commit d23a6e1664d20707c11781299611436e1f0c104f 2024-08-06T20:22:57.1159685Z Preparing metadata (setup.py) ... [?25l- \ done 2024-08-06T20:22:57.1214163Z [?25hRequirement already satisfied: numpy in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torchvision==0.19.0a0+d23a6e1) (1.26.0) 2024-08-06T20:22:57.1226795Z Requirement already satisfied: torch in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torchvision==0.19.0a0+d23a6e1) (2.5.0a0+gitb9d86fa) 2024-08-06T20:22:57.1238701Z Requirement already satisfied: pillow!=8.3.*,>=5.3.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torchvision==0.19.0a0+d23a6e1) (10.3.0) 2024-08-06T20:22:57.1627820Z Requirement already satisfied: filelock in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch->torchvision==0.19.0a0+d23a6e1) (3.13.1) 2024-08-06T20:22:57.1637277Z Requirement already satisfied: typing-extensions>=4.8.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch->torchvision==0.19.0a0+d23a6e1) (4.12.2) 2024-08-06T20:22:57.1646023Z Requirement already satisfied: networkx in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch->torchvision==0.19.0a0+d23a6e1) (2.8.8) 2024-08-06T20:22:57.1652623Z Requirement already satisfied: jinja2 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch->torchvision==0.19.0a0+d23a6e1) (3.1.4) 2024-08-06T20:22:57.1668644Z Requirement already satisfied: fsspec in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch->torchvision==0.19.0a0+d23a6e1) (2024.6.1) 2024-08-06T20:22:57.1677773Z Requirement already satisfied: setuptools in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch->torchvision==0.19.0a0+d23a6e1) (69.5.1) 2024-08-06T20:22:57.1694300Z Requirement already satisfied: sympy>=1.13.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from torch->torchvision==0.19.0a0+d23a6e1) (1.13.1) 2024-08-06T20:22:57.1734179Z Requirement already satisfied: mpmath<1.4,>=1.1.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from sympy>=1.13.0->torch->torchvision==0.19.0a0+d23a6e1) (1.3.0) 2024-08-06T20:22:57.2306245Z Requirement already satisfied: MarkupSafe>=2.0 in /opt/conda/envs/py_3.12/lib/python3.12/site-packages (from jinja2->torch->torchvision==0.19.0a0+d23a6e1) (2.1.5) 2024-08-06T20:22:57.2750567Z Building wheels for collected packages: torchvision 2024-08-06T20:24:07.6631266Z Building wheel for torchvision (setup.py) ... [?25l- \ | / - \ | / - \ | / - \ | / - \ | / - \ | / - \ | / - \ | / - \ | done 2024-08-06T20:24:07.6668158Z [?25h Created wheel for torchvision: filename=torchvision-0.19.0a0+d23a6e1-cp312-cp312-linux_x86_64.whl size=1116548 sha256=7d6d91652c05731d68a702dd4fd2edcbf23e443f7f25f781f7d199289be2561a 2024-08-06T20:24:07.6670552Z Stored in directory: /var/lib/jenkins/.cache/pip/wheels/b9/aa/81/39d3509ec629531316195ffac7a7b05ff7603f393064d63ec9 2024-08-06T20:24:07.6708801Z Successfully built torchvision 2024-08-06T20:24:08.2851049Z Installing collected packages: torchvision 2024-08-06T20:24:08.7517397Z Successfully installed torchvision-0.19.0a0+d23a6e1 2024-08-06T20:24:08.9307368Z + '[' -n '' ']' 2024-08-06T20:24:08.9307724Z + test_dynamo_shard 1 2024-08-06T20:24:08.9308033Z + [[ -z 3 ]] 2024-08-06T20:24:08.9309078Z + python tools/dynamo/verify_dynamo.py 2024-08-06T20:24:10.2712789Z Python version: 3.12.4 2024-08-06T20:24:10.2713788Z `torch` version: 2.5.0a0+gitb9d86fa 2024-08-06T20:24:10.2714112Z CUDA version: None 2024-08-06T20:24:10.2714371Z ROCM version: None 2024-08-06T20:24:10.2714515Z 2024-08-06T20:24:11.1273211Z CUDA not available -- skipping CUDA check on eager backend 2024-08-06T20:24:11.1273741Z 2024-08-06T20:24:12.0595347Z CUDA not available -- skipping CUDA check on aot_eager backend 2024-08-06T20:24:12.0595701Z 2024-08-06T20:24:21.0700448Z CUDA not available -- skipping CUDA check on inductor backend 2024-08-06T20:24:21.0700954Z 2024-08-06T20:24:21.0701110Z All required checks passed 2024-08-06T20:24:21.8318344Z + python test/run_test.py --dynamo --exclude-inductor-tests --exclude-jit-executor --exclude-distributed-tests --exclude-torch-export-tests --shard 1 3 --verbose 2024-08-06T20:24:21.9410774Z /var/lib/jenkins/workspace/test/run_test.py:21: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html 2024-08-06T20:24:21.9411785Z import pkg_resources 2024-08-06T20:24:23.9576874Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T20:24:24.9670074Z Downloading https://ossci-metrics.s3.amazonaws.com/slow-tests.json to /var/lib/jenkins/workspace/test/.pytorch-slow-tests.json 2024-08-06T20:24:25.0069542Z Downloading https://ossci-metrics.s3.amazonaws.com/disabled-tests-condensed.json to /var/lib/jenkins/workspace/test/.pytorch-disabled-tests.json 2024-08-06T20:24:25.0478232Z Ignoring disabled issues: [''] 2024-08-06T20:24:25.0591961Z Found test times from artifacts 2024-08-06T20:24:25.1018276Z Found test times from artifacts 2024-08-06T20:24:25.1034323Z Running all tests 2024-08-06T20:24:25.1140699Z Running parallel tests on 3 processes 2024-08-06T20:24:25.1144108Z Name: tests to run (est. time: 56.6min) 2024-08-06T20:24:25.1144741Z Serial tests (27): 2024-08-06T20:24:25.1145206Z test_native_mha 1/1 2024-08-06T20:24:25.1145659Z test_nn 2/2 2024-08-06T20:24:25.1146100Z test_cpp_api_parity 1/1 2024-08-06T20:24:25.1146958Z test_torch 1/1 2024-08-06T20:24:25.1147506Z test_ci_sanity_check_fail 1/1 2024-08-06T20:24:25.1148203Z test_jit_disabled 1/1 2024-08-06T20:24:25.1148730Z test_tensorexpr 1/1 2024-08-06T20:24:25.1149198Z test_autocast 1/1 2024-08-06T20:24:25.1149729Z test_cpp_extensions_jit 1/1 2024-08-06T20:24:25.1150343Z test_sort_and_select 1/1 2024-08-06T20:24:25.1150880Z test_python_dispatch 1/1 2024-08-06T20:24:25.1151502Z test_reductions 1/1 2024-08-06T20:24:25.1152102Z test_cuda_primary_ctx 1/1 2024-08-06T20:24:25.1152626Z test_cuda_nvml_based_avail 1/1 2024-08-06T20:24:25.1153231Z nn/test_convolution 1/1 2024-08-06T20:24:25.1153802Z nn/test_pooling 1/1 2024-08-06T20:24:25.1154322Z test_multiprocessing 1/1 2024-08-06T20:24:25.1155246Z test_mobile_optimizer 1/1 2024-08-06T20:24:25.1155845Z test_multiprocessing_spawn 1/1 2024-08-06T20:24:25.1156480Z test_spectral_ops 1/1 2024-08-06T20:24:25.1157102Z distributions/test_distributions 1/2 2024-08-06T20:24:25.1157861Z distributions/test_distributions 2/2 2024-08-06T20:24:25.1158484Z doctests 1/1 2024-08-06T20:24:25.1159006Z test_cpp_extensions_aot_no_ninja 1/1 2024-08-06T20:24:25.1159734Z test_autoload_enable 1/1 2024-08-06T20:24:25.1160296Z test_autoload_disable 1/1 2024-08-06T20:24:25.1160878Z test_cpp_extensions_aot_ninja 1/1 2024-08-06T20:24:25.1161542Z Parallel tests (27): 2024-08-06T20:24:25.1162058Z dynamo/test_dynamic_shapes 1/1 2024-08-06T20:24:25.1162702Z dynamo/test_frame_init 1/1 2024-08-06T20:24:25.1163624Z dynamo/test_interop 1/1 2024-08-06T20:24:25.1164185Z test_matmul_cuda 1/1 2024-08-06T20:24:25.1164737Z dynamo/test_global 1/1 2024-08-06T20:24:25.1165403Z dynamo/test_exceptions 1/1 2024-08-06T20:24:25.1165982Z dynamo/test_subgraphs 1/1 2024-08-06T20:24:25.1166571Z dynamo/test_modes 1/1 2024-08-06T20:24:25.1167173Z dynamo/test_higher_order_ops 1/1 2024-08-06T20:24:25.1168033Z dynamo/test_functions 1/1 2024-08-06T20:24:25.1168698Z dynamo/test_modules 1/1 2024-08-06T20:24:25.1169345Z dynamo/test_model_output 1/1 2024-08-06T20:24:25.1169897Z dynamo/test_export 1/1 2024-08-06T20:24:25.1170465Z dynamo/test_ctx_manager 1/1 2024-08-06T20:24:25.1171075Z functorch/test_ac 1/1 2024-08-06T20:24:25.1171634Z dynamo/test_profiler 1/1 2024-08-06T20:24:25.1172315Z dynamo/test_activation_checkpointing 1/1 2024-08-06T20:24:25.1173018Z dynamo/test_trace_rules 1/1 2024-08-06T20:24:25.1173636Z dynamo/test_unspec 1/1 2024-08-06T20:24:25.1174322Z dynamo/test_input_attr_tracking 1/1 2024-08-06T20:24:25.1175090Z dynamo/test_recompile_ux 1/1 2024-08-06T20:24:25.1175692Z dynamo/test_structured_trace 1/1 2024-08-06T20:24:25.1176362Z test_cuda_sanitizer 1/1 2024-08-06T20:24:25.1177020Z test_cuda 1/1 2024-08-06T20:24:25.1177517Z test_cuda_multigpu 1/1 2024-08-06T20:24:25.1178072Z test_quantization 3/6 2024-08-06T20:24:25.1178734Z optim/test_lrscheduler 1/1 2024-08-06T20:24:25.1179323Z Name: excluded (est. time: 0.0min) 2024-08-06T20:24:25.1179958Z Serial tests (0): 2024-08-06T20:24:25.1180542Z Parallel tests (0): 2024-08-06T20:24:25.1181328Z Starting test batch 'tests to run' 0.0 seconds after initiating testing 2024-08-06T20:24:25.1221646Z Running test_native_mha 1/1 ... [2024-08-06 20:24:25.121776] 2024-08-06T20:24:25.1226602Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_native_mha.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:24:25.122256] 2024-08-06T20:24:27.3343056Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T20:24:27.3389750Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T20:24:27.3635938Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T20:24:54.5832007Z 2024-08-06T20:24:54.5833428Z test_native_mha 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_native_mha_1.1_86c437c4aceebe01_.log 2024-08-06T20:24:54.5876227Z Running 28 items in this shard: test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_attention_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_encoder_decoder_attention_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_False_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_False_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_True_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_True_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_False_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_False_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_True_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_True_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_False_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_False_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_True_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_False_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_True_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_False_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_False_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_True_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_False_pad_all_False_need_weights_False_average_attn_weights_True_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_False_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_False_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_True_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_False_need_weights_False_average_attn_weights_True_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_False_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_False_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_True_fused_False_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_native_multihead_self_attention_use_nt_True_use_padding_True_pad_all_True_need_weights_False_average_attn_weights_True_fused_True_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_transform_bias_rescale_qkv_cpu_float32, test/test_native_mha.py::TestMHADeviceTypeCPU::test_transform_bias_rescale_qkv_nested_cpu_float32 2024-08-06T20:24:54.5917923Z 2024-08-06T20:24:54.5918373Z Running test_nn 2/2 ... [2024-08-06 20:24:54.583610] 2024-08-06T20:24:54.5920502Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_nn.py', '--shard-id=2', '--num-shards=2', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:24:54.583981] 2024-08-06T20:30:36.1506029Z 2024-08-06T20:30:36.1508530Z test_nn 2/2 was successful, full logs can be found in artifacts with path test/test-reports/test_nn_2.2_dfb2e48638b1bd6d_.log 2024-08-06T20:30:36.2135104Z Running 1127 items in this shard: test/test_nn.py::TestNN::test_BCELoss_no_batch_dim_mean, test/test_nn.py::TestNN::test_BCELoss_no_batch_dim_mean_cuda_float, test/test_nn.py::TestNN::test_BCELoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_BCELoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_BCELoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_BCELoss_no_reduce, test/test_nn.py::TestNN::test_BCELoss_no_reduce_scalar, test/test_nn.py::TestNN::test_BCELoss_no_reduce_scalar_cuda, test/test_nn.py::TestNN::test_BCELoss_weights_no_reduce_scalar, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_legacy_enum, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_batch_dim_mean, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_batch_dim_none, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_batch_dim_none_cuda_double, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_reduce, test/test_nn.py::TestNN::test_BCEWithLogitsLoss_no_reduce_scalar, test/test_nn.py::TestNN::test_CTCLoss_critical_target_len, test/test_nn.py::TestNN::test_CTCLoss_lengthchecks_cpu, test/test_nn.py::TestNN::test_CTCLoss_lengthchecks_cuda, test/test_nn.py::TestNN::test_CTCLoss_long_targets, test/test_nn.py::TestNN::test_CTCLoss_typechecks, test/test_nn.py::TestNN::test_CTCLoss_zero_infinity, test/test_nn.py::TestNN::test_Conv1d_circular_stride2_pad2, test/test_nn.py::TestNN::test_Conv1d_cuda, test/test_nn.py::TestNN::test_Conv1d_groups, test/test_nn.py::TestNN::test_Conv1d_pad1size1, test/test_nn.py::TestNN::test_Conv1d_pad2, test/test_nn.py::TestNN::test_Conv1d_pad2size1, test/test_nn.py::TestNN::test_Conv1d_pad2size1_cuda, test/test_nn.py::TestNN::test_Conv1d_pad_same, test/test_nn.py::TestNN::test_Conv1d_pad_same2_cuda, test/test_nn.py::TestNN::test_Conv1d_pad_valid, test/test_nn.py::TestNN::test_Conv1d_reflect_stride2_pad2, test/test_nn.py::TestNN::test_Conv1d_reflect_stride2_pad2_cuda, test/test_nn.py::TestNN::test_Conv1d_replicate_stride2_pad2, test/test_nn.py::TestNN::test_Conv1d_stride_cuda, test/test_nn.py::TestNN::test_Conv1d_zero_batch, test/test_nn.py::TestNN::test_Conv1d_zeros_stride2_pad2_cuda, test/test_nn.py::TestNN::test_Conv2d, test/test_nn.py::TestNN::test_Conv2d_circular_stride2_pad2, test/test_nn.py::TestNN::test_Conv2d_depthwise_dilated_cuda, test/test_nn.py::TestNN::test_Conv2d_depthwise_padded, test/test_nn.py::TestNN::test_Conv2d_depthwise_with_multiplier, test/test_nn.py::TestNN::test_Conv2d_dilated_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv2d_groups_thnn_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv2d_groups_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv2d_no_bias_cuda, test/test_nn.py::TestNN::test_Conv2d_no_bias_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv2d_pad_same_dilated, test/test_nn.py::TestNN::test_Conv2d_pad_same_dilated_cuda, test/test_nn.py::TestNN::test_Conv2d_pad_valid, test/test_nn.py::TestNN::test_Conv2d_pad_valid_cuda, test/test_nn.py::TestNN::test_Conv2d_padding, test/test_nn.py::TestNN::test_Conv2d_padding_cuda, test/test_nn.py::TestNN::test_Conv2d_padding_with_long_tensor, test/test_nn.py::TestNN::test_Conv2d_padding_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv2d_reflect_stride2_pad2_cuda, test/test_nn.py::TestNN::test_Conv2d_replicate_stride2_pad2, test/test_nn.py::TestNN::test_Conv2d_strided, test/test_nn.py::TestNN::test_Conv2d_strided_with_long_tensor, test/test_nn.py::TestNN::test_Conv2d_strided_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv2d_with_long_tensor, test/test_nn.py::TestNN::test_Conv2d_zero_batch, test/test_nn.py::TestNN::test_Conv2d_zero_batch_cuda, test/test_nn.py::TestNN::test_Conv2d_zeros_stride2_pad2, test/test_nn.py::TestNN::test_Conv3d, test/test_nn.py::TestNN::test_Conv3d_1x1x1_no_bias, test/test_nn.py::TestNN::test_Conv3d_1x1x1_no_bias_with_long_tensor, test/test_nn.py::TestNN::test_Conv3d_1x1x1_no_bias_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv3d_dilated, test/test_nn.py::TestNN::test_Conv3d_dilated_cuda, test/test_nn.py::TestNN::test_Conv3d_dilated_strided, test/test_nn.py::TestNN::test_Conv3d_groups, test/test_nn.py::TestNN::test_Conv3d_groups_with_long_tensor, test/test_nn.py::TestNN::test_Conv3d_no_bias, test/test_nn.py::TestNN::test_Conv3d_no_bias_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv3d_pad_same_dilated, test/test_nn.py::TestNN::test_Conv3d_pad_same_dilated_cuda, test/test_nn.py::TestNN::test_Conv3d_replicate_stride2_pad2, test/test_nn.py::TestNN::test_Conv3d_stride_cuda, test/test_nn.py::TestNN::test_Conv3d_stride_padding_with_long_tensor, test/test_nn.py::TestNN::test_Conv3d_stride_with_long_tensor, test/test_nn.py::TestNN::test_Conv3d_stride_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv3d_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv3d_zero_batch_with_long_tensor, test/test_nn.py::TestNN::test_Conv3d_zero_batch_with_long_tensor_cuda, test/test_nn.py::TestNN::test_Conv3d_zeros_stride2_pad2, test/test_nn.py::TestNN::test_ConvTranspose1d_cuda, test/test_nn.py::TestNN::test_ConvTranspose1d_groups_cuda, test/test_nn.py::TestNN::test_ConvTranspose2d, test/test_nn.py::TestNN::test_ConvTranspose2d_dilated, test/test_nn.py::TestNN::test_ConvTranspose2d_dilated_with_long_tensor, test/test_nn.py::TestNN::test_ConvTranspose2d_dilated_with_long_tensor_cuda, test/test_nn.py::TestNN::test_ConvTranspose2d_no_bias_cuda, test/test_nn.py::TestNN::test_ConvTranspose2d_no_bias_with_long_tensor, test/test_nn.py::TestNN::test_ConvTranspose3d, test/test_nn.py::TestNN::test_ConvTranspose3d_dilated_cuda, test/test_nn.py::TestNN::test_CosineEmbeddingLoss_no_batch_dim_mean, test/test_nn.py::TestNN::test_CosineEmbeddingLoss_no_batch_dim_mean_cuda_double, test/test_nn.py::TestNN::test_CosineEmbeddingLoss_no_batch_dim_mean_cuda_half, test/test_nn.py::TestNN::test_CosineEmbeddingLoss_no_batch_dim_none_cuda_double, test/test_nn.py::TestNN::test_CosineEmbeddingLoss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_CosineEmbeddingLoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_CosineEmbeddingLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_CrossMapLRN2d_cuda, test/test_nn.py::TestNN::test_ELU_no_batch_dim, test/test_nn.py::TestNN::test_Embedding, test/test_nn.py::TestNN::test_EmbeddingBag_discontiguous, test/test_nn.py::TestNN::test_EmbeddingBag_max, test/test_nn.py::TestNN::test_EmbeddingBag_max_padding_idx, test/test_nn.py::TestNN::test_EmbeddingBag_max_padding_idx_cuda, test/test_nn.py::TestNN::test_EmbeddingBag_mean_padding_idx_cuda, test/test_nn.py::TestNN::test_EmbeddingBag_sum_cuda, test/test_nn.py::TestNN::test_EmbeddingBag_sum_padding_idx, test/test_nn.py::TestNN::test_EmbeddingBag_sum_padding_idx_cuda, test/test_nn.py::TestNN::test_Embedding_cuda, test/test_nn.py::TestNN::test_Embedding_sparse_cuda, test/test_nn.py::TestNN::test_Flatten, test/test_nn.py::TestNN::test_Flatten_no_batch_dim, test/test_nn.py::TestNN::test_Flatten_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Fold, test/test_nn.py::TestNN::test_Fold_int_input, test/test_nn.py::TestNN::test_Fold_int_input_cuda, test/test_nn.py::TestNN::test_Fold_no_batch_dim_input_cuda, test/test_nn.py::TestNN::test_GELU_no_batch_dim, test/test_nn.py::TestNN::test_GLU_no_batch_dim, test/test_nn.py::TestNN::test_GLU_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Hardshrink_no_batch_dim, test/test_nn.py::TestNN::test_Hardsigmoid_no_batch_dim, test/test_nn.py::TestNN::test_Hardsigmoid_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Hardswish_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Hardtanh_no_batch_dim, test/test_nn.py::TestNN::test_Hardtanh_no_batch_dim_cuda, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_margin_no_reduce, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_margin_no_reduce_cuda, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_mean, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_mean_cuda_double, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_mean_cuda_half, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_none_cuda_double, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_reduce, test/test_nn.py::TestNN::test_HingeEmbeddingLoss_no_reduce_cuda, test/test_nn.py::TestNN::test_HuberLoss_delta, test/test_nn.py::TestNN::test_HuberLoss_delta_cuda, test/test_nn.py::TestNN::test_HuberLoss_no_batch_dim_mean_cuda_double, test/test_nn.py::TestNN::test_HuberLoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_HuberLoss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_HuberLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_KLDivLoss_no_batch_dim_mean, test/test_nn.py::TestNN::test_KLDivLoss_no_batch_dim_mean_cuda_half, test/test_nn.py::TestNN::test_KLDivLoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_KLDivLoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_KLDivLoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_KLDivLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_KLDivLoss_no_reduce, test/test_nn.py::TestNN::test_KLDivLoss_no_reduce_log_target, test/test_nn.py::TestNN::test_KLDivLoss_no_reduce_log_target_cuda, test/test_nn.py::TestNN::test_KLDivLoss_no_reduce_scalar_cuda, test/test_nn.py::TestNN::test_KLDivLoss_with_log_target_no_reduce_cuda, test/test_nn.py::TestNN::test_L1Loss_no_batch_dim_mean_cuda_double, test/test_nn.py::TestNN::test_L1Loss_no_batch_dim_mean_cuda_half, test/test_nn.py::TestNN::test_L1Loss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_L1Loss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_L1Loss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_L1Loss_no_reduce_complex, test/test_nn.py::TestNN::test_L1Loss_no_reduce_cuda, test/test_nn.py::TestNN::test_L1Loss_no_reduce_scalar_cuda, test/test_nn.py::TestNN::test_LSTM_cell_forward_hidden_size, test/test_nn.py::TestNN::test_LayerNorm_3d_no_affine_large_feature, test/test_nn.py::TestNN::test_LayerNorm_3d_no_affine_large_feature_eval, test/test_nn.py::TestNN::test_LayerNorm_3d_no_affine_large_feature_eval_cuda, test/test_nn.py::TestNN::test_LeakyReLU_no_batch_dim, test/test_nn.py::TestNN::test_Linear, test/test_nn.py::TestNN::test_Linear_cuda, test/test_nn.py::TestNN::test_Linear_no_batch_dim, test/test_nn.py::TestNN::test_Linear_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Linear_no_bias, test/test_nn.py::TestNN::test_LogSigmoid_no_batch_dim, test/test_nn.py::TestNN::test_MSELoss_no_batch_dim_mean_cuda_float, test/test_nn.py::TestNN::test_MSELoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_MSELoss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_MSELoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_MSELoss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_MSELoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_MSELoss_no_reduce_cuda, test/test_nn.py::TestNN::test_MSELoss_no_reduce_scalar, test/test_nn.py::TestNN::test_MSELoss_no_reduce_scalar_cuda, test/test_nn.py::TestNN::test_MarginRankingLoss_no_batch_dim_mean_cuda_double, test/test_nn.py::TestNN::test_MarginRankingLoss_no_batch_dim_mean_cuda_float, test/test_nn.py::TestNN::test_MarginRankingLoss_no_batch_dim_none, test/test_nn.py::TestNN::test_MarginRankingLoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_MarginRankingLoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_MarginRankingLoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_MarginRankingLoss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_MaxUnpool1d_net, test/test_nn.py::TestNN::test_MaxUnpool2d_net, test/test_nn.py::TestNN::test_MaxUnpool2d_net_no_batch_dim_cuda, test/test_nn.py::TestNN::test_MaxUnpool3d_net_no_batch_dim, test/test_nn.py::TestNN::test_Mish_no_batch_dim, test/test_nn.py::TestNN::test_ModuleDict, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_0d_no_reduce, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_0d_no_reduce_cuda, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_1d_no_reduce_cuda, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_index_neg, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_no_batch_dim_mean, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_no_batch_dim_mean_cuda_double, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_no_batch_dim_mean_cuda_float, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_no_batch_dim_none, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_MultiLabelMarginLoss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_MultiLabelSoftMarginLoss_no_batch_dim_mean_cuda_float, test/test_nn.py::TestNN::test_MultiLabelSoftMarginLoss_no_batch_dim_mean_cuda_half, test/test_nn.py::TestNN::test_MultiLabelSoftMarginLoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_MultiLabelSoftMarginLoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_MultiLabelSoftMarginLoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_MultiLabelSoftMarginLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_MultiMarginLoss_1d_no_reduce_cuda, test/test_nn.py::TestNN::test_MultiMarginLoss_margin_no_reduce_cuda, test/test_nn.py::TestNN::test_MultiMarginLoss_no_reduce, test/test_nn.py::TestNN::test_MultiMarginLoss_no_reduce_cuda, test/test_nn.py::TestNN::test_MultiMarginLoss_p_no_reduce, test/test_nn.py::TestNN::test_MultiMarginLoss_p_no_reduce_cuda, test/test_nn.py::TestNN::test_NLLLoss2d_no_reduce, test/test_nn.py::TestNN::test_NLLLoss2d_no_reduce_ignore_index, test/test_nn.py::TestNN::test_NLLLoss2d_no_reduce_ignore_index_cuda, test/test_nn.py::TestNN::test_NLLLoss2d_no_reduce_weights_cuda, test/test_nn.py::TestNN::test_NLLLossNd_no_reduce, test/test_nn.py::TestNN::test_NLLLossNd_no_reduce_cuda, test/test_nn.py::TestNN::test_NLLLossNd_no_reduce_ignore_index_cuda, test/test_nn.py::TestNN::test_NLLLossNd_no_reduce_weights_cuda, test/test_nn.py::TestNN::test_NLLLoss_no_batch_dim_none, test/test_nn.py::TestNN::test_NLLLoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_NLLLoss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_NLLLoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_NLLLoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_NLLLoss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_NLLLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_NLLLoss_no_reduce_ignore_index_cuda, test/test_nn.py::TestNN::test_NLLLoss_no_reduce_weights, test/test_nn.py::TestNN::test_NLLLoss_no_reduce_weights_cuda, test/test_nn.py::TestNN::test_NLLLoss_no_reduce_weights_ignore_index_neg, test/test_nn.py::TestNN::test_PReLU_backward_requires_grad_false, test/test_nn.py::TestNN::test_PairwiseDistance_broadcast_lhs, test/test_nn.py::TestNN::test_PairwiseDistance_broadcast_lhs_cuda, test/test_nn.py::TestNN::test_PairwiseDistance_broadcast_rhs, test/test_nn.py::TestNN::test_PairwiseDistance_broadcast_rhs_cuda, test/test_nn.py::TestNN::test_PairwiseDistance_cuda, test/test_nn.py::TestNN::test_PairwiseDistance_no_batch_dim, test/test_nn.py::TestNN::test_PairwiseDistance_no_batch_dim_cuda, test/test_nn.py::TestNN::test_PairwiseDistance_with_non_default_args, test/test_nn.py::TestNN::test_ParameterDict_replication, test/test_nn.py::TestNN::test_ParameterList_replication, test/test_nn.py::TestNN::test_PixelShuffle, test/test_nn.py::TestNN::test_PoissonNLLLoss_no_batch_dim_mean_cuda_float, test/test_nn.py::TestNN::test_PoissonNLLLoss_no_batch_dim_mean_cuda_half, test/test_nn.py::TestNN::test_PoissonNLLLoss_no_batch_dim_none, test/test_nn.py::TestNN::test_PoissonNLLLoss_no_batch_dim_none_cuda_double, test/test_nn.py::TestNN::test_PoissonNLLLoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_PoissonNLLLoss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_PoissonNLLLoss_no_reduce_cuda, test/test_nn.py::TestNN::test_RNN_cell, test/test_nn.py::TestNN::test_RNN_change_dropout, test/test_nn.py::TestNN::test_RNN_cpu_vs_cudnn_no_dropout, test/test_nn.py::TestNN::test_RNN_cpu_vs_cudnn_with_dropout, test/test_nn.py::TestNN::test_RNN_cudnn_weight_norm, test/test_nn.py::TestNN::test_RNN_dropout, test/test_nn.py::TestNN::test_RNN_input_size_zero, test/test_nn.py::TestNN::test_RNN_nonlinearity, test/test_nn.py::TestNN::test_RNN_nonlinearity_passed_as_arg, test/test_nn.py::TestNN::test_RReLU, test/test_nn.py::TestNN::test_RReLU_with_up_down, test/test_nn.py::TestNN::test_RReLU_with_up_down_scalar_cuda, test/test_nn.py::TestNN::test_ReLU6_no_batch_dim, test/test_nn.py::TestNN::test_ReLU6_no_batch_dim_cuda, test/test_nn.py::TestNN::test_ReLU_no_batch_dim, test/test_nn.py::TestNN::test_ReplicationPad3d, test/test_nn.py::TestNN::test_ReplicationPad3d_complex, test/test_nn.py::TestNN::test_ReplicationPad3d_no_batch_dim, test/test_nn.py::TestNN::test_SELU_no_batch_dim, test/test_nn.py::TestNN::test_Sequential_add, test/test_nn.py::TestNN::test_Sequential_append, test/test_nn.py::TestNN::test_Sequential_delitem, test/test_nn.py::TestNN::test_Sequential_imul, test/test_nn.py::TestNN::test_Sequential_insert, test/test_nn.py::TestNN::test_Sequential_insert_fail_case, test/test_nn.py::TestNN::test_Sequential_mul, test/test_nn.py::TestNN::test_Sequential_pop, test/test_nn.py::TestNN::test_Sequential_setitem, test/test_nn.py::TestNN::test_Sequential_setitem_named, test/test_nn.py::TestNN::test_SiLU_no_batch_dim, test/test_nn.py::TestNN::test_Sigmoid_no_batch_dim, test/test_nn.py::TestNN::test_SmoothL1Loss_no_batch_dim_mean, test/test_nn.py::TestNN::test_SmoothL1Loss_no_batch_dim_none_cuda_double, test/test_nn.py::TestNN::test_SmoothL1Loss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_SmoothL1Loss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_SmoothL1Loss_no_batch_dim_sum, test/test_nn.py::TestNN::test_SmoothL1Loss_no_batch_dim_sum_cuda_float, test/test_nn.py::TestNN::test_SmoothL1Loss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_SmoothL1Loss_no_reduce_scalar, test/test_nn.py::TestNN::test_SmoothL1Loss_zero_beta, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_mean, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_mean_cuda_half, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_none, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_none_cuda_double, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_none_cuda_float, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_none_cuda_half, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_sum, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_sum_cuda_double, test/test_nn.py::TestNN::test_SoftMarginLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_SoftMarginLoss_no_reduce, test/test_nn.py::TestNN::test_Softplus_no_batch_dim, test/test_nn.py::TestNN::test_Softshrink_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Softsign_no_batch_dim, test/test_nn.py::TestNN::test_Tanh_no_batch_dim, test/test_nn.py::TestNN::test_Tanh_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Tanhshrink_no_batch_dim, test/test_nn.py::TestNN::test_Threshold_no_batch_dim, test/test_nn.py::TestNN::test_Threshold_no_batch_dim_cuda, test/test_nn.py::TestNN::test_TransformerDecoderLayer_gelu_activation, test/test_nn.py::TestNN::test_TransformerDecoderLayer_gelu_activation_cuda, test/test_nn.py::TestNN::test_TransformerDecoderLayer_relu_activation, test/test_nn.py::TestNN::test_TransformerEncoderLayer_gelu_activation_cuda, test/test_nn.py::TestNN::test_TransformerEncoderLayer_relu_activation, test/test_nn.py::TestNN::test_TripletMarginLoss_no_batch_dim_mean_cuda_float, test/test_nn.py::TestNN::test_TripletMarginLoss_no_batch_dim_none, test/test_nn.py::TestNN::test_TripletMarginLoss_no_batch_dim_none_cuda_double, test/test_nn.py::TestNN::test_TripletMarginLoss_no_batch_dim_sum_cuda_half, test/test_nn.py::TestNN::test_Unflatten_no_batch_dim, test/test_nn.py::TestNN::test_Unflatten_no_batch_dim_cuda, test/test_nn.py::TestNN::test_Unfold_int_input, test/test_nn.py::TestNN::test_Unfold_int_input_cuda, test/test_nn.py::TestNN::test_adaptive_log_softmax, test/test_nn.py::TestNN::test_add_module, test/test_nn.py::TestNN::test_affine_grid, test/test_nn.py::TestNN::test_affine_grid_backward_cl_cf_consistency_device_cpu_nd_3, test/test_nn.py::TestNN::test_batchnorm_non_contig_cpu_SyncBatchNorm, test/test_nn.py::TestNN::test_batchnorm_raises_error_if_running_mean_is_not_same_size_as_input, test/test_nn.py::TestNN::test_batchnorm_raises_error_if_running_var_is_not_same_size_as_input, test/test_nn.py::TestNN::test_batchnorm_raises_error_if_running_var_or_running_mean_have_forward_grad, test/test_nn.py::TestNN::test_batchnorm_raises_error_if_weight_is_not_same_size_as_input, test/test_nn.py::TestNN::test_bce_loss_always_nonnegative, test/test_nn.py::TestNN::test_bce_loss_broadcasts_weights, test/test_nn.py::TestNN::test_bce_loss_input_range, test/test_nn.py::TestNN::test_bce_loss_size_mismatch, test/test_nn.py::TestNN::test_bce_with_logits_broadcasts_pos_weights, test/test_nn.py::TestNN::test_bce_with_logits_has_correct_grad_at_zero, test/test_nn.py::TestNN::test_bce_with_logits_raises_if_target_and_input_are_different_size, test/test_nn.py::TestNN::test_bce_with_logits_stability, test/test_nn.py::TestNN::test_bilinear_broadcasting, test/test_nn.py::TestNN::test_bilinear_no_bias, test/test_nn.py::TestNN::test_bilinear_non_contiguous, test/test_nn.py::TestNN::test_broadcast_not_requiring_grad, test/test_nn.py::TestNN::test_buffer_not_persistent, test/test_nn.py::TestNN::test_buffer_not_persistent_assign, test/test_nn.py::TestNN::test_buffer_not_persistent_del, test/test_nn.py::TestNN::test_buffer_not_persistent_overwrite, test/test_nn.py::TestNN::test_call_supports_python_dict_output, test/test_nn.py::TestNN::test_channel_shuffle_return_alias_of_self, test/test_nn.py::TestNN::test_children, test/test_nn.py::TestNN::test_container_copy, test/test_nn.py::TestNN::test_convert_sync_batchnorm, test/test_nn.py::TestNN::test_cosine_embedding_loss_error_on_diff_shapes, test/test_nn.py::TestNN::test_cosine_embedding_loss_error_on_nonexpandable_shapes, test/test_nn.py::TestNN::test_cosine_embedding_loss_invalid_shape, test/test_nn.py::TestNN::test_cosine_similarity, test/test_nn.py::TestNN::test_cross_entropy_loss, test/test_nn.py::TestNN::test_cross_entropy_loss_zero_div, test/test_nn.py::TestNN::test_cudnn_forward_exception, test/test_nn.py::TestNN::test_cudnn_weight_format, test/test_nn.py::TestNN::test_dir, test/test_nn.py::TestNN::test_dir_digit, test/test_nn.py::TestNN::test_elu_inplace_gradgrad, test/test_nn.py::TestNN::test_elu_inplace_on_view, test/test_nn.py::TestNN::test_error_RNN_seq_len_zero, test/test_nn.py::TestNN::test_extra_state_missing_get_extra_state, test/test_nn.py::TestNN::test_extra_state_non_dict, test/test_nn.py::TestNN::test_fold_invalid_arg, test/test_nn.py::TestNN::test_get_buffer_from_submodules, test/test_nn.py::TestNN::test_getattr_with_property, test/test_nn.py::TestNN::test_grid_sample_nearest_neighbor_rounding_mode_consistency, test/test_nn.py::TestNN::test_interpolate, test/test_nn.py::TestNN::test_interpolate_bicubic_2d, test/test_nn.py::TestNN::test_interpolate_bicubic_2d_zero_dim_cuda, test/test_nn.py::TestNN::test_interpolate_bicubic_scale_2d_cuda, test/test_nn.py::TestNN::test_interpolate_bicubic_scale_tuple_skewed_2d, test/test_nn.py::TestNN::test_interpolate_bilinear_2d_zero_dim_cuda, test/test_nn.py::TestNN::test_interpolate_bilinear_scale_2d, test/test_nn.py::TestNN::test_interpolate_bilinear_scale_2d_cuda, test/test_nn.py::TestNN::test_interpolate_bilinear_scale_tuple_shared_2d, test/test_nn.py::TestNN::test_interpolate_bilinear_scale_tuple_shared_2d_cuda, test/test_nn.py::TestNN::test_interpolate_bilinear_scale_tuple_skewed_2d, test/test_nn.py::TestNN::test_interpolate_bilinear_scale_tuple_skewed_2d_align_corners, test/test_nn.py::TestNN::test_interpolate_bilinear_tuple_2d, test/test_nn.py::TestNN::test_interpolate_bilinear_tuple_2d_align_corners, test/test_nn.py::TestNN::test_interpolate_bilinear_tuple_2d_cuda, test/test_nn.py::TestNN::test_interpolate_buffer_overflow, test/test_nn.py::TestNN::test_interpolate_illegal_memory_access, test/test_nn.py::TestNN::test_interpolate_linear_1d, test/test_nn.py::TestNN::test_interpolate_linear_1d_align_corners_cuda, test/test_nn.py::TestNN::test_interpolate_linear_scale_1d, test/test_nn.py::TestNN::test_interpolate_linear_scale_1d_cuda, test/test_nn.py::TestNN::test_interpolate_linear_tuple_1d, test/test_nn.py::TestNN::test_interpolate_nearest_1d, test/test_nn.py::TestNN::test_interpolate_nearest_1d_zero_dim_cuda, test/test_nn.py::TestNN::test_interpolate_nearest_2d, test/test_nn.py::TestNN::test_interpolate_nearest_2d_cuda, test/test_nn.py::TestNN::test_interpolate_nearest_2d_zero_dim_cuda, test/test_nn.py::TestNN::test_interpolate_nearest_scale_1d, test/test_nn.py::TestNN::test_interpolate_nearest_tuple_2d_cuda, test/test_nn.py::TestNN::test_interpolate_nearest_tuple_3d, test/test_nn.py::TestNN::test_interpolate_trilinear_3d_cuda, test/test_nn.py::TestNN::test_interpolate_trilinear_3d_zero_dim, test/test_nn.py::TestNN::test_interpolate_trilinear_scale_3d, test/test_nn.py::TestNN::test_interpolate_trilinear_scale_3d_align_corners_cuda, test/test_nn.py::TestNN::test_interpolate_trilinear_scale_3d_cuda, test/test_nn.py::TestNN::test_interpolate_trilinear_tuple_3d, test/test_nn.py::TestNN::test_kl_div_log_softmax_target, test/test_nn.py::TestNN::test_kl_div_with_diff_type, test/test_nn.py::TestNN::test_kl_div_with_diff_type_log_target, test/test_nn.py::TestNN::test_layer_norm_eps, test/test_nn.py::TestNN::test_linear_autograd_device_cpu_bias_weightCOO, test/test_nn.py::TestNN::test_linear_autograd_device_cpu_bias_weightCSC, test/test_nn.py::TestNN::test_linear_autograd_device_cpu_bias_weightStrided, test/test_nn.py::TestNN::test_linear_autograd_device_cpu_nobias_weightCSC, test/test_nn.py::TestNN::test_linear_autograd_device_cpu_nobias_weightCSR, test/test_nn.py::TestNN::test_linear_broadcasting, test/test_nn.py::TestNN::test_linear_raise_on_scalar_input, test/test_nn.py::TestNN::test_log_softmax_dim0, test/test_nn.py::TestNN::test_log_softmax_dim0_cuda, test/test_nn.py::TestNN::test_log_softmax_dim3, test/test_nn.py::TestNN::test_log_softmax_dim3_cuda, test/test_nn.py::TestNN::test_log_softmax_lastdim, test/test_nn.py::TestNN::test_log_softmax_lastdim_cuda, test/test_nn.py::TestNN::test_log_softmax_scalar_cuda, test/test_nn.py::TestNN::test_log_softmax_spatial, test/test_nn.py::TestNN::test_log_softmax_spatial_cuda, test/test_nn.py::TestNN::test_log_softmax_spatial_special, test/test_nn.py::TestNN::test_margin_ranking_loss_margin_no_reduce, test/test_nn.py::TestNN::test_max_pool1d_invalid_output_size, test/test_nn.py::TestNN::test_module_apply_inplace_op, test/test_nn.py::TestNN::test_module_to_argparse, test/test_nn.py::TestNN::test_mse_loss_size_warning, test/test_nn.py::TestNN::test_multimarginloss_1d_input_0d_target_no_reduce_cuda, test/test_nn.py::TestNN::test_named_children, test/test_nn.py::TestNN::test_native_channel_shuffle_return_alias_of_self, test/test_nn.py::TestNN::test_nested_tensor_from_mask_error, test/test_nn.py::TestNN::test_no_grad, test/test_nn.py::TestNN::test_non_leaf_parameters, test/test_nn.py::TestNN::test_normalize, test/test_nn.py::TestNN::test_pad_scalar_error, test/test_nn.py::TestNN::test_pairwise_distance, test/test_nn.py::TestNN::test_parameter_assignment, test/test_nn.py::TestNN::test_parameterlistdict_pickle, test/test_nn.py::TestNN::test_parameters_and_named_parameters, test/test_nn.py::TestNN::test_parameters_to_vector, test/test_nn.py::TestNN::test_parse_to, test/test_nn.py::TestNN::test_partial_flat_weights, test/test_nn.py::TestNN::test_pdist, test/test_nn.py::TestNN::test_pdist_cpu_gradgrad_unimplemented, test/test_nn.py::TestNN::test_pdist_cuda_gradgrad_unimplemented, test/test_nn.py::TestNN::test_pdist_empty_row, test/test_nn.py::TestNN::test_pdist_large, test/test_nn.py::TestNN::test_pdist_zeros, test/test_nn.py::TestNN::test_pointwise_loss_target_grad_none_reduction, test/test_nn.py::TestNN::test_projections_lstm_check_device, test/test_nn.py::TestNN::test_register_buffer_raises_error_if_name_is_not_string, test/test_nn.py::TestNN::test_register_buffer_raises_error_if_not_tensor, test/test_nn.py::TestNN::test_register_parameter_allows_overwriting_with_same_name, test/test_nn.py::TestNN::test_register_parameter_raises_error_if_attr_exists, test/test_nn.py::TestNN::test_repr, test/test_nn.py::TestNN::test_requires_grad_, test/test_nn.py::TestNN::test_rnn_args_check, test/test_nn.py::TestNN::test_share_memory, test/test_nn.py::TestNN::test_smoothl1loss_negative_beta_not_supported, test/test_nn.py::TestNN::test_softmax_functional_dim3_cuda, test/test_nn.py::TestNN::test_softmax_functional_scalar, test/test_nn.py::TestNN::test_softmax_functional_scalar_cuda, test/test_nn.py::TestNN::test_softmax_lastdim_cuda, test/test_nn.py::TestNN::test_softmax_lastdim_dtype_cuda, test/test_nn.py::TestNN::test_softmax_spatial_cuda, test/test_nn.py::TestNN::test_softmax_spatial_dtype, test/test_nn.py::TestNN::test_softmax_spatial_special_cuda, test/test_nn.py::TestNN::test_sync_batchnorm_accuracy_cuda, test/test_nn.py::TestNN::test_sync_batchnorm_backward_elemt, test/test_nn.py::TestNN::test_threshold_bfloat16_half, test/test_nn.py::TestNN::test_threshold_int, test/test_nn.py::TestNN::test_train_errors_for_invalid_mode, test/test_nn.py::TestNN::test_transformer_layer_args_check, test/test_nn.py::TestNN::test_transformerdecoder, test/test_nn.py::TestNN::test_transformerdecoderlayer, test/test_nn.py::TestNN::test_triplet_margin_loss, test/test_nn.py::TestNN::test_triplet_margin_loss_swap_no_reduce, test/test_nn.py::TestNN::test_unflatten_invalid_arg, test/test_nn.py::TestNN::test_upsamplingLinear1d, test/test_nn.py::TestNN::test_upsamplingTrilinear3d_spatial_invariance, test/test_nn.py::TestNN::test_vector_to_parameters, test/test_nn.py::TestNN::test_weight_norm, test/test_nn.py::TestNN::test_weight_norm_pickle, test/test_nn.py::TestNN::test_zero_grad, test/test_nn.py::TestConstantPadNd::test_preserves_memory_format, test/test_nn.py::TestAddRelu::test_add_relu_broadcasting, test/test_nn.py::TestFusionUtils::test_fuse_conv_bn_requires_grad, test/test_nn.py::TestNNDeviceTypeCPU::test_BatchNorm_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_Bilinear_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_CTCLoss_cudnn_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_CTCLoss_empty_target_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_CTCLoss_no_batch_dim_reduction_mean_use_module_form_True_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_CTCLoss_no_batch_dim_reduction_none_use_module_form_False_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_GRU_grad_and_gradgrad_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_GroupNorm_raises_error_if_one_value_per_group_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_LSTM_differentiable_backward_using_oneDNN_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_LayerNorm_numeric_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_LocalResponseNorm_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_MarginLoss_empty_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_ReflectionPad3d_large_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_ReflectionPad_empty_cpu_complex64, test/test_nn.py::TestNNDeviceTypeCPU::test_ReplicationPad1d_large_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_ReplicationPad3d_large_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_ReplicationPad_empty_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_TransformerDecoderLayer_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_TransformerDecoder_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_TransformerEncoderLayer_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_Transformer_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_activations_bfloat16_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_affine_2d_rotate45_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_affine_2d_rotate90_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_affine_2d_rotateRandom_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_batchnorm_large_batch_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_batchnorm_large_batch_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_batchnorm_simple_average_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_batchnorm_simple_average_mixed_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_batchnorm_update_stats_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_channel_shuffle_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_clip_grad_norm_error_if_nonfinite_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_clip_grad_norm_foreach_False_norm_type_4_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_clip_grad_norm_foreach_True_norm_type_1_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_clip_grad_norm_foreach_True_norm_type_4_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_clip_grad_norm_foreach_True_norm_type_inf_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_clip_grad_norm_multi_device_foreach_False_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_conv_empty_input_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_conv_empty_input_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_64bit_reduction_mean_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_64bit_reduction_sum_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_label_smoothing_consistent_index_target_and_probs_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_label_smoothing_with_probs_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_large_tensor_reduction_mean_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_loss_2d_out_of_bounds_class_index_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_loss_2d_out_of_bounds_class_index_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_loss_index_target_unit_weights_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_loss_prob_target_all_reductions_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_loss_prob_target_no_batch_dim_reduction_mean_weighted_False_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_loss_prob_target_no_batch_dim_reduction_none_weighted_True_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_cross_entropy_loss_prob_target_unit_weights_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_ctc_loss_cudnn_tensor_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_device_mask_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_fold_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_bfloat16_precision_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_half_precision_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_large_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_large_index_2d_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_large_index_2d_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_large_index_3d_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_large_index_3d_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_grid_sample_nan_inf_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_groupnorm_nhwc_cpu_bfloat16, test/test_nn.py::TestNNDeviceTypeCPU::test_hardsigmoid_grad_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_hardswish_grad_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm1d_no_batch_dim_False_affine_False_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm1d_no_batch_dim_False_affine_True_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm1d_no_batch_dim_True_affine_False_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm1d_no_batch_dim_True_affine_True_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm2d_no_batch_dim_False_affine_False_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm2d_no_batch_dim_True_affine_False_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm2d_no_batch_dim_True_affine_True_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_instancenorm_raises_error_if_input_channels_is_not_num_features_InstanceNorm3d_no_batch_dim_True_affine_True_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_layernorm_half_precision_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_layernorm_weight_bias_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_log_softmax_cpu_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_logsigmoid_out_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_lstmcell_backward_only_one_output_grad_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_masked_softmax_TxT_layout_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_masked_softmax_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_masked_softmax_devices_parity_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_masked_softmax_grad_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_masked_softmax_lowp_cpu_bfloat16, test/test_nn.py::TestNNDeviceTypeCPU::test_masked_softmax_lowp_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_masked_softmax_mask_types_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_mish_inplace_overlap_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_module_to_empty_non_recursive_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nll_loss_all_ignored_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nll_loss_empty_tensor_reduction_mean_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nll_loss_empty_tensor_reduction_none_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nll_loss_empty_tensor_reduction_sum_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nll_loss_invalid_target_dim_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nll_loss_large_tensor_reduction_sum_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nll_loss_mismatched_batch_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nn_empty_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_nn_scalars_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_pad_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_replicatepad_64bit_indexing_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_rnn_fused_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_rnn_retain_variables_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_save_lstm_compatibility_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_silu_inplace_overlap_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_smooth_l1_loss_bfloat16_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_smoothl1loss_backward_zero_beta_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softmax_64bit_indexing_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_softmax_backward_64bit_indexing_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softmax_bfloat16_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softmax_cpu_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_softmax_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_softmax_forward_64bit_indexing_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softplus_inplace_overlap_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softplus_low_threshold_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softshrink_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softshrink_inplace_overlap_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_softshrink_negative_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_transformerencoderlayer_gelu_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiLinear2d_consistency_interp_size_bug_memory_format0_align_corners_False_input_size_399_output_size_437_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiLinear2d_consistency_interp_size_bug_memory_format0_align_corners_True_input_size_399_output_size_437_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiLinear2d_consistency_interp_size_bug_memory_format0_align_corners_True_input_size_403_output_size_377_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiLinear2d_consistency_interp_size_bug_memory_format1_align_corners_False_input_size_403_output_size_377_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_False_align_corners_False_mode_bicubic_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_False_align_corners_False_mode_bilinear_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_False_align_corners_False_mode_bilinear_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_False_align_corners_True_mode_bicubic_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_False_align_corners_True_mode_bilinear_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_True_align_corners_False_mode_bicubic_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_True_align_corners_False_mode_bilinear_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_True_align_corners_True_mode_bicubic_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_antialias_True_align_corners_True_mode_bilinear_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format0_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bicubic_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_False_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_False_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_3_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_32_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_False_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_restrided_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_False_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_restrided_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_consistency_memory_format1_mode_bilinear_antialias_True_align_corners_True_num_channels_5_output_size_600_check_as_unsqueezed_3d_tensor_True_non_contig_sliced_batch_size_5_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bicubic_float32_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bicubic_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bicubic_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bicubic_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bilinear_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bilinear_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bilinear_int32_cpu_int32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_bilinear_uint8_cpu_uint8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_nearest-exact_float32_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_nearest-exact_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_nearest-exact_uint8_cpu_uint8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_nearest_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_3_mode_nearest_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_bicubic_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_bicubic_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_bicubic_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_bicubic_uint8_cpu_uint8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_bilinear_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_bilinear_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_bilinear_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_nearest-exact_float32_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_nearest-exact_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_nearest-exact_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_nearest-exact_uint8_cpu_uint8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_nearest_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_False_num_channels_5_mode_nearest_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_bicubic_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_bicubic_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_bilinear_float32_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_bilinear_int32_cpu_int32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_bilinear_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_nearest-exact_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_nearest-exact_int32_cpu_int32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_nearest-exact_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_nearest-exact_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_nearest_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_nearest_int32_cpu_int32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_3_mode_nearest_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bicubic_float32_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bicubic_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bicubic_int32_cpu_int32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bicubic_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bicubic_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bilinear_float32_cpu_float32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bilinear_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bilinear_int32_cpu_int32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bilinear_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_bilinear_uint8_cpu_uint8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest-exact_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest-exact_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest-exact_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest-exact_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest_float64_cpu_float64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest_int16_cpu_int16, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest_int32_cpu_int32, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest_int64_cpu_int64, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest_int8_cpu_int8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBiMode2d_nonsupported_dtypes_antialias_True_num_channels_5_mode_nearest_uint8_cpu_uint8, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBicubic2d_aa_correctness_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBicubic2d_aa_correctness_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingBilinear2d_aa_correctness_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest1d_correctness_isize_10_osize_15_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest1d_launch_config_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest1d_mode_nearest-exact_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest1d_mode_nearest_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest2d_correctness_memory_format0_isize_20_osize_11_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest2d_correctness_memory_format1_isize_10_osize_15_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest2d_launch_config_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest2d_memory_format0_mode_nearest-exact_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest3d_correctness_memory_format1_isize_20_osize_11_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest3d_memory_format0_mode_nearest-exact_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest3d_memory_format0_mode_nearest_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest3d_memory_format1_mode_nearest-exact_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearest3d_memory_format1_mode_nearest_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearestExact1d_rescale_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearestExact2d_correctness_memory_format0_isize_10_osize_15_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingNearestExact2d_correctness_memory_format1_isize_20_osize_11_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingTrilinear3d_align_corners_False_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingTrilinear3d_align_corners_False_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingTrilinear3d_align_corners_True_memory_format0_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_upsamplingTrilinear3d_align_corners_True_memory_format1_cpu, test/test_nn.py::TestNNDeviceTypeCPU::test_warp_softmax_64bit_indexing_cpu_float16, test/test_nn.py::TestNNDeviceTypeCPU::test_warp_softmax_64bit_indexing_cpu_float32 2024-08-06T20:30:36.2734681Z 2024-08-06T20:30:36.2734895Z Running test_cpp_api_parity 1/1 ... [2024-08-06 20:30:36.152632] 2024-08-06T20:30:36.2736054Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cpp_api_parity.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:30:36.152952] 2024-08-06T20:33:07.8199168Z 2024-08-06T20:33:07.8202799Z test_cpp_api_parity 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cpp_api_parity_1.1_449b4843a34b6876_.log 2024-08-06T20:33:07.8401000Z Running 488 items in this shard: test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCELoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCELoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCELoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCELoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCELoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCELoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCEWithLogitsLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCEWithLogitsLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCEWithLogitsLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCEWithLogitsLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCEWithLogitsLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_BCEWithLogitsLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_circular_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_circular_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_groups, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_groups_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad1, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad1_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad1size1, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad1size1_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad2size1, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad2size1_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_same, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_same2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_same2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_same_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_same_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_same_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_valid, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_pad_valid_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_reflect_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_reflect_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_replicate_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_replicate_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_stride, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_stride_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_zero_batch, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_zero_batch_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_zeros_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv1d_zeros_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_circular_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_circular_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_padded, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_padded_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_strided, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_strided_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_with_multiplier, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_depthwise_with_multiplier_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_groups, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_groups_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_groups_thnn, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_groups_thnn_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_no_bias, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_no_bias_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_pad_same, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_pad_same_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_pad_same_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_pad_same_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_pad_valid, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_pad_valid_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_padding, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_padding_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_reflect_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_reflect_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_replicate_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_replicate_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_strided, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_strided_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_zero_batch, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_zero_batch_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_zeros_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv2d_zeros_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_1x1x1_no_bias, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_1x1x1_no_bias_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_circular_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_circular_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_dilated_strided, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_dilated_strided_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_groups, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_groups_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_no_bias, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_no_bias_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_pad_same, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_pad_same_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_pad_same_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_pad_same_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_pad_valid, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_pad_valid_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_replicate_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_replicate_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_stride, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_stride_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_stride_padding, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_stride_padding_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_zero_batch, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_zero_batch_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_zeros_stride2_pad2, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Conv3d_zeros_stride2_pad2_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d_groups, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d_groups_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d_no_bias, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose1d_no_bias_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d_groups, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d_groups_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d_no_bias, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose2d_no_bias_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose3d_dilated, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ConvTranspose3d_dilated_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CosineEmbeddingLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CosineEmbeddingLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CosineEmbeddingLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CosineEmbeddingLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CosineEmbeddingLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CosineEmbeddingLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CrossMapLRN2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_CrossMapLRN2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Embedding, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_discontiguous, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_discontiguous_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_max, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_max_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_max_padding_idx, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_max_padding_idx_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_mean_padding_idx, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_mean_padding_idx_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_sparse, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_sparse_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_sum_padding_idx, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_EmbeddingBag_sum_padding_idx_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Embedding_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Embedding_discontiguous, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Embedding_discontiguous_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Embedding_sparse, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Embedding_sparse_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Flatten, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Flatten_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Flatten_no_batch_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Flatten_no_batch_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold_int_input, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold_int_input_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold_no_batch_dim_input, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold_no_batch_dim_input_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold_no_batch_dim_int_input, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Fold_no_batch_dim_int_input_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_HingeEmbeddingLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_HingeEmbeddingLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_HingeEmbeddingLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_HingeEmbeddingLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_HingeEmbeddingLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_HingeEmbeddingLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_LayerNorm_3d_no_affine_large_feature, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_LayerNorm_3d_no_affine_large_feature_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Linear, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Linear_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Linear_no_batch_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Linear_no_batch_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Linear_no_bias, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Linear_no_bias_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MarginRankingLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MarginRankingLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MarginRankingLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MarginRankingLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MarginRankingLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MarginRankingLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelMarginLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelMarginLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelMarginLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelMarginLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelMarginLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelMarginLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelSoftMarginLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelSoftMarginLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelSoftMarginLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelSoftMarginLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelSoftMarginLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_MultiLabelSoftMarginLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_NLLLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_NLLLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_NLLLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_NLLLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_NLLLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_NLLLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_broadcast_lhs, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_broadcast_lhs_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_broadcast_rhs, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_broadcast_rhs_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_no_batch_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_no_batch_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_with_non_default_args, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PairwiseDistance_with_non_default_args_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PixelShuffle, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PixelShuffle_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PixelUnshuffle, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_PixelUnshuffle_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_RReLU, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_RReLU_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_RReLU_with_up_down, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_RReLU_with_up_down_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_RReLU_with_up_down_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_RReLU_with_up_down_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ReplicationPad3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ReplicationPad3d_complex, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ReplicationPad3d_complex_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ReplicationPad3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ReplicationPad3d_no_batch_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_ReplicationPad3d_no_batch_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SampleModule_has_parity, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SampleModule_has_parity_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SampleModule_no_parity, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SampleModule_no_parity_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SoftMarginLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SoftMarginLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SoftMarginLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SoftMarginLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SoftMarginLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_SoftMarginLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerDecoderLayer_gelu_activation, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerDecoderLayer_gelu_activation_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerDecoderLayer_relu_activation, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerDecoderLayer_relu_activation_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerEncoderLayer_gelu_activation, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerEncoderLayer_gelu_activation_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerEncoderLayer_relu_activation, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TransformerEncoderLayer_relu_activation_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Transformer_multilayer_coder, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Transformer_multilayer_coder_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TripletMarginLoss_no_batch_dim_mean, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TripletMarginLoss_no_batch_dim_mean_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TripletMarginLoss_no_batch_dim_none, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TripletMarginLoss_no_batch_dim_none_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TripletMarginLoss_no_batch_dim_sum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_TripletMarginLoss_no_batch_dim_sum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Unflatten_no_batch_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Unflatten_no_batch_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Unfold, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Unfold_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Unfold_int_input, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_Unfold_int_input_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_no_reduce_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_no_reduce_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_weights_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_weights_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_weights_no_reduce_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCELoss_weights_no_reduce_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCEWithLogitsLoss_legacy_enum, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCEWithLogitsLoss_legacy_enum_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCEWithLogitsLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCEWithLogitsLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCEWithLogitsLoss_no_reduce_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_BCEWithLogitsLoss_no_reduce_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_HingeEmbeddingLoss_margin_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_HingeEmbeddingLoss_margin_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_HingeEmbeddingLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_HingeEmbeddingLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_HuberLoss_delta, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_HuberLoss_delta_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce_log_target, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce_log_target_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce_scalar_log_target, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_no_reduce_scalar_log_target_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_with_log_target_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_with_log_target_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_with_target_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_KLDivLoss_with_target_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_L1Loss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_L1Loss_no_reduce_complex, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_L1Loss_no_reduce_complex_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_L1Loss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_L1Loss_no_reduce_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_L1Loss_no_reduce_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MSELoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MSELoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MSELoss_no_reduce_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MSELoss_no_reduce_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_0d_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_0d_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_1d_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_1d_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_index_neg, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_index_neg_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelMarginLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelSoftMarginLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelSoftMarginLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelSoftMarginLoss_weights_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiLabelSoftMarginLoss_weights_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_1d_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_1d_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_margin_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_margin_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_p_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_p_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_weights_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_MultiMarginLoss_weights_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss2d_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss2d_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss2d_no_reduce_ignore_index, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss2d_no_reduce_ignore_index_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss2d_no_reduce_weights, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss2d_no_reduce_weights_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLossNd_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLossNd_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLossNd_no_reduce_ignore_index, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLossNd_no_reduce_ignore_index_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLossNd_no_reduce_weights, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLossNd_no_reduce_weights_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_ignore_index, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_ignore_index_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_weights, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_weights_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_weights_ignore_index, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_weights_ignore_index_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_weights_ignore_index_neg, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_NLLLoss_no_reduce_weights_ignore_index_neg_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_PoissonNLLLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_PoissonNLLLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_beta, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_beta_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_no_reduce_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_no_reduce_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_zero_beta, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SmoothL1Loss_zero_beta_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SoftMarginLoss_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_SoftMarginLoss_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_2d_zero_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_2d_zero_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_tuple_shared_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_tuple_shared_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_tuple_skewed_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_tuple_skewed_2d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_tuple_skewed_2d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_scale_tuple_skewed_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_tuple_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_tuple_2d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_tuple_2d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bicubic_tuple_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_2d_zero_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_2d_zero_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_tuple_shared_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_tuple_shared_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_tuple_skewed_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_tuple_skewed_2d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_tuple_skewed_2d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_scale_tuple_skewed_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_tuple_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_tuple_2d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_tuple_2d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_bilinear_tuple_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_1d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_1d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_1d_zero_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_1d_zero_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_scale_1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_scale_1d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_scale_1d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_scale_1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_tuple_1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_linear_tuple_1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_1d_zero_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_1d_zero_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_2d_launch_configs, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_2d_launch_configs_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_2d_zero_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_2d_zero_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_3d_zero_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_3d_zero_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_scale_1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_scale_1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_scale_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_scale_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_scale_3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_scale_3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_tuple_1d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_tuple_1d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_tuple_2d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_tuple_2d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_tuple_3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_nearest_tuple_3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_3d_zero_dim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_3d_zero_dim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_scale_3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_scale_3d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_scale_3d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_scale_3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_tuple_3d, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_tuple_3d_align_corners, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_tuple_3d_align_corners_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_interpolate_trilinear_tuple_3d_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_dim0, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_dim0_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_dim3, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_dim3_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_lastdim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_lastdim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_spatial, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_spatial_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_spatial_special, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_log_softmax_spatial_special_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_multimarginloss_1d_input_0d_target_no_reduce, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_multimarginloss_1d_input_0d_target_no_reduce_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_sample_functional_has_parity, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_sample_functional_has_parity_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_sample_functional_no_parity, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_sample_functional_no_parity_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_functional_dim0, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_functional_dim0_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_functional_dim3, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_functional_dim3_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_functional_scalar, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_functional_scalar_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_lastdim, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_lastdim_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_lastdim_dtype, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_lastdim_dtype_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_spatial, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_spatial_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_spatial_dtype, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_spatial_dtype_cuda, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_spatial_special, test/test_cpp_api_parity.py::TestCppApiParity::test_torch_nn_functional_softmax_spatial_special_cuda 2024-08-06T20:33:07.8589697Z 2024-08-06T20:33:07.8589894Z Running test_torch 1/1 ... [2024-08-06 20:33:07.821094] 2024-08-06T20:33:07.8590996Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_torch.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:33:07.821483] 2024-08-06T20:38:44.7855293Z 2024-08-06T20:38:44.7856189Z test_torch 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_torch_1.1_fb57c01b119f1cd5_.log 2024-08-06T20:38:44.8193620Z Running 1021 items in this shard: test/test_torch.py::TestBasicVitalSigns::test_basic_vitals, test/test_torch.py::TestBasicVitalSigns::test_basic_vitals_read_write, test/test_torch.py::TestBasicVitalSigns::test_dataloader_vitals, test/test_torch.py::TestTorch::test_RNGState, test/test_torch.py::TestTorch::test_RNGStateAliasing, test/test_torch.py::TestTorch::test_RNG_after_pickle, test/test_torch.py::TestTorch::test_Size, test/test_torch.py::TestTorch::test_Size_iter, test/test_torch.py::TestTorch::test_Size_scalar, test/test_torch.py::TestTorch::test_add_meta_scalar, test/test_torch.py::TestTorch::test_allow_tensor_metadata_change, test/test_torch.py::TestTorch::test_apply, test/test_torch.py::TestTorch::test_as_subclass, test/test_torch.py::TestTorch::test_assert_async, test/test_torch.py::TestTorch::test_backward_hooks_traverse, test/test_torch.py::TestTorch::test_batch_norm_cpu_inference, test/test_torch.py::TestTorch::test_bf16_supported_on_cpu, test/test_torch.py::TestTorch::test_bmm_multithreaded, test/test_torch.py::TestTorch::test_boxMullerState, test/test_torch.py::TestTorch::test_cat_neg_dim, test/test_torch.py::TestTorch::test_check, test/test_torch.py::TestTorch::test_chunk_neg_dim, test/test_torch.py::TestTorch::test_conj_neg_tolist, test/test_torch.py::TestTorch::test_contains, test/test_torch.py::TestTorch::test_copy_broadcast, test/test_torch.py::TestTorch::test_copy_dtypes, test/test_torch.py::TestTorch::test_copy_float16, test/test_torch.py::TestTorch::test_copy_many_to_one, test/test_torch.py::TestTorch::test_copy_transpose, test/test_torch.py::TestTorch::test_cuda_not_built, test/test_torch.py::TestTorch::test_cummax_neg_dim, test/test_torch.py::TestTorch::test_cummin_neg_dim, test/test_torch.py::TestTorch::test_cumprod_neg_dim, test/test_torch.py::TestTorch::test_cumsum_neg_dim, test/test_torch.py::TestTorch::test_cxx_flags, test/test_torch.py::TestTorch::test_data_ptr_of_empty_tensor_with_storage, test/test_torch.py::TestTorch::test_data_ptr_of_empty_view_with_storage, test/test_torch.py::TestTorch::test_deepcopy_gradient, test/test_torch.py::TestTorch::test_deepcopy_parameter, test/test_torch.py::TestTorch::test_deterministic_fill_uninitialized_memory, test/test_torch.py::TestTorch::test_deterministic_flag, test/test_torch.py::TestTorch::test_device, test/test_torch.py::TestTorch::test_dim_order, test/test_torch.py::TestTorch::test_dir, test/test_torch.py::TestTorch::test_doc, test/test_torch.py::TestTorch::test_doc_template, test/test_torch.py::TestTorch::test_dot_data_use, test/test_torch.py::TestTorch::test_dtype_is_signed, test/test_torch.py::TestTorch::test_element_size, test/test_torch.py::TestTorch::test_empty_meta, test/test_torch.py::TestTorch::test_empty_storage_view, test/test_torch.py::TestTorch::test_equal, test/test_torch.py::TestTorch::test_error_msg_type_translation, test/test_torch.py::TestTorch::test_fill_diagonal, test/test_torch.py::TestTorch::test_format_scalar_meta, test/test_torch.py::TestTorch::test_from_buffer, test/test_torch.py::TestTorch::test_from_file, test/test_torch.py::TestTorch::test_gather_neg_dim, test/test_torch.py::TestTorch::test_generator_cpu, test/test_torch.py::TestTorch::test_get_cpu_capability, test/test_torch.py::TestTorch::test_has_internal_overlap, test/test_torch.py::TestTorch::test_has_storage, test/test_torch.py::TestTorch::test_index_add, test/test_torch.py::TestTorch::test_index_add_all_dtypes, test/test_torch.py::TestTorch::test_index_add_cornercase, test/test_torch.py::TestTorch::test_index_add_correctness, test/test_torch.py::TestTorch::test_index_add_neg_dim, test/test_torch.py::TestTorch::test_index_copy_neg_dim, test/test_torch.py::TestTorch::test_index_fill_neg_dim, test/test_torch.py::TestTorch::test_index_select_neg_dim, test/test_torch.py::TestTorch::test_invalid_arg_error_handling, test/test_torch.py::TestTorch::test_invalid_generator_raises, test/test_torch.py::TestTorch::test_is_nonzero, test/test_torch.py::TestTorch::test_is_same_size, test/test_torch.py::TestTorch::test_iter, test/test_torch.py::TestTorch::test_kthvalue_neg_dim, test/test_torch.py::TestTorch::test_linspace_logspace, test/test_torch.py::TestTorch::test_logcumsumexp_neg_dim, test/test_torch.py::TestTorch::test_manual_seed, test/test_torch.py::TestTorch::test_map, test/test_torch.py::TestTorch::test_map2, test/test_torch.py::TestTorch::test_max_neg_dim, test/test_torch.py::TestTorch::test_mean_neg_dim, test/test_torch.py::TestTorch::test_median_neg_dim, test/test_torch.py::TestTorch::test_memory_format, test/test_torch.py::TestTorch::test_memory_format_contiguous_returns_same_tensor_if_already_satisfies, test/test_torch.py::TestTorch::test_memory_format_empty, test/test_torch.py::TestTorch::test_min_neg_dim, test/test_torch.py::TestTorch::test_mode_neg_dim, test/test_torch.py::TestTorch::test_multinomial_invalid_probs, test/test_torch.py::TestTorch::test_nanmedian_neg_dim, test/test_torch.py::TestTorch::test_narrow_neg_dim, test/test_torch.py::TestTorch::test_nbytes, test/test_torch.py::TestTorch::test_ndim, test/test_torch.py::TestTorch::test_new, test/test_torch.py::TestTorch::test_newaxis_numpy_comparison, test/test_torch.py::TestTorch::test_newindex, test/test_torch.py::TestTorch::test_no_cuda_monkeypatch, test/test_torch.py::TestTorch::test_norm_neg_dim, test/test_torch.py::TestTorch::test_normal_shape, test/test_torch.py::TestTorch::test_numel, test/test_torch.py::TestTorch::test_parallel_info, test/test_torch.py::TestTorch::test_parsing_double, test/test_torch.py::TestTorch::test_parsing_int64, test/test_torch.py::TestTorch::test_parsing_intlist, test/test_torch.py::TestTorch::test_permute, test/test_torch.py::TestTorch::test_pickle, test/test_torch.py::TestTorch::test_pickle_dtype, test/test_torch.py::TestTorch::test_pickle_function, test/test_torch.py::TestTorch::test_pickle_generator, test/test_torch.py::TestTorch::test_pickle_parameter, test/test_torch.py::TestTorch::test_pickle_parameter_no_requires_grad, test/test_torch.py::TestTorch::test_pickle_size, test/test_torch.py::TestTorch::test_pin_memory, test/test_torch.py::TestTorch::test_print, test/test_torch.py::TestTorch::test_prod_neg_dim, test/test_torch.py::TestTorch::test_pyobj_preserved, test/test_torch.py::TestTorch::test_qengine, test/test_torch.py::TestTorch::test_renorm_neg_dim, test/test_torch.py::TestTorch::test_resizable, test/test_torch.py::TestTorch::test_reversed, test/test_torch.py::TestTorch::test_scatter_neg_dim, test/test_torch.py::TestTorch::test_select_neg_dim, test/test_torch.py::TestTorch::test_set_flush_denormal, test/test_torch.py::TestTorch::test_setting_real_imag_to_a_number, test/test_torch.py::TestTorch::test_show_config, test/test_torch.py::TestTorch::test_size_neg_dim, test/test_torch.py::TestTorch::test_size_stride, test/test_torch.py::TestTorch::test_sizeof, test/test_torch.py::TestTorch::test_slice, test/test_torch.py::TestTorch::test_slow_test, test/test_torch.py::TestTorch::test_sobolengine_bounds, test/test_torch.py::TestTorch::test_sobolengine_bounds_scrambled, test/test_torch.py::TestTorch::test_sobolengine_continuing, test/test_torch.py::TestTorch::test_sobolengine_continuing_scrambled, test/test_torch.py::TestTorch::test_sobolengine_default_dtype, test/test_torch.py::TestTorch::test_sobolengine_distribution, test/test_torch.py::TestTorch::test_sobolengine_distribution_scrambled, test/test_torch.py::TestTorch::test_sobolengine_draw, test/test_torch.py::TestTorch::test_sobolengine_draw_base2, test/test_torch.py::TestTorch::test_sobolengine_draw_base2_scrambled, test/test_torch.py::TestTorch::test_sobolengine_draw_scrambled, test/test_torch.py::TestTorch::test_sobolengine_fast_forward, test/test_torch.py::TestTorch::test_sobolengine_fast_forward_scrambled, test/test_torch.py::TestTorch::test_sobolengine_first_point, test/test_torch.py::TestTorch::test_sobolengine_high_dim, test/test_torch.py::TestTorch::test_sobolengine_raise, test/test_torch.py::TestTorch::test_sobolengine_reset, test/test_torch.py::TestTorch::test_sobolengine_reset_scrambled, test/test_torch.py::TestTorch::test_sort_neg_dim, test/test_torch.py::TestTorch::test_split_neg_dim, test/test_torch.py::TestTorch::test_split_with_sizes_copy_out, test/test_torch.py::TestTorch::test_squeeze_neg_dim, test/test_torch.py::TestTorch::test_std_neg_dim, test/test_torch.py::TestTorch::test_storage_base_init, test/test_torch.py::TestTorch::test_storage_base_new, test/test_torch.py::TestTorch::test_storage_byteswap, test/test_torch.py::TestTorch::test_storage_casts, test/test_torch.py::TestTorch::test_storage_cycle_via_dict, test/test_torch.py::TestTorch::test_storage_cycle_via_slots, test/test_torch.py::TestTorch::test_storage_dead_weak_ref, test/test_torch.py::TestTorch::test_storage_dealloc, test/test_torch.py::TestTorch::test_storage_dealloc_resurrected, test/test_torch.py::TestTorch::test_storage_dealloc_subclass_resurrected, test/test_torch.py::TestTorch::test_storage_dealloc_subclass_zombie, test/test_torch.py::TestTorch::test_storage_dict_dealloc, test/test_torch.py::TestTorch::test_storage_error, test/test_torch.py::TestTorch::test_storage_error_no_attribute, test/test_torch.py::TestTorch::test_storage_finalizer_dealloc, test/test_torch.py::TestTorch::test_storage_fix_weakref_no_leak, test/test_torch.py::TestTorch::test_storage_from_tensor_dealloc, test/test_torch.py::TestTorch::test_storage_from_tensor_dealloc_resurrected, test/test_torch.py::TestTorch::test_storage_from_tensor_dealloc_zombie, test/test_torch.py::TestTorch::test_storage_preserve_nonhermetic_in_hermetic_context, test/test_torch.py::TestTorch::test_storage_resurrected_weak_ref, test/test_torch.py::TestTorch::test_storage_slot_dealloc, test/test_torch.py::TestTorch::test_storage_weakref_dealloc, test/test_torch.py::TestTorch::test_structseq_repr, test/test_torch.py::TestTorch::test_subclass_preserved, test/test_torch.py::TestTorch::test_subclass_tensors, test/test_torch.py::TestTorch::test_sum_neg_dim, test/test_torch.py::TestTorch::test_swap_basic, test/test_torch.py::TestTorch::test_swap_fail_slots, test/test_torch.py::TestTorch::test_t_not_2d_error, test/test_torch.py::TestTorch::test_tensor_base_init, test/test_torch.py::TestTorch::test_tensor_base_new, test/test_torch.py::TestTorch::test_tensor_ctor_scalar, test/test_torch.py::TestTorch::test_tensor_cycle_via_dict, test/test_torch.py::TestTorch::test_tensor_cycle_via_slots, test/test_torch.py::TestTorch::test_tensor_dead_weak_ref, test/test_torch.py::TestTorch::test_tensor_dict_dealloc, test/test_torch.py::TestTorch::test_tensor_finalizer_dealloc, test/test_torch.py::TestTorch::test_tensor_fix_weakref_no_leak, test/test_torch.py::TestTorch::test_tensor_resurrected_weak_ref, test/test_torch.py::TestTorch::test_tensor_set, test/test_torch.py::TestTorch::test_tensor_set_errors, test/test_torch.py::TestTorch::test_tensor_slot_dealloc, test/test_torch.py::TestTorch::test_tensor_weakref_dealloc, test/test_torch.py::TestTorch::test_tensor_where_scalar, test/test_torch.py::TestTorch::test_tensoriterator_output_setup, test/test_torch.py::TestTorch::test_terminate_handler_on_crash, test/test_torch.py::TestTorch::test_to, test/test_torch.py::TestTorch::test_to_with_tensor, test/test_torch.py::TestTorch::test_topk_neg_dim, test/test_torch.py::TestTorch::test_torch_from_file, test/test_torch.py::TestTorch::test_transpose_neg_dim, test/test_torch.py::TestTorch::test_type, test/test_torch.py::TestTorch::test_type_alias, test/test_torch.py::TestTorch::test_type_conversion_via_dtype_name, test/test_torch.py::TestTorch::test_typed_storage_deprecation_warning, test/test_torch.py::TestTorch::test_typed_storage_internal_no_warning, test/test_torch.py::TestTorch::test_unbind_neg_dim, test/test_torch.py::TestTorch::test_unflatten, test/test_torch.py::TestTorch::test_unfold_neg_dim, test/test_torch.py::TestTorch::test_unsqueeze_neg_dim, test/test_torch.py::TestTorch::test_upsample_nearest1d_meta, test/test_torch.py::TestTorch::test_upsample_nearest2d_meta, test/test_torch.py::TestTorch::test_var_neg_dim, test/test_torch.py::TestTorch::test_warn_types, test/test_torch.py::TestTorch::test_wildcard_import, test/test_torch.py::TestVitalSignsCudaCPU::test_cuda_vitals_gpu_only_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcdiv_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_addcmul_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_assertRaisesRegex_ignore_msg_non_native_device_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_edge_cases_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_edge_cases_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_edge_cases_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_p_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_p_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_p_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_p_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_bernoulli_self_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_bfloat16_neg_abs_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_bool_tensor_value_change_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_add_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_addcdiv_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_addcmul_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_atan2_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_copy_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_dist_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_div_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_eq_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_fmod_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_ge_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_gt_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_le_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_lerp_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_lt_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_map2_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_map_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_masked_fill_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_masked_scatter_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_masked_select_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_max_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_min_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_mul_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_ne_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_pow_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_remainder_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_broadcast_fn_sub_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_uint16, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_uint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_uint64, test/test_torch.py::TestTorchDeviceTypeCPU::test_bytes_to_scalar_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_cauchy_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_cauchy_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_cauchy_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_cauchy_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_cauchy_kstest_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cauchy_no_inf_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_cauchy_no_inf_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_cuda_backward_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_euclidean_large_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_grad_p_lt_1_no_nan_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_large_batch_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_large_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_non_contiguous_batch_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_non_contiguous_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_norm_batch_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_norm_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cdist_same_inputs_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_check_tensor_all_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_check_tensor_internal_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_clone_all_dtypes_and_devices_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_clone_not_memory_dense_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_clone_zero_stride_dim_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_complex_half_experimental_warning_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_constants_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_conv_transposed_backward_agnostic_to_memory_format_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_conv_transposed_large_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_complex32, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy__cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy_all_dtypes_and_devices_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy_math_view_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy_mem_overlap_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy_transpose_math_view_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy_transpose_math_view_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_copy_transpose_math_view_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_corrcoef_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_corrcoef_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_corrcoef_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_cov_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cpp_warnings_have_python_context_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cublas_config_nondeterministic_alert_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cummax_cummin_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cummax_discontiguous_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cummin_discontiguous_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cumprod_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_cumsum_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_deepcopy_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deepcopy_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deepcopy_scalar_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deepcopy_scalar_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_uint16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_uint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_uint64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_empty_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_interpolate_bilinear_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_replication_pad2d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_uint16, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_uint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_uint64, test/test_torch.py::TestTorchDeviceTypeCPU::test_deterministic_resize_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_device_guard_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_diff_noncontig_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_dim_function_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_discontiguous_out_cumsum_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_dist_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_dtypetensor_warnings_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_errors_index_copy_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_expected_failure_xla_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_kstest_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_kstest_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_kstest_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_kstest_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_no_zero_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_exponential_no_zero_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_gather_backward_deterministic_path_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_gather_backward_one_dim_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_geometric_kstest_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scale_will_not_overflow_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaler_deprecated_warning_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaler_pass_itself_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_accumulation_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach0_fused0_AdamW_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach0_fused0_Adam_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach0_fused0_SGD_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach2_fused_True_AdamW_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach2_fused_True_Adam_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach2_fused_True_SGD_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach_True_fused1_AdamW_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach_True_fused1_Adam_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_autocast_foreach_True_fused1_SGD_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_clipping_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_clipping_separate_unscale_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_multiple_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_penalty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_state_dict_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_unscale_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_unscale_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_unscale_sparse_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_grad_scaling_update_scale_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_all_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_all_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_all_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_extreme_cases_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_extreme_cases_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_extreme_cases_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_spacing_list_length_error_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_spacing_list_length_error_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_spacing_list_length_error_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_gradient_type_promotion_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_hook_remove_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_add_deterministic_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_add_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_deterministic_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_copy_scalars_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_fill_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_put_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_put_non_accumulate_deterministic_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amax_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_amin_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_mean_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_reduce_reduce_prod_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_index_select_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_invalid_shapes_grid_sampler_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_is_set_to_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_is_signed_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_complex32, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_uint16, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_uint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_uint64, test/test_torch.py::TestTorchDeviceTypeCPU::test_item_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_large_cumprod_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_large_cumsum_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_binary_op_no_materialize_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_lazy_clone_view_materialize_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_log_normal_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_log_normal_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_log_normal_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_log_normal_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_logcumsumexp_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_lognormal_kstest_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_bool_tensor_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_bfloat16_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_bfloat16_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_bool_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_bool_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_complex128_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_complex128_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_complex64_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_complex64_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_float16_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_float16_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_float32_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_float32_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_float64_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_float64_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int16_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int16_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int32_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int32_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int64_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int64_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int8_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_int8_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_uint8_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_cpu_uint8_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_fill_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_bool_tensor_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_inplace_noncontiguous_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_large_tensor_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_scatter_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_masked_select_discontiguous_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_clone_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_consistency_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_cpu_and_cuda_ops_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_empty_like_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_factory_like_functions_preserve_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_operators_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_preserved_after_permute_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_propagation_rules_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_to_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_type_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_memory_format_type_shortcuts_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_module_share_memory_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_cpu_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_cpu_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_cpu_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_cpu_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_deterministic_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_deterministic_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_deterministic_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_device_constrain_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_empty_w_replacement_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_empty_wo_replacement_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_gpu_device_constrain_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_multinomial_rng_state_advance_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_narrow_copy_non_contiguous_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_narrow_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_AdaptiveAvgPool2d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_AdaptiveAvgPool3d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_AdaptiveMaxPool2d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_AvgPool3d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_CTCLoss_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_EmbeddingBag_max_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_FractionalMaxPool2d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_FractionalMaxPool3d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxPool3d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool1d_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool1d_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool1d_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool2d_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool2d_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool2d_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool3d_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool3d_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_MaxUnpool3d_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_NLLLoss_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_ReflectionPad1d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_ReflectionPad2d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_ReflectionPad3d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_ReplicationPad1d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_ReplicationPad2d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_ReplicationPad3d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_bincount_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_cumsum_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_grid_sample_2d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_grid_sample_3d_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_histc_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_interpolate_bicubic_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_interpolate_bilinear_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_interpolate_linear_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_interpolate_trilinear_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_kthvalue_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_median_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_put_accumulate_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_alert_put_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_resize_quantized_cpu_qint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_resize_quantized_cpu_qint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_resize_quantized_cpu_quint2x4, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_resize_quantized_cpu_quint4x2, test/test_torch.py::TestTorchDeviceTypeCPU::test_nondeterministic_resize_quantized_cpu_quint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_normal_kstest_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_normal_kstest_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_normal_kstest_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_nullary_op_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_pairwise_distance_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_parallel_cow_materialize_error_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_params_invalidated_with_grads_invalidated_between_unscale_and_step_AdamW_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_params_invalidated_with_grads_invalidated_between_unscale_and_step_Adam_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_params_invalidated_with_grads_invalidated_between_unscale_and_step_SGD_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_pdist_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_pdist_norm_large_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_pickle_gradscaler_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_pin_memory_from_constructor_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_accumulate_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_put_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_reduced_type_float_copy_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_reduced_type_float_copy_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_repeat_interleave_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scalar_check_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_add_bool_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_add_non_unique_index_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_add_one_dim_deterministic_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_add_to_large_input_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_bool_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_multiply_unsupported_dtypes_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_multiply_unsupported_dtypes_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_non_unique_index_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_operations_to_large_input_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_reduce_scalar_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_to_large_input_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_scatter_zero_size_index_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_serialization_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_default_tensor_type_warnings_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_set_storage_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_shift_mem_overlap_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_skip_xla_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_all_devices_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_uint16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_uint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_uint64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_errors_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_from_tensor_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_meta_ok_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_qint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_qint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_quint4x2, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_quint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_storage_setitem_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_strides_propagation_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_sync_warning_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_take_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_uint16, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_uint32, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_uint64, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_from_storage_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_set_errors_multigpu_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_shape_empty_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_storage_type_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_tensor_type_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_ternary_op_mem_overlap_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_bool, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_complex128, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_complex64, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_int16, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_int32, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_int64, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_int8, test/test_torch.py::TestTorchDeviceTypeCPU::test_typed_storage_meta_cpu_uint8, test/test_torch.py::TestTorchDeviceTypeCPU::test_unfold_all_devices_and_dtypes_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_unfold_scalars_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_uniform_kstest_cpu_bfloat16, test/test_torch.py::TestTorchDeviceTypeCPU::test_uniform_kstest_cpu_float16, test/test_torch.py::TestTorchDeviceTypeCPU::test_uniform_kstest_cpu_float32, test/test_torch.py::TestTorchDeviceTypeCPU::test_uniform_kstest_cpu_float64, test/test_torch.py::TestTorchDeviceTypeCPU::test_untyped_storage_meta_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_warn_always_caught_cpu, test/test_torch.py::TestTorchDeviceTypeCPU::test_where_scalar_handcrafted_values_cpu 2024-08-06T20:38:44.8506152Z 2024-08-06T20:38:44.8506415Z Running test_ci_sanity_check_fail 1/1 ... [2024-08-06 20:38:44.788617] 2024-08-06T20:38:44.8507610Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_ci_sanity_check_fail.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:38:44.789071] 2024-08-06T20:38:54.0493750Z Running test_jit_disabled 1/1 ... [2024-08-06 20:38:54.049006] 2024-08-06T20:38:54.0495343Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_jit_disabled.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:38:54.049293] 2024-08-06T20:38:57.2688419Z 2024-08-06T20:38:57.2689762Z test_jit_disabled 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_jit_disabled_1.1_95f8ab8fb62f6169_.log 2024-08-06T20:38:57.2692258Z Running 3 items in this shard: test/test_jit_disabled.py::TestJitDisabled::test_attribute, test/test_jit_disabled.py::TestJitDisabled::test_recursive_script, test/test_jit_disabled.py::TestJitDisabled::test_script_module_construction 2024-08-06T20:38:57.2694098Z 2024-08-06T20:38:57.2694374Z Running test_tensorexpr 1/1 ... [2024-08-06 20:38:57.268770] 2024-08-06T20:38:57.2695733Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_tensorexpr.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:38:57.269135] 2024-08-06T20:38:59.8871792Z 2024-08-06T20:38:59.8872708Z test_tensorexpr 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_tensorexpr_1.1_a81e32ff379cf4d0_.log 2024-08-06T20:38:59.8893641Z Running 74 items in this shard: test/test_tensorexpr.py::TestTensorExprFuser::test_add_const_rhs, test/test_tensorexpr.py::TestTensorExprFuser::test_add_sub, test/test_tensorexpr.py::TestTensorExprFuser::test_alias_analysis_input_and_module, test/test_tensorexpr.py::TestTensorExprFuser::test_alias_analysis_inputs, test/test_tensorexpr.py::TestTensorExprFuser::test_alias_analysis_module, test/test_tensorexpr.py::TestTensorExprFuser::test_all_combos, test/test_tensorexpr.py::TestTensorExprFuser::test_alpha, test/test_tensorexpr.py::TestTensorExprFuser::test_binary_ops, test/test_tensorexpr.py::TestTensorExprFuser::test_bitwise_ops, test/test_tensorexpr.py::TestTensorExprFuser::test_broadcast, test/test_tensorexpr.py::TestTensorExprFuser::test_broadcast3, test/test_tensorexpr.py::TestTensorExprFuser::test_broadcast_2, test/test_tensorexpr.py::TestTensorExprFuser::test_broadcast_big2, test/test_tensorexpr.py::TestTensorExprFuser::test_cat, test/test_tensorexpr.py::TestTensorExprFuser::test_cat_empty_tensors, test/test_tensorexpr.py::TestTensorExprFuser::test_cat_negative_dim, test/test_tensorexpr.py::TestTensorExprFuser::test_cat_only, test/test_tensorexpr.py::TestTensorExprFuser::test_cat_promote_inputs, test/test_tensorexpr.py::TestTensorExprFuser::test_cat_with_constant_dim, test/test_tensorexpr.py::TestTensorExprFuser::test_char, test/test_tensorexpr.py::TestTensorExprFuser::test_chunk, test/test_tensorexpr.py::TestTensorExprFuser::test_clamp, test/test_tensorexpr.py::TestTensorExprFuser::test_constant, test/test_tensorexpr.py::TestTensorExprFuser::test_double, test/test_tensorexpr.py::TestTensorExprFuser::test_double_intrinsics, test/test_tensorexpr.py::TestTensorExprFuser::test_dynamic_shape, test/test_tensorexpr.py::TestTensorExprFuser::test_easy, test/test_tensorexpr.py::TestTensorExprFuser::test_eq, test/test_tensorexpr.py::TestTensorExprFuser::test_exp_pow, test/test_tensorexpr.py::TestTensorExprFuser::test_four_arg, test/test_tensorexpr.py::TestTensorExprFuser::test_ge, test/test_tensorexpr.py::TestTensorExprFuser::test_gt, test/test_tensorexpr.py::TestTensorExprFuser::test_guard_fails, test/test_tensorexpr.py::TestTensorExprFuser::test_half_bn_relu, test/test_tensorexpr.py::TestTensorExprFuser::test_half_gelu, test/test_tensorexpr.py::TestTensorExprFuser::test_int64_promotion, test/test_tensorexpr.py::TestTensorExprFuser::test_int_output, test/test_tensorexpr.py::TestTensorExprFuser::test_le, test/test_tensorexpr.py::TestTensorExprFuser::test_loop, test/test_tensorexpr.py::TestTensorExprFuser::test_lt, test/test_tensorexpr.py::TestTensorExprFuser::test_mask, test/test_tensorexpr.py::TestTensorExprFuser::test_min_max, test/test_tensorexpr.py::TestTensorExprFuser::test_min_max_reduction, test/test_tensorexpr.py::TestTensorExprFuser::test_min_max_reduction2, test/test_tensorexpr.py::TestTensorExprFuser::test_min_max_reduction_dim1, test/test_tensorexpr.py::TestTensorExprFuser::test_min_max_reduction_dim1_2, test/test_tensorexpr.py::TestTensorExprFuser::test_multi_rand, test/test_tensorexpr.py::TestTensorExprFuser::test_multioutput, test/test_tensorexpr.py::TestTensorExprFuser::test_multiple_outputs, test/test_tensorexpr.py::TestTensorExprFuser::test_nans, test/test_tensorexpr.py::TestTensorExprFuser::test_ne, test/test_tensorexpr.py::TestTensorExprFuser::test_promotion, test/test_tensorexpr.py::TestTensorExprFuser::test_propagated_mem_layout, test/test_tensorexpr.py::TestTensorExprFuser::test_rand_like, test/test_tensorexpr.py::TestTensorExprFuser::test_rank_two, test/test_tensorexpr.py::TestTensorExprFuser::test_relu, test/test_tensorexpr.py::TestTensorExprFuser::test_remainder, test/test_tensorexpr.py::TestTensorExprFuser::test_reps, test/test_tensorexpr.py::TestTensorExprFuser::test_round_2, test/test_tensorexpr.py::TestTensorExprFuser::test_scalar, test/test_tensorexpr.py::TestTensorExprFuser::test_short, test/test_tensorexpr.py::TestTensorExprFuser::test_simple_add, test/test_tensorexpr.py::TestTensorExprFuser::test_sin_pow, test/test_tensorexpr.py::TestTensorExprFuser::test_slice, test/test_tensorexpr.py::TestTensorExprFuser::test_sliced_stride, test/test_tensorexpr.py::TestTensorExprFuser::test_softmax_cpu, test/test_tensorexpr.py::TestTensorExprFuser::test_softmax_cuda, test/test_tensorexpr.py::TestTensorExprFuser::test_strided_output_preserved, test/test_tensorexpr.py::TestTensorExprFuser::test_three_arg, test/test_tensorexpr.py::TestTensorExprFuser::test_three_arg2, test/test_tensorexpr.py::TestTensorExprFuser::test_transpose, test/test_tensorexpr.py::TestTensorExprFuser::test_unary_ops, test/test_tensorexpr.py::TestTensorExprFuser::test_unsqueeze, test/test_tensorexpr.py::TestTensorExprFuser::test_where 2024-08-06T20:38:59.8913857Z 2024-08-06T20:38:59.8914038Z Running test_autocast 1/1 ... [2024-08-06 20:38:59.887412] 2024-08-06T20:38:59.8915138Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_autocast.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:38:59.887710] 2024-08-06T20:39:16.0746792Z 2024-08-06T20:39:16.0748016Z test_autocast 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_autocast_1.1_656dbc3e08c3f6ec_.log 2024-08-06T20:39:16.0754504Z Running 16 items in this shard: test/test_autocast.py::TestAutocastCPU::test_autocast_disabled_with_fp32_dtype, test/test_autocast.py::TestAutocastCPU::test_autocast_methods_expect_builtin_promote, test/test_autocast.py::TestAutocastCPU::test_autocast_nn_16, test/test_autocast.py::TestAutocastCPU::test_autocast_nn_fp32, test/test_autocast.py::TestAutocastCPU::test_autocast_rnn, test/test_autocast.py::TestAutocastCPU::test_autocast_torch_16, test/test_autocast.py::TestAutocastCPU::test_autocast_torch_expect_builtin_promote, test/test_autocast.py::TestAutocastCPU::test_autocast_torch_fp32, test/test_autocast.py::TestAutocastCPU::test_autocast_torch_need_autocast_promote, test/test_autocast.py::TestAutocastCPU::test_cpu_autocast_deprecated_warning, test/test_autocast.py::TestAutocastCPU::test_generic_autocast, test/test_autocast.py::TestAutocastGPU::test_cache_disabled, test/test_autocast.py::TestAutocastGPU::test_cast_cache_is_global, test/test_autocast.py::TestTorchAutocast::test_autocast_fast_dtype, test/test_autocast.py::TestTorchAutocast::test_invalid_device, test/test_autocast.py::TestTorchAutocast::test_non_string_device 2024-08-06T20:39:16.0759591Z 2024-08-06T20:39:16.0759806Z Running test_cpp_extensions_jit 1/1 ... [2024-08-06 20:39:16.074803] 2024-08-06T20:39:16.0760994Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cpp_extensions_jit.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:39:16.075106] 2024-08-06T20:39:49.8865759Z 2024-08-06T20:39:49.8866790Z test_cpp_extensions_jit 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cpp_extensions_jit_1.1_9ddaa61fa6b6bad0_.log 2024-08-06T20:39:49.8878680Z Running 26 items in this shard: test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_autograd_from_cpp, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_compilation_error_formatting, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_cpp_frontend_module_has_same_output_as_python, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_cpp_frontend_module_has_up_to_date_attributes, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_cpp_frontend_module_python_inter_op, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_cpp_frontend_module_python_inter_op_with_cuda, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_custom_compound_op_autograd, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_custom_functorch_error, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_gen_extension_h_pch, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_half_support, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_inline_jit_compile_custom_op_cuda, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_inline_jit_compile_extension_cuda, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_inline_jit_compile_extension_multiple_sources_and_no_functions, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_inline_jit_compile_extension_throws_when_functions_is_bad, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_inline_jit_compile_extension_with_functions_as_dict, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_inline_jit_compile_extension_with_functions_as_list, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_jit_compile_extension, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_jit_cuda_archflags, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_jit_cuda_extension, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_jit_cudnn_extension, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_lenient_flag_handling_in_jit_extensions, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_mps_extension, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_reload_jit_extension, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_returns_shared_library_path_when_is_python_module_is_true, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_set_default_type_also_changes_aten_default_type, test/test_cpp_extensions_jit.py::TestCppExtensionJIT::test_warning 2024-08-06T20:39:49.8890018Z 2024-08-06T20:39:49.8890229Z Running test_sort_and_select 1/1 ... [2024-08-06 20:39:49.886896] 2024-08-06T20:39:49.8891587Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_sort_and_select.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:39:49.887240] 2024-08-06T20:40:39.2725680Z 2024-08-06T20:40:39.2727360Z test_sort_and_select 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_sort_and_select_1.1_fa287030bcba41f3_.log 2024-08-06T20:40:39.2771213Z Running 110 items in this shard: test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_devices_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_devices_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_devices_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_devices_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_devices_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_devices_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_devices_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_isin_different_dtypes_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_kthvalue_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_kthvalue_scalar_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_msort_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_1d_output_discontiguous_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_1d_parallel_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_1d_parallel_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_1d_parallel_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_1d_parallel_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_1d_parallel_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_discontiguous_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_discontiguous_slow_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_expanded_tensor_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_large_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_large_slice_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_overflow_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_overflow_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_overflow_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_overflow_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_overflow_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_restride_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_sort_stable_none_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_against_numpy_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_stable_sort_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_1d_output_discontiguous_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_4d_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_arguments_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_integral_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_integral_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_integral_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_integral_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_integral_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_lower_precision_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_lower_precision_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_noncontiguous_gpu_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_nonfinite_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_nonfinite_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_nonfinite_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_nonfinite_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_quantized_scalar_input_cpu, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_topk_zero_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_bool, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_consecutive_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_bfloat16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_bool, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_float16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_float32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_float64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_int16, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_int32, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_int64, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_int8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_cpu_uint8, test/test_sort_and_select.py::TestSortAndSelectCPU::test_unique_dim_cpu 2024-08-06T20:40:39.2808159Z 2024-08-06T20:40:39.2808368Z Running test_python_dispatch 1/1 ... [2024-08-06 20:40:39.273130] 2024-08-06T20:40:39.2809531Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_python_dispatch.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:40:39.273455] 2024-08-06T20:40:51.0527806Z 2024-08-06T20:40:51.0529376Z test_python_dispatch 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_python_dispatch_1.1_390bc56a505375ff_.log 2024-08-06T20:40:51.0574948Z Running 115 items in this shard: test/test_python_dispatch.py::TestDispatcherPythonBindings::test_call_boxed, test/test_python_dispatch.py::TestPythonRegistration::test_alias_analysis, test/test_python_dispatch.py::TestPythonRegistration::test_create_new_library, test/test_python_dispatch.py::TestPythonRegistration::test_create_new_library_fragment_no_existing, test/test_python_dispatch.py::TestPythonRegistration::test_create_new_library_fragment_with_existing, test/test_python_dispatch.py::TestPythonRegistration::test_error_for_unsupported_ns_or_kind, test/test_python_dispatch.py::TestPythonRegistration::test_error_if_fn_not_callable, test/test_python_dispatch.py::TestPythonRegistration::test_extend_library_with_dispatch_key_arg, test/test_python_dispatch.py::TestPythonRegistration::test_fallback, test/test_python_dispatch.py::TestPythonRegistration::test_fallback_fallthrough, test/test_python_dispatch.py::TestPythonRegistration::test_fallback_keyset, test/test_python_dispatch.py::TestPythonRegistration::test_finalizer, test/test_python_dispatch.py::TestPythonRegistration::test_override_aten_ops_with_multiple_libraries, test/test_python_dispatch.py::TestPythonRegistration::test_override_cpu_sum, test/test_python_dispatch.py::TestPythonRegistration::test_override_cuda_with_jiterator, test/test_python_dispatch.py::TestPythonRegistration::test_register_fallthrough, test/test_python_dispatch.py::TestPythonRegistration::test_register_functional_op_error_cases, test/test_python_dispatch.py::TestPythonRegistration::test_register_functional_op_multiple_returns, test/test_python_dispatch.py::TestPythonRegistration::test_register_functional_op_no_returns, test/test_python_dispatch.py::TestPythonRegistration::test_register_functional_op_one_return, test/test_python_dispatch.py::TestPythonRegistration::test_register_functional_op_with_optional, test/test_python_dispatch.py::TestPythonRegistration::test_returning_symint, test/test_python_dispatch.py::TestPythonDispatch::test_all_same_mode, test/test_python_dispatch.py::TestPythonDispatch::test_autograd_in_attr, test/test_python_dispatch.py::TestPythonDispatch::test_basic, test/test_python_dispatch.py::TestPythonDispatch::test_capture_logs_with_torch_dispatch_mode, test/test_python_dispatch.py::TestPythonDispatch::test_construct_int_tensor, test/test_python_dispatch.py::TestPythonDispatch::test_custom_autograd, test/test_python_dispatch.py::TestPythonDispatch::test_custom_size_policy_dynamic_shapes, test/test_python_dispatch.py::TestPythonDispatch::test_data_ptr_respects_numel_slow_path, test/test_python_dispatch.py::TestPythonDispatch::test_deepcopy_non_wrapper_subclass, test/test_python_dispatch.py::TestPythonDispatch::test_deepcopy_wrapper_subclass, test/test_python_dispatch.py::TestPythonDispatch::test_deepcopy_wrapper_subclass_with_clone_returning_different_type, test/test_python_dispatch.py::TestPythonDispatch::test_detach_appears_twice_when_called_once, test/test_python_dispatch.py::TestPythonDispatch::test_device_slowpath, test/test_python_dispatch.py::TestPythonDispatch::test_dim_slowpath, test/test_python_dispatch.py::TestPythonDispatch::test_dispatch_super_call, test/test_python_dispatch.py::TestPythonDispatch::test_dispatch_super_call_list_arg, test/test_python_dispatch.py::TestPythonDispatch::test_dispatch_super_dont_autograd, test/test_python_dispatch.py::TestPythonDispatch::test_error_using_class_method_on_mode, test/test_python_dispatch.py::TestPythonDispatch::test_exception_handling, test/test_python_dispatch.py::TestPythonDispatch::test_fancy_strides, test/test_python_dispatch.py::TestPythonDispatch::test_format, test/test_python_dispatch.py::TestPythonDispatch::test_get_cur_mode, test/test_python_dispatch.py::TestPythonDispatch::test_get_mode_stack, test/test_python_dispatch.py::TestPythonDispatch::test_index_put_where_only_index_is_subclass, test/test_python_dispatch.py::TestPythonDispatch::test_invalid_ret, test/test_python_dispatch.py::TestPythonDispatch::test_is_contiguous_slow_path, test/test_python_dispatch.py::TestPythonDispatch::test_kwarg_only, test/test_python_dispatch.py::TestPythonDispatch::test_kwarg_only_and_positional_default, test/test_python_dispatch.py::TestPythonDispatch::test_layout_slow_path, test/test_python_dispatch.py::TestPythonDispatch::test_like, test/test_python_dispatch.py::TestPythonDispatch::test_list_ret, test/test_python_dispatch.py::TestPythonDispatch::test_make_fx_with_subclass, test/test_python_dispatch.py::TestPythonDispatch::test_make_subclass_with_modes, test/test_python_dispatch.py::TestPythonDispatch::test_make_wrapper_subclass_noalloc, test/test_python_dispatch.py::TestPythonDispatch::test_make_wrapper_subclass_propagates_metadata, test/test_python_dispatch.py::TestPythonDispatch::test_maybe_tuple_bug, test/test_python_dispatch.py::TestPythonDispatch::test_mode_detection, test/test_python_dispatch.py::TestPythonDispatch::test_mode_with_make_subclass, test/test_python_dispatch.py::TestPythonDispatch::test_multiple_ops_subclass, test/test_python_dispatch.py::TestPythonDispatch::test_nested_push_logging_tensor_mode, test/test_python_dispatch.py::TestPythonDispatch::test_nesting_same_mode, test/test_python_dispatch.py::TestPythonDispatch::test_new_ones, test/test_python_dispatch.py::TestPythonDispatch::test_none_wrapping, test/test_python_dispatch.py::TestPythonDispatch::test_notimplemented_mode, test/test_python_dispatch.py::TestPythonDispatch::test_optional_tensor_list, test/test_python_dispatch.py::TestPythonDispatch::test_out, test/test_python_dispatch.py::TestPythonDispatch::test_produce_real_type, test/test_python_dispatch.py::TestPythonDispatch::test_record_stream, test/test_python_dispatch.py::TestPythonDispatch::test_return_and_correct_aliasing_gives_correct_stride, test/test_python_dispatch.py::TestPythonDispatch::test_return_stream, test/test_python_dispatch.py::TestPythonDispatch::test_set_data, test/test_python_dispatch.py::TestPythonDispatch::test_shallow_copy_and_detach, test/test_python_dispatch.py::TestPythonDispatch::test_sizes_slow_path, test/test_python_dispatch.py::TestPythonDispatch::test_standard_is_not_subclass, test/test_python_dispatch.py::TestPythonDispatch::test_storage, test/test_python_dispatch.py::TestPythonDispatch::test_storage_can_be_converted_to_python_object, test/test_python_dispatch.py::TestPythonDispatch::test_strides_slow_path, test/test_python_dispatch.py::TestPythonDispatch::test_subclass_autograd_device_check, test/test_python_dispatch.py::TestPythonDispatch::test_subclass_creation, test/test_python_dispatch.py::TestPythonDispatch::test_subclass_priority, test/test_python_dispatch.py::TestPythonDispatch::test_sym_sizes_strides_slow_path, test/test_python_dispatch.py::TestPythonDispatch::test_tolist_numpy_with_torch_dispatch_mode, test/test_python_dispatch.py::TestPythonDispatch::test_torch_dispatch_mode_basic, test/test_python_dispatch.py::TestPythonDispatch::test_torch_dispatch_mode_respects_no_dispatch, test/test_python_dispatch.py::TestPythonDispatch::test_torch_dispatch_mode_subclass_priority, test/test_python_dispatch.py::TestPythonDispatch::test_torch_dispatch_mode_unrelated_tensors, test/test_python_dispatch.py::TestPythonDispatch::test_version, test/test_python_dispatch.py::TestPythonDispatch::test_with_mode_created_separately, test/test_python_dispatch.py::TestPythonDispatch::test_with_nested_modes, test/test_python_dispatch.py::TestPythonDispatch::test_wrapper_subclass_extra_dispatch_keys, test/test_python_dispatch.py::TestPythonDispatch::test_wrapper_subclass_multiprocessing_preserves_dtype, test/test_python_dispatch.py::TestPythonDispatch::test_wrapper_subclass_serializes, test/test_python_dispatch.py::TestPythonDispatcher::test_basic, test/test_python_dispatch.py::TestPythonDispatcher::test_lstsq, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_cat_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_conv2d_cpu, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyCatCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyCubeCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyMulCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyMulScalarCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyNMSCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyNonzeroCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpySortCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpySplitCopyCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpySplitCopyWithIntCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyTakeCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_custom_NumpyViewCopyCustomOp_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_mul_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_native_batch_norm_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_out_op_cpu, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_split_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_split_list_args_cpu_float32, test/test_python_dispatch.py::TestWrapperSubclassAliasingCPU::test_wrapper_subclass_aliasing_view_cpu_float32 2024-08-06T20:40:51.0617906Z 2024-08-06T20:40:51.0618157Z Running test_reductions 1/1 ... [2024-08-06 20:40:51.053086] 2024-08-06T20:40:51.0619293Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_reductions.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:40:51.053404] 2024-08-06T20:55:43.1844426Z 2024-08-06T20:55:43.1847003Z test_reductions 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_reductions_1.1_22bac506f5e7b1df_.log 2024-08-06T20:55:43.3580451Z Running 4585 items in this shard: test/test_reductions.py::TestReductionsCPU::test_accreal_type_cpu, test/test_reductions.py::TestReductionsCPU::test_all_any_cpu, test/test_reductions.py::TestReductionsCPU::test_all_any_empty_cpu, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_all_any_vs_numpy_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_all_any_with_dim_cpu, test/test_reductions.py::TestReductionsCPU::test_all_issue117215_cpu, test/test_reductions.py::TestReductionsCPU::test_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_amin_amax_some_dims_cpu, test/test_reductions.py::TestReductionsCPU::test_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_aminmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_aminmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_aminmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_aminmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_argminmax_axis_with_dim_one_cpu, test/test_reductions.py::TestReductionsCPU::test_argminmax_large_axis_cpu, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_argminmax_multiple_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_bincount_cpu, test/test_reductions.py::TestReductionsCPU::test_bucketization_cpu, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_cumprod_integer_upcast_cpu, test/test_reductions.py::TestReductionsCPU::test_cumsum_integer_upcast_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_arg_reduction_scalar_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_keepdim_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_default_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_keepdim_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_empty_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_duplicate_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_keepdim_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_keepdim_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsorted_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsupported_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsupported_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsupported_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsupported_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_unsupported_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_multi_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_ndim_limit_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_keepdim_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_none_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_offbounds_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_max_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_median_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_min_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_mode_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_nanmedian_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_norm_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_fns_fn_name_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_lastdim_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_lastdim_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_dim_reduction_less_than_64_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_all_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_any_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_keepdim_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_std_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_var_cpu, test/test_reductions.py::TestReductionsCPU::test_dim_single_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_all_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_any_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_std_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_var_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_empty_slice_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_all_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_any_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_std_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice__refs_var_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_all_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_any_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_count_nonzero_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_linalg_vector_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_amax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_amin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_argmax_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_argmin_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_norm_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_std_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_masked_var_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_nanmean_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_nansum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_prod_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_std_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_std_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_sum_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_var_cpu, test/test_reductions.py::TestReductionsCPU::test_empty_tensor_nonempty_slice_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_histc_cpu, test/test_reductions.py::TestReductionsCPU::test_histc_lowp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_histc_lowp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_histogram_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_histogram_error_handling_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_histogramdd_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_identity_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_invalid_0dim_aminmax_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_invalid_0dim_aminmax_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_logcumsumexp_complex_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_logcumsumexp_complex_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_logsumexp_cpu, test/test_reductions.py::TestReductionsCPU::test_logsumexp_dim_cpu, test/test_reductions.py::TestReductionsCPU::test_max_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_max_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_max_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_max_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_max_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_max_elementwise_cpu, test/test_reductions.py::TestReductionsCPU::test_max_mixed_devices_cpu, test/test_reductions.py::TestReductionsCPU::test_max_with_inf_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_max_with_inf_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_max_with_inf_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_max_with_inf_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_mean_dim_cpu, test/test_reductions.py::TestReductionsCPU::test_mean_int_with_optdtype_cpu, test/test_reductions.py::TestReductionsCPU::test_median_corner_cases_cpu, test/test_reductions.py::TestReductionsCPU::test_median_nan_values_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_median_nan_values_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_median_real_values_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_median_real_values_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_median_real_values_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_median_real_values_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_min_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_min_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_min_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_min_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_min_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_min_elementwise_cpu, test/test_reductions.py::TestReductionsCPU::test_min_max_nan_cpu, test/test_reductions.py::TestReductionsCPU::test_min_mixed_devices_cpu, test/test_reductions.py::TestReductionsCPU::test_min_with_inf_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_min_with_inf_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_min_with_inf_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_min_with_inf_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_minmax_illegal_dtype_cpu, test/test_reductions.py::TestReductionsCPU::test_mode_boolean_cpu, test/test_reductions.py::TestReductionsCPU::test_mode_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_mode_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_mode_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_mode_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_mode_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_mode_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_mode_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_mode_large_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_mode_wrong_device_cpu, test/test_reductions.py::TestReductionsCPU::test_mode_wrong_dtype_cpu, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nanmean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_omit_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_logsumexp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_logsumexp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_logsumexp_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_logsumexp_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_std_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nan_policy_propagate_var_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nansum_complex_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_nansum_complex_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_nansum_out_dtype_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_nansum_vs_numpy_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_nansum_vs_numpy_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_nansum_vs_numpy_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_nansum_vs_numpy_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_nansum_vs_numpy_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_nansum_vs_numpy_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_nansum_vs_numpy_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_logsumexp_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nanmean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_std_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_all_var_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_logsumexp_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nanmean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_std_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_expanded_var_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_logsumexp_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nanmean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_std_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_innermost_var_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_logsumexp_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nanmean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_std_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_outermost_var_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_logsumexp_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nanmean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_std_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_noncontiguous_transposed_var_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_numpy_named_args_cpu, test/test_reductions.py::TestReductionsCPU::test_prod_bool_cpu, test/test_reductions.py::TestReductionsCPU::test_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_prod_gpu_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_prod_gpu_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_prod_integer_upcast_cpu, test/test_reductions.py::TestReductionsCPU::test_prod_lowp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_prod_lowp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_quantile_backward_cpu, test/test_reductions.py::TestReductionsCPU::test_quantile_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_quantile_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_quantile_error_cpu, test/test_reductions.py::TestReductionsCPU::test_reduce_dtype_cpu, test/test_reductions.py::TestReductionsCPU::test_reduction_empty_any_all_cpu, test/test_reductions.py::TestReductionsCPU::test_reduction_split_cpu, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_input_corner_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_input_corner_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_input_corner_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_input_corner_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_output_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_output_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_output_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reduction_vectorize_along_output_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reductions_large_half_tensors_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reductions_large_half_tensors_cpu_complex32, test/test_reductions.py::TestReductionsCPU::test_reductions_large_half_tensors_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_duplicate_values_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_extremal_values_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_1D_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_2D_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_large_input_64bit_indexing_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_scalar_input_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_ref_small_input_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_reference_masked_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_repeated_dim_cpu, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype__refs_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_all_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_any_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_count_nonzero_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_linalg_vector_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_linalg_vector_norm_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_linalg_vector_norm_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_linalg_vector_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_linalg_vector_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_linalg_vector_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_amin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmax_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_argmin_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_logsumexp_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_mean_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_norm_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_norm_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_norm_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_norm_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_std_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_masked_var_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_mean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_mean_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_mean_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_mean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_mean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_mean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nanmean_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nanmean_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nanmean_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nanmean_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_nansum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_prod_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_std_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_sum_cpu_uint8, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_unbiased_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_unbiased_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_unbiased_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_unbiased_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_unbiased_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_result_dtype_var_unbiased_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_std_correction_vs_numpy_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_std_correction_vs_numpy_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_std_correction_vs_numpy_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_std_correction_vs_numpy_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_std_dim_cpu, test/test_reductions.py::TestReductionsCPU::test_std_mean_all_dims_cpu, test/test_reductions.py::TestReductionsCPU::test_std_mean_correction_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_std_mean_correction_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_std_mean_correction_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_std_mean_correction_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_std_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_std_mean_some_dims_cpu, test/test_reductions.py::TestReductionsCPU::test_std_vs_numpy_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_std_vs_numpy_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_std_vs_numpy_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_std_vs_numpy_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_sum_all_cpu_bool, test/test_reductions.py::TestReductionsCPU::test_sum_all_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_sum_cpu_device_mismatch_cpu, test/test_reductions.py::TestReductionsCPU::test_sum_dim_cpu, test/test_reductions.py::TestReductionsCPU::test_sum_dim_reduction_uint8_overflow_cpu, test/test_reductions.py::TestReductionsCPU::test_sum_integer_upcast_cpu, test/test_reductions.py::TestReductionsCPU::test_sum_noncontig_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_sum_noncontig_lowp_cpu_bfloat16, test/test_reductions.py::TestReductionsCPU::test_sum_noncontig_lowp_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_sum_out_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_sum_parallel_cpu, test/test_reductions.py::TestReductionsCPU::test_sum_vs_numpy_cpu_float16, test/test_reductions.py::TestReductionsCPU::test_sum_vs_numpy_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_sum_vs_numpy_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_sum_vs_numpy_cpu_int16, test/test_reductions.py::TestReductionsCPU::test_sum_vs_numpy_cpu_int32, test/test_reductions.py::TestReductionsCPU::test_sum_vs_numpy_cpu_int64, test/test_reductions.py::TestReductionsCPU::test_sum_vs_numpy_cpu_int8, test/test_reductions.py::TestReductionsCPU::test_tensor_compare_ops_argmax_argmix_kthvalue_dim_empty_cpu, test/test_reductions.py::TestReductionsCPU::test_tensor_compare_ops_empty_cpu, test/test_reductions.py::TestReductionsCPU::test_tensor_reduce_ops_empty_cpu, test/test_reductions.py::TestReductionsCPU::test_var_correction_vs_numpy_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_var_correction_vs_numpy_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_var_correction_vs_numpy_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_var_correction_vs_numpy_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_var_cpu, test/test_reductions.py::TestReductionsCPU::test_var_dim_cpu, test/test_reductions.py::TestReductionsCPU::test_var_large_input_cpu, test/test_reductions.py::TestReductionsCPU::test_var_mean_all_dims_cpu, test/test_reductions.py::TestReductionsCPU::test_var_mean_correction_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_var_mean_correction_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_var_mean_correction_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_var_mean_correction_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_var_mean_cpu, test/test_reductions.py::TestReductionsCPU::test_var_mean_some_dims_cpu, test/test_reductions.py::TestReductionsCPU::test_var_stability2_cpu, test/test_reductions.py::TestReductionsCPU::test_var_stability_cpu, test/test_reductions.py::TestReductionsCPU::test_var_unbiased_cpu, test/test_reductions.py::TestReductionsCPU::test_var_vs_numpy_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_var_vs_numpy_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_var_vs_numpy_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_var_vs_numpy_cpu_float64, test/test_reductions.py::TestReductionsCPU::test_warn_invalid_degrees_of_freedom_cpu_complex128, test/test_reductions.py::TestReductionsCPU::test_warn_invalid_degrees_of_freedom_cpu_complex64, test/test_reductions.py::TestReductionsCPU::test_warn_invalid_degrees_of_freedom_cpu_float32, test/test_reductions.py::TestReductionsCPU::test_warn_invalid_degrees_of_freedom_cpu_float64 2024-08-06T20:55:43.5257704Z 2024-08-06T20:55:43.5257946Z Running test_cuda_primary_ctx 1/1 ... [2024-08-06 20:55:43.190432] 2024-08-06T20:55:43.5259193Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda_primary_ctx.py', '--shard-id=1', '--num-shards=1', '-v', '--subprocess', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:55:43.190726] 2024-08-06T20:55:45.5384053Z 2024-08-06T20:55:45.5385274Z test_cuda_primary_ctx 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_primary_ctx_1.1_89531fdd9210bd52_.log 2024-08-06T20:55:45.5386092Z Running 0 items in this shard: 2024-08-06T20:55:45.5386360Z 2024-08-06T20:55:45.5387062Z Running test_cuda_nvml_based_avail 1/1 ... [2024-08-06 20:55:45.538532] 2024-08-06T20:55:45.5390524Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda_nvml_based_avail.py', '--shard-id=1', '--num-shards=1', '-v', '--subprocess', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:55:45.538831] 2024-08-06T20:55:47.8725709Z 2024-08-06T20:55:47.8726840Z test_cuda_nvml_based_avail 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_nvml_based_avail_1.1_e8e6aa674472367e_.log 2024-08-06T20:55:47.8727710Z Running 0 items in this shard: 2024-08-06T20:55:47.8727904Z 2024-08-06T20:55:47.8728600Z Running nn/test_convolution 1/1 ... [2024-08-06 20:55:47.872708] 2024-08-06T20:55:47.8737287Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'nn/test_convolution.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:55:47.873505] 2024-08-06T20:59:58.0275960Z 2024-08-06T20:59:58.0276885Z nn/test_convolution 1/1 was successful, full logs can be found in artifacts with path test/test-reports/nn.test_convolution_1.1_32bbc2bd00d53342_.log 2024-08-06T20:59:58.0621018Z Running 588 items in this shard: test/nn/test_convolution.py::TestConvolutionNN::test_Conv1d_module_same_padding, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_1x1, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_OneDNN, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_backward_twice, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_groups_nobias, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_groups_nobias_v2, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_inconsistent_types, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_inconsistent_types_on_GPU_with_cudnn, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_inconsistent_types_on_GPU_without_cudnn, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_missing_argument, test/nn/test_convolution.py::TestConvolutionNN::test_Conv2d_module_same_padding, test/nn/test_convolution.py::TestConvolutionNN::test_Conv3d_groups_nobias, test/nn/test_convolution.py::TestConvolutionNN::test_Conv3d_groups_wbias, test/nn/test_convolution.py::TestConvolutionNN::test_Conv3d_module_same_padding, test/nn/test_convolution.py::TestConvolutionNN::test_ConvTranspose2d_half_cublas_gemm, test/nn/test_convolution.py::TestConvolutionNN::test_ConvTranspose2d_output_size, test/nn/test_convolution.py::TestConvolutionNN::test_ConvTranspose2d_output_size_downsample_upsample, test/nn/test_convolution.py::TestConvolutionNN::test_ConvTranspose3d_correct_output_size, test/nn/test_convolution.py::TestConvolutionNN::test_conv1d_issue_120547, test/nn/test_convolution.py::TestConvolutionNN::test_conv2d_discontiguous_weight, test/nn/test_convolution.py::TestConvolutionNN::test_conv3d_issue_120406, test/nn/test_convolution.py::TestConvolutionNN::test_conv_backcompat, test/nn/test_convolution.py::TestConvolutionNN::test_conv_cudnn_memory_layout_dominance, test/nn/test_convolution.py::TestConvolutionNN::test_conv_invalid_groups, test/nn/test_convolution.py::TestConvolutionNN::test_conv_modules_raise_error_on_incorrect_input_size, test/nn/test_convolution.py::TestConvolutionNN::test_conv_padding_mode, test/nn/test_convolution.py::TestConvolutionNN::test_conv_shapecheck, test/nn/test_convolution.py::TestConvolutionNN::test_conv_tbc, test/nn/test_convolution.py::TestConvolutionNN::test_cudnn_non_contiguous, test/nn/test_convolution.py::TestConvolutionNN::test_cudnn_noncontiguous_weight, test/nn/test_convolution.py::TestConvolutionNN::test_cudnn_not_mutate_stride, test/nn/test_convolution.py::TestConvolutionNN::test_functional_grad_conv, test/nn/test_convolution.py::TestConvolutionNN::test_functional_grad_conv2d, test/nn/test_convolution.py::TestConvolutionNN::test_grad_conv1d_input, test/nn/test_convolution.py::TestConvolutionNN::test_grad_conv1d_weight, test/nn/test_convolution.py::TestConvolutionNN::test_grad_conv2d_input, test/nn/test_convolution.py::TestConvolutionNN::test_grad_conv2d_weight, test/nn/test_convolution.py::TestConvolutionNN::test_grad_conv3d_input, test/nn/test_convolution.py::TestConvolutionNN::test_grad_conv3d_weight, test/nn/test_convolution.py::TestConvolutionNN::test_grouped_conv_cudnn_nhwc_support, test/nn/test_convolution.py::TestConvolutionNN::test_invalid_conv1d, test/nn/test_convolution.py::TestConvolutionNN::test_invalid_conv2d, test/nn/test_convolution.py::TestConvolutionNN::test_invalid_conv3d, test/nn/test_convolution.py::TestConvolutionNN::test_mismatch_shape_conv2d, test/nn/test_convolution.py::TestConvolutionNN::test_nnpack_conv, test/nn/test_convolution.py::TestConvolutionNN::test_permute_conv2d_issue_120211, test/nn/test_convolution.py::TestConvolutionNN::test_thnn_conv_strided_padded_dilated, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_backward_depthwise_cpu_complex128, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_backward_depthwise_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_depthwise_naive_groups_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_depthwise_naive_groups_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_depthwise_naive_groups_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_deterministic_cudnn_cpu_complex128, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_deterministic_cudnn_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_deterministic_cudnn_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_deterministic_cudnn_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_deterministic_cudnn_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_large_workspace_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_large_workspace_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_large_workspace_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_naive_groups_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv2d_size_1_kernel_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv3d_depthwise_naive_groups_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv3d_depthwise_naive_groups_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_Conv3d_depthwise_naive_groups_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_ConvTranspose2d_large_output_padding_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_ConvTranspose2d_large_output_padding_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_ConvTranspose2d_size_1_kernel_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_ConvTranspose3d_size_1_kernel_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_contig_wrong_stride_cudnn_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_same_padding_backward_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_same_padding_backward_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_same_padding_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_same_padding_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_valid_padding_backward_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_valid_padding_backward_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_valid_padding_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_valid_padding_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_vs_scipy_mode_same_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_vs_scipy_mode_same_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_vs_scipy_mode_valid_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv1d_vs_scipy_mode_valid_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_no_grad_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_same_padding_backward_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_same_padding_backward_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_same_padding_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_same_padding_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_valid_padding_backward_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_valid_padding_backward_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_valid_padding_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_valid_padding_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_vs_scipy_mode_same_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_vs_scipy_mode_same_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_vs_scipy_mode_valid_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv2d_vs_scipy_mode_valid_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_64bit_indexing_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_large_batch_1_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_same_padding_backward_cpu_complex128, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_same_padding_backward_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_same_padding_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_same_padding_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_valid_padding_backward_cpu_complex128, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_valid_padding_backward_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_valid_padding_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_valid_padding_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_vs_scipy_mode_same_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_vs_scipy_mode_same_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_vs_scipy_mode_valid_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv3d_vs_scipy_mode_valid_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_convTranspose_empty_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cuda_depthwise3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn1d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn2d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_cudnn3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_batch_channel3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_empty_channel3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen1d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen2d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen3d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_miopen_depthwise3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_cpu_input_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn1d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_cpu_input_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn2d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_cpu_input_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn3d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_batch_channel3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_mkldnn_empty_channel3d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_dilated_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow1d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_dilated_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow2d_transposed_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cpu_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_cuda_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_False_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_False_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_False_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_False_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_True_strided_False_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_True_strided_False_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_True_strided_True_contiguous_False_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_backend_slow3d_dilated_has_bias_True_strided_True_contiguous_True_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_contiguous_for_oneDNN_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_mismatch_memory_format_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_ndhwc_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_ndhwc_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_nhwc_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_nhwc_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_nhwc_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_nhwc_support_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_cudnn_nhwc_support_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_double_backward_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_double_backward_groups_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_double_backward_no_bias_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_double_backward_stride_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_double_backward_strided_with_3D_input_and_weight_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_empty_channel_cpu_complex64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_empty_channel_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_ic1_channels_last_for_oneDNN_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_large_batch_1_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_large_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_large_nosplit_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_noncontig_weights_and_bias_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_noncontig_weights_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_thnn_nhwc_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_thnn_nhwc_cpu_float64, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_transpose_with_output_size_and_no_batch_dim_ConvTranspose2d_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_transpose_with_output_size_and_no_batch_dim_ConvTranspose3d_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_conv_transposed_large_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_convert_conv2d_weight_memory_format_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_convert_conv3d_weight_memory_format_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_cudnn_convolution_add_relu_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_cudnn_convolution_add_relu_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_cudnn_convolution_relu_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_cudnn_convolution_relu_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_group_convTranspose_empty_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_group_conv_empty_cpu, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_noncontig_conv_grad_cpu_float16, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_noncontig_conv_grad_cpu_float32, test/nn/test_convolution.py::TestConvolutionNNDeviceTypeCPU::test_noncontig_conv_grad_cpu_float64 2024-08-06T20:59:58.0954389Z 2024-08-06T20:59:58.0954624Z Running nn/test_pooling 1/1 ... [2024-08-06 20:59:58.028725] 2024-08-06T20:59:58.0955754Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'nn/test_pooling.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 20:59:58.029033] 2024-08-06T21:01:06.0990671Z 2024-08-06T21:01:06.0991724Z nn/test_pooling 1/1 was successful, full logs can be found in artifacts with path test/test-reports/nn.test_pooling_1.1_25fe998d2b9b881c_.log 2024-08-06T21:01:06.1030730Z Running 100 items in this shard: test/nn/test_pooling.py::TestAvgPool::test_avg_pool1d_ceil_mode, test/nn/test_pooling.py::TestAvgPool::test_avg_pool2d_ceil_mode, test/nn/test_pooling.py::TestAvgPool::test_avg_pool3d_ceil_mode, test/nn/test_pooling.py::TestAvgPool::test_doubletensor_avg_pool2d, test/nn/test_pooling.py::TestAvgPool::test_doubletensor_avg_pool2d_with_divisor, test/nn/test_pooling.py::TestAvgPool::test_doubletensor_avg_pool3d, test/nn/test_pooling.py::TestAvgPool::test_doubletensor_avg_pool3d_with_divisor, test/nn/test_pooling.py::TestPoolingNN::test_MaxUnpool2d_output_size, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_avg_pooling_nhwc_overflow, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_avg_pooling_overflow, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_pooling_avg_nhwc, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_pooling_avg_nhwc_launch_config_backward, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_pooling_avg_nhwc_launch_config_forward, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_pooling_avg_nhwc_non_contiguous, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_pooling_lower_precision, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_pooling_size_none, test/nn/test_pooling.py::TestPoolingNN::test_adaptive_pooling_size_overflow, test/nn/test_pooling.py::TestPoolingNN::test_max_unpool, test/nn/test_pooling.py::TestPoolingNN::test_max_unpool2d_nhwc_cpu, test/nn/test_pooling.py::TestPoolingNN::test_max_unpool3d_input_check, test/nn/test_pooling.py::TestPoolingNN::test_quantized_max_pool1d_empty_kernel, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_AdaptiveMaxPool1d_indices_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_AdaptiveMaxPool2d_indices_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_AdaptiveMaxPool3d_indices_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_AdaptiveMaxPool_zero_batch_dim_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_AvgPool2d_empty_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_AvgPool3d_backward_after_cat_dim1_device_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_FractionalMaxPool2d_zero_batch_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_FractionalMaxPool2d_zero_out_size_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_FractionalMaxPool2d_zero_samples_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_FractionalMaxPool3d_zero_batch_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_FractionalMaxPool3d_zero_out_size_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_FractionalMaxPool3d_zero_samples_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxPool1d_indices_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxPool2d_indices_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxPool3d_indices_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxPool_zero_batch_dim_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case10_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case1_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case2_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case3_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case4_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case5_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case6_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case7_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case8_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_index_errors_case9_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_MaxUnpool_zero_batch_dim_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_avg_pool2d_output_size_one_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_avg_pool3d_output_size_one_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pool_odd_size_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_empty_output_size_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_empty_output_size_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_max_nhwc_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_max_nhwc_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_no_suppot_input_cpu_int16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_no_suppot_input_cpu_int32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_no_suppot_input_cpu_int64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_no_suppot_input_cpu_int8, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_no_suppot_input_cpu_uint8, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_zero_batch_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_adaptive_pooling_zero_batch_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_avg_pool2d_nhwc_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_avg_pool2d_nhwc_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_avg_pool2d_reduced_floating_cpu_bfloat16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_avg_pool2d_reduced_floating_cpu_float16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_fractional_max_pool2d_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_fractional_max_pool3d_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_fractional_max_pool_nan_inf_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool1d_corner_cases_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool1d_corner_cases_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool1d_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool1d_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_corner_cases_cpu_int32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_corner_cases_cpu_int64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_indices_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_nhwc_cpu_bfloat16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_nhwc_cpu_float16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_nhwc_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool2d_nhwc_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool3d_ndhwc_cpu_bfloat16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool3d_ndhwc_cpu_float16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool3d_ndhwc_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool3d_ndhwc_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool_bfloat16_half_cpu_bfloat16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool_bfloat16_half_cpu_float16, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_max_pool_nan_inf_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_maxpool3d_non_square_backward_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_maxpool_indices_no_batch_dim_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pool3d_large_size_int64_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pool3d_size_one_feature_dim_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pool_invalid_size_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pool_large_size_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pooling_bfloat16_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pooling_large_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pooling_max_nhwc_cpu_float32, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pooling_max_nhwc_cpu_float64, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pooling_shape_cpu, test/nn/test_pooling.py::TestPoolingNNDeviceTypeCPU::test_pooling_zero_stride_cpu 2024-08-06T21:01:06.1068655Z 2024-08-06T21:01:06.1068869Z Running test_multiprocessing 1/1 ... [2024-08-06 21:01:06.099412] 2024-08-06T21:01:06.1070053Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_multiprocessing.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:01:06.099717] 2024-08-06T21:01:41.3171962Z 2024-08-06T21:01:41.3172948Z test_multiprocessing 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_multiprocessing_1.1_d0df063a85adaf99_.log 2024-08-06T21:01:41.3189038Z Running 41 items in this shard: test/test_multiprocessing.py::TestMultiprocessing::test_autograd_errors, test/test_multiprocessing.py::TestMultiprocessing::test_autograd_fine_with_spawn, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_bad_call, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_ipc_deadlock, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_memory_allocation, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_parameter_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_send_many, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_simple, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_small_tensors, test/test_multiprocessing.py::TestMultiprocessing::test_cuda_variable_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_empty_shared, test/test_multiprocessing.py::TestMultiprocessing::test_empty_tensor_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_empty_tensor_sharing_cuda, test/test_multiprocessing.py::TestMultiprocessing::test_empty_tensor_sharing_meta, test/test_multiprocessing.py::TestMultiprocessing::test_event, test/test_multiprocessing.py::TestMultiprocessing::test_event_handle_exporter, test/test_multiprocessing.py::TestMultiprocessing::test_event_handle_importer, test/test_multiprocessing.py::TestMultiprocessing::test_event_handle_multi_gpu, test/test_multiprocessing.py::TestMultiprocessing::test_event_multiprocess, test/test_multiprocessing.py::TestMultiprocessing::test_fd_pool, test/test_multiprocessing.py::TestMultiprocessing::test_fd_preserve_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_fd_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_fs, test/test_multiprocessing.py::TestMultiprocessing::test_fs_is_shared, test/test_multiprocessing.py::TestMultiprocessing::test_fs_pool, test/test_multiprocessing.py::TestMultiprocessing::test_fs_preserve_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_fs_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_inherit_tensor, test/test_multiprocessing.py::TestMultiprocessing::test_integer_parameter_serialization_cpu, test/test_multiprocessing.py::TestMultiprocessing::test_integer_parameter_serialization_cuda, test/test_multiprocessing.py::TestMultiprocessing::test_is_shared, test/test_multiprocessing.py::TestMultiprocessing::test_is_shared_cuda, test/test_multiprocessing.py::TestMultiprocessing::test_leaf_variable_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_meta_simple, test/test_multiprocessing.py::TestMultiprocessing::test_mixed_types_cuda_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_non_leaf_variable_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_parameter_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_set_thread_name, test/test_multiprocessing.py::TestMultiprocessing::test_tensor_sharing_meta, test/test_multiprocessing.py::TestMultiprocessing::test_variable_sharing, test/test_multiprocessing.py::TestMultiprocessing::test_wrong_cuda_fork 2024-08-06T21:01:41.3203856Z 2024-08-06T21:01:41.3204084Z Running test_mobile_optimizer 1/1 ... [2024-08-06 21:01:41.317392] 2024-08-06T21:01:41.3205362Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_mobile_optimizer.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:01:41.317701] 2024-08-06T21:01:48.4920747Z 2024-08-06T21:01:48.4922405Z test_mobile_optimizer 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_mobile_optimizer_1.1_33fcd034fda762b5_.log 2024-08-06T21:01:48.4928051Z Running 7 items in this shard: test/test_mobile_optimizer.py::TestOptimizer::test_clone_module_with_class, test/test_mobile_optimizer.py::TestOptimizer::test_generate_mobile_module_lints, test/test_mobile_optimizer.py::TestOptimizer::test_hoist_conv_packed_params, test/test_mobile_optimizer.py::TestOptimizer::test_mobilenet_optimize_for_mobile, test/test_mobile_optimizer.py::TestOptimizer::test_optimize_for_mobile, test/test_mobile_optimizer.py::TestOptimizer::test_preserve_bundled_inputs_methods, test/test_mobile_optimizer.py::TestOptimizer::test_quantized_conv_no_asan_failures 2024-08-06T21:01:48.4931638Z 2024-08-06T21:01:48.4931894Z Running test_multiprocessing_spawn 1/1 ... [2024-08-06 21:01:48.492168] 2024-08-06T21:01:48.4933129Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_multiprocessing_spawn.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:01:48.492487] 2024-08-06T21:05:33.4575633Z 2024-08-06T21:05:33.4576801Z test_multiprocessing_spawn 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_multiprocessing_spawn_1.1_7460be971b54be8d_.log 2024-08-06T21:05:33.4583864Z Running 19 items in this shard: test/test_multiprocessing_spawn.py::SpawnTest::test_exception_all, test/test_multiprocessing_spawn.py::SpawnTest::test_exception_raises, test/test_multiprocessing_spawn.py::SpawnTest::test_exception_single, test/test_multiprocessing_spawn.py::SpawnTest::test_first_argument_index, test/test_multiprocessing_spawn.py::SpawnTest::test_signal_raises, test/test_multiprocessing_spawn.py::SpawnTest::test_success, test/test_multiprocessing_spawn.py::SpawnTest::test_success_first_then_exception, test/test_multiprocessing_spawn.py::SpawnTest::test_success_non_blocking, test/test_multiprocessing_spawn.py::SpawnTest::test_terminate_exit, test/test_multiprocessing_spawn.py::SpawnTest::test_terminate_signal, test/test_multiprocessing_spawn.py::ForkTest::test_exception_all, test/test_multiprocessing_spawn.py::ForkTest::test_exception_single, test/test_multiprocessing_spawn.py::ForkTest::test_first_argument_index, test/test_multiprocessing_spawn.py::ForkTest::test_success, test/test_multiprocessing_spawn.py::ForkTest::test_success_first_then_exception, test/test_multiprocessing_spawn.py::ForkTest::test_success_non_blocking, test/test_multiprocessing_spawn.py::ForkTest::test_terminate_exit, test/test_multiprocessing_spawn.py::ForkTest::test_terminate_signal, test/test_multiprocessing_spawn.py::ErrorTest::test_errors_pickleable 2024-08-06T21:05:33.4590169Z 2024-08-06T21:05:33.4590364Z Running test_spectral_ops 1/1 ... [2024-08-06 21:05:33.457522] 2024-08-06T21:05:33.4591549Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_spectral_ops.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:05:33.457824] 2024-08-06T21:06:07.8692220Z 2024-08-06T21:06:07.8693336Z test_spectral_ops 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_spectral_ops_1.1_067df589b9279000_.log 2024-08-06T21:06:07.8787206Z Running 280 items in this shard: test/test_spectral_ops.py::TestFFTCPU::test_batch_istft_cpu, test/test_spectral_ops.py::TestFFTCPU::test_complex_istft_real_equiv_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_complex_stft_definition_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_complex_stft_onesided_cpu, test/test_spectral_ops.py::TestFFTCPU::test_complex_stft_real_equiv_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_complex_stft_roundtrip_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_complex_stft_roundtrip_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_cufft_context_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_cufft_context_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_cufft_plan_cache_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_fft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_fft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_fft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_fft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_fftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_fftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_hfft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_hfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_hfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_hfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_hfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_hfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ifft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ifft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ifft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ifft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ifftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ifftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ihfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ihfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_ihfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_irfft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_irfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_irfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_irfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_irfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_irfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_rfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_rfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft__refs_fft_rfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_fft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_fft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_fft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_fft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_fftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_fftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_hfft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_hfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_hfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_hfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_hfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_hfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ifft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ifft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ifft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ifft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ifftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ifftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ihfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ihfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_ihfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_irfft2_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_irfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_irfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_irfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_irfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_irfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_rfft2_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_rfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_fft_fft_rfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_empty_ifft_cpu, test/test_spectral_ops.py::TestFFTCPU::test_fft2_fftn_equivalence_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fft2_fftn_equivalence_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fft2_invalid_cpu, test/test_spectral_ops.py::TestFFTCPU::test_fft2_numpy_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_fft2_numpy_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_fft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_fft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_fft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_fft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_fftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_fftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_hfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_hfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_hfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_hfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_hfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_hfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ifft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ifft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ifft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ifft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ifftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ifftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ihfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ihfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ihfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ihfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ihfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_ihfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_irfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_irfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_irfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_irfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_irfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_irfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_rfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_rfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_rfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_rfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_rfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors__refs_fft_rfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_fft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_fft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_fft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_fft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_fftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_fftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_hfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_hfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_hfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_hfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_hfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_hfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ifft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ifft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ifft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ifft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ifftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ifftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ihfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ihfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ihfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ihfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ihfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_ihfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_irfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_irfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_irfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_irfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_irfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_irfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_rfft2_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_rfft2_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_rfft_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_rfft_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_rfftn_cpu_bfloat16, test/test_spectral_ops.py::TestFFTCPU::test_fft_half_and_bfloat16_errors_fft_rfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_ifft_rfft_irfft_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fft_input_modification_cpu, test/test_spectral_ops.py::TestFFTCPU::test_fft_invalid_dtypes_cpu, test/test_spectral_ops.py::TestFFTCPU::test_fft_plan_repeatable_cpu, test/test_spectral_ops.py::TestFFTCPU::test_fft_round_trip_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_fft_round_trip_cpu_complex32, test/test_spectral_ops.py::TestFFTCPU::test_fft_round_trip_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fft_round_trip_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_round_trip_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fft_round_trip_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fft_type_promotion_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_fft_type_promotion_cpu_complex32, test/test_spectral_ops.py::TestFFTCPU::test_fft_type_promotion_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fft_type_promotion_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fft_type_promotion_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fft_type_promotion_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fft_type_promotion_cpu_int8, test/test_spectral_ops.py::TestFFTCPU::test_fftfreq_numpy_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftfreq_numpy_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fftfreq_out_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftfreq_out_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_fftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_fftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_hfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_hfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_ifftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_ifftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_ihfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_irfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_irfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid__refs_fft_rfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_fftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_fftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_hfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_hfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_ifftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_ifftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_ihfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_irfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_irfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_invalid_fft_rfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_noop_transform_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_fftn_noop_transform_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_noop_transform_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fftn_noop_transform_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_noop_transform_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_round_trip_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_fftn_round_trip_cpu_complex32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_round_trip_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftn_round_trip_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_fftn_round_trip_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftn_round_trip_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fftshift_frequencies_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftshift_frequencies_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_fftshift_numpy_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_fftshift_numpy_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_fftshift_numpy_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_fftshift_numpy_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_hfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_hfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_hfftn_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_ihfftn_cpu_float16, test/test_spectral_ops.py::TestFFTCPU::test_ihfftn_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_ihfftn_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_istft_against_librosa_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_istft_linearity_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_istft_of_sine_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_istft_requires_window_cpu, test/test_spectral_ops.py::TestFFTCPU::test_istft_round_trip_simple_cases_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_istft_round_trip_various_params_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_istft_round_trip_with_padding_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_istft_throws_cpu, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_fft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_fft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_hfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_hfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_ifft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_ifft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_ihfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_irfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_irfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d__refs_fft_rfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_fft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_fft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_hfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_hfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_ifft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_ifft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_ihfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_irfft_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_irfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_1d_fft_rfft_cpu_float32, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_fftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_fftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_hfftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_hfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_ifftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_ifftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_irfftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd__refs_fft_irfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_fftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_fftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_hfftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_hfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_ifftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_ifftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_irfftn_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_reference_nd_fft_irfftn_cpu_complex64, test/test_spectral_ops.py::TestFFTCPU::test_stft_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_stft_requires_complex_cpu, test/test_spectral_ops.py::TestFFTCPU::test_stft_requires_window_cpu, test/test_spectral_ops.py::TestFFTCPU::test_stft_roundtrip_complex_window_cpu_complex128, test/test_spectral_ops.py::TestFFTCPU::test_stft_roundtrip_complex_window_cpu_float64, test/test_spectral_ops.py::TestFFTCPU::test_stft_window_device_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_fft2_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_fft_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_fftfreq_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_fftn_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_fftshift_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_hfft_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_ifft2_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_ifft_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_ifftn_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_ifftshift_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_ihfft_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_irfft2_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_irfft_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_irfftn_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_rfft2_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_rfft_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_rfftfreq_cpu, test/test_spectral_ops.py::TestFFTDocExamplesCPU::test_rfftn_cpu 2024-08-06T21:06:07.8877467Z 2024-08-06T21:06:07.8877747Z Running distributions/test_distributions 1/2 ... [2024-08-06 21:06:07.869763] 2024-08-06T21:06:07.8879079Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'distributions/test_distributions.py', '--shard-id=1', '--num-shards=2', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:06:07.870092] 2024-08-06T21:12:29.5334778Z 2024-08-06T21:12:29.5336392Z distributions/test_distributions 1/2 was successful, full logs can be found in artifacts with path test/test-reports/distributions.test_distributions_1.2_7804f54d6056f400_.log 2024-08-06T21:12:29.5394048Z Running 130 items in this shard: test/distributions/test_distributions.py::TestDistributions::test_argmax_relaxed_categorical, test/distributions/test_distributions.py::TestDistributions::test_bernoulli, test/distributions/test_distributions.py::TestDistributions::test_bernoulli_3d, test/distributions/test_distributions.py::TestDistributions::test_bernoulli_enumerate_support, test/distributions/test_distributions.py::TestDistributions::test_beta_log_prob, test/distributions/test_distributions.py::TestDistributions::test_beta_underflow, test/distributions/test_distributions.py::TestDistributions::test_binomial, test/distributions/test_distributions.py::TestDistributions::test_binomial_half, test/distributions/test_distributions.py::TestDistributions::test_binomial_log_prob_vectorized_count, test/distributions/test_distributions.py::TestDistributions::test_binomial_vectorized_count, test/distributions/test_distributions.py::TestDistributions::test_categorical_1d, test/distributions/test_distributions.py::TestDistributions::test_categorical_2d, test/distributions/test_distributions.py::TestDistributions::test_categorical_enumerate_support, test/distributions/test_distributions.py::TestDistributions::test_cauchy, test/distributions/test_distributions.py::TestDistributions::test_cdf_icdf_inverse, test/distributions/test_distributions.py::TestDistributions::test_cdf_log_prob, test/distributions/test_distributions.py::TestDistributions::test_chi2_shape, test/distributions/test_distributions.py::TestDistributions::test_continuous_bernoulli, test/distributions/test_distributions.py::TestDistributions::test_continuous_bernoulli_3d, test/distributions/test_distributions.py::TestDistributions::test_distribution_expand, test/distributions/test_distributions.py::TestDistributions::test_enumerate_support_type, test/distributions/test_distributions.py::TestDistributions::test_exponential, test/distributions/test_distributions.py::TestDistributions::test_exponential_sample, test/distributions/test_distributions.py::TestDistributions::test_fishersnedecor, test/distributions/test_distributions.py::TestDistributions::test_gamma_sample, test/distributions/test_distributions.py::TestDistributions::test_gamma_shape, test/distributions/test_distributions.py::TestDistributions::test_geometric, test/distributions/test_distributions.py::TestDistributions::test_geometric_log_prob_and_entropy, test/distributions/test_distributions.py::TestDistributions::test_geometric_sample, test/distributions/test_distributions.py::TestDistributions::test_gumbel_sample, test/distributions/test_distributions.py::TestDistributions::test_halfcauchy, test/distributions/test_distributions.py::TestDistributions::test_halfnormal, test/distributions/test_distributions.py::TestDistributions::test_halfnormal_logprob, test/distributions/test_distributions.py::TestDistributions::test_has_examples, test/distributions/test_distributions.py::TestDistributions::test_independent_expand, test/distributions/test_distributions.py::TestDistributions::test_independent_shape, test/distributions/test_distributions.py::TestDistributions::test_invalid_parameter_broadcasting, test/distributions/test_distributions.py::TestDistributions::test_inversegamma, test/distributions/test_distributions.py::TestDistributions::test_inversegamma_sample, test/distributions/test_distributions.py::TestDistributions::test_kumaraswamy_mean_variance, test/distributions/test_distributions.py::TestDistributions::test_kumaraswamy_shape, test/distributions/test_distributions.py::TestDistributions::test_lkj_cholesky_log_prob, test/distributions/test_distributions.py::TestDistributions::test_logisticnormal_logprob, test/distributions/test_distributions.py::TestDistributions::test_logisticnormal_sample, test/distributions/test_distributions.py::TestDistributions::test_lognormal_logprob, test/distributions/test_distributions.py::TestDistributions::test_lognormal_sample, test/distributions/test_distributions.py::TestDistributions::test_lowrank_multivariate_normal_log_prob, test/distributions/test_distributions.py::TestDistributions::test_lowrank_multivariate_normal_moments, test/distributions/test_distributions.py::TestDistributions::test_lowrank_multivariate_normal_shape, test/distributions/test_distributions.py::TestDistributions::test_mixture_same_family_log_prob, test/distributions/test_distributions.py::TestDistributions::test_multinomial_1d_log_prob_and_entropy, test/distributions/test_distributions.py::TestDistributions::test_multinomial_2d, test/distributions/test_distributions.py::TestDistributions::test_multivariate_normal_log_prob, test/distributions/test_distributions.py::TestDistributions::test_multivariate_normal_moments, test/distributions/test_distributions.py::TestDistributions::test_multivariate_normal_properties, test/distributions/test_distributions.py::TestDistributions::test_multivariate_normal_shape, test/distributions/test_distributions.py::TestDistributions::test_negative_binomial, test/distributions/test_distributions.py::TestDistributions::test_normal, test/distributions/test_distributions.py::TestDistributions::test_normal_sample, test/distributions/test_distributions.py::TestDistributions::test_one_hot_categorical_2d, test/distributions/test_distributions.py::TestDistributions::test_pareto, test/distributions/test_distributions.py::TestDistributions::test_pareto_sample, test/distributions/test_distributions.py::TestDistributions::test_poisson_forward_ad, test/distributions/test_distributions.py::TestDistributions::test_poisson_log_prob, test/distributions/test_distributions.py::TestDistributions::test_repr, test/distributions/test_distributions.py::TestDistributions::test_rounded_relaxed_bernoulli, test/distributions/test_distributions.py::TestDistributions::test_studentT, test/distributions/test_distributions.py::TestDistributions::test_studentT_log_prob, test/distributions/test_distributions.py::TestDistributions::test_studentT_sample, test/distributions/test_distributions.py::TestDistributions::test_support_attributes, test/distributions/test_distributions.py::TestDistributions::test_vonmises_logprob, test/distributions/test_distributions.py::TestDistributions::test_vonmises_sample, test/distributions/test_distributions.py::TestDistributions::test_wishart_log_prob, test/distributions/test_distributions.py::TestDistributions::test_wishart_moments, test/distributions/test_distributions.py::TestDistributions::test_wishart_properties, test/distributions/test_distributions.py::TestDistributions::test_wishart_sample, test/distributions/test_distributions.py::TestDistributions::test_wishart_stable_with_precision_matrix, test/distributions/test_distributions.py::TestDistributions::test_zero_excluded_binomial, test/distributions/test_distributions.py::TestRsample::test_beta_wrt_alpha, test/distributions/test_distributions.py::TestRsample::test_beta_wrt_beta, test/distributions/test_distributions.py::TestRsample::test_dirichlet_on_diagonal, test/distributions/test_distributions.py::TestRsample::test_dirichlet_tangent_field, test/distributions/test_distributions.py::TestDistributionShapes::test_bernoulli_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_beta_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_binomial_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_binomial_shape_vectorized_n, test/distributions/test_distributions.py::TestDistributionShapes::test_categorical_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_cauchy_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_cauchy_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_chi2_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_exponential_shape_scalar_param, test/distributions/test_distributions.py::TestDistributionShapes::test_exponential_shape_tensor_param, test/distributions/test_distributions.py::TestDistributionShapes::test_gamma_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_gamma_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_gumbel_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_laplace_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_mixture_same_family_mean_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_multinomial_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_normal_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_one_hot_categorical_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_studentT_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_studentT_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_uniform_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_uniform_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_vonmises_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_wishart_shape_scalar_params, test/distributions/test_distributions.py::TestKL::test_entropy_monte_carlo, test/distributions/test_distributions.py::TestKL::test_kl_exponential_family, test/distributions/test_distributions.py::TestKL::test_kl_lowrank_multivariate_normal, test/distributions/test_distributions.py::TestKL::test_kl_lowrank_multivariate_normal_batched, test/distributions/test_distributions.py::TestKL::test_kl_multivariate_normal_batched, test/distributions/test_distributions.py::TestKL::test_kl_multivariate_normal_batched_broadcasted, test/distributions/test_distributions.py::TestKL::test_kl_transformed, test/distributions/test_distributions.py::TestConstraints::test_support_constraints, test/distributions/test_distributions.py::TestNumericalStability::test_bernoulli_gradient, test/distributions/test_distributions.py::TestNumericalStability::test_categorical_log_prob_with_logits, test/distributions/test_distributions.py::TestNumericalStability::test_continuous_bernoulli_gradient, test/distributions/test_distributions.py::TestNumericalStability::test_continuous_bernoulli_with_logits_overflow, test/distributions/test_distributions.py::TestNumericalStability::test_multinomial_log_prob, test/distributions/test_distributions.py::TestLazyLogitsInitialization::test_lazy_logits_initialization, test/distributions/test_distributions.py::TestAgainstScipy::test_icdf, test/distributions/test_distributions.py::TestAgainstScipy::test_mean, test/distributions/test_distributions.py::TestFunctors::test_cat_event_dim, test/distributions/test_distributions.py::TestFunctors::test_stack_transform, test/distributions/test_distributions.py::TestValidation::test_invalid_log_probs_arg, test/distributions/test_distributions.py::TestValidation::test_valid, test/distributions/test_distributions.py::TestValidation::test_warning_unimplemented_constraints, test/distributions/test_distributions.py::TestJit::test_cdf, test/distributions/test_distributions.py::TestJit::test_mean, test/distributions/test_distributions.py::TestJit::test_sample 2024-08-06T21:12:29.5445560Z 2024-08-06T21:12:29.5445857Z Running distributions/test_distributions 2/2 ... [2024-08-06 21:12:29.533916] 2024-08-06T21:12:29.5447167Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'distributions/test_distributions.py', '--shard-id=2', '--num-shards=2', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:12:29.534313] 2024-08-06T21:19:50.6979693Z 2024-08-06T21:19:50.6980894Z distributions/test_distributions 2/2 was successful, full logs can be found in artifacts with path test/test-reports/distributions.test_distributions_2.2_d6fff7bb9f4ad0cc_.log 2024-08-06T21:19:50.7020289Z Running 96 items in this shard: test/distributions/test_distributions.py::TestDistributions::test_beta_sample, test/distributions/test_distributions.py::TestDistributions::test_beta_shape, test/distributions/test_distributions.py::TestDistributions::test_beta_underflow_gpu, test/distributions/test_distributions.py::TestDistributions::test_binomial_bfloat16, test/distributions/test_distributions.py::TestDistributions::test_binomial_enumerate_support, test/distributions/test_distributions.py::TestDistributions::test_binomial_extreme_vals, test/distributions/test_distributions.py::TestDistributions::test_binomial_log_prob_and_entropy, test/distributions/test_distributions.py::TestDistributions::test_binomial_sample, test/distributions/test_distributions.py::TestDistributions::test_binomial_stable, test/distributions/test_distributions.py::TestDistributions::test_chi2_sample, test/distributions/test_distributions.py::TestDistributions::test_dirichlet_log_prob, test/distributions/test_distributions.py::TestDistributions::test_dirichlet_log_prob_zero, test/distributions/test_distributions.py::TestDistributions::test_dirichlet_mode, test/distributions/test_distributions.py::TestDistributions::test_dirichlet_sample, test/distributions/test_distributions.py::TestDistributions::test_dirichlet_shape, test/distributions/test_distributions.py::TestDistributions::test_distribution_subclass_expand, test/distributions/test_distributions.py::TestDistributions::test_fishersnedecor_sample, test/distributions/test_distributions.py::TestDistributions::test_gamma_gpu_sample, test/distributions/test_distributions.py::TestDistributions::test_gamma_gpu_shape, test/distributions/test_distributions.py::TestDistributions::test_gamma_log_prob_at_boundary, test/distributions/test_distributions.py::TestDistributions::test_gumbel, test/distributions/test_distributions.py::TestDistributions::test_halfnormal_sample, test/distributions/test_distributions.py::TestDistributions::test_laplace, test/distributions/test_distributions.py::TestDistributions::test_laplace_sample, test/distributions/test_distributions.py::TestDistributions::test_lazy_property_grad, test/distributions/test_distributions.py::TestDistributions::test_logisticnormal, test/distributions/test_distributions.py::TestDistributions::test_lognormal, test/distributions/test_distributions.py::TestDistributions::test_lowrank_multivariate_normal_properties, test/distributions/test_distributions.py::TestDistributions::test_lowrank_multivariate_normal_sample, test/distributions/test_distributions.py::TestDistributions::test_mixture_same_family_sample, test/distributions/test_distributions.py::TestDistributions::test_mixture_same_family_shape, test/distributions/test_distributions.py::TestDistributions::test_mode, test/distributions/test_distributions.py::TestDistributions::test_multinomial_1d, test/distributions/test_distributions.py::TestDistributions::test_multinomial_sequential_draw, test/distributions/test_distributions.py::TestDistributions::test_multivariate_normal_sample, test/distributions/test_distributions.py::TestDistributions::test_multivariate_normal_stable_with_precision_matrix, test/distributions/test_distributions.py::TestDistributions::test_negative_binomial_log_prob, test/distributions/test_distributions.py::TestDistributions::test_negative_binomial_log_prob_vectorized_count, test/distributions/test_distributions.py::TestDistributions::test_one_hot_categorical_1d, test/distributions/test_distributions.py::TestDistributions::test_one_hot_categorical_enumerate_support, test/distributions/test_distributions.py::TestDistributions::test_poisson_gpu_sample, test/distributions/test_distributions.py::TestDistributions::test_poisson_sample, test/distributions/test_distributions.py::TestDistributions::test_poisson_shape, test/distributions/test_distributions.py::TestDistributions::test_relaxed_bernoulli, test/distributions/test_distributions.py::TestDistributions::test_relaxed_one_hot_categorical_1d, test/distributions/test_distributions.py::TestDistributions::test_relaxed_one_hot_categorical_2d, test/distributions/test_distributions.py::TestDistributions::test_rsample_requires_grad, test/distributions/test_distributions.py::TestDistributions::test_sample_detached, test/distributions/test_distributions.py::TestDistributions::test_uniform, test/distributions/test_distributions.py::TestDistributions::test_valid_parameter_broadcasting, test/distributions/test_distributions.py::TestDistributions::test_wishart_shape, test/distributions/test_distributions.py::TestRsample::test_chi2, test/distributions/test_distributions.py::TestRsample::test_dirichlet_multivariate, test/distributions/test_distributions.py::TestRsample::test_gamma, test/distributions/test_distributions.py::TestDistributionShapes::test_bernoulli_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_beta_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_chi2_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_continuous_bernoulli_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_continuous_bernoulli_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_dirichlet_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_entropy_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_geometric_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_geometric_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_halfcauchy_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_halfcauchy_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_kumaraswamy_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_laplace_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_mixture_same_family_shape, test/distributions/test_distributions.py::TestDistributionShapes::test_normal_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_pareto_shape_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_vonmises_shape_tensor_params, test/distributions/test_distributions.py::TestDistributionShapes::test_weibull_scale_scalar_params, test/distributions/test_distributions.py::TestDistributionShapes::test_wishart_shape_tensor_params, test/distributions/test_distributions.py::TestKL::test_entropy_exponential_family, test/distributions/test_distributions.py::TestKL::test_kl_edgecases, test/distributions/test_distributions.py::TestKL::test_kl_infinite, test/distributions/test_distributions.py::TestKL::test_kl_monte_carlo, test/distributions/test_distributions.py::TestKL::test_kl_multivariate_normal, test/distributions/test_distributions.py::TestKL::test_kl_shape, test/distributions/test_distributions.py::TestConstraints::test_params_constraints, test/distributions/test_distributions.py::TestNumericalStability::test_bernoulli_with_logits_overflow, test/distributions/test_distributions.py::TestNumericalStability::test_bernoulli_with_logits_underflow, test/distributions/test_distributions.py::TestNumericalStability::test_categorical_log_prob, test/distributions/test_distributions.py::TestNumericalStability::test_continuous_bernoulli_with_logits_underflow, test/distributions/test_distributions.py::TestNumericalStability::test_multinomial_log_prob_with_logits, test/distributions/test_distributions.py::TestLazyLogitsInitialization::test_lazy_probs_initialization, test/distributions/test_distributions.py::TestAgainstScipy::test_cdf, test/distributions/test_distributions.py::TestAgainstScipy::test_variance_stddev, test/distributions/test_distributions.py::TestFunctors::test_cat_transform, test/distributions/test_distributions.py::TestFunctors::test_cat_transform_non_uniform, test/distributions/test_distributions.py::TestValidation::test_invalid, test/distributions/test_distributions.py::TestJit::test_entropy, test/distributions/test_distributions.py::TestJit::test_enumerate_support, test/distributions/test_distributions.py::TestJit::test_log_prob, test/distributions/test_distributions.py::TestJit::test_rsample, test/distributions/test_distributions.py::TestJit::test_variance 2024-08-06T21:19:50.7058301Z 2024-08-06T21:19:50.7058464Z Running doctests 1/1 ... [2024-08-06 21:19:50.698296] 2024-08-06T21:19:50.7079160Z Start doctest_module('/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch') 2024-08-06T21:19:50.7079822Z Listing tests 2024-08-06T21:19:50.9665237Z msg = Cannot scrape callname=meshgrid in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py line=426. 2024-08-06T21:19:50.9666150Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:50.9666837Z Creates grids of coordinates specified by the 1D inputs in `attr`:tensors. 2024-08-06T21:19:50.9667194Z 2024-08-06T21:19:50.9667377Z This is helpful when you want to visualize data over some 2024-08-06T21:19:50.9667829Z range of inputs. See below for a plotting example. 2024-08-06T21:19:50.9668094Z 2024-08-06T21:19:50.9668277Z Given :math:`N` 1D tensors :math:`T_0 \ldots T_{N-1}` as 2024-08-06T21:19:50.9668742Z inputs with corresponding sizes :math:`S_0 \ldots S_{N-1}`, 2024-08-06T21:19:50.9669246Z this creates :math:`N` N-dimensional tensors :math:`G_0 \ldots 2024-08-06T21:19:50.9669723Z G_{N-1}`, each with shape :math:`(S_0, ..., S_{N-1})` where 2024-08-06T21:19:50.9670194Z the output :math:`G_i` is constructed by expanding :math:`T_i` 2024-08-06T21:19:50.9670616Z to the result shape. 2024-08-06T21:19:50.9671059Z 2024-08-06T21:19:50.9671207Z .. note:: 2024-08-06T21:19:50.9671509Z 0D inputs are treated equivalently to 1D inputs of a 2024-08-06T21:19:50.9671895Z single element. 2024-08-06T21:19:50.9672129Z 2024-08-06T21:19:50.9672225Z .. warning:: 2024-08-06T21:19:50.9672569Z `torch.meshgrid(*tensors)` currently has the same behavior 2024-08-06T21:19:50.9673026Z as calling `numpy.meshgrid(*arrays, indexing='ij')`. 2024-08-06T21:19:50.9673316Z 2024-08-06T21:19:50.9673467Z In the future `torch.meshgrid` will transition to 2024-08-06T21:19:50.9673854Z `indexing='xy'` as the default. 2024-08-06T21:19:50.9674073Z 2024-08-06T21:19:50.9674282Z https://github.com/pytorch/pytorch/issues/50276 tracks 2024-08-06T21:19:50.9674760Z this issue with the goal of migrating to NumPy's behavior. 2024-08-06T21:19:50.9675067Z 2024-08-06T21:19:50.9675159Z .. seealso:: 2024-08-06T21:19:50.9675305Z 2024-08-06T21:19:50.9675496Z :func:`torch.cartesian_prod` has the same effect but it 2024-08-06T21:19:50.9675910Z collects the data in a tensor of vectors. 2024-08-06T21:19:50.9676161Z 2024-08-06T21:19:50.9676247Z Args: 2024-08-06T21:19:50.9676646Z tensors (list of Tensor): list of scalars or 1 dimensional tensors. Scalars will be 2024-08-06T21:19:50.9677190Z treated as tensors of size :math:`(1,)` automatically 2024-08-06T21:19:50.9677477Z 2024-08-06T21:19:50.9677654Z indexing: (str, optional): the indexing mode, either "xy" 2024-08-06T21:19:50.9678123Z or "ij", defaults to "ij". See warning for future changes. 2024-08-06T21:19:50.9678404Z 2024-08-06T21:19:50.9678570Z If "xy" is selected, the first dimension corresponds 2024-08-06T21:19:50.9678998Z to the cardinality of the second input and the second 2024-08-06T21:19:50.9679453Z dimension corresponds to the cardinality of the first 2024-08-06T21:19:50.9679842Z input. 2024-08-06T21:19:50.9679996Z 2024-08-06T21:19:50.9680145Z If "ij" is selected, the dimensions are in the same 2024-08-06T21:19:50.9680547Z order as the cardinality of the inputs. 2024-08-06T21:19:50.9680787Z 2024-08-06T21:19:50.9680889Z Returns: 2024-08-06T21:19:50.9681183Z seq (sequence of Tensors): If the input has :math:`N` 2024-08-06T21:19:50.9681626Z tensors of size :math:`S_0 \ldots S_{N-1}``, then the 2024-08-06T21:19:50.9682089Z output will also have :math:`N` tensors, where each tensor 2024-08-06T21:19:50.9682503Z is of shape :math:`(S_0, ..., S_{N-1})`. 2024-08-06T21:19:50.9682748Z 2024-08-06T21:19:50.9682843Z Example:: 2024-08-06T21:19:50.9683119Z 2024-08-06T21:19:50.9683244Z >>> x = torch.tensor([1, 2, 3]) 2024-08-06T21:19:50.9683570Z >>> y = torch.tensor([4, 5, 6]) 2024-08-06T21:19:50.9683799Z 2024-08-06T21:19:50.9683998Z Observe the element-wise pairings across the grid, (1, 4), 2024-08-06T21:19:50.9684489Z (1, 5), ..., (3, 6). This is the same thing as the 2024-08-06T21:19:50.9685031Z cartesian product. 2024-08-06T21:19:50.9685440Z >>> grid_x, grid_y = torch.meshgrid(x, y, indexing='ij') 2024-08-06T21:19:50.9685905Z >>> grid_x 2024-08-06T21:19:50.9686211Z tensor([[1, 1, 1], 2024-08-06T21:19:50.9686505Z [2, 2, 2], 2024-08-06T21:19:50.9686822Z [3, 3, 3]]) 2024-08-06T21:19:50.9687140Z >>> grid_y 2024-08-06T21:19:50.9687444Z tensor([[4, 5, 6], 2024-08-06T21:19:50.9687724Z [4, 5, 6], 2024-08-06T21:19:50.9687987Z [4, 5, 6]]) 2024-08-06T21:19:50.9688192Z 2024-08-06T21:19:50.9688361Z This correspondence can be seen when these grids are 2024-08-06T21:19:50.9688758Z stacked properly. 2024-08-06T21:19:50.9689308Z >>> torch.equal(torch.cat(tuple(torch.dstack([grid_x, grid_y]))), 2024-08-06T21:19:50.9689774Z ... torch.cartesian_prod(x, y)) 2024-08-06T21:19:50.9690118Z True 2024-08-06T21:19:50.9690255Z 2024-08-06T21:19:50.9690452Z `torch.meshgrid` is commonly used to produce a grid for 2024-08-06T21:19:50.9690833Z plotting. 2024-08-06T21:19:50.9691128Z >>> # xdoctest: +REQUIRES(module:matplotlib) 2024-08-06T21:19:50.9691513Z >>> # xdoctest: +REQUIRES(env:DOCTEST_SHOW) 2024-08-06T21:19:50.9691880Z >>> import matplotlib.pyplot as plt 2024-08-06T21:19:50.9692252Z >>> xs = torch.linspace(-5, 5, steps=100) 2024-08-06T21:19:50.9692624Z >>> ys = torch.linspace(-5, 5, steps=100) 2024-08-06T21:19:50.9692994Z >>> x, y = torch.meshgrid(xs, ys, indexing='xy') 2024-08-06T21:19:50.9693392Z >>> z = torch.sin(torch.sqrt(x * x + y * y)) 2024-08-06T21:19:50.9693762Z >>> ax = plt.axes(projection='3d') 2024-08-06T21:19:50.9694145Z >>> ax.plot_surface(x.numpy(), y.numpy(), z.numpy()) 2024-08-06T21:19:50.9694520Z >>> plt.show() 2024-08-06T21:19:50.9694688Z 2024-08-06T21:19:50.9694939Z .. image:: ../_static/img/meshgrid.png 2024-08-06T21:19:50.9695259Z :width: 512 2024-08-06T21:19:50.9695428Z 2024-08-06T21:19:50.9695518Z 2024-08-06T21:19:50.9695898Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:50.9696265Z 2024-08-06T21:19:50.9696822Z msg = Cannot scrape callname=_unique_impl in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py line=815. 2024-08-06T21:19:50.9697691Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:50.9698465Z unique(input, sorted=True, return_inverse=False, return_counts=False, dim=None) -> Tuple[Tensor, Tensor, Tensor] 2024-08-06T21:19:50.9698973Z 2024-08-06T21:19:50.9699125Z Returns the unique elements of the input tensor. 2024-08-06T21:19:50.9699384Z 2024-08-06T21:19:50.9699696Z .. note:: This function is different from :func:`torch.unique_consecutive` in the sense that 2024-08-06T21:19:50.9700312Z this function also eliminates non-consecutive duplicate values. 2024-08-06T21:19:50.9700646Z 2024-08-06T21:19:50.9700877Z .. note:: Currently in the CUDA implementation and the CPU implementation, 2024-08-06T21:19:50.9701532Z `torch.unique` always sort the tensor at the beginning regardless of the `sort` argument. 2024-08-06T21:19:50.9702234Z Sorting could be slow, so if your input tensor is already sorted, it is recommended to use 2024-08-06T21:19:50.9702813Z :func:`torch.unique_consecutive` which avoids the sorting. 2024-08-06T21:19:50.9703115Z 2024-08-06T21:19:50.9703373Z Args: 2024-08-06T21:19:50.9703623Z input (Tensor): the input tensor 2024-08-06T21:19:50.9704057Z sorted (bool): Whether to sort the unique elements in ascending order 2024-08-06T21:19:50.9704518Z before returning as output. 2024-08-06T21:19:50.9704954Z return_inverse (bool): Whether to also return the indices for where 2024-08-06T21:19:50.9705495Z elements in the original input ended up in the returned unique list. 2024-08-06T21:19:50.9706060Z return_counts (bool): Whether to also return the counts for each unique 2024-08-06T21:19:50.9706499Z element. 2024-08-06T21:19:50.9706847Z dim (int, optional): the dimension to operate upon. If ``None``, the 2024-08-06T21:19:50.9707383Z unique of the flattened input is returned. Otherwise, each of the 2024-08-06T21:19:50.9707917Z tensors indexed by the given dimension is treated as one of the 2024-08-06T21:19:50.9708439Z elements to apply the unique operation upon. See examples for more 2024-08-06T21:19:50.9708890Z details. Default: ``None`` 2024-08-06T21:19:50.9709110Z 2024-08-06T21:19:50.9709202Z Returns: 2024-08-06T21:19:50.9709682Z (Tensor, Tensor (optional), Tensor (optional)): A tensor or a tuple of tensors containing 2024-08-06T21:19:50.9710101Z 2024-08-06T21:19:50.9710300Z - **output** (*Tensor*): the output list of unique scalar elements. 2024-08-06T21:19:50.9710759Z - **inverse_indices** (*Tensor*): (optional) if 2024-08-06T21:19:50.9711209Z :attr:`return_inverse` is True, there will be an additional 2024-08-06T21:19:50.9711712Z returned tensor (same shape as input) representing the indices 2024-08-06T21:19:50.9712246Z for where elements in the original input map to in the output; 2024-08-06T21:19:50.9712759Z otherwise, this function will only return a single tensor. 2024-08-06T21:19:50.9713182Z - **counts** (*Tensor*): (optional) if 2024-08-06T21:19:50.9713600Z :attr:`return_counts` is True, there will be an additional 2024-08-06T21:19:50.9714087Z returned tensor (same shape as output or output.size(dim), 2024-08-06T21:19:50.9714579Z if dim was specified) representing the number of occurrences 2024-08-06T21:19:50.9715006Z for each unique value or tensor. 2024-08-06T21:19:50.9715232Z 2024-08-06T21:19:50.9717247Z Example:: 2024-08-06T21:19:50.9717397Z 2024-08-06T21:19:50.9717617Z >>> output = torch.unique(torch.tensor([1, 3, 2, 3], dtype=torch.long)) 2024-08-06T21:19:50.9718051Z >>> output 2024-08-06T21:19:50.9718300Z tensor([1, 2, 3]) 2024-08-06T21:19:50.9718467Z 2024-08-06T21:19:50.9718592Z >>> output, inverse_indices = torch.unique( 2024-08-06T21:19:50.9719077Z ... torch.tensor([1, 3, 2, 3], dtype=torch.long), sorted=True, return_inverse=True) 2024-08-06T21:19:50.9719529Z >>> output 2024-08-06T21:19:50.9719769Z tensor([1, 2, 3]) 2024-08-06T21:19:50.9720035Z >>> inverse_indices 2024-08-06T21:19:50.9720306Z tensor([0, 2, 1, 2]) 2024-08-06T21:19:50.9720477Z 2024-08-06T21:19:50.9720607Z >>> output, inverse_indices = torch.unique( 2024-08-06T21:19:50.9721090Z ... torch.tensor([[1, 3], [2, 3]], dtype=torch.long), sorted=True, return_inverse=True) 2024-08-06T21:19:50.9721538Z >>> output 2024-08-06T21:19:50.9721775Z tensor([1, 2, 3]) 2024-08-06T21:19:50.9722031Z >>> inverse_indices 2024-08-06T21:19:50.9722300Z tensor([[0, 2], 2024-08-06T21:19:50.9722535Z [1, 2]]) 2024-08-06T21:19:50.9722702Z 2024-08-06T21:19:50.9722801Z >>> a = torch.tensor([ 2024-08-06T21:19:50.9723076Z ... [ 2024-08-06T21:19:50.9723299Z ... [1, 1, 0, 0], 2024-08-06T21:19:50.9723584Z ... [1, 1, 0, 0], 2024-08-06T21:19:50.9723865Z ... [0, 0, 1, 1], 2024-08-06T21:19:50.9724126Z ... ], 2024-08-06T21:19:50.9724493Z ... [ 2024-08-06T21:19:50.9724727Z ... [0, 0, 1, 1], 2024-08-06T21:19:50.9724996Z ... [0, 0, 1, 1], 2024-08-06T21:19:50.9725282Z ... [1, 1, 1, 1], 2024-08-06T21:19:50.9725560Z ... ], 2024-08-06T21:19:50.9725777Z ... [ 2024-08-06T21:19:50.9726008Z ... [1, 1, 0, 0], 2024-08-06T21:19:50.9726288Z ... [1, 1, 0, 0], 2024-08-06T21:19:50.9726554Z ... [0, 0, 1, 1], 2024-08-06T21:19:50.9726827Z ... ], 2024-08-06T21:19:50.9727060Z ... ]) 2024-08-06T21:19:50.9727187Z 2024-08-06T21:19:50.9727405Z >>> # If we call `torch.unique(a, dim=0)`, each of the tensors `a[idx, :, :]` 2024-08-06T21:19:50.9727956Z >>> # will be compared. We can see that `a[0, :, :]` and `a[2, :, :]` match 2024-08-06T21:19:50.9728425Z >>> # each other, so one of them will be removed. 2024-08-06T21:19:50.9728771Z >>> (a[0, :, :] == a[2, :, :]).all() 2024-08-06T21:19:50.9729086Z tensor(True) 2024-08-06T21:19:50.9729369Z >>> a_unique_dim0 = torch.unique(a, dim=0) 2024-08-06T21:19:50.9729693Z >>> a_unique_dim0 2024-08-06T21:19:50.9730037Z tensor([[[0, 0, 1, 1], 2024-08-06T21:19:50.9730323Z [0, 0, 1, 1], 2024-08-06T21:19:50.9730583Z [1, 1, 1, 1]], 2024-08-06T21:19:50.9730862Z [[1, 1, 0, 0], 2024-08-06T21:19:50.9731136Z [1, 1, 0, 0], 2024-08-06T21:19:50.9731397Z [0, 0, 1, 1]]]) 2024-08-06T21:19:50.9731591Z 2024-08-06T21:19:50.9731807Z >>> # Notice which sub-tensors from `a` match with the sub-tensors from 2024-08-06T21:19:50.9732239Z >>> # `a_unique_dim0`: 2024-08-06T21:19:50.9732546Z >>> (a_unique_dim0[0, :, :] == a[1, :, :]).all() 2024-08-06T21:19:50.9732878Z tensor(True) 2024-08-06T21:19:50.9733161Z >>> (a_unique_dim0[1, :, :] == a[0, :, :]).all() 2024-08-06T21:19:50.9733482Z tensor(True) 2024-08-06T21:19:50.9733649Z 2024-08-06T21:19:50.9733856Z >>> # For `torch.unique(a, dim=1)`, each of the tensors `a[:, idx, :]` are 2024-08-06T21:19:50.9734381Z >>> # compared. `a[:, 0, :]` and `a[:, 1, :]` match each other, so one of 2024-08-06T21:19:50.9734898Z >>> # them will be removed. 2024-08-06T21:19:50.9735204Z >>> (a[:, 0, :] == a[:, 1, :]).all() 2024-08-06T21:19:50.9735520Z tensor(True) 2024-08-06T21:19:50.9735771Z >>> torch.unique(a, dim=1) 2024-08-06T21:19:50.9736083Z tensor([[[0, 0, 1, 1], 2024-08-06T21:19:50.9736366Z [1, 1, 0, 0]], 2024-08-06T21:19:50.9736632Z [[1, 1, 1, 1], 2024-08-06T21:19:50.9736903Z [0, 0, 1, 1]], 2024-08-06T21:19:50.9737184Z [[0, 0, 1, 1], 2024-08-06T21:19:50.9737451Z [1, 1, 0, 0]]]) 2024-08-06T21:19:50.9737642Z 2024-08-06T21:19:50.9737854Z >>> # For `torch.unique(a, dim=2)`, the tensors `a[:, :, idx]` are compared. 2024-08-06T21:19:50.9738366Z >>> # `a[:, :, 0]` and `a[:, :, 1]` match each other. Also, `a[:, :, 2]` and 2024-08-06T21:19:50.9738815Z >>> # `a[:, :, 3]` match each other as well. So in this case, two of the 2024-08-06T21:19:50.9739239Z >>> # sub-tensors will be removed. 2024-08-06T21:19:50.9739573Z >>> (a[:, :, 0] == a[:, :, 1]).all() 2024-08-06T21:19:50.9739871Z tensor(True) 2024-08-06T21:19:50.9740127Z >>> (a[:, :, 2] == a[:, :, 3]).all() 2024-08-06T21:19:50.9740434Z tensor(True) 2024-08-06T21:19:50.9740680Z >>> torch.unique(a, dim=2) 2024-08-06T21:19:50.9740975Z tensor([[[0, 1], 2024-08-06T21:19:50.9741232Z [0, 1], 2024-08-06T21:19:50.9741472Z [1, 0]], 2024-08-06T21:19:50.9741724Z [[1, 0], 2024-08-06T21:19:50.9741976Z [1, 0], 2024-08-06T21:19:50.9742213Z [1, 1]], 2024-08-06T21:19:50.9742464Z [[0, 1], 2024-08-06T21:19:50.9742717Z [0, 1], 2024-08-06T21:19:50.9743072Z [1, 0]]]) 2024-08-06T21:19:50.9743330Z 2024-08-06T21:19:50.9743709Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:50.9744085Z 2024-08-06T21:19:50.9862700Z msg = Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py line=560. 2024-08-06T21:19:50.9863837Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:50.9864232Z 2024-08-06T21:19:50.9864392Z Load a model from a github repo or a local directory. 2024-08-06T21:19:50.9864719Z 2024-08-06T21:19:50.9864960Z Note: Loading a model is the typical use case, but this can also be used to 2024-08-06T21:19:50.9865583Z for loading other objects such as tokenizers, loss functions, etc. 2024-08-06T21:19:50.9865903Z 2024-08-06T21:19:50.9866121Z If ``source`` is 'github', ``repo_or_dir`` is expected to be 2024-08-06T21:19:50.9866578Z of the form ``repo_owner/repo_name[:ref]`` with an optional 2024-08-06T21:19:50.9867035Z ref (a tag or a branch). 2024-08-06T21:19:50.9867198Z 2024-08-06T21:19:50.9867366Z If ``source`` is 'local', ``repo_or_dir`` is expected to be a 2024-08-06T21:19:50.9868074Z path to a local directory. 2024-08-06T21:19:50.9868263Z 2024-08-06T21:19:50.9868415Z Args: 2024-08-06T21:19:50.9868704Z repo_or_dir (str): If ``source`` is 'github', 2024-08-06T21:19:50.9869364Z this should correspond to a github repo with format ``repo_owner/repo_name[:ref]`` with 2024-08-06T21:19:50.9870145Z an optional ref (tag or branch), for example 'pytorch/vision:0.10'. If ``ref`` is not specified, 2024-08-06T21:19:50.9870875Z the default branch is assumed to be ``main`` if it exists, and otherwise ``master``. 2024-08-06T21:19:50.9871518Z If ``source`` is 'local' then it should be a path to a local directory. 2024-08-06T21:19:50.9872044Z model (str): the name of a callable (entrypoint) defined in the 2024-08-06T21:19:50.9872508Z repo/dir's ``hubconf.py``. 2024-08-06T21:19:50.9872937Z *args (optional): the corresponding args for callable ``model``. 2024-08-06T21:19:50.9873518Z source (str, optional): 'github' or 'local'. Specifies how 2024-08-06T21:19:50.9874041Z ``repo_or_dir`` is to be interpreted. Default is 'github'. 2024-08-06T21:19:50.9874612Z trust_repo (bool, str or None): ``"check"``, ``True``, ``False`` or ``None``. 2024-08-06T21:19:50.9875183Z This parameter was introduced in v1.12 and helps ensuring that users 2024-08-06T21:19:50.9875722Z only run code from repos that they trust. 2024-08-06T21:19:50.9875966Z 2024-08-06T21:19:50.9876214Z - If ``False``, a prompt will ask the user whether the repo should 2024-08-06T21:19:50.9876625Z be trusted. 2024-08-06T21:19:50.9877026Z - If ``True``, the repo will be added to the trusted list and loaded 2024-08-06T21:19:50.9877461Z without requiring explicit confirmation. 2024-08-06T21:19:50.9877939Z - If ``"check"``, the repo will be checked against the list of 2024-08-06T21:19:50.9878501Z trusted repos in the cache. If it is not present in that list, the 2024-08-06T21:19:50.9879025Z behaviour will fall back onto the ``trust_repo=False`` option. 2024-08-06T21:19:50.9879595Z - If ``None``: this will raise a warning, inviting the user to set 2024-08-06T21:19:50.9880145Z ``trust_repo`` to either ``False``, ``True`` or ``"check"``. This 2024-08-06T21:19:50.9880696Z is only present for backward compatibility and will be removed in 2024-08-06T21:19:50.9881121Z v2.0. 2024-08-06T21:19:50.9881254Z 2024-08-06T21:19:50.9881529Z Default is ``None`` and will eventually change to ``"check"`` in v2.0. 2024-08-06T21:19:50.9882061Z force_reload (bool, optional): whether to force a fresh download of 2024-08-06T21:19:50.9882649Z the github repo unconditionally. Does not have any effect if 2024-08-06T21:19:50.9883136Z ``source = 'local'``. Default is ``False``. 2024-08-06T21:19:50.9883766Z verbose (bool, optional): If ``False``, mute messages about hitting 2024-08-06T21:19:50.9884316Z local caches. Note that the message about first download cannot be 2024-08-06T21:19:50.9884879Z muted. Does not have any effect if ``source = 'local'``. 2024-08-06T21:19:50.9885311Z Default is ``True``. 2024-08-06T21:19:50.9885798Z skip_validation (bool, optional): if ``False``, torchhub will check that the branch or commit 2024-08-06T21:19:50.9886564Z specified by the ``github`` argument properly belongs to the repo owner. This will make 2024-08-06T21:19:50.9887308Z requests to the GitHub API; you can specify a non-default GitHub token by setting the 2024-08-06T21:19:50.9887933Z ``GITHUB_TOKEN`` environment variable. Default is ``False``. 2024-08-06T21:19:50.9888507Z **kwargs (optional): the corresponding kwargs for callable ``model``. 2024-08-06T21:19:50.9888844Z 2024-08-06T21:19:50.9888949Z Returns: 2024-08-06T21:19:50.9889306Z The output of the ``model`` callable when called with the given 2024-08-06T21:19:50.9889712Z ``*args`` and ``**kwargs``. 2024-08-06T21:19:50.9889944Z 2024-08-06T21:19:50.9890603Z Example: 2024-08-06T21:19:50.9890893Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_HUB) 2024-08-06T21:19:50.9891246Z >>> # from a github repo 2024-08-06T21:19:50.9891588Z >>> repo = "pytorch/vision" 2024-08-06T21:19:50.9891871Z >>> model = torch.hub.load( 2024-08-06T21:19:50.9892307Z ... repo, "resnet50", weights="ResNet50_Weights.IMAGENET1K_V1" 2024-08-06T21:19:50.9892702Z ... ) 2024-08-06T21:19:50.9892957Z >>> # from a local directory 2024-08-06T21:19:50.9893296Z >>> path = "/some/local/path/pytorch/vision" 2024-08-06T21:19:50.9893656Z >>> # xdoctest: +SKIP 2024-08-06T21:19:50.9894105Z >>> model = torch.hub.load(path, "resnet50", weights="ResNet50_Weights.DEFAULT") 2024-08-06T21:19:50.9894532Z 2024-08-06T21:19:50.9894865Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:50.9895293Z 2024-08-06T21:19:50.9895844Z msg = Cannot scrape callname=download_url_to_file in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py line=687. 2024-08-06T21:19:50.9896825Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:50.9897355Z Download object at the given URL to a local path. 2024-08-06T21:19:50.9897691Z 2024-08-06T21:19:50.9897785Z Args: 2024-08-06T21:19:50.9898040Z url (str): URL of the object to download 2024-08-06T21:19:50.9898556Z dst (str): Full path where object will be saved, e.g. ``/tmp/temporary_file`` 2024-08-06T21:19:50.9899290Z hash_prefix (str, optional): If not None, the SHA256 downloaded file should start with ``hash_prefix``. 2024-08-06T21:19:50.9899865Z Default: None 2024-08-06T21:19:50.9900277Z progress (bool, optional): whether or not to display a progress bar to stderr 2024-08-06T21:19:50.9900819Z Default: True 2024-08-06T21:19:50.9900982Z 2024-08-06T21:19:50.9901087Z Example: 2024-08-06T21:19:50.9901352Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_HUB) 2024-08-06T21:19:50.9901733Z >>> # xdoctest: +REQUIRES(POSIX) 2024-08-06T21:19:50.9902081Z >>> torch.hub.download_url_to_file( 2024-08-06T21:19:50.9902540Z ... "https://s3.amazonaws.com/pytorch/models/resnet18-5c106cde.pth", 2024-08-06T21:19:50.9903061Z ... "/tmp/temporary_file", 2024-08-06T21:19:50.9903374Z ... ) 2024-08-06T21:19:50.9903501Z 2024-08-06T21:19:50.9903586Z 2024-08-06T21:19:50.9903954Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:50.9904318Z 2024-08-06T21:19:50.9904830Z msg = Cannot scrape callname=load_state_dict_from_url in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py line=812. 2024-08-06T21:19:50.9905690Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:50.9906342Z Loads the Torch serialized object at the given URL. 2024-08-06T21:19:50.9906653Z 2024-08-06T21:19:50.9906857Z If downloaded file is a zip file, it will be automatically 2024-08-06T21:19:50.9907255Z decompressed. 2024-08-06T21:19:50.9907396Z 2024-08-06T21:19:50.9907613Z If the object is already present in `model_dir`, it's deserialized and 2024-08-06T21:19:50.9908044Z returned. 2024-08-06T21:19:50.9908395Z The default value of ``model_dir`` is ``/checkpoints`` where 2024-08-06T21:19:50.9908915Z ``hub_dir`` is the directory returned by :func:`~torch.hub.get_dir`. 2024-08-06T21:19:50.9909238Z 2024-08-06T21:19:50.9909324Z Args: 2024-08-06T21:19:50.9909576Z url (str): URL of the object to download 2024-08-06T21:19:50.9910002Z model_dir (str, optional): directory in which to save the object 2024-08-06T21:19:50.9910679Z map_location (optional): a function or a dict specifying how to remap storage locations (see torch.load) 2024-08-06T21:19:50.9911412Z progress (bool, optional): whether or not to display a progress bar to stderr. 2024-08-06T21:19:50.9911882Z Default: True 2024-08-06T21:19:50.9912464Z check_hash(bool, optional): If True, the filename part of the URL should follow the naming convention 2024-08-06T21:19:50.9913141Z ``filename-.ext`` where ```` is the first eight or more 2024-08-06T21:19:50.9913772Z digits of the SHA256 hash of the contents of the file. The hash is used to 2024-08-06T21:19:50.9914314Z ensure unique names and to verify the contents of the file. 2024-08-06T21:19:50.9914719Z Default: False 2024-08-06T21:19:50.9915219Z file_name (str, optional): name for the downloaded file. Filename from ``url`` will be used if not set. 2024-08-06T21:19:50.9916006Z weights_only(bool, optional): If True, only weights will be loaded and no complex pickled objects. 2024-08-06T21:19:50.9916708Z Recommended for untrusted sources. See :func:`~torch.load` for more details. 2024-08-06T21:19:50.9917088Z 2024-08-06T21:19:50.9917188Z Example: 2024-08-06T21:19:50.9917452Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_HUB) 2024-08-06T21:19:50.9917863Z >>> state_dict = torch.hub.load_state_dict_from_url( 2024-08-06T21:19:50.9918349Z ... "https://s3.amazonaws.com/pytorch/models/resnet18-5c106cde.pth" 2024-08-06T21:19:50.9918761Z ... ) 2024-08-06T21:19:50.9918900Z 2024-08-06T21:19:50.9918984Z 2024-08-06T21:19:50.9919358Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:50.9919724Z 2024-08-06T21:19:50.9949730Z msg = Cannot scrape callname=Library.fallback in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=334. 2024-08-06T21:19:50.9950598Z Caused by: DoctestParseError('Failed to parse doctest in _package_groups') 2024-08-06T21:19:50.9951219Z Registers the function implementation as the fallback for the given key. 2024-08-06T21:19:50.9951588Z 2024-08-06T21:19:50.9951821Z This function only works for a library with global namespace ("_"). 2024-08-06T21:19:50.9952154Z 2024-08-06T21:19:50.9952247Z Args: 2024-08-06T21:19:50.9952671Z fn: function used as fallback for the given dispatch key or :func:`~fallthrough_kernel` 2024-08-06T21:19:50.9953196Z to register a fallthrough. 2024-08-06T21:19:50.9953799Z dispatch_key: dispatch key that the input function should be registered for. By default, it uses 2024-08-06T21:19:50.9954414Z the dispatch key that the library was created with. 2024-08-06T21:19:50.9955082Z with_keyset: flag controlling if the current dispatcher call keyset should be passed as the first argument 2024-08-06T21:19:50.9955914Z to :attr:`fn` when calling. This should be used to create the appropriate keyset for redispatch calls. 2024-08-06T21:19:50.9956355Z 2024-08-06T21:19:50.9956629Z Example:: 2024-08-06T21:19:50.9956892Z >>> my_lib = Library("_", "IMPL") 2024-08-06T21:19:50.9957258Z >>> def fallback_kernel(op, *args, **kwargs): 2024-08-06T21:19:50.9957636Z >>> # Handle all autocast ops generically 2024-08-06T21:19:50.9957978Z >>> # ... 2024-08-06T21:19:50.9958286Z >>> my_lib.fallback(fallback_kernel, "Autocast") 2024-08-06T21:19:50.9958620Z 2024-08-06T21:19:50.9959381Z Original Error: IndentationError('expected an indented block after function definition on line 2', ('', 5, 1, 'my_lib.fallback(fallback_kernel, "Autocast")\n', 5, 7)) 2024-08-06T21:19:50.9960119Z 2024-08-06T21:19:50.9960262Z my_lib.fallback(fallback_kernel, "Autocast") 2024-08-06T21:19:50.9960583Z ^ 2024-08-06T21:19:51.0013946Z msg = Cannot scrape callname=register_fake in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=677. 2024-08-06T21:19:51.0015049Z Caused by: DoctestParseError('Failed to parse doctest in _package_groups') 2024-08-06T21:19:51.0015672Z Register a FakeTensor implementation ("fake impl") for this operator. 2024-08-06T21:19:51.0016044Z 2024-08-06T21:19:51.0016398Z Also sometimes known as a "meta kernel", "abstract impl". 2024-08-06T21:19:51.0016689Z 2024-08-06T21:19:51.0016936Z An "FakeTensor implementation" specifies the behavior of this operator on 2024-08-06T21:19:51.0017528Z Tensors that carry no data ("FakeTensor"). Given some input Tensors with 2024-08-06T21:19:51.0018112Z certain properties (sizes/strides/storage_offset/device), it specifies 2024-08-06T21:19:51.0018612Z what the properties of the output Tensors are. 2024-08-06T21:19:51.0018863Z 2024-08-06T21:19:51.0019099Z The FakeTensor implementation has the same signature as the operator. 2024-08-06T21:19:51.0019668Z It is run for both FakeTensors and meta tensors. To write a FakeTensor 2024-08-06T21:19:51.0020226Z implementation, assume that all Tensor inputs to the operator are 2024-08-06T21:19:51.0020786Z regular CPU/CUDA/Meta tensors, but they do not have storage, and 2024-08-06T21:19:51.0021321Z you are trying to return regular CPU/CUDA/Meta tensor(s) as output. 2024-08-06T21:19:51.0021889Z The FakeTensor implementation must consist of only PyTorch operations 2024-08-06T21:19:51.0022428Z (and may not directly access the storage or data of any input or 2024-08-06T21:19:51.0022850Z intermediate Tensors). 2024-08-06T21:19:51.0023027Z 2024-08-06T21:19:51.0023199Z This API may be used as a decorator (see examples). 2024-08-06T21:19:51.0023585Z 2024-08-06T21:19:51.0023754Z For a detailed guide on custom ops, please see 2024-08-06T21:19:51.0024285Z https://pytorch.org/tutorials/advanced/custom_ops_landing_page.html 2024-08-06T21:19:51.0024717Z 2024-08-06T21:19:51.0024824Z Examples: 2024-08-06T21:19:51.0025099Z >>> import torch 2024-08-06T21:19:51.0025426Z >>> import numpy as np 2024-08-06T21:19:51.0025728Z >>> from torch import Tensor 2024-08-06T21:19:51.0026028Z >>> 2024-08-06T21:19:51.0026349Z >>> # Example 1: an operator without data-dependent output shape 2024-08-06T21:19:51.0026912Z >>> @torch.library.custom_op("mylib::custom_linear", mutates_args=()) 2024-08-06T21:19:51.0027467Z >>> def custom_linear(x: Tensor, weight: Tensor, bias: Tensor) -> Tensor: 2024-08-06T21:19:51.0028002Z >>> raise NotImplementedError("Implementation goes here") 2024-08-06T21:19:51.0028398Z >>> 2024-08-06T21:19:51.0028694Z >>> @torch.library.register_fake("mylib::custom_linear") 2024-08-06T21:19:51.0029086Z >>> def _(x, weight, bias): 2024-08-06T21:19:51.0029393Z >>> assert x.dim() == 2 2024-08-06T21:19:51.0029695Z >>> assert weight.dim() == 2 2024-08-06T21:19:51.0030019Z >>> assert bias.dim() == 1 2024-08-06T21:19:51.0030363Z >>> assert x.shape[1] == weight.shape[1] 2024-08-06T21:19:51.0030724Z >>> assert weight.shape[0] == bias.shape[0] 2024-08-06T21:19:51.0031292Z >>> assert x.device == weight.device 2024-08-06T21:19:51.0031618Z >>> 2024-08-06T21:19:51.0031853Z >>> return (x @ weight.t()) + bias 2024-08-06T21:19:51.0032171Z >>> 2024-08-06T21:19:51.0032475Z >>> with torch._subclasses.fake_tensor.FakeTensorMode(): 2024-08-06T21:19:51.0032859Z >>> x = torch.randn(2, 3) 2024-08-06T21:19:51.0033174Z >>> w = torch.randn(3, 3) 2024-08-06T21:19:51.0033485Z >>> b = torch.randn(3) 2024-08-06T21:19:51.0033810Z >>> y = torch.ops.mylib.custom_linear(x, w, b) 2024-08-06T21:19:51.0034155Z >>> 2024-08-06T21:19:51.0034394Z >>> assert y.shape == (2, 3) 2024-08-06T21:19:51.0034682Z >>> 2024-08-06T21:19:51.0034983Z >>> # Example 2: an operator with data-dependent output shape 2024-08-06T21:19:51.0035505Z >>> @torch.library.custom_op("mylib::custom_nonzero", mutates_args=()) 2024-08-06T21:19:51.0035968Z >>> def custom_nonzero(x: Tensor) -> Tensor: 2024-08-06T21:19:51.0036338Z >>> x_np = x.numpy(force=True) 2024-08-06T21:19:51.0036697Z >>> res = np.stack(np.nonzero(x_np), axis=1) 2024-08-06T21:19:51.0037158Z >>> return torch.tensor(res, device=x.device) 2024-08-06T21:19:51.0037498Z >>> 2024-08-06T21:19:51.0037800Z >>> @torch.library.register_fake("mylib::custom_nonzero") 2024-08-06T21:19:51.0038171Z >>> def _(x): 2024-08-06T21:19:51.0038483Z >>> # Number of nonzero-elements is data-dependent. 2024-08-06T21:19:51.0038913Z >>> # Since we cannot peek at the data in an fake impl, 2024-08-06T21:19:51.0039334Z >>> # we use the ctx object to construct a new symint that 2024-08-06T21:19:51.0039740Z >>> # represents the data-dependent size. 2024-08-06T21:19:51.0040104Z >>> ctx = torch.library.get_ctx() 2024-08-06T21:19:51.0040438Z >>> nnz = ctx.new_dynamic_size() 2024-08-06T21:19:51.0040773Z >>> shape = [nnz, x.dim()] 2024-08-06T21:19:51.0041138Z >>> result = x.new_empty(shape, dtype=torch.int64) 2024-08-06T21:19:51.0041492Z >>> return result 2024-08-06T21:19:51.0041767Z >>> 2024-08-06T21:19:51.0042078Z >>> from torch.fx.experimental.proxy_tensor import make_fx 2024-08-06T21:19:51.0042452Z >>> 2024-08-06T21:19:51.0042688Z >>> x = torch.tensor([0, 1, 2, 3, 4, 0]) 2024-08-06T21:19:51.0043160Z >>> trace = make_fx(torch.ops.mylib.custom_nonzero, tracing_mode="symbolic")(x) 2024-08-06T21:19:51.0043628Z >>> trace.print_readable() 2024-08-06T21:19:51.0043920Z >>> 2024-08-06T21:19:51.0044270Z >>> assert torch.allclose(trace(x), torch.ops.mylib.custom_nonzero(x)) 2024-08-06T21:19:51.0044609Z 2024-08-06T21:19:51.0044697Z 2024-08-06T21:19:51.0045344Z Original Error: IndentationError('expected an indented block after function definition on line 37', ('', 38, 1, '_._ = None\n', 38, 2)) 2024-08-06T21:19:51.0045981Z 2024-08-06T21:19:51.0046079Z _._ = None 2024-08-06T21:19:51.0046284Z ^ 2024-08-06T21:19:51.0046940Z msg = Cannot scrape callname=register_autograd in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=798. 2024-08-06T21:19:51.0047814Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:51.0048346Z Register a backward formula for this custom op. 2024-08-06T21:19:51.0048595Z 2024-08-06T21:19:51.0048799Z In order for an operator to work with autograd, you need to register 2024-08-06T21:19:51.0049230Z a backward formula: 2024-08-06T21:19:51.0049602Z 1. You must tell us how to compute gradients during the backward pass 2024-08-06T21:19:51.0050039Z by providing us a "backward" function. 2024-08-06T21:19:51.0050486Z 2. If you need any values from the forward to compute gradients, you can 2024-08-06T21:19:51.0050967Z use `setup_context` to save values for backward. 2024-08-06T21:19:51.0051313Z 2024-08-06T21:19:51.0051556Z ``backward`` runs during the backward pass. It accepts ``(ctx, *grads)``: 2024-08-06T21:19:51.0052090Z - ``grads`` is one or more gradients. The number of gradients matches 2024-08-06T21:19:51.0052539Z the number of outputs of the operator. 2024-08-06T21:19:51.0052991Z The ``ctx`` object is `the same ctx object `_ used by 2024-08-06T21:19:51.0053558Z :class:`torch.autograd.Function`. The semantics of ``backward_fn`` are the 2024-08-06T21:19:51.0054085Z same as :meth:`torch.autograd.Function.backward`. 2024-08-06T21:19:51.0054354Z 2024-08-06T21:19:51.0054581Z ``setup_context(ctx, inputs, output)`` runs during the forward pass. 2024-08-06T21:19:51.0055263Z Please save quantities needed for backward onto the ``ctx`` object via 2024-08-06T21:19:51.0055853Z either :meth:`torch.autograd.function.FunctionCtx.save_for_backward` 2024-08-06T21:19:51.0056411Z or assigning them as attributes of ``ctx``. If your custom op has 2024-08-06T21:19:51.0056940Z kwarg-only arguments, we expect the signature of ``setup_context`` 2024-08-06T21:19:51.0057471Z to be ``setup_context(ctx, inputs, keyword_only_inputs, output)``. 2024-08-06T21:19:51.0057861Z 2024-08-06T21:19:51.0058099Z Both ``setup_context_fn`` and ``backward_fn`` must be traceable. That is, 2024-08-06T21:19:51.0058671Z they may not directly access :meth:`torch.Tensor.data_ptr` and they must 2024-08-06T21:19:51.0059247Z not depend on or mutate global state. If you need a non-traceable backward, 2024-08-06T21:19:51.0059831Z you can make it a separate custom_op that you call inside ``backward_fn``. 2024-08-06T21:19:51.0060171Z 2024-08-06T21:19:51.0060277Z Examples: 2024-08-06T21:19:51.0060500Z >>> import torch 2024-08-06T21:19:51.0060775Z >>> import numpy as np 2024-08-06T21:19:51.0061074Z >>> from torch import Tensor 2024-08-06T21:19:51.0061364Z >>> 2024-08-06T21:19:51.0061711Z >>> @torch.library.custom_op("mylib::numpy_sin", mutates_args=()) 2024-08-06T21:19:51.0062161Z >>> def numpy_sin(x: Tensor) -> Tensor: 2024-08-06T21:19:51.0062501Z >>> x_np = x.cpu().numpy() 2024-08-06T21:19:51.0063094Z >>> y_np = np.sin(x_np) 2024-08-06T21:19:51.0063468Z >>> return torch.from_numpy(y_np).to(device=x.device) 2024-08-06T21:19:51.0063822Z >>> 2024-08-06T21:19:51.0064108Z >>> def setup_context(ctx, inputs, output) -> Tensor: 2024-08-06T21:19:51.0064480Z >>> x, = inputs 2024-08-06T21:19:51.0064756Z >>> ctx.save_for_backward(x) 2024-08-06T21:19:51.0065074Z >>> 2024-08-06T21:19:51.0065303Z >>> def backward(ctx, grad): 2024-08-06T21:19:51.0065623Z >>> x, = ctx.saved_tensors 2024-08-06T21:19:51.0065942Z >>> return grad * x.cos() 2024-08-06T21:19:51.0066226Z >>> 2024-08-06T21:19:51.0066480Z >>> torch.library.register_autograd( 2024-08-06T21:19:51.0066907Z ... "mylib::numpy_sin", backward, setup_context=setup_context 2024-08-06T21:19:51.0067292Z ... ) 2024-08-06T21:19:51.0067517Z >>> 2024-08-06T21:19:51.0067774Z >>> x = torch.randn(3, requires_grad=True) 2024-08-06T21:19:51.0068110Z >>> y = numpy_sin(x) 2024-08-06T21:19:51.0068543Z >>> (grad_x,) = torch.autograd.grad(y, x, torch.ones_like(y)) 2024-08-06T21:19:51.0069083Z >>> assert torch.allclose(grad_x, x.cos()) 2024-08-06T21:19:51.0069457Z >>> 2024-08-06T21:19:51.0069728Z >>> # Example with a keyword-only arg 2024-08-06T21:19:51.0070438Z >>> @torch.library.custom_op("mylib::numpy_mul", mutates_args=()) 2024-08-06T21:19:51.0071131Z >>> def numpy_mul(x: Tensor, *, val: float) -> Tensor: 2024-08-06T21:19:51.0071511Z >>> x_np = x.cpu().numpy() 2024-08-06T21:19:51.0071820Z >>> y_np = x_np * val 2024-08-06T21:19:51.0072160Z >>> return torch.from_numpy(y_np).to(device=x.device) 2024-08-06T21:19:51.0072525Z >>> 2024-08-06T21:19:51.0073069Z >>> def setup_context(ctx, inputs, keyword_only_inputs, output) -> Tensor: 2024-08-06T21:19:51.0073538Z >>> ctx.val = keyword_only_inputs["val"] 2024-08-06T21:19:51.0073878Z >>> 2024-08-06T21:19:51.0074114Z >>> def backward(ctx, grad): 2024-08-06T21:19:51.0074423Z >>> return grad * ctx.val 2024-08-06T21:19:51.0074718Z >>> 2024-08-06T21:19:51.0074971Z >>> torch.library.register_autograd( 2024-08-06T21:19:51.0075379Z ... "mylib::numpy_mul", backward, setup_context=setup_context 2024-08-06T21:19:51.0075767Z ... ) 2024-08-06T21:19:51.0075985Z >>> 2024-08-06T21:19:51.0076228Z >>> x = torch.randn(3, requires_grad=True) 2024-08-06T21:19:51.0076579Z >>> y = numpy_mul(x, val=3.14) 2024-08-06T21:19:51.0077001Z >>> (grad_x,) = torch.autograd.grad(y, x, torch.ones_like(y)) 2024-08-06T21:19:51.0077456Z >>> assert torch.allclose(grad_x, torch.full_like(x, 3.14)) 2024-08-06T21:19:51.0077761Z 2024-08-06T21:19:51.0077848Z 2024-08-06T21:19:51.0078225Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:51.0078593Z 2024-08-06T21:19:51.0079220Z msg = Cannot scrape callname=opcheck in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=1206. 2024-08-06T21:19:51.0080062Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:51.0080673Z Given an operator and some sample arguments, tests if the operator is 2024-08-06T21:19:51.0081115Z registered correctly. 2024-08-06T21:19:51.0081287Z 2024-08-06T21:19:51.0081511Z That is, when you use the torch.library/TORCH_LIBRARY APIs to create a 2024-08-06T21:19:51.0082086Z custom op, you specified metadata (e.g. mutability info) about the custom op 2024-08-06T21:19:51.0082687Z and these APIs require that the functions you pass them satisfy certain 2024-08-06T21:19:51.0083268Z properties (e.g. no data pointer access in the fake/meta/abstract kernel) 2024-08-06T21:19:51.0083768Z ``opcheck`` tests these metadata and properties. 2024-08-06T21:19:51.0084034Z 2024-08-06T21:19:51.0084151Z Concretely, we test the following: 2024-08-06T21:19:51.0084537Z - test_schema: if the operator's schema is correct. 2024-08-06T21:19:51.0085005Z - test_autograd_registration: if autograd was registered correctly. 2024-08-06T21:19:51.0085523Z - test_faketensor: If the operator has a FakeTensor kernel 2024-08-06T21:19:51.0085995Z (and if it is correct). The FakeTensor kernel is necessary ( 2024-08-06T21:19:51.0086497Z but not sufficient) for the operator to work with PyTorch compilation 2024-08-06T21:19:51.0086954Z APIs (torch.compile/export/FX). 2024-08-06T21:19:51.0087371Z - test_aot_dispatch_dynamic: If the operator has correct behavior 2024-08-06T21:19:51.0087860Z with PyTorch compilation APIs (torch.compile/export/FX). 2024-08-06T21:19:51.0088369Z This checks that the outputs (and gradients, if applicable) are the 2024-08-06T21:19:51.0088858Z same under eager-mode PyTorch and torch.compile. 2024-08-06T21:19:51.0089253Z This test is a superset of ``test_faketensor``. 2024-08-06T21:19:51.0089512Z 2024-08-06T21:19:51.0089713Z For best results, please call ``opcheck`` multiple times with a 2024-08-06T21:19:51.0090210Z representative set of inputs. If your operator supports 2024-08-06T21:19:51.0090746Z autograd, please use ``opcheck`` with inputs with ``requires_grad = True``; 2024-08-06T21:19:51.0091321Z if your operator supports multiple devices (e.g. CPU and CUDA), please 2024-08-06T21:19:51.0091825Z use ``opcheck`` with inputs on all supported devices. 2024-08-06T21:19:51.0092090Z 2024-08-06T21:19:51.0092189Z Args: 2024-08-06T21:19:51.0092482Z op: The operator. Must either be a function decorated with 2024-08-06T21:19:51.0092995Z :func:`torch.library.custom_op` or an OpOverload/OpOverloadPacket 2024-08-06T21:19:51.0093550Z found in torch.ops.* (e.g. torch.ops.aten.sin, torch.ops.mylib.foo) 2024-08-06T21:19:51.0094086Z args: The args to the operator 2024-08-06T21:19:51.0094419Z kwargs: The kwargs to the operator 2024-08-06T21:19:51.0094950Z test_utils: Tests that we should run. Default: all of them. 2024-08-06T21:19:51.0095388Z Example: ("test_schema", "test_faketensor") 2024-08-06T21:19:51.0095840Z raise_exception: If we should raise an exception on the first 2024-08-06T21:19:51.0096328Z error. If False, we will return a dict with information 2024-08-06T21:19:51.0096721Z on if each test passed or not. 2024-08-06T21:19:51.0096955Z 2024-08-06T21:19:51.0097055Z .. warning:: 2024-08-06T21:19:51.0097192Z 2024-08-06T21:19:51.0097422Z opcheck and :func:`torch.autograd.gradcheck` test different things; 2024-08-06T21:19:51.0097957Z opcheck tests if your usage of torch.library APIs is correct while 2024-08-06T21:19:51.0098506Z :func:`torch.autograd.gradcheck` tests if your autograd formula is 2024-08-06T21:19:51.0099063Z mathematically correct. Use both to test custom ops that support 2024-08-06T21:19:51.0099496Z gradient computation. 2024-08-06T21:19:51.0099802Z 2024-08-06T21:19:51.0099893Z Example: 2024-08-06T21:19:51.0100032Z 2024-08-06T21:19:51.0100171Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:19:51.0100656Z >>> @torch.library.custom_op("mylib::numpy_mul", mutates_args=()) 2024-08-06T21:19:51.0101115Z >>> def numpy_add(x: Tensor, y: float) -> Tensor: 2024-08-06T21:19:51.0101484Z >>> x_np = x.numpy(force=True) 2024-08-06T21:19:51.0101813Z >>> z_np = x_np + y 2024-08-06T21:19:51.0102125Z >>> return torch.from_numpy(z_np).to(x.device) 2024-08-06T21:19:51.0102466Z >>> 2024-08-06T21:19:51.0102708Z >>> @numpy_sin.register_fake 2024-08-06T21:19:51.0103003Z >>> def _(x, y): 2024-08-06T21:19:51.0103288Z >>> return torch.empty_like(x) 2024-08-06T21:19:51.0103603Z >>> 2024-08-06T21:19:51.0103849Z >>> def setup_context(ctx, inputs, output): 2024-08-06T21:19:51.0104189Z >>> y, = inputs 2024-08-06T21:19:51.0104452Z >>> ctx.y = y 2024-08-06T21:19:51.0104712Z >>> 2024-08-06T21:19:51.0104944Z >>> def backward(ctx, grad): 2024-08-06T21:19:51.0105254Z >>> return grad * ctx.y, None 2024-08-06T21:19:51.0105565Z >>> 2024-08-06T21:19:51.0105986Z >>> numpy_sin.register_autograd(backward, setup_context=setup_context) 2024-08-06T21:19:51.0106434Z >>> 2024-08-06T21:19:51.0106660Z >>> sample_inputs = [ 2024-08-06T21:19:51.0106958Z >>> (torch.randn(3), 3.14), 2024-08-06T21:19:51.0107293Z >>> (torch.randn(2, 3, device='cuda'), 2.718), 2024-08-06T21:19:51.0107701Z >>> (torch.randn(1, 10, requires_grad=True), 1.234), 2024-08-06T21:19:51.0108159Z >>> (torch.randn(64, 64, device='cuda', requires_grad=True), 90.18), 2024-08-06T21:19:51.0108551Z >>> ] 2024-08-06T21:19:51.0108767Z >>> 2024-08-06T21:19:51.0108998Z >>> for args in sample_inputs: 2024-08-06T21:19:51.0109333Z >>> torch.library.opcheck(foo, args) 2024-08-06T21:19:51.0109578Z 2024-08-06T21:19:51.0109662Z 2024-08-06T21:19:51.0110032Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:51.0110398Z 2024-08-06T21:19:51.0541762Z msg = Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py line=1042. 2024-08-06T21:19:51.0542690Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:51.0543411Z load(f, map_location=None, pickle_module=pickle, *, weights_only=False, mmap=None, **pickle_load_args) 2024-08-06T21:19:51.0543869Z 2024-08-06T21:19:51.0544050Z Loads an object saved with :func:`torch.save` from a file. 2024-08-06T21:19:51.0544339Z 2024-08-06T21:19:51.0544586Z :func:`torch.load` uses Python's unpickling facilities but treats storages, 2024-08-06T21:19:51.0545462Z which underlie tensors, specially. They are first deserialized on the 2024-08-06T21:19:51.0546044Z CPU and are then moved to the device they were saved from. If this fails 2024-08-06T21:19:51.0546619Z (e.g. because the run time system doesn't have certain devices), an exception 2024-08-06T21:19:51.0547202Z is raised. However, storages can be dynamically remapped to an alternative 2024-08-06T21:19:51.0547729Z set of devices using the :attr:`map_location` argument. 2024-08-06T21:19:51.0548008Z 2024-08-06T21:19:51.0548263Z If :attr:`map_location` is a callable, it will be called once for each serialized 2024-08-06T21:19:51.0548859Z storage with two arguments: storage and location. The storage argument 2024-08-06T21:19:51.0549425Z will be the initial deserialization of the storage, residing on the CPU. 2024-08-06T21:19:51.0549995Z Each serialized storage has a location tag associated with it which 2024-08-06T21:19:51.0550547Z identifies the device it was saved from, and this tag is the second 2024-08-06T21:19:51.0551219Z argument passed to :attr:`map_location`. The builtin location tags are ``'cpu'`` 2024-08-06T21:19:51.0551827Z for CPU tensors and ``'cuda:device_id'`` (e.g. ``'cuda:2'``) for CUDA tensors. 2024-08-06T21:19:51.0552381Z :attr:`map_location` should return either ``None`` or a storage. If 2024-08-06T21:19:51.0552954Z :attr:`map_location` returns a storage, it will be used as the final deserialized 2024-08-06T21:19:51.0553591Z object, already moved to the right device. Otherwise, :func:`torch.load` will 2024-08-06T21:19:51.0554217Z fall back to the default behavior, as if :attr:`map_location` wasn't specified. 2024-08-06T21:19:51.0554588Z 2024-08-06T21:19:51.0554824Z If :attr:`map_location` is a :class:`torch.device` object or a string containing 2024-08-06T21:19:51.0555424Z a device tag, it indicates the location where all tensors should be loaded. 2024-08-06T21:19:51.0555787Z 2024-08-06T21:19:51.0556047Z Otherwise, if :attr:`map_location` is a dict, it will be used to remap location tags 2024-08-06T21:19:51.0556647Z appearing in the file (keys), to ones that specify where to put the 2024-08-06T21:19:51.0557062Z storages (values). 2024-08-06T21:19:51.0557231Z 2024-08-06T21:19:51.0557455Z User extensions can register their own location tags and tagging and 2024-08-06T21:19:51.0558064Z deserialization methods using :func:`torch.serialization.register_package`. 2024-08-06T21:19:51.0558451Z 2024-08-06T21:19:51.0558574Z Args: 2024-08-06T21:19:51.0559075Z f: a file-like object (has to implement :meth:`read`, :meth:`readline`, :meth:`tell`, and :meth:`seek`), 2024-08-06T21:19:51.0559695Z or a string or os.PathLike object containing a file name 2024-08-06T21:19:51.0560302Z map_location: a function, :class:`torch.device`, string or a dict specifying how to remap storage 2024-08-06T21:19:51.0560846Z locations 2024-08-06T21:19:51.0561235Z pickle_module: module used for unpickling metadata and objects (has to 2024-08-06T21:19:51.0561751Z match the :attr:`pickle_module` used to serialize file) 2024-08-06T21:19:51.0562253Z weights_only: Indicates whether unpickler should be restricted to 2024-08-06T21:19:51.0563120Z loading only tensors, primitive types, dictionaries 2024-08-06T21:19:51.0563731Z and any types added via :func:`torch.serialization.add_safe_globals`. 2024-08-06T21:19:51.0564416Z mmap: Indicates whether the file should be mmaped rather than loading all the storages into memory. 2024-08-06T21:19:51.0565217Z Typically, tensor storages in the file will first be moved from disk to CPU memory, after which they 2024-08-06T21:19:51.0566024Z are moved to the location that they were tagged with when saving, or specified by ``map_location``. This 2024-08-06T21:19:51.0566803Z second step is a no-op if the final location is CPU. When the ``mmap`` flag is set, instead of copying the 2024-08-06T21:19:51.0567671Z tensor storages from disk to CPU memory in the first step, ``f`` is mmaped. 2024-08-06T21:19:51.0568288Z pickle_load_args: (Python 3 only) optional keyword arguments passed over to 2024-08-06T21:19:51.0568869Z :func:`pickle_module.load` and :func:`pickle_module.Unpickler`, e.g., 2024-08-06T21:19:51.0569315Z :attr:`errors=...`. 2024-08-06T21:19:51.0569498Z 2024-08-06T21:19:51.0569636Z .. warning:: 2024-08-06T21:19:51.0569986Z :func:`torch.load()` unless `weights_only` parameter is set to `True`, 2024-08-06T21:19:51.0570525Z uses ``pickle`` module implicitly, which is known to be insecure. 2024-08-06T21:19:51.0571134Z It is possible to construct malicious pickle data which will execute arbitrary code 2024-08-06T21:19:51.0571776Z during unpickling. Never load data that could have come from an untrusted 2024-08-06T21:19:51.0572427Z source in an unsafe mode, or that could have been tampered with. **Only load data you trust**. 2024-08-06T21:19:51.0572856Z 2024-08-06T21:19:51.0572948Z .. note:: 2024-08-06T21:19:51.0573450Z When you call :func:`torch.load()` on a file which contains GPU tensors, those tensors 2024-08-06T21:19:51.0574086Z will be loaded to GPU by default. You can call ``torch.load(.., map_location='cpu')`` 2024-08-06T21:19:51.0574744Z and then :meth:`load_state_dict` to avoid GPU RAM surge when loading a model checkpoint. 2024-08-06T21:19:51.0575220Z 2024-08-06T21:19:51.0575325Z .. note:: 2024-08-06T21:19:51.0575703Z By default, we decode byte strings as ``utf-8``. This is to avoid a common error 2024-08-06T21:19:51.0576295Z case ``UnicodeDecodeError: 'ascii' codec can't decode byte 0x...`` 2024-08-06T21:19:51.0586857Z when loading files saved by Python 2 in Python 3. If this default 2024-08-06T21:19:51.0587475Z is incorrect, you may use an extra :attr:`encoding` keyword argument to specify how 2024-08-06T21:19:51.0588131Z these objects should be loaded, e.g., :attr:`encoding='latin1'` decodes them 2024-08-06T21:19:51.0588760Z to strings using ``latin1`` encoding, and :attr:`encoding='bytes'` keeps them 2024-08-06T21:19:51.0589343Z as byte arrays which can be decoded later with ``byte_array.decode(...)``. 2024-08-06T21:19:51.0589711Z 2024-08-06T21:19:51.0589804Z Example: 2024-08-06T21:19:51.0590077Z >>> # xdoctest: +SKIP("undefined filepaths") 2024-08-06T21:19:51.0590460Z >>> torch.load("tensors.pt", weights_only=True) 2024-08-06T21:19:51.0590835Z # Load all tensors onto the CPU 2024-08-06T21:19:51.0591309Z >>> torch.load("tensors.pt", map_location=torch.device("cpu"), weights_only=True) 2024-08-06T21:19:51.0591821Z # Load all tensors onto the CPU, using a function 2024-08-06T21:19:51.0592183Z >>> torch.load( 2024-08-06T21:19:51.0592580Z ... "tensors.pt", map_location=lambda storage, loc: storage, weights_only=True 2024-08-06T21:19:51.0593047Z ... ) 2024-08-06T21:19:51.0593298Z # Load all tensors onto GPU 1 2024-08-06T21:19:51.0593608Z >>> torch.load( 2024-08-06T21:19:51.0593880Z ... "tensors.pt", 2024-08-06T21:19:51.0594233Z ... map_location=lambda storage, loc: storage.cuda(1), 2024-08-06T21:19:51.0594609Z ... weights_only=True, 2024-08-06T21:19:51.0594929Z ... ) # type: ignore[attr-defined] 2024-08-06T21:19:51.0595272Z # Map tensors from GPU 1 to GPU 0 2024-08-06T21:19:51.0595733Z >>> torch.load("tensors.pt", map_location={"cuda:1": "cuda:0"}, weights_only=True) 2024-08-06T21:19:51.0596231Z # Load tensor from io.BytesIO object 2024-08-06T21:19:51.0596717Z # Loading from a buffer setting weights_only=False, warning this can be unsafe 2024-08-06T21:19:51.0597198Z >>> with open("tensor.pt", "rb") as f: 2024-08-06T21:19:51.0597545Z ... buffer = io.BytesIO(f.read()) 2024-08-06T21:19:51.0598119Z >>> torch.load(buffer, weights_only=False) 2024-08-06T21:19:51.0598504Z # Load a module with 'ascii' encoding for unpickling 2024-08-06T21:19:51.0599033Z # Loading from a module setting weights_only=False, warning this can be unsafe 2024-08-06T21:19:51.0599604Z >>> torch.load("module.pt", encoding="ascii", weights_only=False) 2024-08-06T21:19:51.0599994Z 2024-08-06T21:19:51.0600370Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:51.0600737Z 2024-08-06T21:19:51.1990178Z msg = Cannot scrape callname=cudart in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/__init__.py line=343. 2024-08-06T21:19:51.1991081Z Caused by: DoctestParseError('Failed to parse doctest in _package_groups') 2024-08-06T21:19:51.1991559Z Retrieves the CUDA runtime API module. 2024-08-06T21:19:51.1991799Z 2024-08-06T21:19:51.1991804Z 2024-08-06T21:19:51.1992059Z This function initializes the CUDA runtime environment if it is not already 2024-08-06T21:19:51.1992697Z initialized and returns the CUDA runtime API module (_cudart). The CUDA 2024-08-06T21:19:51.1993553Z runtime API module provides access to various CUDA runtime functions. 2024-08-06T21:19:51.1993899Z 2024-08-06T21:19:51.1993987Z Args: 2024-08-06T21:19:51.1994205Z ``None`` 2024-08-06T21:19:51.1994341Z 2024-08-06T21:19:51.1994445Z Returns: 2024-08-06T21:19:51.1994712Z module: The CUDA runtime API module (_cudart). 2024-08-06T21:19:51.1994981Z 2024-08-06T21:19:51.1995067Z Raises: 2024-08-06T21:19:51.1995431Z RuntimeError: If CUDA cannot be re-initialized in a forked subprocess. 2024-08-06T21:19:51.1996138Z AssertionError: If PyTorch is not compiled with CUDA support or if libcudart functions are unavailable. 2024-08-06T21:19:51.1996637Z 2024-08-06T21:19:51.1996772Z Example of CUDA operations with profiling: 2024-08-06T21:19:51.1997116Z >>> import torch 2024-08-06T21:19:51.1997413Z >>> from torch.cuda import cudart, check_error 2024-08-06T21:19:51.1997757Z >>> import os 2024-08-06T21:19:51.1998001Z >>> 2024-08-06T21:19:51.1998237Z >>> os.environ['CUDA_PROFILE'] = '1' 2024-08-06T21:19:51.1998555Z >>> 2024-08-06T21:19:51.1998820Z >>> def perform_cuda_operations_with_streams(): 2024-08-06T21:19:51.1999183Z >>> stream = torch.cuda.Stream() 2024-08-06T21:19:51.1999536Z >>> with torch.cuda.stream(stream): 2024-08-06T21:19:51.1999905Z >>> x = torch.randn(100, 100, device='cuda') 2024-08-06T21:19:51.2000265Z >>> y = torch.randn(100, 100, device='cuda') 2024-08-06T21:19:51.2000614Z >>> z = torch.mul(x, y) 2024-08-06T21:19:51.2000921Z >>> return z 2024-08-06T21:19:51.2001161Z >>> 2024-08-06T21:19:51.2001397Z >>> torch.cuda.synchronize() 2024-08-06T21:19:51.2001744Z >>> print("====== Start nsys profiling ======") 2024-08-06T21:19:51.2002130Z >>> check_error(cudart().cudaProfilerStart()) 2024-08-06T21:19:51.2002525Z >>> with torch.autograd.profiler.emit_nvtx(): 2024-08-06T21:19:51.2002939Z >>> result = perform_cuda_operations_with_streams() 2024-08-06T21:19:51.2003328Z >>> print("CUDA operations completed.") 2024-08-06T21:19:51.2003737Z >>> check_error(torch.cuda.cudart().cudaProfilerStop()) 2024-08-06T21:19:51.2004151Z >>> print("====== End nsys profiling ======") 2024-08-06T21:19:51.2004387Z 2024-08-06T21:19:51.2004584Z To run this example and save the profiling information, execute: 2024-08-06T21:19:51.2005278Z >>> $ nvprof --profile-from-start off --csv --print-summary -o trace_name.prof -f -- python cudart_test.py 2024-08-06T21:19:51.2005748Z 2024-08-06T21:19:51.2006010Z This command profiles the CUDA operations in the provided script and saves 2024-08-06T21:19:51.2006564Z the profiling information to a file named `trace_name.prof`. 2024-08-06T21:19:51.2007263Z The `--profile-from-start off` option ensures that profiling starts only 2024-08-06T21:19:51.2007770Z after the `cudaProfilerStart` call in the script. 2024-08-06T21:19:51.2008262Z The `--csv` and `--print-summary` options format the profiling output as a 2024-08-06T21:19:51.2008728Z CSV file and print a summary, respectively. 2024-08-06T21:19:51.2009223Z The `-o` option specifies the output file name, and the `-f` option forces the 2024-08-06T21:19:51.2009745Z overwrite of the output file if it already exists. 2024-08-06T21:19:51.2010088Z 2024-08-06T21:19:51.2010863Z Original Error: SyntaxError('invalid syntax', ('', 1, 1, '$ nvprof --profile-from-start off --csv --print-summary -o trace_name.prof -f -- python cudart_test.py\n', 1, 2)) 2024-08-06T21:19:51.2011613Z 2024-08-06T21:19:51.2011975Z $ nvprof --profile-from-start off --csv --print-summary -o trace_name.prof -f -- python cudart_test.py 2024-08-06T21:19:51.2012522Z ^ 2024-08-06T21:19:51.2111052Z msg = Cannot scrape callname=Future.then in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py line=101. 2024-08-06T21:19:51.2112340Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:51.2112726Z 2024-08-06T21:19:51.2112970Z Append the given callback function to this ``Future``, which will be run 2024-08-06T21:19:51.2113526Z when the ``Future`` is completed. Multiple callbacks can be added to 2024-08-06T21:19:51.2114068Z the same ``Future``, but the order in which they will be executed cannot 2024-08-06T21:19:51.2114589Z be guaranteed (to enforce a certain order consider chaining: 2024-08-06T21:19:51.2115083Z ``fut.then(cb1).then(cb2)``). The callback must take one argument, which 2024-08-06T21:19:51.2115618Z is the reference to this ``Future``. The callback function can use the 2024-08-06T21:19:51.2116157Z :meth:`value` method to get the value. Note that if this ``Future`` is 2024-08-06T21:19:51.2116698Z already completed, the given callback will be run immediately inline. 2024-08-06T21:19:51.2117056Z 2024-08-06T21:19:51.2117250Z If the ``Future``'s value contains tensors that reside on GPUs, the 2024-08-06T21:19:51.2117790Z callback might be invoked while the async kernels that are populating 2024-08-06T21:19:51.2118400Z those tensors haven't yet finished executing on the device. However, the 2024-08-06T21:19:51.2118954Z callback will be invoked with some dedicated streams set as current 2024-08-06T21:19:51.2119488Z (fetched from a global pool) which will be synchronized with those 2024-08-06T21:19:51.2120149Z kernels. Hence any operation performed by the callback on these tensors 2024-08-06T21:19:51.2120771Z will be scheduled on the device after the kernels complete. In other 2024-08-06T21:19:51.2121400Z words, as long as the callback doesn't switch streams, it can safely 2024-08-06T21:19:51.2122281Z manipulate the result without any additional synchronization. This is 2024-08-06T21:19:51.2122846Z similar to the non-blocking behavior of :meth:`wait`. 2024-08-06T21:19:51.2123140Z 2024-08-06T21:19:51.2123354Z Similarly, if the callback returns a value that contains tensors that 2024-08-06T21:19:51.2123900Z reside on a GPU, it can do so even if the kernels that are producing 2024-08-06T21:19:51.2124428Z these tensors are still running on the device, as long as the callback 2024-08-06T21:19:51.2124984Z didn't change streams during its execution. If one wants to change 2024-08-06T21:19:51.2125526Z streams, one must be careful to re-synchronize them with the original 2024-08-06T21:19:51.2126076Z streams, that is, those that were current when the callback was invoked. 2024-08-06T21:19:51.2126420Z 2024-08-06T21:19:51.2126505Z Args: 2024-08-06T21:19:51.2126847Z callback(``Callable``): a ``Callable`` that takes this ``Future`` as 2024-08-06T21:19:51.2127272Z the only argument. 2024-08-06T21:19:51.2127506Z 2024-08-06T21:19:51.2127595Z Returns: 2024-08-06T21:19:51.2127886Z A new ``Future`` object that holds the return value of the 2024-08-06T21:19:51.2128508Z ``callback`` and will be marked as completed when the given 2024-08-06T21:19:51.2128895Z ``callback`` finishes. 2024-08-06T21:19:51.2129079Z 2024-08-06T21:19:51.2129290Z .. note:: Note that if the callback function throws, either 2024-08-06T21:19:51.2129794Z through the original future being completed with an exception and 2024-08-06T21:19:51.2130311Z calling ``fut.wait()``, or through other code in the callback, the 2024-08-06T21:19:51.2130832Z future returned by ``then`` will be marked appropriately with the 2024-08-06T21:19:51.2131355Z encountered error. However, if this callback later completes 2024-08-06T21:19:51.2131880Z additional futures, those futures are not marked as completed with 2024-08-06T21:19:51.2132424Z an error and the user is responsible for handling completion/waiting 2024-08-06T21:19:51.2132863Z on those futures independently. 2024-08-06T21:19:51.2133070Z 2024-08-06T21:19:51.2133166Z Example:: 2024-08-06T21:19:51.2133441Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_FUTURES) 2024-08-06T21:19:51.2133803Z >>> def callback(fut): 2024-08-06T21:19:51.2134272Z ... print(f"RPC return value is {fut.wait()}.") 2024-08-06T21:19:51.2134648Z >>> fut = torch.futures.Future() 2024-08-06T21:19:51.2135128Z >>> # The inserted callback will print the return value when 2024-08-06T21:19:51.2135529Z >>> # receiving the response from "worker1" 2024-08-06T21:19:51.2135879Z >>> cb_fut = fut.then(callback) 2024-08-06T21:19:51.2136196Z >>> chain_cb_fut = cb_fut.then( 2024-08-06T21:19:51.2136543Z ... lambda x : print(f"Chained cb done. {x.wait()}") 2024-08-06T21:19:51.2136907Z ... ) 2024-08-06T21:19:51.2137132Z >>> fut.set_result(5) 2024-08-06T21:19:51.2137396Z RPC return value is 5. 2024-08-06T21:19:51.2137672Z Chained cb done. None 2024-08-06T21:19:51.2137843Z 2024-08-06T21:19:51.2138108Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:51.2138485Z 2024-08-06T21:19:51.2139062Z msg = Cannot scrape callname=Future.set_result in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py line=209. 2024-08-06T21:19:51.2139957Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:51.2140348Z 2024-08-06T21:19:51.2140556Z Set the result for this ``Future``, which will mark this ``Future`` as 2024-08-06T21:19:51.2141103Z completed and trigger all attached callbacks. Note that a ``Future`` 2024-08-06T21:19:51.2141545Z cannot be marked completed twice. 2024-08-06T21:19:51.2141764Z 2024-08-06T21:19:51.2141984Z If the result contains tensors that reside on GPUs, this method can be 2024-08-06T21:19:51.2142530Z called even if the asynchronous kernels that are populating those 2024-08-06T21:19:51.2143067Z tensors haven't yet completed running on the device, provided that the 2024-08-06T21:19:51.2143637Z streams on which those kernels were enqueued are set as the current ones 2024-08-06T21:19:51.2144199Z when this method is called. Put simply, it's safe to call this method 2024-08-06T21:19:51.2144737Z immediately after launching those kernels, without any additional 2024-08-06T21:19:51.2145306Z synchronization, as long as one doesn't change streams in between. This 2024-08-06T21:19:51.2145871Z method will record events on all the relevant current streams and will 2024-08-06T21:19:51.2146414Z use them to ensure proper scheduling for all the consumers of this 2024-08-06T21:19:51.2146814Z ``Future``. 2024-08-06T21:19:51.2146949Z 2024-08-06T21:19:51.2147033Z Args: 2024-08-06T21:19:51.2147319Z result (object): the result object of this ``Future``. 2024-08-06T21:19:51.2147589Z 2024-08-06T21:19:51.2147683Z Example:: 2024-08-06T21:19:51.2147956Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_FUTURES) 2024-08-06T21:19:51.2148316Z >>> import threading 2024-08-06T21:19:51.2148569Z >>> import time 2024-08-06T21:19:51.2148829Z >>> def slow_set_future(fut, value): 2024-08-06T21:19:51.2149258Z ... time.sleep(0.5) 2024-08-06T21:19:51.2149547Z ... fut.set_result(value) 2024-08-06T21:19:51.2149864Z >>> fut = torch.futures.Future() 2024-08-06T21:19:51.2150176Z >>> t = threading.Thread( 2024-08-06T21:19:51.2150475Z ... target=slow_set_future, 2024-08-06T21:19:51.2150797Z ... args=(fut, torch.ones(2) * 3) 2024-08-06T21:19:51.2151092Z ... ) 2024-08-06T21:19:51.2151302Z >>> t.start() 2024-08-06T21:19:51.2151540Z >>> print(fut.wait()) 2024-08-06T21:19:51.2151793Z tensor([3., 3.]) 2024-08-06T21:19:51.2152035Z >>> t.join() 2024-08-06T21:19:51.2152167Z 2024-08-06T21:19:51.2152433Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:51.2152799Z 2024-08-06T21:19:51.2372134Z msg = Cannot scrape callname=sum in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/__init__.py line=201. 2024-08-06T21:19:51.2373228Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:51.2373789Z Return the sum of each row of the given sparse tensor. 2024-08-06T21:19:51.2374059Z 2024-08-06T21:19:51.2374514Z Returns the sum of each row of the sparse tensor :attr:`input` in the given 2024-08-06T21:19:51.2375123Z dimensions :attr:`dim`. If :attr:`dim` is a list of dimensions, 2024-08-06T21:19:51.2375662Z reduce over all of them. When sum over all ``sparse_dim``, this method 2024-08-06T21:19:51.2376153Z returns a dense tensor instead of a sparse tensor. 2024-08-06T21:19:51.2376414Z 2024-08-06T21:19:51.2376689Z All summed :attr:`dim` are squeezed (see :func:`torch.squeeze`), resulting an output 2024-08-06T21:19:51.2377259Z tensor having :attr:`dim` fewer dimensions than :attr:`input`. 2024-08-06T21:19:51.2377582Z 2024-08-06T21:19:51.2377805Z During backward, only gradients at ``nnz`` locations of :attr:`input` 2024-08-06T21:19:51.2378391Z will propagate back. Note that the gradients of :attr:`input` is coalesced. 2024-08-06T21:19:51.2378758Z 2024-08-06T21:19:51.2378846Z Args: 2024-08-06T21:19:51.2379099Z input (Tensor): the input sparse tensor 2024-08-06T21:19:51.2379618Z dim (int or tuple of ints): a dimension or a list of dimensions to reduce. Default: reduce 2024-08-06T21:19:51.2380098Z over all dims. 2024-08-06T21:19:51.2380553Z dtype (:class:`torch.dtype`, optional): the desired data type of returned Tensor. 2024-08-06T21:19:51.2381038Z Default: dtype of :attr:`input`. 2024-08-06T21:19:51.2381276Z 2024-08-06T21:19:51.2381397Z Example:: 2024-08-06T21:19:51.2381528Z 2024-08-06T21:19:51.2381631Z >>> nnz = 3 2024-08-06T21:19:51.2381862Z >>> dims = [5, 5, 2, 3] 2024-08-06T21:19:51.2382217Z >>> I = torch.cat([torch.randint(0, dims[0], size=(nnz,)), 2024-08-06T21:19:51.2382689Z torch.randint(0, dims[1], size=(nnz,))], 0).reshape(2, nnz) 2024-08-06T21:19:51.2383118Z >>> V = torch.randn(nnz, dims[2], dims[3]) 2024-08-06T21:19:51.2383481Z >>> size = torch.Size(dims) 2024-08-06T21:19:51.2383837Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:19:51.2384221Z >>> S = torch.sparse_coo_tensor(I, V, size) 2024-08-06T21:19:51.2384565Z >>> S 2024-08-06T21:19:51.2384821Z tensor(indices=tensor([[2, 0, 3], 2024-08-06T21:19:51.2385135Z [2, 4, 1]]), 2024-08-06T21:19:51.2385501Z values=tensor([[[-0.6438, -1.6467, 1.4004], 2024-08-06T21:19:51.2385867Z [ 0.3411, 0.0918, -0.2312]], 2024-08-06T21:19:51.2386093Z 2024-08-06T21:19:51.2386206Z [[ 0.5348, 0.0634, -2.0494], 2024-08-06T21:19:51.2386558Z [-0.7125, -1.0646, 2.1844]], 2024-08-06T21:19:51.2386781Z 2024-08-06T21:19:51.2386910Z [[ 0.1276, 0.1874, -0.6334], 2024-08-06T21:19:51.2387241Z [-1.9682, -0.5340, 0.7483]]]), 2024-08-06T21:19:51.2387736Z size=(5, 5, 2, 3), nnz=3, layout=torch.sparse_coo) 2024-08-06T21:19:51.2387994Z 2024-08-06T21:19:51.2388213Z # when sum over only part of sparse_dims, return a sparse tensor 2024-08-06T21:19:51.2388630Z >>> torch.sparse.sum(S, [1, 3]) 2024-08-06T21:19:51.2388970Z tensor(indices=tensor([[0, 2, 3]]), 2024-08-06T21:19:51.2389312Z values=tensor([[-1.4512, 0.4073], 2024-08-06T21:19:51.2389634Z [-0.8901, 0.2017], 2024-08-06T21:19:51.2389962Z [-0.3183, -1.7539]]), 2024-08-06T21:19:51.2390316Z size=(5, 2), nnz=3, layout=torch.sparse_coo) 2024-08-06T21:19:51.2390567Z 2024-08-06T21:19:51.2390733Z # when sum over all sparse dim, return a dense tensor 2024-08-06T21:19:51.2391099Z # with summed dims squeezed 2024-08-06T21:19:51.2391420Z >>> torch.sparse.sum(S, [0, 1, 3]) 2024-08-06T21:19:51.2391733Z tensor([-2.6596, -1.1450]) 2024-08-06T21:19:51.2392024Z 2024-08-06T21:19:51.2392401Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:51.2392776Z 2024-08-06T21:19:51.7893220Z msg = Cannot scrape callname=vmap in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/apis.py line=40. 2024-08-06T21:19:51.7894585Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:51.7895250Z 2024-08-06T21:19:51.7895566Z vmap is the vectorizing map; ``vmap(func)`` returns a new function that 2024-08-06T21:19:51.7896356Z maps ``func`` over some dimension of the inputs. Semantically, vmap 2024-08-06T21:19:51.7897164Z pushes the map into PyTorch operations called by ``func``, effectively 2024-08-06T21:19:51.7897727Z vectorizing those operations. 2024-08-06T21:19:51.7897937Z 2024-08-06T21:19:51.7898154Z vmap is useful for handling batch dimensions: one can write a function 2024-08-06T21:19:51.7898697Z ``func`` that runs on examples and then lift it to a function that can 2024-08-06T21:19:51.7899261Z take batches of examples with ``vmap(func)``. vmap can also be used to 2024-08-06T21:19:51.7899749Z compute batched gradients when composed with autograd. 2024-08-06T21:19:51.7900051Z 2024-08-06T21:19:51.7900166Z .. note:: 2024-08-06T21:19:51.7900477Z :func:`torch.vmap` is aliased to :func:`torch.func.vmap` for 2024-08-06T21:19:51.7900898Z convenience. Use whichever one you'd like. 2024-08-06T21:19:51.7901144Z 2024-08-06T21:19:51.7901227Z Args: 2024-08-06T21:19:51.7901560Z func (function): A Python function that takes one or more arguments. 2024-08-06T21:19:51.7901992Z Must return one or more Tensors. 2024-08-06T21:19:51.7902419Z in_dims (int or nested structure): Specifies which dimension of the 2024-08-06T21:19:51.7902916Z inputs should be mapped over. ``in_dims`` should have a 2024-08-06T21:19:51.7903387Z structure like the inputs. If the ``in_dim`` for a particular 2024-08-06T21:19:51.7903886Z input is None, then that indicates there is no map dimension. 2024-08-06T21:19:51.7904290Z Default: 0. 2024-08-06T21:19:51.7904625Z out_dims (int or Tuple[int]): Specifies where the mapped dimension 2024-08-06T21:19:51.7905139Z should appear in the outputs. If ``out_dims`` is a Tuple, then 2024-08-06T21:19:51.7905602Z it should have one element per output. Default: 0. 2024-08-06T21:19:51.7906044Z randomness (str): Specifies whether the randomness in this 2024-08-06T21:19:51.7906556Z vmap should be the same or different across batches. If 'different', 2024-08-06T21:19:51.7907087Z the randomness for each batch will be different. If 'same', the 2024-08-06T21:19:51.7907607Z randomness will be the same across batches. If 'error', any calls to 2024-08-06T21:19:51.7908153Z random functions will error. Default: 'error'. WARNING: this flag 2024-08-06T21:19:51.7908684Z only applies to random PyTorch operations and does not apply to 2024-08-06T21:19:51.7909408Z Python's random module or numpy randomness. 2024-08-06T21:19:51.7909890Z chunk_size (None or int): If None (default), apply a single vmap over inputs. 2024-08-06T21:19:51.7910467Z If not None, then compute the vmap :attr:`chunk_size` samples at a time. 2024-08-06T21:19:51.7911071Z Note that :attr:`chunk_size=1` is equivalent to computing the vmap with a for-loop. 2024-08-06T21:19:51.7911708Z If you run into memory issues computing the vmap, please try a non-None chunk_size. 2024-08-06T21:19:51.7912102Z 2024-08-06T21:19:51.7912189Z Returns: 2024-08-06T21:19:51.7912504Z Returns a new "batched" function. It takes the same inputs as 2024-08-06T21:19:51.7912981Z ``func``, except each input has an extra dimension at the index 2024-08-06T21:19:51.7913473Z specified by ``in_dims``. It takes returns the same outputs as 2024-08-06T21:19:51.7913966Z ``func``, except each output has an extra dimension at the index 2024-08-06T21:19:51.7914364Z specified by ``out_dims``. 2024-08-06T21:19:51.7914570Z 2024-08-06T21:19:51.7914656Z .. warning: 2024-08-06T21:19:51.7914985Z :func:`vmap` works best with functional-style code. Please do not 2024-08-06T21:19:51.7915573Z perform any side-effects in ``func``, with the exception of 2024-08-06T21:19:51.7916118Z in-place PyTorch operations. Examples of side-effects include mutating 2024-08-06T21:19:51.7916704Z Python data structures and assigning values to variables not captured 2024-08-06T21:19:51.7917128Z in ``func``. 2024-08-06T21:19:51.7917277Z 2024-08-06T21:19:51.7917510Z One example of using :func:`vmap` is to compute batched dot products. PyTorch 2024-08-06T21:19:51.7918089Z doesn't provide a batched ``torch.dot`` API; instead of unsuccessfully 2024-08-06T21:19:51.7918631Z rummaging through docs, use :func:`vmap` to construct a new function. 2024-08-06T21:19:51.7918978Z 2024-08-06T21:19:51.7919140Z >>> torch.dot # [D], [D] -> [] 2024-08-06T21:19:51.7919606Z >>> batched_dot = torch.func.vmap(torch.dot) # [N, D], [N, D] -> [N] 2024-08-06T21:19:51.7920058Z >>> x, y = torch.randn(2, 5), torch.randn(2, 5) 2024-08-06T21:19:51.7920386Z >>> batched_dot(x, y) 2024-08-06T21:19:51.7920568Z 2024-08-06T21:19:51.7920797Z :func:`vmap` can be helpful in hiding batch dimensions, leading to a simpler 2024-08-06T21:19:51.7921260Z model authoring experience. 2024-08-06T21:19:51.7921440Z 2024-08-06T21:19:51.7921551Z >>> batch_size, feature_size = 3, 5 2024-08-06T21:19:51.7921942Z >>> weights = torch.randn(feature_size, requires_grad=True) 2024-08-06T21:19:51.7922320Z >>> 2024-08-06T21:19:51.7922539Z >>> def model(feature_vec): 2024-08-06T21:19:51.7922863Z >>> # Very simple linear model with activation 2024-08-06T21:19:51.7923240Z >>> return feature_vec.dot(weights).relu() 2024-08-06T21:19:51.7923558Z >>> 2024-08-06T21:19:51.7923830Z >>> examples = torch.randn(batch_size, feature_size) 2024-08-06T21:19:51.7924212Z >>> result = torch.vmap(model)(examples) 2024-08-06T21:19:51.7924438Z 2024-08-06T21:19:51.7924689Z :func:`vmap` can also help vectorize computations that were previously difficult 2024-08-06T21:19:51.7925303Z or impossible to batch. One example is higher-order gradient computation. 2024-08-06T21:19:51.7925890Z The PyTorch autograd engine computes vjps (vector-Jacobian products). 2024-08-06T21:19:51.7926458Z Computing a full Jacobian matrix for some function f: R^N -> R^N usually 2024-08-06T21:19:51.7927056Z requires N calls to ``autograd.grad``, one per Jacobian row. Using :func:`vmap`, 2024-08-06T21:19:51.7927660Z we can vectorize the whole computation, computing the Jacobian in a single 2024-08-06T21:19:51.7928107Z call to ``autograd.grad``. 2024-08-06T21:19:51.7928292Z 2024-08-06T21:19:51.7928380Z >>> # Setup 2024-08-06T21:19:51.7928604Z >>> N = 5 2024-08-06T21:19:51.7928819Z >>> f = lambda x: x ** 2 2024-08-06T21:19:51.7929119Z >>> x = torch.randn(N, requires_grad=True) 2024-08-06T21:19:51.7929550Z >>> y = f(x) 2024-08-06T21:19:51.7929778Z >>> I_N = torch.eye(N) 2024-08-06T21:19:51.7930039Z >>> 2024-08-06T21:19:51.7930265Z >>> # Sequential approach 2024-08-06T21:19:51.7930664Z >>> jacobian_rows = [torch.autograd.grad(y, x, v, retain_graph=True)[0] 2024-08-06T21:19:51.7931116Z >>> for v in I_N.unbind()] 2024-08-06T21:19:51.7931464Z >>> jacobian = torch.stack(jacobian_rows) 2024-08-06T21:19:51.7931766Z >>> 2024-08-06T21:19:51.7932001Z >>> # vectorized gradient computation 2024-08-06T21:19:51.7932325Z >>> def get_vjp(v): 2024-08-06T21:19:51.7932598Z >>> return torch.autograd.grad(y, x, v) 2024-08-06T21:19:51.7932953Z >>> jacobian = torch.vmap(get_vjp)(I_N) 2024-08-06T21:19:51.7933173Z 2024-08-06T21:19:51.7933453Z :func:`vmap` can also be nested, producing an output with multiple batched dimensions 2024-08-06T21:19:51.7933832Z 2024-08-06T21:19:51.7933975Z >>> torch.dot # [D], [D] -> [] 2024-08-06T21:19:51.7934508Z >>> batched_dot = torch.vmap(torch.vmap(torch.dot)) # [N1, N0, D], [N1, N0, D] -> [N1, N0] 2024-08-06T21:19:51.7935196Z >>> x, y = torch.randn(2, 3, 5), torch.randn(2, 3, 5) 2024-08-06T21:19:51.7935661Z >>> batched_dot(x, y) # tensor of size [2, 3] 2024-08-06T21:19:51.7935908Z 2024-08-06T21:19:51.7936148Z If the inputs are not batched along the first dimension, ``in_dims`` specifies 2024-08-06T21:19:51.7936659Z the dimension that each inputs are batched along as 2024-08-06T21:19:51.7936920Z 2024-08-06T21:19:51.7937062Z >>> torch.dot # [N], [N] -> [] 2024-08-06T21:19:51.7937549Z >>> batched_dot = torch.vmap(torch.dot, in_dims=1) # [N, D], [N, D] -> [D] 2024-08-06T21:19:51.7938013Z >>> x, y = torch.randn(2, 5), torch.randn(2, 5) 2024-08-06T21:19:51.7938495Z >>> batched_dot(x, y) # output is [5] instead of [2] if batched along the 0th dimension 2024-08-06T21:19:51.7938850Z 2024-08-06T21:19:51.7939108Z If there are multiple inputs each of which is batched along different dimensions, 2024-08-06T21:19:51.7939703Z ``in_dims`` must be a tuple with the batch dimension for each input as 2024-08-06T21:19:51.7940015Z 2024-08-06T21:19:51.7940175Z >>> torch.dot # [D], [D] -> [] 2024-08-06T21:19:51.7940656Z >>> batched_dot = torch.vmap(torch.dot, in_dims=(0, None)) # [N, D], [D] -> [N] 2024-08-06T21:19:51.7941135Z >>> x, y = torch.randn(2, 5), torch.randn(5) 2024-08-06T21:19:51.7941613Z >>> batched_dot(x, y) # second arg doesn't have a batch dim because in_dim[1] was None 2024-08-06T21:19:51.7941968Z 2024-08-06T21:19:51.7942204Z If the input is a Python struct, ``in_dims`` must be a tuple containing a struct 2024-08-06T21:19:51.7942676Z matching the shape of the input: 2024-08-06T21:19:51.7942871Z 2024-08-06T21:19:51.7943023Z >>> f = lambda dict: torch.dot(dict['x'], dict['y']) 2024-08-06T21:19:51.7943396Z >>> x, y = torch.randn(2, 5), torch.randn(5) 2024-08-06T21:19:51.7943717Z >>> input = {'x': x, 'y': y} 2024-08-06T21:19:51.7944091Z >>> batched_dot = torch.vmap(f, in_dims=({'x': 0, 'y': None},)) 2024-08-06T21:19:51.7944484Z >>> batched_dot(input) 2024-08-06T21:19:51.7944654Z 2024-08-06T21:19:51.7944932Z By default, the output is batched along the first dimension. However, it can be batched 2024-08-06T21:19:51.7945451Z along any dimension by using ``out_dims`` 2024-08-06T21:19:51.7945676Z 2024-08-06T21:19:51.7945786Z >>> f = lambda x: x ** 2 2024-08-06T21:19:51.7946058Z >>> x = torch.randn(2, 5) 2024-08-06T21:19:51.7946369Z >>> batched_pow = torch.vmap(f, out_dims=1) 2024-08-06T21:19:51.7946709Z >>> batched_pow(x) # [5, 2] 2024-08-06T21:19:51.7946890Z 2024-08-06T21:19:51.7947177Z For any function that uses kwargs, the returned function will not batch the kwargs but will 2024-08-06T21:19:51.7947681Z accept kwargs 2024-08-06T21:19:51.7947815Z 2024-08-06T21:19:51.7947928Z >>> x = torch.randn([2, 5]) 2024-08-06T21:19:51.7948206Z >>> def fn(x, scale=4.): 2024-08-06T21:19:51.7948606Z >>> return x * scale 2024-08-06T21:19:51.7948867Z >>> 2024-08-06T21:19:51.7949083Z >>> batched_pow = torch.vmap(fn) 2024-08-06T21:19:51.7949441Z >>> assert torch.allclose(batched_pow(x), x * 4) 2024-08-06T21:19:51.7949924Z >>> batched_pow(x, scale=x) # scale is not batched, output has shape [2, 2, 5] 2024-08-06T21:19:51.7950268Z 2024-08-06T21:19:51.7950381Z .. note:: 2024-08-06T21:19:51.7950726Z vmap does not provide general autobatching or handle variable-length 2024-08-06T21:19:51.7951167Z sequences out of the box. 2024-08-06T21:19:51.7951350Z 2024-08-06T21:19:51.7951600Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:51.7951976Z 2024-08-06T21:19:53.1290918Z msg = Cannot scrape callname=triton_op in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/triton.py line=14. 2024-08-06T21:19:53.1291907Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.1292635Z Create a custom operator whose implementation is backed by 1+ triton kernels. 2024-08-06T21:19:53.1293023Z 2024-08-06T21:19:53.1293592Z Use this instead of :func:`torch.library.custom_op` when the implementation 2024-08-06T21:19:53.1294258Z consists of 1+ triton kernels. :func:`torch.library.custom_op` treats 2024-08-06T21:19:53.1294984Z custom operators as opaque (:func:`torch.compile` and 2024-08-06T21:19:53.1295750Z :func:`torch.export.export` will never trace into them), but ``triton_op`` 2024-08-06T21:19:53.1296477Z makes the implementation visible to these subsystems, allowing them 2024-08-06T21:19:53.1296925Z to optimize the triton kernel(s). 2024-08-06T21:19:53.1297208Z 2024-08-06T21:19:53.1297400Z Note that ``fn`` must only consist of calls to PyTorch-understood 2024-08-06T21:19:53.1298001Z operators and triton kernels. Any triton kernels called inside ``fn`` 2024-08-06T21:19:53.1298608Z must be wrapped in a call to :func:`torch._library.capture_triton``. 2024-08-06T21:19:53.1298983Z 2024-08-06T21:19:53.1299088Z Args: 2024-08-06T21:19:53.1299520Z name (str): A name for the custom op that looks like "{namespace}::{name}", 2024-08-06T21:19:53.1300099Z e.g. "mylib::my_linear". The name is used as the op's stable identifier 2024-08-06T21:19:53.1300660Z in PyTorch subsystems (e.g. torch.export, FX graphs). 2024-08-06T21:19:53.1301231Z To avoid name collisions, please use your project name as the namespace; 2024-08-06T21:19:53.1301847Z e.g. all custom ops in pytorch/fbgemm use "fbgemm" as the namespace. 2024-08-06T21:19:53.1302486Z mutates_args (Iterable[str] or "unknown"): The names of args that the function mutates. 2024-08-06T21:19:53.1303145Z This MUST be accurate, otherwise, the behavior is undefined. If "unknown", 2024-08-06T21:19:53.1303819Z it pessimistically assumes that all inputs to the operator are being mutated. 2024-08-06T21:19:53.1304453Z schema (None | str): A schema string for the operator. If None 2024-08-06T21:19:53.1305027Z (recommended) we'll infer a schema for the operator from its type 2024-08-06T21:19:53.1305604Z annotations. We recommend letting us infer a schema unless you 2024-08-06T21:19:53.1306051Z have a specific reason not to. 2024-08-06T21:19:53.1306477Z Example: "(Tensor x, int y) -> (Tensor, Tensor)". 2024-08-06T21:19:53.1306735Z 2024-08-06T21:19:53.1306828Z Example:: 2024-08-06T21:19:53.1306968Z 2024-08-06T21:19:53.1307155Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:19:53.1307502Z >>> import torch 2024-08-06T21:19:53.1307855Z >>> from torch._library import triton_op, capture_triton 2024-08-06T21:19:53.1308234Z >>> 2024-08-06T21:19:53.1308458Z >>> import triton 2024-08-06T21:19:53.1308782Z >>> from triton import language as tl 2024-08-06T21:19:53.1309099Z >>> 2024-08-06T21:19:53.1309324Z >>> @triton.jit 2024-08-06T21:19:53.1309765Z >>> def add_kernel( 2024-08-06T21:19:53.1310029Z >>> in_ptr0, 2024-08-06T21:19:53.1310346Z >>> in_ptr1, 2024-08-06T21:19:53.1310592Z >>> out_ptr, 2024-08-06T21:19:53.1310865Z >>> n_elements, 2024-08-06T21:19:53.1311190Z >>> BLOCK_SIZE: "tl.constexpr", 2024-08-06T21:19:53.1311493Z >>> ): 2024-08-06T21:19:53.1311793Z >>> pid = tl.program_id(axis=0) 2024-08-06T21:19:53.1312135Z >>> block_start = pid * BLOCK_SIZE 2024-08-06T21:19:53.1312551Z >>> offsets = block_start + tl.arange(0, BLOCK_SIZE) 2024-08-06T21:19:53.1312929Z >>> mask = offsets < n_elements 2024-08-06T21:19:53.1313331Z >>> x = tl.load(in_ptr0 + offsets, mask=mask) 2024-08-06T21:19:53.1313689Z >>> y = tl.load(in_ptr1 + offsets, mask=mask) 2024-08-06T21:19:53.1314079Z >>> output = x + y 2024-08-06T21:19:53.1314406Z >>> tl.store(out_ptr + offsets, output, mask=mask) 2024-08-06T21:19:53.1314799Z >>> 2024-08-06T21:19:53.1315062Z >>> @triton_op("mylib::add", mutates_args={}) 2024-08-06T21:19:53.1315616Z >>> def add(x: torch.Tensor, y: torch.Tensor) -> torch.Tensor: 2024-08-06T21:19:53.1316028Z >>> output = torch.empty_like(x) 2024-08-06T21:19:53.1316422Z >>> n_elements = output.numel() 2024-08-06T21:19:53.1316739Z >>> 2024-08-06T21:19:53.1316958Z >>> def grid(meta): 2024-08-06T21:19:53.1317362Z >>> return (triton.cdiv(n_elements, meta["BLOCK_SIZE"]),) 2024-08-06T21:19:53.1317754Z >>> 2024-08-06T21:19:53.1318099Z >>> # NB: we need to wrap the triton kernel in a call to capture_triton 2024-08-06T21:19:53.1318673Z >>> capture_triton(add_kernel)[grid](x, y, output, n_elements, 16) 2024-08-06T21:19:53.1319092Z >>> return output 2024-08-06T21:19:53.1319395Z >>> 2024-08-06T21:19:53.1319620Z >>> @torch.compile 2024-08-06T21:19:53.1319888Z >>> def f(x, y): 2024-08-06T21:19:53.1320183Z >>> return add(x, y) 2024-08-06T21:19:53.1320457Z >>> 2024-08-06T21:19:53.1320695Z >>> x = torch.randn(3, device="cuda") 2024-08-06T21:19:53.1321087Z >>> y = torch.randn(3, device="cuda") 2024-08-06T21:19:53.1321396Z >>> 2024-08-06T21:19:53.1321647Z >>> z = f(x, y) 2024-08-06T21:19:53.1321911Z >>> assert torch.allclose(z, x + y) 2024-08-06T21:19:53.1322147Z 2024-08-06T21:19:53.1322228Z 2024-08-06T21:19:53.1322646Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.1323010Z 2024-08-06T21:19:53.1323585Z msg = Cannot scrape callname=capture_triton in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/triton.py line=124. 2024-08-06T21:19:53.1324532Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.1325158Z Allows capture of a triton kernel into a graph via make_fx or 2024-08-06T21:19:53.1325623Z non-strict export (coming soon). 2024-08-06T21:19:53.1325841Z 2024-08-06T21:19:53.1326023Z These technologies perform Dispatcher-based tracing (via 2024-08-06T21:19:53.1326577Z ``__torch_dispatch__``) and cannot see calls to raw triton kernels. 2024-08-06T21:19:53.1327093Z The ``capture_triton`` API returns a new callable that can actually 2024-08-06T21:19:53.1327564Z be traced into a graph. 2024-08-06T21:19:53.1327738Z 2024-08-06T21:19:53.1327841Z Examples: 2024-08-06T21:19:53.1327967Z 2024-08-06T21:19:53.1328066Z >>> # xdoctest: +SKIP 2024-08-06T21:19:53.1328346Z >>> import torch 2024-08-06T21:19:53.1328659Z >>> import triton 2024-08-06T21:19:53.1328933Z >>> from triton import language as tl 2024-08-06T21:19:53.1329348Z >>> from torch.fx.experimental.proxy_tensor import make_fx 2024-08-06T21:19:53.1329879Z >>> from torch._higher_order_ops.triton_kernel_wrap import capture_triton 2024-08-06T21:19:53.1330396Z >>> 2024-08-06T21:19:53.1330618Z >>> @triton.jit 2024-08-06T21:19:53.1330935Z >>> def add_kernel( 2024-08-06T21:19:53.1331191Z >>> in_ptr0, 2024-08-06T21:19:53.1331450Z >>> in_ptr1, 2024-08-06T21:19:53.1331700Z >>> out_ptr, 2024-08-06T21:19:53.1331942Z >>> n_elements, 2024-08-06T21:19:53.1332224Z >>> BLOCK_SIZE: "tl.constexpr", 2024-08-06T21:19:53.1332536Z >>> ): 2024-08-06T21:19:53.1332768Z >>> pid = tl.program_id(axis=0) 2024-08-06T21:19:53.1333109Z >>> block_start = pid * BLOCK_SIZE 2024-08-06T21:19:53.1333487Z >>> offsets = block_start + tl.arange(0, BLOCK_SIZE) 2024-08-06T21:19:53.1333852Z >>> mask = offsets < n_elements 2024-08-06T21:19:53.1334203Z >>> x = tl.load(in_ptr0 + offsets, mask=mask) 2024-08-06T21:19:53.1334634Z >>> y = tl.load(in_ptr1 + offsets, mask=mask) 2024-08-06T21:19:53.1335075Z >>> output = x + y 2024-08-06T21:19:53.1335415Z >>> tl.store(out_ptr + offsets, output, mask=mask) 2024-08-06T21:19:53.1335767Z >>> 2024-08-06T21:19:53.1335980Z >>> def add(x, y): 2024-08-06T21:19:53.1336352Z >>> output = torch.empty_like(x) 2024-08-06T21:19:53.1336698Z >>> n_elements = output.numel() 2024-08-06T21:19:53.1336998Z >>> 2024-08-06T21:19:53.1337226Z >>> def grid_fn(meta): 2024-08-06T21:19:53.1337604Z >>> return (triton.cdiv(n_elements, meta["BLOCK_SIZE"]),) 2024-08-06T21:19:53.1337974Z >>> 2024-08-06T21:19:53.1338308Z >>> capture_triton(add_kernel)[grid_fn](x, y, output, n_elements, 16) 2024-08-06T21:19:53.1338740Z >>> return output 2024-08-06T21:19:53.1338997Z >>> 2024-08-06T21:19:53.1339241Z >>> x = torch.randn(3, device="cuda") 2024-08-06T21:19:53.1339585Z >>> y = torch.randn(3, device="cuda") 2024-08-06T21:19:53.1339901Z >>> gm = make_fx(add)(x, y) 2024-08-06T21:19:53.1340213Z >>> print(gm.code) 2024-08-06T21:19:53.1340502Z >>> # def forward(self, x_1, y_1): 2024-08-06T21:19:53.1340948Z >>> # empty_like = torch.ops.aten.empty_like.default(x_1, pin_memory = False) 2024-08-06T21:19:53.1341618Z >>> # triton_kernel_wrapper_mutation_proxy = triton_kernel_wrapper_mutation( 2024-08-06T21:19:53.1342109Z >>> # kernel_idx = 0, constant_args_idx = 0, 2024-08-06T21:19:53.1342454Z >>> # grid = [(1, 1, 1)], kwargs = { 2024-08-06T21:19:53.1342834Z >>> # 'in_ptr0': x_1, 'in_ptr1': y_1, 'out_ptr': empty_like, 2024-08-06T21:19:53.1343234Z >>> # 'n_elements': 3, 'BLOCK_SIZE': 16 2024-08-06T21:19:53.1343551Z >>> # }) 2024-08-06T21:19:53.1343813Z >>> # return empty_like 2024-08-06T21:19:53.1344010Z 2024-08-06T21:19:53.1344105Z 2024-08-06T21:19:53.1344464Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.1344849Z 2024-08-06T21:19:53.2031097Z msg = Cannot scrape callname=assert_almost_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=330. 2024-08-06T21:19:53.2032301Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.2032813Z 2024-08-06T21:19:53.2033076Z Raises an AssertionError if two items are not equal up to desired 2024-08-06T21:19:53.2033484Z precision. 2024-08-06T21:19:53.2033672Z 2024-08-06T21:19:53.2033890Z .. note:: It is recommended to use one of `assert_allclose`, 2024-08-06T21:19:53.2034380Z `assert_array_almost_equal_nulp` or `assert_array_max_ulp` 2024-08-06T21:19:53.2034901Z instead of this function for more consistent floating point 2024-08-06T21:19:53.2035344Z comparisons. 2024-08-06T21:19:53.2035512Z 2024-08-06T21:19:53.2035727Z The test verifies that the elements of `actual` and `desired` satisfy. 2024-08-06T21:19:53.2036115Z 2024-08-06T21:19:53.2036601Z ``abs(desired-actual) < float64(1.5 * 10**(-decimal))`` 2024-08-06T21:19:53.2036932Z 2024-08-06T21:19:53.2037273Z That is a looser test than originally documented, but agrees with what the 2024-08-06T21:19:53.2037981Z actual implementation in `assert_array_almost_equal` did up to rounding 2024-08-06T21:19:53.2038619Z vagaries. An exception is raised at conflicting values. For ndarrays this 2024-08-06T21:19:53.2039136Z delegates to assert_array_almost_equal 2024-08-06T21:19:53.2039367Z 2024-08-06T21:19:53.2039460Z Parameters 2024-08-06T21:19:53.2039680Z ---------- 2024-08-06T21:19:53.2039946Z actual : array_like 2024-08-06T21:19:53.2040198Z The object to check. 2024-08-06T21:19:53.2040462Z desired : array_like 2024-08-06T21:19:53.2040759Z The expected object. 2024-08-06T21:19:53.2041025Z decimal : int, optional 2024-08-06T21:19:53.2041355Z Desired precision, default is 7. 2024-08-06T21:19:53.2041855Z err_msg : str, optional 2024-08-06T21:19:53.2042221Z The error message to be printed in case of failure. 2024-08-06T21:19:53.2042835Z verbose : bool, optional 2024-08-06T21:19:53.2043409Z If True, the conflicting values are appended to the error message. 2024-08-06T21:19:53.2043738Z 2024-08-06T21:19:53.2043978Z Raises 2024-08-06T21:19:53.2044187Z ------ 2024-08-06T21:19:53.2044390Z AssertionError 2024-08-06T21:19:53.2044728Z If actual and desired are not equal up to specified precision. 2024-08-06T21:19:53.2045034Z 2024-08-06T21:19:53.2045136Z See Also 2024-08-06T21:19:53.2045333Z -------- 2024-08-06T21:19:53.2045690Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:19:53.2046181Z relative and/or absolute precision. 2024-08-06T21:19:53.2046620Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:19:53.2046950Z 2024-08-06T21:19:53.2047035Z Examples 2024-08-06T21:19:53.2047238Z -------- 2024-08-06T21:19:53.2047507Z >>> from torch._numpy.testing import assert_almost_equal 2024-08-06T21:19:53.2047914Z >>> assert_almost_equal(2.3333333333333, 2.33333334) 2024-08-06T21:19:53.2048337Z >>> assert_almost_equal(2.3333333333333, 2.33333334, decimal=10) 2024-08-06T21:19:53.2048726Z Traceback (most recent call last): 2024-08-06T21:19:53.2049021Z ... 2024-08-06T21:19:53.2049233Z AssertionError: 2024-08-06T21:19:53.2049484Z Arrays are not almost equal to 10 decimals 2024-08-06T21:19:53.2049807Z ACTUAL: 2.3333333333333 2024-08-06T21:19:53.2050050Z DESIRED: 2.33333334 2024-08-06T21:19:53.2050211Z 2024-08-06T21:19:53.2050357Z >>> assert_almost_equal(np.array([1.0,2.3333333333333]), 2024-08-06T21:19:53.2050745Z ... np.array([1.0,2.33333334]), decimal=9) 2024-08-06T21:19:53.2051100Z Traceback (most recent call last): 2024-08-06T21:19:53.2051386Z ... 2024-08-06T21:19:53.2051601Z AssertionError: 2024-08-06T21:19:53.2051851Z Arrays are not almost equal to 9 decimals 2024-08-06T21:19:53.2052170Z 2024-08-06T21:19:53.2052403Z Mismatched elements: 1 / 2 (50%) 2024-08-06T21:19:53.2052714Z Max absolute difference: 6.666699636781459e-09 2024-08-06T21:19:53.2053088Z Max relative difference: 2.8571569790287484e-09 2024-08-06T21:19:53.2053466Z x: torch.ndarray([1.0000, 2.3333], dtype=float64) 2024-08-06T21:19:53.2053842Z y: torch.ndarray([1.0000, 2.3333], dtype=float64) 2024-08-06T21:19:53.2054095Z 2024-08-06T21:19:53.2054100Z 2024-08-06T21:19:53.2054350Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.2054727Z 2024-08-06T21:19:53.2055443Z msg = Cannot scrape callname=assert_approx_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=455. 2024-08-06T21:19:53.2056401Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.2056792Z 2024-08-06T21:19:53.2057016Z Raises an AssertionError if two items are not equal up to significant 2024-08-06T21:19:53.2057444Z digits. 2024-08-06T21:19:53.2057559Z 2024-08-06T21:19:53.2057743Z .. note:: It is recommended to use one of `assert_allclose`, 2024-08-06T21:19:53.2058302Z `assert_array_almost_equal_nulp` or `assert_array_max_ulp` 2024-08-06T21:19:53.2058799Z instead of this function for more consistent floating point 2024-08-06T21:19:53.2059188Z comparisons. 2024-08-06T21:19:53.2059359Z 2024-08-06T21:19:53.2059542Z Given two numbers, check that they are approximately equal. 2024-08-06T21:19:53.2060066Z Approximately equal is defined as the number of significant digits 2024-08-06T21:19:53.2060481Z that agree. 2024-08-06T21:19:53.2060619Z 2024-08-06T21:19:53.2060709Z Parameters 2024-08-06T21:19:53.2060930Z ---------- 2024-08-06T21:19:53.2061139Z actual : scalar 2024-08-06T21:19:53.2061382Z The object to check. 2024-08-06T21:19:53.2061644Z desired : scalar 2024-08-06T21:19:53.2061877Z The expected object. 2024-08-06T21:19:53.2062151Z significant : int, optional 2024-08-06T21:19:53.2062452Z Desired precision, default is 7. 2024-08-06T21:19:53.2062950Z err_msg : str, optional 2024-08-06T21:19:53.2063278Z The error message to be printed in case of failure. 2024-08-06T21:19:53.2063645Z verbose : bool, optional 2024-08-06T21:19:53.2064124Z If True, the conflicting values are appended to the error message. 2024-08-06T21:19:53.2064456Z 2024-08-06T21:19:53.2064539Z Raises 2024-08-06T21:19:53.2064792Z ------ 2024-08-06T21:19:53.2065031Z AssertionError 2024-08-06T21:19:53.2065361Z If actual and desired are not equal up to specified precision. 2024-08-06T21:19:53.2065664Z 2024-08-06T21:19:53.2065760Z See Also 2024-08-06T21:19:53.2065953Z -------- 2024-08-06T21:19:53.2066306Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:19:53.2066788Z relative and/or absolute precision. 2024-08-06T21:19:53.2067224Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:19:53.2067554Z 2024-08-06T21:19:53.2067639Z Examples 2024-08-06T21:19:53.2067844Z -------- 2024-08-06T21:19:53.2068224Z >>> np.testing.assert_approx_equal(0.12345677777777e-20, 0.1234567e-20) # doctest: +SKIP 2024-08-06T21:19:53.2068877Z >>> np.testing.assert_approx_equal(0.12345670e-20, 0.12345671e-20, # doctest: +SKIP 2024-08-06T21:19:53.2069370Z ... significant=8) 2024-08-06T21:19:53.2069839Z >>> np.testing.assert_approx_equal(0.12345670e-20, 0.12345672e-20, # doctest: +SKIP 2024-08-06T21:19:53.2070331Z ... significant=8) 2024-08-06T21:19:53.2070678Z Traceback (most recent call last): 2024-08-06T21:19:53.2070958Z ... 2024-08-06T21:19:53.2071170Z AssertionError: 2024-08-06T21:19:53.2071440Z Items are not equal to 8 significant digits: 2024-08-06T21:19:53.2071760Z ACTUAL: 1.234567e-21 2024-08-06T21:19:53.2072010Z DESIRED: 1.2345672e-21 2024-08-06T21:19:53.2072164Z 2024-08-06T21:19:53.2072332Z the evaluated condition that raises the exception is 2024-08-06T21:19:53.2072597Z 2024-08-06T21:19:53.2072767Z >>> abs(0.12345670e-20/1e-21 - 0.12345672e-20/1e-21) >= 10**-(8-1) 2024-08-06T21:19:53.2073141Z True 2024-08-06T21:19:53.2073249Z 2024-08-06T21:19:53.2073253Z 2024-08-06T21:19:53.2073518Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.2073882Z 2024-08-06T21:19:53.2074445Z msg = Cannot scrape callname=assert_array_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=734. 2024-08-06T21:19:53.2075379Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.2075764Z 2024-08-06T21:19:53.2075973Z Raises an AssertionError if two array_like objects are not equal. 2024-08-06T21:19:53.2076288Z 2024-08-06T21:19:53.2076506Z Given two array_like objects, check that the shape is equal and all 2024-08-06T21:19:53.2077039Z elements of these objects are equal (but see the Notes for the special 2024-08-06T21:19:53.2077575Z handling of a scalar). An exception is raised at shape mismatch or 2024-08-06T21:19:53.2078113Z conflicting values. In contrast to the standard usage in numpy, NaNs 2024-08-06T21:19:53.2078775Z are compared like numbers, no assertion is raised if both objects have 2024-08-06T21:19:53.2079223Z NaNs in the same positions. 2024-08-06T21:19:53.2079402Z 2024-08-06T21:19:53.2079646Z The usual caution for verifying equality with floating point numbers is 2024-08-06T21:19:53.2080068Z advised. 2024-08-06T21:19:53.2080194Z 2024-08-06T21:19:53.2080282Z Parameters 2024-08-06T21:19:53.2080493Z ---------- 2024-08-06T21:19:53.2080693Z x : array_like 2024-08-06T21:19:53.2080930Z The actual object to check. 2024-08-06T21:19:53.2081207Z y : array_like 2024-08-06T21:19:53.2081436Z The desired, expected object. 2024-08-06T21:19:53.2081733Z err_msg : str, optional 2024-08-06T21:19:53.2082045Z The error message to be printed in case of failure. 2024-08-06T21:19:53.2082398Z verbose : bool, optional 2024-08-06T21:19:53.2082778Z If True, the conflicting values are appended to the error message. 2024-08-06T21:19:53.2083198Z strict : bool, optional 2024-08-06T21:19:53.2083552Z If True, raise an AssertionError when either the shape or the data 2024-08-06T21:19:53.2084044Z type of the array_like objects does not match. The special 2024-08-06T21:19:53.2084596Z handling for scalars mentioned in the Notes section is disabled. 2024-08-06T21:19:53.2084913Z 2024-08-06T21:19:53.2084996Z Raises 2024-08-06T21:19:53.2085193Z ------ 2024-08-06T21:19:53.2085405Z AssertionError 2024-08-06T21:19:53.2085660Z If actual and desired objects are not equal. 2024-08-06T21:19:53.2085911Z 2024-08-06T21:19:53.2085997Z See Also 2024-08-06T21:19:53.2086203Z -------- 2024-08-06T21:19:53.2086546Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:19:53.2087027Z relative and/or absolute precision. 2024-08-06T21:19:53.2087478Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:19:53.2087799Z 2024-08-06T21:19:53.2087882Z Notes 2024-08-06T21:19:53.2088086Z ----- 2024-08-06T21:19:53.2088395Z When one of `x` and `y` is a scalar and the other is array_like, the 2024-08-06T21:19:53.2088917Z function checks that each element of the array_like object is equal to 2024-08-06T21:19:53.2089487Z the scalar. This behaviour can be disabled with the `strict` parameter. 2024-08-06T21:19:53.2089824Z 2024-08-06T21:19:53.2089922Z Examples 2024-08-06T21:19:53.2090115Z -------- 2024-08-06T21:19:53.2090365Z The first assert does not raise an exception: 2024-08-06T21:19:53.2090603Z 2024-08-06T21:19:53.2090765Z >>> np.testing.assert_array_equal([1.0,2.33333,np.nan], 2024-08-06T21:19:53.2091142Z ... [np.exp(0),2.33333, np.nan]) 2024-08-06T21:19:53.2091386Z 2024-08-06T21:19:53.2091611Z Use `assert_allclose` or one of the nulp (number of floating point values) 2024-08-06T21:19:53.2092065Z functions for these cases instead: 2024-08-06T21:19:53.2092268Z 2024-08-06T21:19:53.2092409Z >>> np.testing.assert_allclose([1.0,np.pi,np.nan], 2024-08-06T21:19:53.2092792Z ... [1, np.sqrt(np.pi)**2, np.nan], 2024-08-06T21:19:53.2093154Z ... rtol=1e-10, atol=0) 2024-08-06T21:19:53.2093377Z 2024-08-06T21:19:53.2093586Z As mentioned in the Notes section, `assert_array_equal` has special 2024-08-06T21:19:53.2094134Z handling for scalars. Here the test checks that each value in `x` is 3: 2024-08-06T21:19:53.2094484Z 2024-08-06T21:19:53.2094592Z >>> x = np.full((2, 5), fill_value=3) 2024-08-06T21:19:53.2095017Z >>> np.testing.assert_array_equal(x, 3) 2024-08-06T21:19:53.2095236Z 2024-08-06T21:19:53.2095509Z Use `strict` to raise an AssertionError when comparing a scalar with an 2024-08-06T21:19:53.2095992Z array: 2024-08-06T21:19:53.2096107Z 2024-08-06T21:19:53.2096303Z >>> np.testing.assert_array_equal(x, 3, strict=True) 2024-08-06T21:19:53.2096863Z Traceback (most recent call last): 2024-08-06T21:19:53.2097427Z ... 2024-08-06T21:19:53.2097700Z AssertionError: 2024-08-06T21:19:53.2097933Z Arrays are not equal 2024-08-06T21:19:53.2098182Z 2024-08-06T21:19:53.2098517Z (shapes (2, 5), () mismatch) 2024-08-06T21:19:53.2098794Z x: torch.ndarray([[3, 3, 3, 3, 3], 2024-08-06T21:19:53.2099094Z [3, 3, 3, 3, 3]]) 2024-08-06T21:19:53.2099345Z y: torch.ndarray(3) 2024-08-06T21:19:53.2099509Z 2024-08-06T21:19:53.2099725Z The `strict` parameter also ensures that the array data types match: 2024-08-06T21:19:53.2100063Z 2024-08-06T21:19:53.2100163Z >>> x = np.array([2, 2, 2]) 2024-08-06T21:19:53.2100463Z >>> y = np.array([2., 2., 2.], dtype=np.float32) 2024-08-06T21:19:53.2100841Z >>> np.testing.assert_array_equal(x, y, strict=True) 2024-08-06T21:19:53.2101216Z Traceback (most recent call last): 2024-08-06T21:19:53.2101506Z ... 2024-08-06T21:19:53.2101705Z AssertionError: 2024-08-06T21:19:53.2101941Z Arrays are not equal 2024-08-06T21:19:53.2102169Z 2024-08-06T21:19:53.2102437Z (dtypes dtype("int64"), dtype("float32") mismatch) 2024-08-06T21:19:53.2102794Z x: torch.ndarray([2, 2, 2]) 2024-08-06T21:19:53.2103064Z y: torch.ndarray([2., 2., 2.]) 2024-08-06T21:19:53.2103261Z 2024-08-06T21:19:53.2103514Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.2103892Z 2024-08-06T21:19:53.2104539Z msg = Cannot scrape callname=assert_array_almost_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=840. 2024-08-06T21:19:53.2105506Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.2105881Z 2024-08-06T21:19:53.2106097Z Raises an AssertionError if two objects are not equal up to desired 2024-08-06T21:19:53.2106525Z precision. 2024-08-06T21:19:53.2106647Z 2024-08-06T21:19:53.2106848Z .. note:: It is recommended to use one of `assert_allclose`, 2024-08-06T21:19:53.2107302Z `assert_array_almost_equal_nulp` or `assert_array_max_ulp` 2024-08-06T21:19:53.2107787Z instead of this function for more consistent floating point 2024-08-06T21:19:53.2108194Z comparisons. 2024-08-06T21:19:53.2108352Z 2024-08-06T21:19:53.2108587Z The test verifies identical shapes and that the elements of ``actual`` and 2024-08-06T21:19:53.2109040Z ``desired`` satisfy. 2024-08-06T21:19:53.2109187Z 2024-08-06T21:19:53.2109333Z ``abs(desired-actual) < 1.5 * 10**(-decimal)`` 2024-08-06T21:19:53.2109571Z 2024-08-06T21:19:53.2109808Z That is a looser test than originally documented, but agrees with what the 2024-08-06T21:19:53.2110389Z actual implementation did up to rounding vagaries. An exception is raised 2024-08-06T21:19:53.2110983Z at shape mismatch or conflicting values. In contrast to the standard usage 2024-08-06T21:19:53.2111552Z in numpy, NaNs are compared like numbers, no assertion is raised if both 2024-08-06T21:19:53.2111999Z objects have NaNs in the same positions. 2024-08-06T21:19:53.2112235Z 2024-08-06T21:19:53.2112324Z Parameters 2024-08-06T21:19:53.2112540Z ---------- 2024-08-06T21:19:53.2112744Z x : array_like 2024-08-06T21:19:53.2112984Z The actual object to check. 2024-08-06T21:19:53.2113271Z y : array_like 2024-08-06T21:19:53.2113500Z The desired, expected object. 2024-08-06T21:19:53.2113798Z decimal : int, optional 2024-08-06T21:19:53.2114064Z Desired precision, default is 6. 2024-08-06T21:19:53.2114380Z err_msg : str, optional 2024-08-06T21:19:53.2114693Z The error message to be printed in case of failure. 2024-08-06T21:19:53.2115042Z verbose : bool, optional 2024-08-06T21:19:53.2115415Z If True, the conflicting values are appended to the error message. 2024-08-06T21:19:53.2115743Z 2024-08-06T21:19:53.2115826Z Raises 2024-08-06T21:19:53.2116014Z ------ 2024-08-06T21:19:53.2116227Z AssertionError 2024-08-06T21:19:53.2116559Z If actual and desired are not equal up to specified precision. 2024-08-06T21:19:53.2116861Z 2024-08-06T21:19:53.2116947Z See Also 2024-08-06T21:19:53.2117154Z -------- 2024-08-06T21:19:53.2117508Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:19:53.2117975Z relative and/or absolute precision. 2024-08-06T21:19:53.2118494Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:19:53.2118816Z 2024-08-06T21:19:53.2118916Z Examples 2024-08-06T21:19:53.2119111Z -------- 2024-08-06T21:19:53.2119367Z the first assert does not raise an exception 2024-08-06T21:19:53.2119600Z 2024-08-06T21:19:53.2119783Z >>> np.testing.assert_array_almost_equal([1.0,2.333,np.nan], 2024-08-06T21:19:53.2120170Z ... [1.0,2.333,np.nan]) 2024-08-06T21:19:53.2120408Z 2024-08-06T21:19:53.2120585Z >>> np.testing.assert_array_almost_equal([1.0,2.33333,np.nan], 2024-08-06T21:19:53.2121005Z ... [1.0,2.33339,np.nan], decimal=5) 2024-08-06T21:19:53.2121365Z Traceback (most recent call last): 2024-08-06T21:19:53.2121644Z ... 2024-08-06T21:19:53.2121919Z AssertionError: 2024-08-06T21:19:53.2122197Z Arrays are not almost equal to 5 decimals 2024-08-06T21:19:53.2122502Z 2024-08-06T21:19:53.2122735Z Mismatched elements: 1 / 3 (33.3%) 2024-08-06T21:19:53.2123059Z Max absolute difference: 5.999999999994898e-05 2024-08-06T21:19:53.2123433Z Max relative difference: 2.5713661239633743e-05 2024-08-06T21:19:53.2123935Z x: torch.ndarray([1.0000, 2.3333, nan], dtype=float64) 2024-08-06T21:19:53.2124365Z y: torch.ndarray([1.0000, 2.3334, nan], dtype=float64) 2024-08-06T21:19:53.2124651Z 2024-08-06T21:19:53.2124829Z >>> np.testing.assert_array_almost_equal([1.0,2.33333,np.nan], 2024-08-06T21:19:53.2125249Z ... [1.0,2.33333, 5], decimal=5) 2024-08-06T21:19:53.2125605Z Traceback (most recent call last): 2024-08-06T21:19:53.2125887Z ... 2024-08-06T21:19:53.2126101Z AssertionError: 2024-08-06T21:19:53.2126352Z Arrays are not almost equal to 5 decimals 2024-08-06T21:19:53.2126670Z 2024-08-06T21:19:53.2126904Z x and y nan location mismatch: 2024-08-06T21:19:53.2127240Z x: torch.ndarray([1.0000, 2.3333, nan], dtype=float64) 2024-08-06T21:19:53.2127676Z y: torch.ndarray([1.0000, 2.3333, 5.0000], dtype=float64) 2024-08-06T21:19:53.2127977Z 2024-08-06T21:19:53.2127982Z 2024-08-06T21:19:53.2128233Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.2128606Z 2024-08-06T21:19:53.2129232Z msg = Cannot scrape callname=clear_and_catch_warnings in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=1790. 2024-08-06T21:19:53.2130198Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.2130779Z Context manager that resets warning registry for catching warnings 2024-08-06T21:19:53.2131117Z 2024-08-06T21:19:53.2131360Z Warnings can be slippery, because, whenever a warning is triggered, Python 2024-08-06T21:19:53.2131956Z adds a ``__warningregistry__`` member to the *calling* module. This makes 2024-08-06T21:19:53.2132530Z it impossible to retrigger the warning in this module, whatever you put in 2024-08-06T21:19:53.2133136Z the warnings filters. This context manager accepts a sequence of `modules` 2024-08-06T21:19:53.2133636Z as a keyword argument to its constructor and: 2024-08-06T21:19:53.2133882Z 2024-08-06T21:19:53.2134114Z * stores and removes any ``__warningregistry__`` entries in given `modules` 2024-08-06T21:19:53.2134554Z on entry; 2024-08-06T21:19:53.2134974Z * resets ``__warningregistry__`` to its previous state on exit. 2024-08-06T21:19:53.2135276Z 2024-08-06T21:19:53.2135502Z This makes it possible to trigger any warning afresh inside the context 2024-08-06T21:19:53.2136038Z manager without disturbing the state of warnings outside. 2024-08-06T21:19:53.2136344Z 2024-08-06T21:19:53.2136579Z For compatibility with Python 3.0, please consider all arguments to be 2024-08-06T21:19:53.2137039Z keyword-only. 2024-08-06T21:19:53.2137180Z 2024-08-06T21:19:53.2137270Z Parameters 2024-08-06T21:19:53.2137503Z ---------- 2024-08-06T21:19:53.2137739Z record : bool, optional 2024-08-06T21:19:53.2138164Z Specifies whether warnings should be captured by a custom 2024-08-06T21:19:53.2138707Z implementation of ``warnings.showwarning()`` and be appended to a list 2024-08-06T21:19:53.2139277Z returned by the context manager. Otherwise None is returned by the 2024-08-06T21:19:53.2139818Z context manager. The objects appended to the list are arguments whose 2024-08-06T21:19:53.2140332Z attributes mirror the arguments to ``showwarning()``. 2024-08-06T21:19:53.2140720Z modules : sequence, optional 2024-08-06T21:19:53.2141124Z Sequence of modules for which to reset warnings registry on entry and 2024-08-06T21:19:53.2141655Z restore on exit. To work correctly, all 'ignore' filters should 2024-08-06T21:19:53.2142076Z filter by one of these modules. 2024-08-06T21:19:53.2142287Z 2024-08-06T21:19:53.2142373Z Examples 2024-08-06T21:19:53.2142595Z -------- 2024-08-06T21:19:53.2142819Z >>> import warnings 2024-08-06T21:19:53.2143158Z >>> with np.testing.clear_and_catch_warnings( # doctest: +SKIP 2024-08-06T21:19:53.2143584Z ... modules=[np.core.fromnumeric]): 2024-08-06T21:19:53.2144429Z ... warnings.simplefilter('always') 2024-08-06T21:19:53.2144879Z ... warnings.filterwarnings('ignore', module='np.core.fromnumeric') 2024-08-06T21:19:53.2145398Z ... # do something that raises a warning but ignore those in 2024-08-06T21:19:53.2145794Z ... # np.core.fromnumeric 2024-08-06T21:19:53.2146064Z 2024-08-06T21:19:53.2146437Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.2146802Z 2024-08-06T21:19:53.3656929Z msg = Cannot scrape callname=Conv1d in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py line=355. 2024-08-06T21:19:53.3657910Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.3658517Z Applies a 1D convolution over a quantized input signal composed of 2024-08-06T21:19:53.3658990Z several quantized input planes. 2024-08-06T21:19:53.3659213Z 2024-08-06T21:19:53.3659427Z For details on input arguments, parameters, and implementation see 2024-08-06T21:19:53.3659876Z :class:`~torch.nn.Conv1d`. 2024-08-06T21:19:53.3660062Z 2024-08-06T21:19:53.3660181Z .. note:: 2024-08-06T21:19:53.3660518Z Only `zeros` is supported for the :attr:`padding_mode` argument. 2024-08-06T21:19:53.3660829Z 2024-08-06T21:19:53.3660929Z .. note:: 2024-08-06T21:19:53.3661231Z Only `torch.quint8` is supported for the input data type. 2024-08-06T21:19:53.3661537Z 2024-08-06T21:19:53.3661542Z 2024-08-06T21:19:53.3661636Z Attributes: 2024-08-06T21:19:53.3661994Z weight (Tensor): packed tensor derived from the learnable weight 2024-08-06T21:19:53.3662420Z parameter. 2024-08-06T21:19:53.3662985Z scale (Tensor): scalar for the output scale 2024-08-06T21:19:53.3663422Z zero_point (Tensor): scalar for the output zero point 2024-08-06T21:19:53.3663707Z 2024-08-06T21:19:53.3663863Z See :class:`~torch.nn.Conv1d` for other attributes. 2024-08-06T21:19:53.3664138Z 2024-08-06T21:19:53.3664336Z Examples:: 2024-08-06T21:19:53.3664472Z 2024-08-06T21:19:53.3664639Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_QENGINE) 2024-08-06T21:19:53.3665024Z >>> m = nn.quantized.Conv1d(16, 33, 3, stride=2) 2024-08-06T21:19:53.3665390Z >>> input = torch.randn(20, 16, 100) 2024-08-06T21:19:53.3665726Z >>> # quantize input to quint8 2024-08-06T21:19:53.3666028Z >>> # xdoctest: +SKIP 2024-08-06T21:19:53.3666424Z >>> q_input = torch.quantize_per_tensor(input, scale=1.0, zero_point=0, 2024-08-06T21:19:53.3666887Z ... dtype=torch.quint8) 2024-08-06T21:19:53.3667235Z >>> output = m(q_input) 2024-08-06T21:19:53.3667421Z 2024-08-06T21:19:53.3667503Z 2024-08-06T21:19:53.3667873Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.3668539Z 2024-08-06T21:19:53.3857553Z msg = Cannot scrape callname=LSTM in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/rnn.py line=11. 2024-08-06T21:19:53.3858467Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.3858978Z A quantized long short-term memory (LSTM). 2024-08-06T21:19:53.3859211Z 2024-08-06T21:19:53.3859502Z For the description and the argument types, please, refer to :class:`~torch.nn.LSTM` 2024-08-06T21:19:53.3859895Z 2024-08-06T21:19:53.3860008Z Attributes: 2024-08-06T21:19:53.3860260Z layers : instances of the `_LSTMLayer` 2024-08-06T21:19:53.3860498Z 2024-08-06T21:19:53.3860596Z .. note:: 2024-08-06T21:19:53.3860939Z To access the weights and biases, you need to access them per layer. 2024-08-06T21:19:53.3861434Z See examples in :class:`~torch.ao.nn.quantizable.LSTM` 2024-08-06T21:19:53.3861735Z 2024-08-06T21:19:53.3861826Z Examples:: 2024-08-06T21:19:53.3862140Z >>> # xdoctest: +SKIP 2024-08-06T21:19:53.3862499Z >>> custom_module_config = { 2024-08-06T21:19:53.3863194Z ... 'float_to_observed_custom_module_class': { 2024-08-06T21:19:53.3863577Z ... nn.LSTM: nn.quantizable.LSTM, 2024-08-06T21:19:53.3863890Z ... }, 2024-08-06T21:19:53.3864181Z ... 'observed_to_quantized_custom_module_class': { 2024-08-06T21:19:53.3864595Z ... nn.quantizable.LSTM: nn.quantized.LSTM, 2024-08-06T21:19:53.3864929Z ... } 2024-08-06T21:19:53.3865160Z ... } 2024-08-06T21:19:53.3865514Z >>> tq.prepare(model, prepare_custom_module_class=custom_module_config) 2024-08-06T21:19:53.3866057Z >>> tq.convert(model, convert_custom_module_class=custom_module_config) 2024-08-06T21:19:53.3866475Z 2024-08-06T21:19:53.3866841Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.3867210Z 2024-08-06T21:19:53.4716432Z msg = Cannot scrape callname=BaseSparsifier.squash_mask in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/sparsifier/base_sparsifier.py line=229. 2024-08-06T21:19:53.4717539Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.4718098Z Squashes the sparse masks into the appropriate tensors. 2024-08-06T21:19:53.4718390Z 2024-08-06T21:19:53.4718598Z If either the `params_to_keep` or `params_to_keep_per_layer` is set, 2024-08-06T21:19:53.4719118Z the module will have a `sparse_params` dict attached to it. 2024-08-06T21:19:53.4719415Z 2024-08-06T21:19:53.4719505Z Args: 2024-08-06T21:19:53.4719830Z params_to_keep: List of keys to save in the module or a dict 2024-08-06T21:19:53.4720289Z representing the modules and keys that will have 2024-08-06T21:19:53.4720700Z sparsity parameters saved 2024-08-06T21:19:53.4721153Z params_to_keep_per_layer: Dict to specify the params that should be 2024-08-06T21:19:53.4721649Z saved for specific layers. The keys in the dict 2024-08-06T21:19:53.4722088Z should be the module fqn, while the values should 2024-08-06T21:19:53.4722517Z be a list of strings with the names of the variables 2024-08-06T21:19:53.4722923Z to save in the `sparse_params` 2024-08-06T21:19:53.4723158Z 2024-08-06T21:19:53.4723259Z Examples: 2024-08-06T21:19:53.4723526Z >>> # xdoctest: +SKIP("locals are undefined") 2024-08-06T21:19:53.4723888Z >>> # Don't save any sparse params 2024-08-06T21:19:53.4724234Z >>> sparsifier.squash_mask() 2024-08-06T21:19:53.4724583Z >>> hasattr(model.submodule1, 'sparse_params') 2024-08-06T21:19:53.4724920Z False 2024-08-06T21:19:53.4725058Z 2024-08-06T21:19:53.4725380Z >>> # Keep sparse params per layer 2024-08-06T21:19:53.4725741Z >>> sparsifier.squash_mask( 2024-08-06T21:19:53.4726060Z ... params_to_keep_per_layer={ 2024-08-06T21:19:53.4726425Z ... 'submodule1.linear1': ('foo', 'bar'), 2024-08-06T21:19:53.4726804Z ... 'submodule2.linear42': ('baz',) 2024-08-06T21:19:53.4727117Z ... }) 2024-08-06T21:19:53.4727422Z >>> print(model.submodule1.linear1.sparse_params) 2024-08-06T21:19:53.4727792Z {'foo': 42, 'bar': 24} 2024-08-06T21:19:53.4728132Z >>> print(model.submodule2.linear42.sparse_params) 2024-08-06T21:19:53.4728499Z {'baz': 0.1} 2024-08-06T21:19:53.4728657Z 2024-08-06T21:19:53.4728790Z >>> # Keep sparse params for all layers 2024-08-06T21:19:53.4729192Z >>> sparsifier.squash_mask(params_to_keep=('foo', 'bar')) 2024-08-06T21:19:53.4729642Z >>> print(model.submodule1.linear1.sparse_params) 2024-08-06T21:19:53.4730014Z {'foo': 42, 'bar': 24} 2024-08-06T21:19:53.4730354Z >>> print(model.submodule2.linear42.sparse_params) 2024-08-06T21:19:53.4730826Z {'foo': 42, 'bar': 24} 2024-08-06T21:19:53.4731016Z 2024-08-06T21:19:53.4731225Z >>> # Keep some sparse params for all layers, and specific ones for 2024-08-06T21:19:53.4731630Z >>> # some other layers 2024-08-06T21:19:53.4731944Z >>> sparsifier.squash_mask( 2024-08-06T21:19:53.4732282Z ... params_to_keep=('foo', 'bar'), 2024-08-06T21:19:53.4732615Z ... params_to_keep_per_layer={ 2024-08-06T21:19:53.4732966Z ... 'submodule2.linear42': ('baz',) 2024-08-06T21:19:53.4733365Z ... }) 2024-08-06T21:19:53.4733661Z >>> print(model.submodule1.linear1.sparse_params) 2024-08-06T21:19:53.4734028Z {'foo': 42, 'bar': 24} 2024-08-06T21:19:53.4734381Z >>> print(model.submodule2.linear42.sparse_params) 2024-08-06T21:19:53.4734756Z {'foo': 42, 'bar': 24, 'baz': 0.1} 2024-08-06T21:19:53.4735179Z 2024-08-06T21:19:53.4735568Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.4735936Z 2024-08-06T21:19:53.5480466Z msg = Cannot scrape callname=DTypeConfig in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/backend_config/backend_config.py line=181. 2024-08-06T21:19:53.5481569Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.5481964Z 2024-08-06T21:19:53.5482215Z Config object that specifies the supported data types passed as arguments to 2024-08-06T21:19:53.5482828Z quantize ops in the reference model spec, for input and output activations, 2024-08-06T21:19:53.5483278Z weights, and biases. 2024-08-06T21:19:53.5483445Z 2024-08-06T21:19:53.5483600Z For example, consider the following reference model: 2024-08-06T21:19:53.5483866Z 2024-08-06T21:19:53.5484060Z quant1 - [dequant1 - fp32_linear - quant2] - dequant2 2024-08-06T21:19:53.5484321Z 2024-08-06T21:19:53.5484534Z The pattern in the square brackets refers to the reference pattern of 2024-08-06T21:19:53.5485113Z statically quantized linear. Setting the input dtype as `torch.quint8` 2024-08-06T21:19:53.5485715Z in the DTypeConfig means we pass in `torch.quint8` as the dtype argument 2024-08-06T21:19:53.5486286Z to the first quantize op (quant1). Similarly, setting the output dtype as 2024-08-06T21:19:53.5486835Z `torch.quint8` means we pass in `torch.quint8` as the dtype argument to 2024-08-06T21:19:53.5487284Z the second quantize op (quant2). 2024-08-06T21:19:53.5487479Z 2024-08-06T21:19:53.5487706Z Note that the dtype here does not refer to the interface dtypes of the 2024-08-06T21:19:53.5488238Z op. For example, the "input dtype" here is not the dtype of the input 2024-08-06T21:19:53.5488775Z tensor passed to the quantized linear op. Though it can still be the 2024-08-06T21:19:53.5489306Z same as the interface dtype, this is not always the case, e.g. the 2024-08-06T21:19:53.5490054Z interface dtype is fp32 in dynamic quantization but the "input dtype" 2024-08-06T21:19:53.5490617Z specified in the DTypeConfig would still be quint8. The semantics of 2024-08-06T21:19:53.5491162Z dtypes here are the same as the semantics of the dtypes specified in 2024-08-06T21:19:53.5491573Z the observers. 2024-08-06T21:19:53.5491721Z 2024-08-06T21:19:53.5491928Z These dtypes are matched against the ones specified in the user's 2024-08-06T21:19:53.5492474Z QConfig. If there is a match, and the QConfig satisfies the constraints 2024-08-06T21:19:53.5493029Z specified in the DTypeConfig (if any), then we will quantize the given 2024-08-06T21:19:53.5493575Z pattern using this DTypeConfig. Otherwise, the QConfig is ignored and 2024-08-06T21:19:53.5494031Z the pattern will not be quantized. 2024-08-06T21:19:53.5494233Z 2024-08-06T21:19:53.5494358Z Example usage:: 2024-08-06T21:19:53.5494495Z 2024-08-06T21:19:53.5494598Z >>> # xdoctest: +SKIP(failing) 2024-08-06T21:19:53.5495036Z >>> dtype_config1 = DTypeConfig( 2024-08-06T21:19:53.5495366Z ... input_dtype=torch.quint8, 2024-08-06T21:19:53.5495781Z ... output_dtype=torch.quint8, 2024-08-06T21:19:53.5496111Z ... weight_dtype=torch.qint8, 2024-08-06T21:19:53.5496434Z ... bias_dtype=torch.float) 2024-08-06T21:19:53.5496633Z 2024-08-06T21:19:53.5496740Z >>> dtype_config2 = DTypeConfig( 2024-08-06T21:19:53.5497086Z ... input_dtype=DTypeWithConstraints( 2024-08-06T21:19:53.5497428Z ... dtype=torch.quint8, 2024-08-06T21:19:53.5497726Z ... quant_min_lower_bound=0, 2024-08-06T21:19:53.5498059Z ... quant_max_upper_bound=255, 2024-08-06T21:19:53.5498362Z ... ), 2024-08-06T21:19:53.5498606Z ... output_dtype=DTypeWithConstraints( 2024-08-06T21:19:53.5498946Z ... dtype=torch.quint8, 2024-08-06T21:19:53.5499251Z ... quant_min_lower_bound=0, 2024-08-06T21:19:53.5499565Z ... quant_max_upper_bound=255, 2024-08-06T21:19:53.5499869Z ... ), 2024-08-06T21:19:53.5500128Z ... weight_dtype=DTypeWithConstraints( 2024-08-06T21:19:53.5500462Z ... dtype=torch.qint8, 2024-08-06T21:19:53.5500774Z ... quant_min_lower_bound=-128, 2024-08-06T21:19:53.5501109Z ... quant_max_upper_bound=127, 2024-08-06T21:19:53.5501402Z ... ), 2024-08-06T21:19:53.5501641Z ... bias_dtype=torch.float) 2024-08-06T21:19:53.5501839Z 2024-08-06T21:19:53.5501961Z >>> dtype_config1.input_dtype 2024-08-06T21:19:53.5502242Z torch.quint8 2024-08-06T21:19:53.5502392Z 2024-08-06T21:19:53.5502497Z >>> dtype_config2.input_dtype 2024-08-06T21:19:53.5502786Z torch.quint8 2024-08-06T21:19:53.5502921Z 2024-08-06T21:19:53.5503051Z >>> dtype_config2.input_dtype_with_constraints 2024-08-06T21:19:53.5503846Z DTypeWithConstraints(dtype=torch.quint8, quant_min_lower_bound=0, quant_max_upper_bound=255, scale_min_lower_bound=None, scale_max_upper_bound=None) 2024-08-06T21:19:53.5504495Z 2024-08-06T21:19:53.5504761Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.5505126Z 2024-08-06T21:19:53.6535955Z msg = Cannot scrape callname=ModelReportVisualizer.generate_filtered_tables in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=301. 2024-08-06T21:19:53.6537428Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.6537810Z 2024-08-06T21:19:53.6538082Z Takes in optional filter values and generates two tables with desired information. 2024-08-06T21:19:53.6538487Z 2024-08-06T21:19:53.6538701Z The generated tables are presented in both a list-of-lists format 2024-08-06T21:19:53.6539018Z 2024-08-06T21:19:53.6539237Z The reason for the two tables are that they handle different things: 2024-08-06T21:19:53.6539711Z 1.) the first table handles all tensor level information 2024-08-06T21:19:53.6540574Z 2.) the second table handles and displays all channel based information 2024-08-06T21:19:53.6541030Z 2024-08-06T21:19:53.6541369Z The reasoning for this is that having all the info in one table can make it ambiguous which collected 2024-08-06T21:19:53.6542248Z statistics are global, and which are actually per-channel, so it's better to split it up into two 2024-08-06T21:19:53.6543052Z tables. This also makes the information much easier to digest given the plethora of statistics collected 2024-08-06T21:19:53.6543534Z 2024-08-06T21:19:53.6543678Z Tensor table columns: 2024-08-06T21:19:53.6544198Z idx layer_fqn feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:19:53.6544724Z ---- --------- --------- --------- --------- --------- 2024-08-06T21:19:53.6545036Z 2024-08-06T21:19:53.6545144Z Per-Channel table columns: 2024-08-06T21:19:53.6545554Z idx layer_fqn channel feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:19:53.6546058Z ---- --------- ------- --------- --------- --------- --------- 2024-08-06T21:19:53.6546349Z 2024-08-06T21:19:53.6546432Z Args: 2024-08-06T21:19:53.6546938Z feature_filter (str, optional): Filters the features presented to only those that 2024-08-06T21:19:53.6547428Z contain this filter substring 2024-08-06T21:19:53.6547809Z Default = "", results in all the features being printed 2024-08-06T21:19:53.6548353Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:19:53.6548966Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:19:53.6549342Z 2024-08-06T21:19:53.6549453Z Returns a dictionary with two keys: 2024-08-06T21:19:53.6549841Z (Dict[str, Tuple[List, List]]) A dict containing two keys: 2024-08-06T21:19:53.6550253Z "tensor_level_info", "channel_level_info" 2024-08-06T21:19:53.6550583Z Each key maps to a tuple with: 2024-08-06T21:19:53.6550920Z A list of the headers of each table 2024-08-06T21:19:53.6551330Z A list of lists containing the table information row by row 2024-08-06T21:19:53.6551791Z The 0th index row will contain the headers of the columns 2024-08-06T21:19:53.6552202Z The rest of the rows will contain data 2024-08-06T21:19:53.6552434Z 2024-08-06T21:19:53.6552535Z Example Use: 2024-08-06T21:19:53.6552779Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:53.6553167Z >>> mod_report_visualizer.generate_filtered_tables( 2024-08-06T21:19:53.6553551Z ... feature_filter = "per_channel_min", 2024-08-06T21:19:53.6553881Z ... module_fqn_filter = "block1" 2024-08-06T21:19:53.6554374Z ... ) # generates table with per_channel_min info for all modules in block 1 of the model 2024-08-06T21:19:53.6554757Z 2024-08-06T21:19:53.6555021Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.6555387Z 2024-08-06T21:19:53.6556307Z msg = Cannot scrape callname=ModelReportVisualizer.generate_table_visualization in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=400. 2024-08-06T21:19:53.6557586Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.6557975Z 2024-08-06T21:19:53.6558249Z Takes in optional filter values and prints out formatted tables of the information. 2024-08-06T21:19:53.6558635Z 2024-08-06T21:19:53.6558987Z The reason for the two tables printed out instead of one large one are that they handle different things: 2024-08-06T21:19:53.6559601Z 1.) the first table handles all tensor level information 2024-08-06T21:19:53.6560097Z 2.) the second table handles and displays all channel based information 2024-08-06T21:19:53.6560425Z 2024-08-06T21:19:53.6560757Z The reasoning for this is that having all the info in one table can make it ambiguous which collected 2024-08-06T21:19:53.6561584Z statistics are global, and which are actually per-channel, so it's better to split it up into two 2024-08-06T21:19:53.6562393Z tables. This also makes the information much easier to digest given the plethora of statistics collected 2024-08-06T21:19:53.6563095Z 2024-08-06T21:19:53.6563197Z Tensor table columns: 2024-08-06T21:19:53.6563555Z idx layer_fqn feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:19:53.6564005Z ---- --------- --------- --------- --------- --------- 2024-08-06T21:19:53.6564284Z 2024-08-06T21:19:53.6564389Z Per-Channel table columns: 2024-08-06T21:19:53.6564567Z 2024-08-06T21:19:53.6564798Z idx layer_fqn channel feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:19:53.6565286Z ---- --------- ------- --------- --------- --------- --------- 2024-08-06T21:19:53.6565574Z 2024-08-06T21:19:53.6565658Z Args: 2024-08-06T21:19:53.6566046Z feature_filter (str, optional): Filters the features presented to only those that 2024-08-06T21:19:53.6566535Z contain this filter substring 2024-08-06T21:19:53.6566914Z Default = "", results in all the features being printed 2024-08-06T21:19:53.6567587Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:19:53.6568212Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:19:53.6568588Z 2024-08-06T21:19:53.6568680Z Example Use: 2024-08-06T21:19:53.6568946Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:53.6569339Z >>> mod_report_visualizer.generate_table_visualization( 2024-08-06T21:19:53.6569742Z ... feature_filter = "per_channel_min", 2024-08-06T21:19:53.6570089Z ... module_fqn_filter = "block1" 2024-08-06T21:19:53.6570382Z ... ) 2024-08-06T21:19:53.6570691Z >>> # prints out neatly formatted table with per_channel_min info 2024-08-06T21:19:53.6571132Z >>> # for all modules in block 1 of the model 2024-08-06T21:19:53.6571366Z 2024-08-06T21:19:53.6571630Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.6571993Z 2024-08-06T21:19:53.6572945Z msg = Cannot scrape callname=ModelReportVisualizer.generate_plot_visualization in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=565. 2024-08-06T21:19:53.6574200Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.6574590Z 2024-08-06T21:19:53.6574913Z Takes in a feature and optional module_filter and plots of the desired data. 2024-08-06T21:19:53.6575278Z 2024-08-06T21:19:53.6575549Z For per channel features, it averages the value across the channels and plots a point 2024-08-06T21:19:53.6576207Z per module. The reason for this is that for models with hundreds of channels, it can 2024-08-06T21:19:53.6576859Z be hard to differentiate one channel line from another, and so the point of generating 2024-08-06T21:19:53.6577536Z a single average point per module is to give a sense of general trends that encourage 2024-08-06T21:19:53.6578028Z further deep dives. 2024-08-06T21:19:53.6578178Z 2024-08-06T21:19:53.6578260Z Note: 2024-08-06T21:19:53.6578657Z Only features in the report that have tensor value data are plottable by this class 2024-08-06T21:19:53.6579211Z When the tensor information is plotted, it will plot: 2024-08-06T21:19:53.6579616Z idx as the x val, feature value as the y_val 2024-08-06T21:19:53.6580033Z When the channel information is plotted, it will plot: 2024-08-06T21:19:53.6580579Z the first idx of each module as the x val, feature value as the y_val [for each channel] 2024-08-06T21:19:53.6581187Z The reason for this is that we want to be able to compare values across the 2024-08-06T21:19:53.6581773Z channels for same layer, and it will be hard if values are staggered by idx 2024-08-06T21:19:53.6582302Z This means each module is represented by only 1 x value 2024-08-06T21:19:53.6582750Z Args: 2024-08-06T21:19:53.6583103Z feature_filter (str): Filters the features presented to only those that 2024-08-06T21:19:53.6583562Z contain this filter substring 2024-08-06T21:19:53.6584028Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:19:53.6584663Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:19:53.6585035Z 2024-08-06T21:19:53.6585124Z Example Use: 2024-08-06T21:19:53.6585381Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:53.6585769Z >>> mod_report_visualizer.generate_plot_visualization( 2024-08-06T21:19:53.6586164Z ... feature_filter = "per_channel_min", 2024-08-06T21:19:53.6586505Z ... module_fqn_filter = "block1" 2024-08-06T21:19:53.6586795Z ... ) 2024-08-06T21:19:53.6587095Z >>> # outputs line plot of per_channel_min information for all 2024-08-06T21:19:53.6587573Z >>> # modules in block1 of model each channel gets it's own line, 2024-08-06T21:19:53.6588040Z >>> # and it's plotted across the in-order modules on the x-axis 2024-08-06T21:19:53.6588336Z 2024-08-06T21:19:53.6588641Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.6589006Z 2024-08-06T21:19:53.6589949Z msg = Cannot scrape callname=ModelReportVisualizer.generate_histogram_visualization in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=645. 2024-08-06T21:19:53.6591229Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.6591613Z 2024-08-06T21:19:53.6591890Z Takes in a feature and optional module_filter and plots the histogram of desired data. 2024-08-06T21:19:53.6592295Z 2024-08-06T21:19:53.6592380Z Note: 2024-08-06T21:19:53.6592773Z Only features in the report that have tensor value data can be viewed as a histogram 2024-08-06T21:19:53.6593416Z If you want to plot a histogram from all the channel values of a specific feature for 2024-08-06T21:19:53.6594046Z a specific model, make sure to specify both the model and the feature properly 2024-08-06T21:19:53.6594664Z in the filters and you should be able to see a distribution of the channel data 2024-08-06T21:19:53.6595025Z 2024-08-06T21:19:53.6595107Z Args: 2024-08-06T21:19:53.6595488Z feature_filter (str, optional): Filters the features presented to only those that 2024-08-06T21:19:53.6595983Z contain this filter substring 2024-08-06T21:19:53.6596344Z Default = "", results in all the features being printed 2024-08-06T21:19:53.6596882Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:19:53.6597508Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:19:53.6598087Z num_bins (int, optional): The number of bins to create the histogram with 2024-08-06T21:19:53.6598623Z Default = 10, the values will be split into 10 equal sized bins 2024-08-06T21:19:53.6598938Z 2024-08-06T21:19:53.6599028Z Example Use: 2024-08-06T21:19:53.6599265Z >>> # xdoctest: +SKIP 2024-08-06T21:19:53.6599731Z >>> mod_report_visualizer.generategenerate_histogram_visualization_plot_visualization( 2024-08-06T21:19:53.6600275Z ... feature_filter = "per_channel_min", 2024-08-06T21:19:53.6600617Z ... module_fqn_filter = "block1" 2024-08-06T21:19:53.6600912Z ... ) 2024-08-06T21:19:53.6601308Z # outputs histogram of per_channel_min information for all modules in block1 of model 2024-08-06T21:19:53.6601961Z information is gathered across all channels for all modules in block 1 for the 2024-08-06T21:19:53.6602546Z per_channel_min and is displayed in a histogram of equally sized bins 2024-08-06T21:19:53.6602895Z 2024-08-06T21:19:53.6603145Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.6603569Z 2024-08-06T21:19:53.9811314Z msg = Cannot scrape callname=gather_object in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py line=2720. 2024-08-06T21:19:53.9812345Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.9812752Z 2024-08-06T21:19:53.9812980Z Gathers picklable objects from the whole group in a single process. 2024-08-06T21:19:53.9813329Z 2024-08-06T21:19:53.9813563Z Similar to :func:`gather`, but Python objects can be passed in. Note that the 2024-08-06T21:19:53.9814069Z object must be picklable in order to be gathered. 2024-08-06T21:19:53.9814324Z 2024-08-06T21:19:53.9814423Z Args: 2024-08-06T21:19:53.9814659Z obj (Any): Input object. Must be picklable. 2024-08-06T21:19:53.9815180Z object_gather_list (list[Any]): Output list. On the ``dst`` rank, it 2024-08-06T21:19:53.9815702Z should be correctly sized as the size of the group for this 2024-08-06T21:19:53.9816209Z collective and will contain the output. Must be ``None`` on non-dst 2024-08-06T21:19:53.9816662Z ranks. (default is ``None``) 2024-08-06T21:19:53.9817504Z dst (int, optional): Destination rank on global process group (regardless of ``group`` argument). (default is 0) 2024-08-06T21:19:53.9818228Z group: (ProcessGroup, optional): The process group to work on. If None, 2024-08-06T21:19:53.9818772Z the default process group will be used. Default is ``None``. 2024-08-06T21:19:53.9819072Z 2024-08-06T21:19:53.9819172Z Returns: 2024-08-06T21:19:53.9819467Z None. On the ``dst`` rank, ``object_gather_list`` will contain the 2024-08-06T21:19:53.9819874Z output of the collective. 2024-08-06T21:19:53.9820059Z 2024-08-06T21:19:53.9820304Z .. note:: Note that this API differs slightly from the gather collective 2024-08-06T21:19:53.9820840Z since it does not provide an async_op handle and thus will be a blocking 2024-08-06T21:19:53.9821351Z call. 2024-08-06T21:19:53.9821469Z 2024-08-06T21:19:53.9821723Z .. note:: For NCCL-based processed groups, internal tensor representations 2024-08-06T21:19:53.9822286Z of objects must be moved to the GPU device before communication takes 2024-08-06T21:19:53.9822755Z place. In this case, the device used is given by 2024-08-06T21:19:53.9823239Z ``torch.cuda.current_device()`` and it is the user's responsiblity to 2024-08-06T21:19:53.9823785Z ensure that this is set so that each rank has an individual GPU, via 2024-08-06T21:19:53.9824208Z ``torch.cuda.set_device()``. 2024-08-06T21:19:53.9824413Z 2024-08-06T21:19:53.9824502Z .. warning:: 2024-08-06T21:19:53.9824833Z :func:`gather_object` uses ``pickle`` module implicitly, which is 2024-08-06T21:19:53.9825355Z known to be insecure. It is possible to construct malicious pickle data 2024-08-06T21:19:53.9825914Z which will execute arbitrary code during unpickling. Only call this 2024-08-06T21:19:53.9826423Z function with data you trust. 2024-08-06T21:19:53.9826622Z 2024-08-06T21:19:53.9826717Z .. warning:: 2024-08-06T21:19:53.9827063Z Calling :func:`gather_object` with GPU tensors is not well supported 2024-08-06T21:19:53.9827634Z and inefficient as it incurs GPU -> CPU transfer since tensors would be 2024-08-06T21:19:53.9828140Z pickled. Please consider using :func:`gather` instead. 2024-08-06T21:19:53.9828430Z 2024-08-06T21:19:53.9828520Z Example:: 2024-08-06T21:19:53.9828786Z >>> # xdoctest: +SKIP("need process group init") 2024-08-06T21:19:53.9829209Z >>> # Note: Process group initialization omitted on each rank. 2024-08-06T21:19:53.9829629Z >>> import torch.distributed as dist 2024-08-06T21:19:53.9829965Z >>> # Assumes world_size of 3. 2024-08-06T21:19:53.9830331Z >>> gather_objects = ["foo", 12, {1: 2}] # any picklable object 2024-08-06T21:19:53.9830750Z >>> output = [None for _ in gather_objects] 2024-08-06T21:19:53.9831089Z >>> dist.gather_object( 2024-08-06T21:19:53.9831376Z ... gather_objects[dist.get_rank()], 2024-08-06T21:19:53.9831880Z ... output if dist.get_rank() == 0 else None, 2024-08-06T21:19:53.9832218Z ... dst=0 2024-08-06T21:19:53.9832435Z ... ) 2024-08-06T21:19:53.9832653Z >>> # On rank 0 2024-08-06T21:19:53.9832892Z >>> output 2024-08-06T21:19:53.9833108Z ['foo', 12, {1: 2}] 2024-08-06T21:19:53.9833273Z 2024-08-06T21:19:53.9833525Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:53.9833893Z 2024-08-06T21:19:53.9980280Z msg = Cannot scrape callname=__doc__ in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/launch.py line=2. 2024-08-06T21:19:53.9981306Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:53.9981776Z 2024-08-06T21:19:53.9981900Z Module ``torch.distributed.launch``. 2024-08-06T21:19:53.9982177Z 2024-08-06T21:19:53.9982480Z ``torch.distributed.launch`` is a module that spawns up multiple distributed 2024-08-06T21:19:53.9983042Z training processes on each of the training nodes. 2024-08-06T21:19:53.9983326Z 2024-08-06T21:19:53.9983440Z .. warning:: 2024-08-06T21:19:53.9983566Z 2024-08-06T21:19:53.9984007Z This module is going to be deprecated in favor of :ref:`torchrun `. 2024-08-06T21:19:53.9984401Z 2024-08-06T21:19:53.9984701Z The utility can be used for single-node distributed training, in which one or 2024-08-06T21:19:53.9985338Z more processes per node will be spawned. The utility can be used for either 2024-08-06T21:19:53.9985918Z CPU training or GPU training. If the utility is used for GPU training, 2024-08-06T21:19:53.9986563Z each distributed process will be operating on a single GPU. This can achieve 2024-08-06T21:19:53.9987227Z well-improved single-node training performance. It can also be used in 2024-08-06T21:19:53.9987886Z multi-node distributed training, by spawning up multiple processes on each node 2024-08-06T21:19:53.9988565Z for well-improved multi-node distributed training performance as well. 2024-08-06T21:19:53.9989208Z This will especially be beneficial for systems with multiple Infiniband 2024-08-06T21:19:53.9989816Z interfaces that have direct-GPU support, since all of them can be utilized for 2024-08-06T21:19:53.9990355Z aggregated communication bandwidth. 2024-08-06T21:19:53.9990578Z 2024-08-06T21:19:53.9990863Z In both cases of single-node distributed training or multi-node distributed 2024-08-06T21:19:53.9991509Z training, this utility will launch the given number of processes per node 2024-08-06T21:19:53.9992080Z (``--nproc-per-node``). If used for GPU training, this number needs to be less 2024-08-06T21:19:53.9992708Z or equal to the number of GPUs on the current system (``nproc_per_node``), 2024-08-06T21:19:53.9993307Z and each process will be operating on a single GPU from *GPU 0 to 2024-08-06T21:19:53.9993773Z GPU (nproc_per_node - 1)*. 2024-08-06T21:19:53.9993963Z 2024-08-06T21:19:53.9994064Z **How to use this module:** 2024-08-06T21:19:53.9994238Z 2024-08-06T21:19:53.9994398Z 1. Single-Node multi-process distributed training 2024-08-06T21:19:53.9994716Z 2024-08-06T21:19:53.9994810Z :: 2024-08-06T21:19:53.9994932Z 2024-08-06T21:19:53.9995178Z python -m torch.distributed.launch --nproc-per-node=NUM_GPUS_YOU_HAVE 2024-08-06T21:19:53.9995774Z YOUR_TRAINING_SCRIPT.py (--arg1 --arg2 --arg3 and all other 2024-08-06T21:19:53.9996294Z arguments of your training script) 2024-08-06T21:19:53.9996549Z 2024-08-06T21:19:53.9996826Z 2. Multi-Node multi-process distributed training: (e.g. two nodes) 2024-08-06T21:19:53.9997162Z 2024-08-06T21:19:53.9997166Z 2024-08-06T21:19:53.9997310Z Node 1: *(IP: 192.168.1.1, and has a free port: 1234)* 2024-08-06T21:19:53.9997609Z 2024-08-06T21:19:53.9997709Z :: 2024-08-06T21:19:53.9997817Z 2024-08-06T21:19:53.9998053Z python -m torch.distributed.launch --nproc-per-node=NUM_GPUS_YOU_HAVE 2024-08-06T21:19:53.9998628Z --nnodes=2 --node-rank=0 --master-addr="192.168.1.1" 2024-08-06T21:19:53.9999168Z --master-port=1234 YOUR_TRAINING_SCRIPT.py (--arg1 --arg2 --arg3 2024-08-06T21:19:53.9999774Z and all other arguments of your training script) 2024-08-06T21:19:54.0000091Z 2024-08-06T21:19:54.0000177Z Node 2: 2024-08-06T21:19:54.0000295Z 2024-08-06T21:19:54.0000396Z :: 2024-08-06T21:19:54.0000502Z 2024-08-06T21:19:54.0000794Z python -m torch.distributed.launch --nproc-per-node=NUM_GPUS_YOU_HAVE 2024-08-06T21:19:54.0001324Z --nnodes=2 --node-rank=1 --master-addr="192.168.1.1" 2024-08-06T21:19:54.0001843Z --master-port=1234 YOUR_TRAINING_SCRIPT.py (--arg1 --arg2 --arg3 2024-08-06T21:19:54.0002379Z and all other arguments of your training script) 2024-08-06T21:19:54.0002639Z 2024-08-06T21:19:54.0002801Z 3. To look up what optional arguments this module offers: 2024-08-06T21:19:54.0003140Z 2024-08-06T21:19:54.0003226Z :: 2024-08-06T21:19:54.0003334Z 2024-08-06T21:19:54.0003482Z python -m torch.distributed.launch --help 2024-08-06T21:19:54.0003782Z 2024-08-06T21:19:54.0003791Z 2024-08-06T21:19:54.0003890Z **Important Notices:** 2024-08-06T21:19:54.0004060Z 2024-08-06T21:19:54.0004245Z 1. This utility and multi-process distributed (single-node or 2024-08-06T21:19:54.0004922Z multi-node) GPU training currently only achieves the best performance using 2024-08-06T21:19:54.0005593Z the NCCL distributed backend. Thus NCCL backend is the recommended backend to 2024-08-06T21:19:54.0006120Z use for GPU training. 2024-08-06T21:19:54.0006274Z 2024-08-06T21:19:54.0006506Z 2. In your training program, you must parse the command-line argument: 2024-08-06T21:19:54.0007134Z ``--local-rank=LOCAL_PROCESS_RANK``, which will be provided by this module. 2024-08-06T21:19:54.0007757Z If your training program uses GPUs, you should ensure that your code only 2024-08-06T21:19:54.0008355Z runs on the GPU device of LOCAL_PROCESS_RANK. This can be done by: 2024-08-06T21:19:54.0008663Z 2024-08-06T21:19:54.0008785Z Parsing the local_rank argument 2024-08-06T21:19:54.0009010Z 2024-08-06T21:19:54.0009110Z :: 2024-08-06T21:19:54.0009229Z 2024-08-06T21:19:54.0009327Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.0009597Z >>> import argparse 2024-08-06T21:19:54.0009925Z >>> parser = argparse.ArgumentParser() 2024-08-06T21:19:54.0010358Z >>> parser.add_argument("--local-rank", "--local_rank", type=int) 2024-08-06T21:19:54.0010835Z >>> args = parser.parse_args() 2024-08-06T21:19:54.0011034Z 2024-08-06T21:19:54.0011156Z Set your device to local rank using either 2024-08-06T21:19:54.0011449Z 2024-08-06T21:19:54.0011532Z :: 2024-08-06T21:19:54.0011639Z 2024-08-06T21:19:54.0011851Z >>> torch.cuda.set_device(args.local_rank) # before your code runs 2024-08-06T21:19:54.0012221Z 2024-08-06T21:19:54.0012302Z or 2024-08-06T21:19:54.0012420Z 2024-08-06T21:19:54.0012502Z :: 2024-08-06T21:19:54.0012606Z 2024-08-06T21:19:54.0012756Z >>> with torch.cuda.device(args.local_rank): 2024-08-06T21:19:54.0013130Z >>> # your code to run 2024-08-06T21:19:54.0013399Z >>> ... 2024-08-06T21:19:54.0013555Z 2024-08-06T21:19:54.0013693Z .. versionchanged:: 2.0.0 2024-08-06T21:19:54.0013857Z 2024-08-06T21:19:54.0014133Z The launcher will passes the ``--local-rank=`` argument to your script. 2024-08-06T21:19:54.0014863Z From PyTorch 2.0.0 onwards, the dashed ``--local-rank`` is preferred over the 2024-08-06T21:19:54.0015431Z previously used underscored ``--local_rank``. 2024-08-06T21:19:54.0015692Z 2024-08-06T21:19:54.0015988Z For backward compatibility, it may be necessary for users to handle both 2024-08-06T21:19:54.0016625Z cases in their argument parsing code. This means including both ``"--local-rank"`` 2024-08-06T21:19:54.0017279Z and ``"--local_rank"`` in the argument parser. If only ``"--local_rank"`` is 2024-08-06T21:19:54.0017871Z provided, the launcher will trigger an error: "error: unrecognized arguments: 2024-08-06T21:19:54.0018540Z --local-rank=". For training code that only supports PyTorch 2.0.0+, 2024-08-06T21:19:54.0019115Z including ``"--local-rank"`` should be sufficient. 2024-08-06T21:19:54.0019391Z 2024-08-06T21:19:54.0019627Z 3. In your training program, you are supposed to call the following function 2024-08-06T21:19:54.0020233Z at the beginning to start the distributed backend. It is strongly recommended 2024-08-06T21:19:54.0020876Z that ``init_method=env://``. Other init methods (e.g. ``tcp://``) may work, 2024-08-06T21:19:54.0021407Z but ``env://`` is the one that is officially supported by this module. 2024-08-06T21:19:54.0021709Z 2024-08-06T21:19:54.0021811Z :: 2024-08-06T21:19:54.0021920Z 2024-08-06T21:19:54.0022142Z >>> torch.distributed.init_process_group(backend='YOUR BACKEND', 2024-08-06T21:19:54.0022594Z >>> init_method='env://') 2024-08-06T21:19:54.0022848Z 2024-08-06T21:19:54.0023086Z 4. In your training program, you can either use regular distributed functions 2024-08-06T21:19:54.0023689Z or use :func:`torch.nn.parallel.DistributedDataParallel` module. If your 2024-08-06T21:19:54.0024305Z training program uses GPUs for training and you would like to use 2024-08-06T21:19:54.0024823Z :func:`torch.nn.parallel.DistributedDataParallel` module, 2024-08-06T21:19:54.0025291Z here is how to configure it. 2024-08-06T21:19:54.0025472Z 2024-08-06T21:19:54.0025556Z :: 2024-08-06T21:19:54.0025674Z 2024-08-06T21:19:54.0025865Z >>> model = torch.nn.parallel.DistributedDataParallel(model, 2024-08-06T21:19:54.0026317Z >>> device_ids=[args.local_rank], 2024-08-06T21:19:54.0026707Z >>> output_device=args.local_rank) 2024-08-06T21:19:54.0026976Z 2024-08-06T21:19:54.0027218Z Please ensure that ``device_ids`` argument is set to be the only GPU device id 2024-08-06T21:19:54.0027814Z that your code will be operating on. This is generally the local rank of the 2024-08-06T21:19:54.0028402Z process. In other words, the ``device_ids`` needs to be ``[args.local_rank]``, 2024-08-06T21:19:54.0028969Z and ``output_device`` needs to be ``args.local_rank`` in order to use this 2024-08-06T21:19:54.0029391Z utility 2024-08-06T21:19:54.0029504Z 2024-08-06T21:19:54.0029763Z 5. Another way to pass ``local_rank`` to the subprocesses via environment variable 2024-08-06T21:19:54.0030336Z ``LOCAL_RANK``. This behavior is enabled when you launch the script with 2024-08-06T21:19:54.0030886Z ``--use-env=True``. You must adjust the subprocess example above to replace 2024-08-06T21:19:54.0031482Z ``args.local_rank`` with ``os.environ['LOCAL_RANK']``; the launcher 2024-08-06T21:19:54.0031956Z will not pass ``--local-rank`` when you specify this flag. 2024-08-06T21:19:54.0032254Z 2024-08-06T21:19:54.0032345Z .. warning:: 2024-08-06T21:19:54.0032471Z 2024-08-06T21:19:54.0032686Z ``local_rank`` is NOT globally unique: it is only unique per process 2024-08-06T21:19:54.0033185Z on a machine. Thus, don't use it to decide if you should, e.g., 2024-08-06T21:19:54.0033608Z write to a networked filesystem. See 2024-08-06T21:19:54.0034061Z https://github.com/pytorch/pytorch/issues/12042 for an example of 2024-08-06T21:19:54.0034544Z how things can go wrong if you don't do this correctly. 2024-08-06T21:19:54.0034830Z 2024-08-06T21:19:54.0034834Z 2024-08-06T21:19:54.0034838Z 2024-08-06T21:19:54.0034842Z 2024-08-06T21:19:54.0035092Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.0035466Z 2024-08-06T21:19:54.0617437Z msg = Cannot scrape callname=init_from_local_shards in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/__init__.py line=361. 2024-08-06T21:19:54.0618516Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.0618896Z 2024-08-06T21:19:54.0619150Z Creates an :class:`ShardedTensor` from local shards and the global metadata. 2024-08-06T21:19:54.0619645Z Needs to be called on all ranks in an SPMD fashion. 2024-08-06T21:19:54.0620198Z 2024-08-06T21:19:54.0620285Z Args: 2024-08-06T21:19:54.0620685Z local_shards (List[:class `torch.distributed._shard.sharded_tensor.Shard`]): A list 2024-08-06T21:19:54.0621251Z of shards that represent the local shards on this rank. 2024-08-06T21:19:54.0621772Z global_size (int...): a list, tuple, or `torch.Size` of integers defining the 2024-08-06T21:19:54.0622242Z shape of the overall sharded tensor. 2024-08-06T21:19:54.0622467Z 2024-08-06T21:19:54.0622558Z Keyword args: 2024-08-06T21:19:54.0622959Z process_group (ProcessGroup, optional): The process group to work on. If None, 2024-08-06T21:19:54.0623467Z the default process group will be used. 2024-08-06T21:19:54.0623866Z init_rrefs (bool, optional): Whether or not to initialize 2024-08-06T21:19:54.0624366Z :class:`torch.distributed.rpc.RRef`s pointing to remote shards. 2024-08-06T21:19:54.0624890Z Need to initialize the RPC Framework if specified as ``True``. 2024-08-06T21:19:54.0625292Z Default: ``False``. 2024-08-06T21:19:54.0625477Z 2024-08-06T21:19:54.0625563Z Returns: 2024-08-06T21:19:54.0625835Z A :class:`ShardedTensor` object handle on this rank 2024-08-06T21:19:54.0626093Z 2024-08-06T21:19:54.0626183Z 2024-08-06T21:19:54.0626286Z Examples: 2024-08-06T21:19:54.0626652Z Suppose we want construct a sharded tensor on two ranks, global size = (10, 5), 2024-08-06T21:19:54.0627212Z each shard have a (5, 5) local tensor, we can do it like below: 2024-08-06T21:19:54.0627508Z 2024-08-06T21:19:54.0627614Z on rank 0: 2024-08-06T21:19:54.0627856Z >>> # xdoctest: +SKIP("not distributed") 2024-08-06T21:19:54.0628213Z >>> local_shard_metadata = ShardMetadata( 2024-08-06T21:19:54.0628547Z >>> shard_offsets=[0, 0], 2024-08-06T21:19:54.0628831Z >>> shard_lengths=[5, 5], 2024-08-06T21:19:54.0629136Z >>> placement="rank:0/cuda:0" 2024-08-06T21:19:54.0629429Z >>> ) 2024-08-06T21:19:54.0629731Z >>> local_shards = [Shard(torch.randn(5, 5), local_shard_metadata)] 2024-08-06T21:19:54.0630242Z >>> sharded_tensor = init_from_local_shards(local_shards, [10, 5]) 2024-08-06T21:19:54.0630545Z 2024-08-06T21:19:54.0630644Z on rank 1: 2024-08-06T21:19:54.0630887Z >>> # xdoctest: +SKIP("not distributed") 2024-08-06T21:19:54.0631233Z >>> local_shard_metadata = ShardMetadata( 2024-08-06T21:19:54.0631562Z >>> shard_offsets=[5, 0], 2024-08-06T21:19:54.0631857Z >>> shard_lengths=[5, 5], 2024-08-06T21:19:54.0632160Z >>> placement="rank:1/cuda:1" 2024-08-06T21:19:54.0632455Z >>> ) 2024-08-06T21:19:54.0632757Z >>> local_shards = [Shard(torch.randn(5, 5), local_shard_metadata)] 2024-08-06T21:19:54.0633261Z >>> sharded_tensor = init_from_local_shards(local_shards, [10, 5]) 2024-08-06T21:19:54.0633564Z 2024-08-06T21:19:54.0633826Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.0634189Z 2024-08-06T21:19:54.0717434Z msg = Cannot scrape callname=ShardedTensor._init_from_local_tensor in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/api.py line=784. 2024-08-06T21:19:54.0718584Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.0718980Z 2024-08-06T21:19:54.0719240Z Initialize a ShardedTensor given only one local tensor, global sharded tensor 2024-08-06T21:19:54.0719739Z size and sharding spec on each rank. 2024-08-06T21:19:54.0719947Z 2024-08-06T21:19:54.0720030Z Args: 2024-08-06T21:19:54.0720376Z local_tensor (Tensor): Single tensor of local shard stored in each rank. 2024-08-06T21:19:54.0720987Z sharding_spec (:class:`torch.distributed._shard.sharding_spec.ShardingSpec`): 2024-08-06T21:19:54.0721534Z The specification describing how to shard the Tensor. 2024-08-06T21:19:54.0721974Z global_size (Sequence[int]): Size of the sharded tensor. 2024-08-06T21:19:54.0722515Z process_group (ProcessGroup, optional): The process group to aggregate on. 2024-08-06T21:19:54.0723135Z Default: None 2024-08-06T21:19:54.0723455Z init_rrefs (bool, optional): Whether or not to initialize 2024-08-06T21:19:54.0723961Z :class:`torch.distributed.rpc.RRef`s pointing to remote shards. 2024-08-06T21:19:54.0724492Z Need to initialize the RPC Framework if specified as ``True``. 2024-08-06T21:19:54.0724895Z Default: ``False``. 2024-08-06T21:19:54.0725150Z 2024-08-06T21:19:54.0725266Z Returns: 2024-08-06T21:19:54.0725775Z A :class:`ShardedTensor` sharded based on the given sharding_spec with local 2024-08-06T21:19:54.0726260Z tensor stored in the current rank. 2024-08-06T21:19:54.0726491Z 2024-08-06T21:19:54.0726608Z Examples: 2024-08-06T21:19:54.0726958Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.0727517Z >>> # All tensors below are of torch.int64 type. 2024-08-06T21:19:54.0727924Z >>> # We have 2 process groups, 2 ranks. 2024-08-06T21:19:54.0728333Z >>> tensor = torch.arange(2, dtype=torch.int64) + 1 + 2 * rank 2024-08-06T21:19:54.0728828Z >>> local_tensor = torch.unsqueeze(torch.cat([tensor, tensor + 2])) 2024-08-06T21:19:54.0729319Z >>> local_tensor 2024-08-06T21:19:54.0729575Z tensor([[1, 2, 3, 4]]) # Rank 0 2024-08-06T21:19:54.0729970Z tensor([[3, 4, 5, 6]]) # Rank 1 2024-08-06T21:19:54.0730272Z >>> sharding_dim = 0 2024-08-06T21:19:54.0730568Z >>> sharding_spec = ChunkShardingSpec( 2024-08-06T21:19:54.0730886Z dim=sharding_dim, 2024-08-06T21:19:54.0731170Z placements=[ 2024-08-06T21:19:54.0731442Z "rank:0/cuda:0", 2024-08-06T21:19:54.0731711Z "rank:1/cuda:1", 2024-08-06T21:19:54.0731980Z ], 2024-08-06T21:19:54.0732185Z ) 2024-08-06T21:19:54.0732568Z >>> st = ShardedTensor._init_from_local_tensor(local_tensor, sharding_spec, [2, 4]) 2024-08-06T21:19:54.0733035Z >>> st 2024-08-06T21:19:54.0733241Z ShardedTensor( 2024-08-06T21:19:54.0733498Z ShardedTensorMetadata( 2024-08-06T21:19:54.0733786Z shards_metadata=[ 2024-08-06T21:19:54.0734232Z ShardMetadata(shard_offsets=[0, 0], shard_sizes=[1, 4], placement=rank:0/cuda:0), 2024-08-06T21:19:54.0734977Z ShardMetadata(shard_offsets=[1, 0], shard_sizes=[1, 4], placement=rank:1/cuda:1), 2024-08-06T21:19:54.0735446Z ], 2024-08-06T21:19:54.0735671Z size=torch.Size([2, 4]) 2024-08-06T21:19:54.0735964Z ) 2024-08-06T21:19:54.0736178Z >>> st.local_tensor() 2024-08-06T21:19:54.0736436Z tensor([1, 2, 3, 4]) # Rank 0 2024-08-06T21:19:54.0736728Z tensor([3, 4, 5, 6]) # Rank 1 2024-08-06T21:19:54.0736911Z 2024-08-06T21:19:54.0737193Z Warning: This API is experimental and subject to change. It lacks of a fully across 2024-08-06T21:19:54.0737820Z rank validations, and we only validate the local shard on the current rank. 2024-08-06T21:19:54.0738398Z We fully rely on the user to ensure local tensor is sharded based on the 2024-08-06T21:19:54.0738829Z sharding spec. 2024-08-06T21:19:54.0738989Z 2024-08-06T21:19:54.0739254Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.0739617Z 2024-08-06T21:19:54.0740334Z msg = Cannot scrape callname=ShardedTensor.reshard in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/api.py line=1023. 2024-08-06T21:19:54.0741369Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.0741755Z 2024-08-06T21:19:54.0742003Z Reshard a sharded tensor given the ``resharding_spec``. For now, we only support 2024-08-06T21:19:54.0742467Z single local shard. 2024-08-06T21:19:54.0742612Z 2024-08-06T21:19:54.0742831Z If ``resharding_spec`` is same as the original one, this becomes a no-op. 2024-08-06T21:19:54.0743418Z If only ``resharding_spec`` shares the same sharding dim with the original one, 2024-08-06T21:19:54.0743897Z we swap local shards directly. 2024-08-06T21:19:54.0744338Z For more generic cases, we merge different shards across different ranks and split 2024-08-06T21:19:54.0745052Z the local shards based on the ``resharding_spec`` via `all_to_all` collective API. 2024-08-06T21:19:54.0745436Z 2024-08-06T21:19:54.0745526Z Args: 2024-08-06T21:19:54.0745940Z resharding_spec (:class:`torch.distributed._shard.sharding_spec.ShardingSpec`): The 2024-08-06T21:19:54.0746504Z specification describing how the tensor is sharded. 2024-08-06T21:19:54.0746791Z 2024-08-06T21:19:54.0746877Z Returns: 2024-08-06T21:19:54.0747207Z A :class:`ShardedTensor` object whose local shards are resharded. 2024-08-06T21:19:54.0747523Z 2024-08-06T21:19:54.0747613Z Examples: 2024-08-06T21:19:54.0747834Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.0748120Z >>> # We have 2 process groups, 2 ranks. 2024-08-06T21:19:54.0748514Z >>> tensor = torch.arange(4, dtype=torch.int64) + 1 + 2 * rank 2024-08-06T21:19:54.0748927Z >>> tensor = torch.stack([tensor, tensor]) 2024-08-06T21:19:54.0749247Z >>> tensor 2024-08-06T21:19:54.0749487Z tensor([[1, 2, 3, 4], [1, 2, 3, 4]]) # Rank 0 2024-08-06T21:19:54.0749833Z tensor([[3, 4, 5, 6], [3, 4, 5, 6]]) # Rank 1 2024-08-06T21:19:54.0750239Z tensor([[5, 6, 7, 8], [5, 6, 7, 8]]) # Rank 2 2024-08-06T21:19:54.0750576Z tensor([[7, 8, 9, 10], [7, 8, 9, 10]]) # Rank 3 2024-08-06T21:19:54.0750911Z >>> sharding_dim = 0 2024-08-06T21:19:54.0751188Z >>> spec = ChunkShardingSpec( 2024-08-06T21:19:54.0751482Z dim=sharding_dim, 2024-08-06T21:19:54.0751763Z placements=[ 2024-08-06T21:19:54.0752029Z "rank:0/cuda:0", 2024-08-06T21:19:54.0752301Z "rank:1/cuda:1", 2024-08-06T21:19:54.0752582Z "rank:2/cuda:2", 2024-08-06T21:19:54.0752849Z "rank:3/cuda:3", 2024-08-06T21:19:54.0753120Z ], 2024-08-06T21:19:54.0753336Z ) 2024-08-06T21:19:54.0753545Z >>> current_offsets = [0] * 2 2024-08-06T21:19:54.0753847Z >>> current_offsets[0] = rank * 2 2024-08-06T21:19:54.0754177Z >>> shard_metadata = ShardMetadata( 2024-08-06T21:19:54.0754533Z shard_offsets=copy.deepcopy(current_offsets), 2024-08-06T21:19:54.0754902Z shard_sizes=tensor.size(), 2024-08-06T21:19:54.0755245Z placement=spec.placements[rank], 2024-08-06T21:19:54.0755552Z ) 2024-08-06T21:19:54.0755771Z >>> local_shards = [ 2024-08-06T21:19:54.0756028Z Shard( 2024-08-06T21:19:54.0756256Z tensor=tensor, 2024-08-06T21:19:54.0756549Z metadata=shard_metadata, 2024-08-06T21:19:54.0756853Z ) 2024-08-06T21:19:54.0757059Z ] 2024-08-06T21:19:54.0757408Z >>> st = ShardedTensor._init_from_local_shards(local_shards, tensor.size()) 2024-08-06T21:19:54.0757853Z >>> sharding_dim = 1 2024-08-06T21:19:54.0758131Z >>> resharding_spec = ChunkShardingSpec( 2024-08-06T21:19:54.0758463Z dim=sharding_dim, 2024-08-06T21:19:54.0758743Z placements=[ 2024-08-06T21:19:54.0758994Z "rank:0/cuda:0", 2024-08-06T21:19:54.0759298Z "rank:1/cuda:1", 2024-08-06T21:19:54.0759581Z "rank:2/cuda:2", 2024-08-06T21:19:54.0759854Z "rank:3/cuda:3", 2024-08-06T21:19:54.0760133Z ], 2024-08-06T21:19:54.0760342Z ) 2024-08-06T21:19:54.0760578Z >>> st.reshard(resharding_spec) 2024-08-06T21:19:54.0760904Z >>> tensor = st.local_shards()[0].tensor 2024-08-06T21:19:54.0761206Z >>> tensor 2024-08-06T21:19:54.0761483Z tensor([[1], [1], [3], [3], [5], [5], [7], [7]]) # Rank 0 2024-08-06T21:19:54.0761886Z tensor([[2], [2], [4], [4], [6], [6], [8], [8]]) # Rank 1 2024-08-06T21:19:54.0762271Z tensor([[3], [3], [5], [5], [7], [7], [9], [9]]) # Rank 2 2024-08-06T21:19:54.0762672Z tensor([[4], [4], [6], [6], [8], [8], [10], [10]]) # Rank 3 2024-08-06T21:19:54.0763166Z 2024-08-06T21:19:54.0763442Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.0763815Z 2024-08-06T21:19:54.0857330Z msg = Cannot scrape callname=ShardingPlan in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharding_plan/api.py line=12. 2024-08-06T21:19:54.0858340Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.0858734Z 2024-08-06T21:19:54.0858952Z Representation of a sharding plan, describes how to shard a module 2024-08-06T21:19:54.0859562Z across hosts. `plan` is used to shard module parameters according to the spec provided, 2024-08-06T21:19:54.0860247Z `output_plan` and `return_local_tensor` are optional, they are used to specify the output 2024-08-06T21:19:54.0860894Z layout of a module with a spec, and when to convert back to data parallel fashion. 2024-08-06T21:19:54.0861279Z 2024-08-06T21:19:54.0861362Z Args: 2024-08-06T21:19:54.0861750Z plan (Dict[str, Union[:class:`torch.distributed._shard.sharding_spec.ShardingSpec`, 2024-08-06T21:19:54.0862296Z :class:`torch.distributed._shard.sharder.Sharder`]): 2024-08-06T21:19:54.0863085Z a dict describes how to shard a module, there're currently two ways to shard a module: 2024-08-06T21:19:54.0863914Z 1. directly shard a module parameter by a `ShardingSpec`, keyed by the name of 2024-08-06T21:19:54.0864401Z a parameter to a `ShardingSpec`. 2024-08-06T21:19:54.0864899Z 2. shard a submodule by applying a `Sharder` on it, keyed by the name of a module 2024-08-06T21:19:54.0865381Z to a `Sharder` object. 2024-08-06T21:19:54.0865912Z output_plan (Dict[str, :class:`torch.distributed._shard.sharding_spec.ShardingSpec`), optional): 2024-08-06T21:19:54.0866624Z a dict specifies the layout of a module's output which produces a ShardedTensor, 2024-08-06T21:19:54.0867243Z keyed by the name of module to ShardingSpec("" in key means the root module). 2024-08-06T21:19:54.0867699Z Default: `None` 2024-08-06T21:19:54.0868101Z return_local_tensor (List[str], optional): a list of string, each element enables 2024-08-06T21:19:54.0868723Z a module's sharded output to be returned as a Tensor from its local shards to 2024-08-06T21:19:54.0869343Z ensure further processing in a data parallel fashion. ("" in list means the 2024-08-06T21:19:54.0869798Z root module). 2024-08-06T21:19:54.0870046Z Default: None 2024-08-06T21:19:54.0870291Z Example: 2024-08-06T21:19:54.0870688Z Suppose we want to shard a module with two linear layers and then run it with DDP, we also 2024-08-06T21:19:54.0871378Z want to convert the output of the second linear layer back to DDP, we can do it as follows: 2024-08-06T21:19:54.0871777Z 2024-08-06T21:19:54.0871957Z >>> # xdoctest: +REQUIRES(module:torch._C._distributed_c10d) 2024-08-06T21:19:54.0872337Z >>> class MyModule(nn.Module): 2024-08-06T21:19:54.0872654Z >>> def __init__(self) -> None: 2024-08-06T21:19:54.0872971Z >>> super().__init__() 2024-08-06T21:19:54.0873261Z >>> self.fc1 = nn.Linear() 2024-08-06T21:19:54.0873574Z >>> self.gelu = nn.GELU() 2024-08-06T21:19:54.0873882Z >>> self.fc2 = nn.Linear() 2024-08-06T21:19:54.0874179Z >>> self.relu = nn.Linear() 2024-08-06T21:19:54.0874478Z >>> 2024-08-06T21:19:54.0874704Z >>> def forward(self, input): 2024-08-06T21:19:54.0875072Z >>> return self.relu(self.fc2(self.gelu(self.fc1(input)))) 2024-08-06T21:19:54.0875372Z 2024-08-06T21:19:54.0875377Z 2024-08-06T21:19:54.0875504Z >>> # xdoctest: +SKIP("Undefined spec1, spec2) 2024-08-06T21:19:54.0875861Z >>> sharding_plan = ShardingPlan( 2024-08-06T21:19:54.0876151Z >>> plan={ 2024-08-06T21:19:54.0876394Z >>> "fc1.weight": spec1, 2024-08-06T21:19:54.0876698Z >>> "fc2.weight": spec2 2024-08-06T21:19:54.0876971Z >>> }, 2024-08-06T21:19:54.0877196Z >>> output_plan={ 2024-08-06T21:19:54.0877463Z >>> "fc2": output_spec 2024-08-06T21:19:54.0877728Z >>> }, 2024-08-06T21:19:54.0877963Z >>> return_local_tensor=["fc2"] 2024-08-06T21:19:54.0878367Z >>> ) 2024-08-06T21:19:54.0878484Z 2024-08-06T21:19:54.0878737Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.0879119Z 2024-08-06T21:19:54.1463485Z msg = Cannot scrape callname=local_map in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/experimental/local_map.py line=30. 2024-08-06T21:19:54.1465386Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.1465900Z 2024-08-06T21:19:54.1466157Z ``local_map`` is an experimental API that allows users to apply on :class:`DTensors` 2024-08-06T21:19:54.1466785Z a function that is written to be applied on :class:`~torch.Tensors`. 2024-08-06T21:19:54.1467123Z 2024-08-06T21:19:54.1467206Z Args: 2024-08-06T21:19:54.1467535Z func (Callable): the function to be applied on each local shard of 2024-08-06T21:19:54.1467957Z :class:`DTensor`s. 2024-08-06T21:19:54.1468362Z out_placements (Union[`PlacementType`, Tuple[`PlacementType`, ...]]): 2024-08-06T21:19:54.1468957Z the desired placements of the :class:`DTensor`s in `func`'s flattened output. 2024-08-06T21:19:54.1469742Z If the flattened `output` is a single value, the `out_placements` should be 2024-08-06T21:19:54.1470326Z of type `PlacementType`. Otherwise if the flattened `output` has multiple 2024-08-06T21:19:54.1470935Z values, the `out_placements` should be a tuple of `PlacementType` values 1:1 2024-08-06T21:19:54.1471425Z mapping to the flattened `output`. 2024-08-06T21:19:54.1471845Z Besides, for :class:`Tensor` output, we use `PlacementType` as its 2024-08-06T21:19:54.1472402Z placements (a `Tuple[Placement]` value). For non-:class:`Tensor` output, 2024-08-06T21:19:54.1472873Z the `PlacementType` should be `None`. 2024-08-06T21:19:54.1473331Z Note that the only exception is when no :class:`DTensor` argument is passed 2024-08-06T21:19:54.1473922Z in. In this case, even if `out_placements` is not `None`, the result function 2024-08-06T21:19:54.1474504Z should ignore the desired placements because the application is not on 2024-08-06T21:19:54.1474948Z :class:`DTensors`. 2024-08-06T21:19:54.1475421Z in_placements (Tuple[`PlacementType`, ...], optional): 2024-08-06T21:19:54.1476124Z the required placements of the :class:`DTensor`s in `func`'s flattened input. 2024-08-06T21:19:54.1477090Z If `in_placements` is specified, `local_map` would examine whether the 2024-08-06T21:19:54.1477736Z placements of each :class:`DTensor` argument is the same as the required 2024-08-06T21:19:54.1478269Z placements or not. If the placements are not the same and 2024-08-06T21:19:54.1478797Z `redistribute_inputs` is `False`, an exception will be raised. Otherwise if 2024-08-06T21:19:54.1479402Z `redistribute_inputs` is `True`, the argument will be first redistributed to 2024-08-06T21:19:54.1480034Z the required sharding placements before passing its local tensor to `func`. 2024-08-06T21:19:54.1480631Z The only exception is when required placements are not `None` and the 2024-08-06T21:19:54.1481205Z argument is a :class:`torch.Tensor`. In this case, the placements examination 2024-08-06T21:19:54.1481776Z will be skipped and the argument will be directly passed to `func`. 2024-08-06T21:19:54.1482330Z If `in_placements` is `None`, no placements examination will be performed. 2024-08-06T21:19:54.1482763Z Default: `None` 2024-08-06T21:19:54.1483064Z device_mesh (:class:`DeviceMesh`, optional): 2024-08-06T21:19:54.1483525Z the device mesh that all the :class:`DTensor`s are placed on. If not 2024-08-06T21:19:54.1484083Z specified, this will be inferred from the input :class:`DTensor`s' device 2024-08-06T21:19:54.1484675Z mesh. `local_map` requires every :class:`DTensor`s to be placed on the same 2024-08-06T21:19:54.1485149Z device mesh. Default: `None`. 2024-08-06T21:19:54.1485592Z redistribute_inputs (bool, optional): 2024-08-06T21:19:54.1486082Z the bool value indicating whether to reshard the input :class:`DTensor`s when 2024-08-06T21:19:54.1486713Z their placements are different from the required input placements. If this 2024-08-06T21:19:54.1487303Z value is `False` and some :class:`DTensor` input has a different placement, 2024-08-06T21:19:54.1487802Z an exception will be raised. Default: `False`. 2024-08-06T21:19:54.1488053Z 2024-08-06T21:19:54.1488154Z Returns: 2024-08-06T21:19:54.1488521Z A `Callable` that applies `func` to each local shard of the input :class:`DTensor` 2024-08-06T21:19:54.1489141Z and returns a :class:`DTensor` constructed from the return value of `func`. 2024-08-06T21:19:54.1489506Z 2024-08-06T21:19:54.1489594Z Raises: 2024-08-06T21:19:54.1489972Z AssertionError: If the input :class:`DTensor`s are not placed on the same device 2024-08-06T21:19:54.1490574Z mesh, or if they are placed on a different device mesh than the `device_mesh` 2024-08-06T21:19:54.1491025Z argument passed in. 2024-08-06T21:19:54.1491187Z 2024-08-06T21:19:54.1491533Z AssertionError: For any non-:class:`DTensor` output, we require its corresponding 2024-08-06T21:19:54.1492168Z output placement in `out_placements` be `None`. An AssertionError will be raised 2024-08-06T21:19:54.1492651Z if this is not the case. 2024-08-06T21:19:54.1492828Z 2024-08-06T21:19:54.1493097Z ValueError: If `redistribute_inputs=False` but the input :class:`DTensor` needs 2024-08-06T21:19:54.1493607Z a redistribution according to `in_placements`. 2024-08-06T21:19:54.1493873Z 2024-08-06T21:19:54.1493959Z Example: 2024-08-06T21:19:54.1494192Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:54.1494539Z >>> def mm_allreduce_forward(device_mesh, W, X): 2024-08-06T21:19:54.1495010Z >>> partial_sum_tensor = torch.mm(W, X) 2024-08-06T21:19:54.1495484Z >>> reduced_tensor = funcol.all_reduce(partial_sum_tensor, "sum", device_mesh) 2024-08-06T21:19:54.1495944Z >>> return reduced_tensor 2024-08-06T21:19:54.1496233Z >>> 2024-08-06T21:19:54.1496484Z >>> W = torch.randn(12, 8, requires_grad=False) 2024-08-06T21:19:54.1496836Z >>> X = torch.randn(8, 16, requires_grad=False) 2024-08-06T21:19:54.1497171Z >>> Y = torch.mm(W, X) 2024-08-06T21:19:54.1497532Z >>> row_wise = [Shard(0)] # row-wise sharding placements on 1-d mesh 2024-08-06T21:19:54.1498013Z >>> col_wise = [Shard(1)] # col-wise sharding placements on 1-d mesh 2024-08-06T21:19:54.1498408Z >>> 2024-08-06T21:19:54.1498801Z >>> # local_mm_allreduce_forward is the function wrapped with DTensor/Tensor convertion 2024-08-06T21:19:54.1499301Z >>> local_mm_allreduce_forward = local_map( 2024-08-06T21:19:54.1499644Z >>> mm_allreduce_forward, 2024-08-06T21:19:54.1499956Z >>> out_placements=[Replicate()], 2024-08-06T21:19:54.1500287Z >>> in_placements=[col_wise, row_wise], 2024-08-06T21:19:54.1500626Z >>> device_mesh=device_mesh, 2024-08-06T21:19:54.1500915Z >>> ) 2024-08-06T21:19:54.1501107Z >>> 2024-08-06T21:19:54.1501486Z >>> W_dt = distribute_tensor(W, device_mesh, (col_wise)) # col-wisely sharded W tensor 2024-08-06T21:19:54.1502117Z >>> X_dt = distribute_tensor(X, device_mesh, (row_wise)) # row-wisely sharded X tensor 2024-08-06T21:19:54.1502805Z >>> Y_dt = local_mm_allreduce_forward(device_mesh, W_dt, X_dt) # apply local_mm_allreduce_forward to DTensors 2024-08-06T21:19:54.1503259Z 2024-08-06T21:19:54.1503446Z NOTE: This API is currently experimental and subject to change 2024-08-06T21:19:54.1503758Z 2024-08-06T21:19:54.1504008Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.1504373Z 2024-08-06T21:19:54.1505123Z msg = Cannot scrape callname=register_sharding in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/experimental/register_sharding.py line=22. 2024-08-06T21:19:54.1506276Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.1506650Z 2024-08-06T21:19:54.1506917Z ``register_sharding`` is an experimental API that allows users to register sharding 2024-08-06T21:19:54.1507577Z strategies for an operator when the tensor inputs and outputs are :class:`DTensor`s. 2024-08-06T21:19:54.1508224Z It can be useful when: (1) there doesn't exist a default sharding strategy for ``op``, 2024-08-06T21:19:54.1508828Z e.g. when ``op`` is a custom operator that is not supported by :class:`DTensor`; (2) 2024-08-06T21:19:54.1509466Z when users would like to overwrite default sharding strategies of existing operators. 2024-08-06T21:19:54.1509857Z 2024-08-06T21:19:54.1509954Z Args: 2024-08-06T21:19:54.1510186Z op (Union[OpOverload, List[OpOverload]]): 2024-08-06T21:19:54.1510620Z An op or a list of ops to register the customized sharding function. 2024-08-06T21:19:54.1510928Z 2024-08-06T21:19:54.1511028Z Returns: 2024-08-06T21:19:54.1511405Z A function decorator which can be used to wrap a function that defines the sharding 2024-08-06T21:19:54.1512128Z strategy for the operator specified in ``op``. The defined sharding strategy will be 2024-08-06T21:19:54.1512799Z registered to DTensor and will override the default sharding strategy if DTensor has 2024-08-06T21:19:54.1513498Z already implemented the operator. The customized sharding function takes the same inputs 2024-08-06T21:19:54.1514154Z as the original op (except that if an arg is a :class:`torch.Tensor`, it will be 2024-08-06T21:19:54.1514788Z replaced by a tensor-like object that DTensor uses internally). The function should 2024-08-06T21:19:54.1515457Z return a sequence of 2-tuples, each specifying acceptable output placements and its 2024-08-06T21:19:54.1515956Z corresponding intput placements. 2024-08-06T21:19:54.1516182Z 2024-08-06T21:19:54.1516269Z Example: 2024-08-06T21:19:54.1516501Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:54.1516845Z >>> @register_sharding(aten._softmax.default) 2024-08-06T21:19:54.1517244Z >>> def custom_softmax_sharding(x, dim, half_to_float): 2024-08-06T21:19:54.1517660Z >>> softmax_dim = dim if dim >= 0 else dim + x.ndim 2024-08-06T21:19:54.1518016Z >>> acceptable_shardings = [] 2024-08-06T21:19:54.1518314Z >>> 2024-08-06T21:19:54.1518607Z >>> all_replicate = ([Replicate()], [Replicate(), None, None]) 2024-08-06T21:19:54.1519032Z >>> acceptable_shardings.append(all_replicate) 2024-08-06T21:19:54.1519371Z >>> 2024-08-06T21:19:54.1519605Z >>> for sharding_dim in range(x.ndim): 2024-08-06T21:19:54.1519938Z >>> if sharding_dim != softmax_dim: 2024-08-06T21:19:54.1520267Z >>> all_sharded = ( 2024-08-06T21:19:54.1520577Z >>> [Shard(sharding_dim)], 2024-08-06T21:19:54.1520915Z >>> [Shard(sharding_dim), None, None], 2024-08-06T21:19:54.1521248Z >>> ) 2024-08-06T21:19:54.1521544Z >>> acceptable_shardings.append(all_sharded) 2024-08-06T21:19:54.1521873Z >>> 2024-08-06T21:19:54.1522106Z >>> return acceptable_shardings 2024-08-06T21:19:54.1522322Z 2024-08-06T21:19:54.1522584Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.1522951Z 2024-08-06T21:19:54.2231355Z msg = Cannot scrape callname=post_localSGD_hook in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/post_localSGD_hook.py line=72. 2024-08-06T21:19:54.2232516Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2232908Z 2024-08-06T21:19:54.2233021Z Run post-localSGD algorithm. 2024-08-06T21:19:54.2233207Z 2024-08-06T21:19:54.2233453Z This DDP communication hook is used for running post-localSGD algorithm, 2024-08-06T21:19:54.2233955Z by combining with a model averaging component (e.g., 2024-08-06T21:19:54.2234793Z :class:`~torch.distributed.algorithms.model_averaging.averagers.PeriodicModelAverager`) 2024-08-06T21:19:54.2235374Z that runs after the optimizer step. 2024-08-06T21:19:54.2235583Z 2024-08-06T21:19:54.2235673Z Args: 2024-08-06T21:19:54.2236022Z state (PostLocalSGDState): State information to run post-localSGD. 2024-08-06T21:19:54.2236644Z Users mainly need to tune ``start_localSGD_iter`` to determine when to start local SGD. 2024-08-06T21:19:54.2237630Z bucket (dist.GradBucket): Bucket that stores a 1D flattened gradient tensor that batches multiple per-variable tensors. 2024-08-06T21:19:54.2238476Z Note that since DDP comm hook only supports single process single device mode, 2024-08-06T21:19:54.2239003Z only exactly one tensor is stored in this bucket. 2024-08-06T21:19:54.2239264Z 2024-08-06T21:19:54.2239367Z Returns: 2024-08-06T21:19:54.2239721Z Future handler of the communication, which updates the gradients in place. 2024-08-06T21:19:54.2240089Z 2024-08-06T21:19:54.2240200Z Example:: 2024-08-06T21:19:54.2240427Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.2240845Z >>> state = PostLocalSGDState(process_group=process_group, subgroup=subgroup, 2024-08-06T21:19:54.2241587Z start_localSGD_iter=10) 2024-08-06T21:19:54.2242006Z >>> ddp_model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:19:54.2242625Z >>> # Also need to establish a model averaging module and run model averaging after ``optimizer.step()``. 2024-08-06T21:19:54.2243431Z >>> # Please refer to the examples in ``torch.distributed.algorithms.model_averaging.averagers`` module. 2024-08-06T21:19:54.2243890Z 2024-08-06T21:19:54.2244156Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2244523Z 2024-08-06T21:19:54.2278130Z msg = Cannot scrape callname=powerSGD_hook in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/powerSGD_hook.py line=342. 2024-08-06T21:19:54.2279240Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2279633Z 2024-08-06T21:19:54.2279749Z Implement PowerSGD algorithm. 2024-08-06T21:19:54.2279943Z 2024-08-06T21:19:54.2280190Z This DDP communication hook implements PowerSGD gradient compression 2024-08-06T21:19:54.2280787Z algorithm described in the `paper `_. 2024-08-06T21:19:54.2281441Z Once gradient tensors are aggregated across all workers, this hook applies 2024-08-06T21:19:54.2281904Z compression as follows: 2024-08-06T21:19:54.2282066Z 2024-08-06T21:19:54.2282514Z 1. Views the input flattened 1D gradient tensor as a list of per-parameter tensors, and divides all the tensors into two groups: 2024-08-06T21:19:54.2283065Z 2024-08-06T21:19:54.2283484Z 1.1 The tensors that should be compressed before allreduce, because the compression can give enough saving in bandwidth. 2024-08-06T21:19:54.2284024Z 2024-08-06T21:19:54.2284430Z 1.2 Rest of the tensors will be directly allreduced without compression, including all the vector tensors (for biases). 2024-08-06T21:19:54.2284968Z 2024-08-06T21:19:54.2285078Z 2. Handles uncompressed tensors: 2024-08-06T21:19:54.2285279Z 2024-08-06T21:19:54.2285799Z 2.1. Allocate contiguous memory for those uncompressed tensors, and allreduces all the uncompressed tensors as a batch, without compression; 2024-08-06T21:19:54.2286423Z 2024-08-06T21:19:54.2286765Z 2.2. Copies the individual uncompressed tensors from the contiguous memory back to the input tensor. 2024-08-06T21:19:54.2287233Z 2024-08-06T21:19:54.2287465Z 3. Handles the tensors that should be compressed by PowerSGD compression: 2024-08-06T21:19:54.2287811Z 2024-08-06T21:19:54.2288062Z 3.1. For each tensor M, creates two low-rank tensors P and Q for decomposing M, 2024-08-06T21:19:54.2288745Z such that M = PQ^T, where Q is initialized from a standard normal distribution and orthogonalized; 2024-08-06T21:19:54.2289168Z 2024-08-06T21:19:54.2289501Z 3.2. Computes each P in Ps, which is equal to MQ; 2024-08-06T21:19:54.2289770Z 2024-08-06T21:19:54.2289881Z 3.3. Allreduces Ps as a batch; 2024-08-06T21:19:54.2290081Z 2024-08-06T21:19:54.2290216Z 3.4. Orthogonalizes each P in Ps; 2024-08-06T21:19:54.2290428Z 2024-08-06T21:19:54.2290625Z 3.5. Computes each Q in Qs, which is approximately equal to M^TP; 2024-08-06T21:19:54.2290963Z 2024-08-06T21:19:54.2291071Z 3.6. Allreduces Qs as a batch; 2024-08-06T21:19:54.2291281Z 2024-08-06T21:19:54.2291578Z 3.7. Computes each M among all the compressed tensors, which is approximately equal to PQ^T. 2024-08-06T21:19:54.2291987Z 2024-08-06T21:19:54.2292411Z Note that this communication hook enforces vanilla allreduce for the first ``state.start_powerSGD_iter`` iterations. 2024-08-06T21:19:54.2293210Z This not only gives the user more control over the tradeoff between speedup and accuracy, 2024-08-06T21:19:54.2294054Z but also helps abstract away some complexity of the internal optimization of DDP for future communication hook developers. 2024-08-06T21:19:54.2294674Z 2024-08-06T21:19:54.2294771Z Args: 2024-08-06T21:19:54.2295474Z state (PowerSGDState): State information to configure the compression rate and support error feedback, warm start, etc. 2024-08-06T21:19:54.2296395Z To tune the compression configs, mainly need to tune ``matrix_approximation_rank``, ``start_powerSGD_iter`` 2024-08-06T21:19:54.2296994Z and ``min_compression_rate``. 2024-08-06T21:19:54.2297636Z bucket (dist.GradBucket): Bucket that stores a 1D flattened gradient tensor that batches multiple per-variable tensors. 2024-08-06T21:19:54.2298413Z Note that since DDP comm hook only supports single process single device mode, 2024-08-06T21:19:54.2298941Z only exactly one tensor is stored in this bucket. 2024-08-06T21:19:54.2299201Z 2024-08-06T21:19:54.2299304Z Returns: 2024-08-06T21:19:54.2299656Z Future handler of the communication, which updates the gradients in place. 2024-08-06T21:19:54.2300032Z 2024-08-06T21:19:54.2300134Z Example:: 2024-08-06T21:19:54.2300362Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.2300798Z >>> state = PowerSGDState(process_group=process_group, matrix_approximation_rank=1, 2024-08-06T21:19:54.2301351Z start_powerSGD_iter=10, min_compression_rate=0.5) 2024-08-06T21:19:54.2301788Z >>> ddp_model.register_comm_hook(state, powerSGD_hook) 2024-08-06T21:19:54.2302055Z 2024-08-06T21:19:54.2302305Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2302682Z 2024-08-06T21:19:54.2316312Z msg = Cannot scrape callname=PeriodicModelAverager in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/model_averaging/averagers.py line=36. 2024-08-06T21:19:54.2317441Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2317817Z 2024-08-06T21:19:54.2318019Z Averages parameters periodically after the warm-up stage. 2024-08-06T21:19:54.2318324Z 2024-08-06T21:19:54.2318581Z This can be used for running `post-local SGD `_, 2024-08-06T21:19:54.2319155Z by running :class:`~torch.nn.DistributedDataParallel` (DDP) 2024-08-06T21:19:54.2319699Z using the subgroups created by :meth:`~torch.distributed.new_subgroups`. 2024-08-06T21:19:54.2320046Z 2024-08-06T21:19:54.2320141Z Args: 2024-08-06T21:19:54.2320415Z period (int): The number of steps per model averaging. 2024-08-06T21:19:54.2321025Z Usually the period should be greater than ``1`` to reduce the communication cost. 2024-08-06T21:19:54.2321543Z Otherwise, only DDP needs to be used. 2024-08-06T21:19:54.2321981Z warmup_steps (int): The number of warm-up steps. During this stage, 2024-08-06T21:19:54.2322423Z model averaging is skipped. 2024-08-06T21:19:54.2322845Z process_group: The process group to be used for all-reduce. 2024-08-06T21:19:54.2323277Z If ``None``, the default process group, which 2024-08-06T21:19:54.2323844Z is created by :func:`torch.distributed.init_process_group`, 2024-08-06T21:19:54.2324279Z will be used. (default: ``None``) 2024-08-06T21:19:54.2324508Z 2024-08-06T21:19:54.2324603Z Example:: 2024-08-06T21:19:54.2324735Z 2024-08-06T21:19:54.2324858Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:54.2325207Z >>> import torch 2024-08-06T21:19:54.2325463Z >>> import torch.distributed as dist 2024-08-06T21:19:54.2326005Z >>> import torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook as post_localSGD 2024-08-06T21:19:54.2326714Z >>> import torch.distributed.algorithms.model_averaging.averagers as averagers 2024-08-06T21:19:54.2327206Z >>> import torch.nn as nn 2024-08-06T21:19:54.2327471Z >>> 2024-08-06T21:19:54.2327775Z >>> dist.init_process_group("nccl", rank=rank, world_size=16) 2024-08-06T21:19:54.2328171Z >>> torch.cuda.set_device(rank) 2024-08-06T21:19:54.2328516Z >>> module = nn.Linear(1, 1, bias=False).cuda() 2024-08-06T21:19:54.2328914Z >>> model = nn.parallel.DistributedDataParallel( 2024-08-06T21:19:54.2329369Z >>> module, device_ids=[rank], output_device=rank 2024-08-06T21:19:54.2329710Z >>> ) 2024-08-06T21:19:54.2329980Z >>> # Register a post-localSGD communication hook. 2024-08-06T21:19:54.2330626Z >>> state = PostLocalSGDState(process_group=None, subgroup=None, start_localSGD_iter=100) 2024-08-06T21:19:54.2331580Z >>> model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:19:54.2332502Z >>> 2024-08-06T21:19:54.2343064Z >>> # In the first 100 steps, run global gradient averaging like normal DDP at every step. 2024-08-06T21:19:54.2343885Z >>> # After 100 steps, run model averaging every 4 steps. 2024-08-06T21:19:54.2344471Z >>> # Note that ``warmup_steps`` must be the same as ``start_localSGD_iter`` used in ``PostLocalSGDState``. 2024-08-06T21:19:54.2345167Z >>> averager = averagers.PeriodicModelAverager(period=4, warmup_steps=100) 2024-08-06T21:19:54.2345649Z >>> for step in range(0, 200): 2024-08-06T21:19:54.2345967Z >>> optimizer.zero_grad() 2024-08-06T21:19:54.2346285Z >>> loss = loss_fn(output, labels) 2024-08-06T21:19:54.2346599Z >>> loss.backward() 2024-08-06T21:19:54.2346879Z >>> optimizer.step() 2024-08-06T21:19:54.2347261Z >>> # Will average model parameters globally every 4 steps. Thus, 2024-08-06T21:19:54.2347765Z >>> # inter-node communication only occurs every 4 iterations after 2024-08-06T21:19:54.2348215Z >>> # the initial ``warmup_steps`` period. 2024-08-06T21:19:54.2348611Z >>> averager.average_parameters(model.parameters()) 2024-08-06T21:19:54.2348885Z 2024-08-06T21:19:54.2349135Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2349515Z 2024-08-06T21:19:54.2350411Z msg = Cannot scrape callname=HierarchicalModelAverager in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/model_averaging/hierarchical_model_averager.py line=18. 2024-08-06T21:19:54.2351629Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2352019Z 2024-08-06T21:19:54.2352362Z Runs hierarchical model averaging (`hierarchical SGD `_). 2024-08-06T21:19:54.2352810Z 2024-08-06T21:19:54.2353128Z Process groups of different sizes are organized in a hierarchy, and they average parameters 2024-08-06T21:19:54.2353746Z by using different periods concurrently after the warm-up stage. 2024-08-06T21:19:54.2354467Z This is an extension of :class:`~torch.distributed.algorithms.model_averaging.averagers.PeriodicModelAverager` 2024-08-06T21:19:54.2355325Z that supports `post-local SGD `_, which essentially only supports 2024-08-06T21:19:54.2356089Z a two-level hierarchy: the intra-machine level and the global level, where the intra-machine 2024-08-06T21:19:54.2356985Z level is usually embedded in :meth:`~torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook`. 2024-08-06T21:19:54.2357759Z Similarly, the process groups within this class do not have such an intra-machine process 2024-08-06T21:19:54.2358455Z subgroup, which should be embedded by the post-local SGD communication hook instead. 2024-08-06T21:19:54.2358846Z 2024-08-06T21:19:54.2358930Z Args: 2024-08-06T21:19:54.2359315Z period_group_size_dict: An ordered dict mapping keys of model averaging period to 2024-08-06T21:19:54.2359900Z process group size, used for initializing process groups of 2024-08-06T21:19:54.2360434Z different sizes in a hierarchy to average parameters concurrently. 2024-08-06T21:19:54.2360993Z Particularly, at each iteration, there will be at most a single 2024-08-06T21:19:54.2361563Z process group that runs averaging -- the period of such group should 2024-08-06T21:19:54.2362136Z have the largest period which the current step can be divided by. 2024-08-06T21:19:54.2362689Z For example, if the dict has three keys: 2, 4, and 8, 2024-08-06T21:19:54.2363389Z then this means totally three process groups will be created to 2024-08-06T21:19:54.2363928Z average parameters every 2, 4, and 8 iterations, respectively. 2024-08-06T21:19:54.2364439Z At the 4th iteration, only the second process group will run 2024-08-06T21:19:54.2365013Z averaging, because the first process group should be a 2024-08-06T21:19:54.2365533Z subset of the second process group, and no need to execute the first 2024-08-06T21:19:54.2365981Z process group redundantly. 2024-08-06T21:19:54.2366422Z On the other hand, the third process group can only be triggered 2024-08-06T21:19:54.2366974Z every 8 iterations, so it will not be triggered at the 4th iteration. 2024-08-06T21:19:54.2367618Z warmup_steps (int): The number of warm-up steps. During this stage, model averaging is skipped. 2024-08-06T21:19:54.2368489Z process_group (ProcessGroup, optional): The overall process group containing all the processes that runs model averaging. 2024-08-06T21:19:54.2369229Z If ``None``, the default process group, which is created 2024-08-06T21:19:54.2369732Z by :func:`torch.distributed.init_process_group`, will be used. 2024-08-06T21:19:54.2370169Z (default: ``None``) 2024-08-06T21:19:54.2370414Z 2024-08-06T21:19:54.2370512Z Example:: 2024-08-06T21:19:54.2370754Z >>> # xdoctest: +SKIP('undefined rank') 2024-08-06T21:19:54.2371086Z >>> from collections import OrderedDict 2024-08-06T21:19:54.2371411Z >>> import torch 2024-08-06T21:19:54.2371678Z >>> import torch.distributed as dist 2024-08-06T21:19:54.2372167Z >>> from torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook import ( 2024-08-06T21:19:54.2372746Z >>> PostLocalSGDState, 2024-08-06T21:19:54.2373036Z >>> post_localSGD_hook, 2024-08-06T21:19:54.2373298Z >>> ) 2024-08-06T21:19:54.2373795Z >>> import torch.distributed.algorithms.model_averaging.hierarchical_model_averager as hierarchicalSGD 2024-08-06T21:19:54.2374387Z >>> import torch.nn as nn 2024-08-06T21:19:54.2374641Z >>> 2024-08-06T21:19:54.2375003Z >>> dist.init_process_group("nccl", rank=rank, world_size=16) 2024-08-06T21:19:54.2375413Z >>> torch.cuda.set_device(rank) 2024-08-06T21:19:54.2375747Z >>> module = nn.Linear(1, 1, bias=False).to(rank) 2024-08-06T21:19:54.2376151Z >>> model = nn.parallel.DistributedDataParallel( 2024-08-06T21:19:54.2376557Z >>> module, device_ids=[rank], output_device=rank 2024-08-06T21:19:54.2377027Z >>> ) 2024-08-06T21:19:54.2377300Z >>> # Register a post-localSGD communication hook. 2024-08-06T21:19:54.2377840Z >>> # Assume that each machine has 4 GPUs, then each intra-machine subgroup has a size of 4. 2024-08-06T21:19:54.2378340Z >>> subgroup, _ = dist.new_subgroups() 2024-08-06T21:19:54.2378883Z >>> state = PostLocalSGDState(process_group=None, subgroup=subgroup, start_localSGD_iter=100) 2024-08-06T21:19:54.2379476Z >>> model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:19:54.2379827Z >>> 2024-08-06T21:19:54.2380230Z >>> # Average parameters among each group of 8 processes every 4 iterations, and among all 2024-08-06T21:19:54.2380755Z >>> # the 16 processes every 16 iterations. 2024-08-06T21:19:54.2381160Z >>> averager = hierarchicalSGD.HierarchicalModelAverager( 2024-08-06T21:19:54.2381689Z >>> period_group_size_dict=OrderedDict([(4, 8), (16, 16)]), warmup_steps=100) 2024-08-06T21:19:54.2382360Z >>> # Note that ``warmup_steps`` must be the same as ``start_localSGD_iter`` used in ``PostLocalSGDState``. 2024-08-06T21:19:54.2383121Z >>> # In the first 100 steps, run global gradient averaging like normal DDP at every step. 2024-08-06T21:19:54.2383672Z >>> # After 100 steps, run model averaging at two levels. 2024-08-06T21:19:54.2384050Z >>> for step in range(0, 200): 2024-08-06T21:19:54.2384346Z >>> optimizer.zero_grad() 2024-08-06T21:19:54.2384659Z >>> loss = loss_fn(output, labels) 2024-08-06T21:19:54.2384986Z >>> loss.backward() 2024-08-06T21:19:54.2385247Z >>> optimizer.step() 2024-08-06T21:19:54.2385579Z >>> # Average parameters after ``optimizer.step()``. 2024-08-06T21:19:54.2386133Z >>> # Thus, the inter-node communication only occurs periodically after ``warmup_steps``. 2024-08-06T21:19:54.2386686Z >>> averager.average_parameters(model.parameters()) 2024-08-06T21:19:54.2386964Z 2024-08-06T21:19:54.2387062Z .. warning :: 2024-08-06T21:19:54.2387455Z The last group size in the dict must be the size of the provided ``process_group``, 2024-08-06T21:19:54.2388068Z which indicates model averaging at the highest level of the hierarchy. 2024-08-06T21:19:54.2388719Z If ``process_group`` is not provided, then the last group size should be equal to the world size. 2024-08-06T21:19:54.2389149Z 2024-08-06T21:19:54.2389241Z .. warning :: 2024-08-06T21:19:54.2389614Z `HierarchicalModelAverager` is experimental and subject to change. 2024-08-06T21:19:54.2389959Z 2024-08-06T21:19:54.2390210Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2390588Z 2024-08-06T21:19:54.2523620Z msg = Cannot scrape callname=BroadcastingTorchSaveReader in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/format_utils.py line=40. 2024-08-06T21:19:54.2524834Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2525213Z 2024-08-06T21:19:54.2525589Z StorageReader for reading a Torch Save file. This reader will read the entire checkpoint 2024-08-06T21:19:54.2526300Z on the coordinator rank, and then broadcast and shard each tensor to all ranks. 2024-08-06T21:19:54.2526689Z 2024-08-06T21:19:54.2526946Z . N.B. Intended to be used with DynamicMetaLoadPlanner 2024-08-06T21:19:54.2527258Z 2024-08-06T21:19:54.2527413Z .. warning:: 2024-08-06T21:19:54.2527713Z Current implementation only supports loading Tensors. 2024-08-06T21:19:54.2528058Z 2024-08-06T21:19:54.2528174Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2528506Z >>> sd = {"mode": model} 2024-08-06T21:19:54.2528804Z >>> dcp.load( 2024-08-06T21:19:54.2529029Z >>> sd, 2024-08-06T21:19:54.2529321Z >>> storage_reader=BroadcastingTorchSaveReader(), 2024-08-06T21:19:54.2529729Z >>> planner=DynamicMetaLoadPlanner(), 2024-08-06T21:19:54.2530104Z >>> checkpoint_id="path_to_model.pt" 2024-08-06T21:19:54.2530431Z >>> ) 2024-08-06T21:19:54.2530544Z 2024-08-06T21:19:54.2531000Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2531380Z 2024-08-06T21:19:54.2532145Z msg = Cannot scrape callname=DynamicMetaLoadPlanner in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/format_utils.py line=151. 2024-08-06T21:19:54.2533323Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2533695Z 2024-08-06T21:19:54.2534131Z Extension of DefaultLoadPlanner, which creates a new Metadata object based on the passed in state dict, 2024-08-06T21:19:54.2535045Z avoiding the need to read metadata from disk. This is useful when reading formats which don't have a 2024-08-06T21:19:54.2535667Z metadata file, like Torch Save files. 2024-08-06T21:19:54.2535895Z 2024-08-06T21:19:54.2536070Z . N.B. Intended to be used with BroadcastingTorchSaveReader 2024-08-06T21:19:54.2536409Z 2024-08-06T21:19:54.2536512Z .. warning:: 2024-08-06T21:19:54.2536802Z Current implementation only supports loading Tensors. 2024-08-06T21:19:54.2537153Z 2024-08-06T21:19:54.2537266Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2537581Z >>> sd = {"mode": model} 2024-08-06T21:19:54.2537958Z >>> dcp.load( 2024-08-06T21:19:54.2538187Z >>> sd, 2024-08-06T21:19:54.2538473Z >>> storage_reader=BroadcastingTorchSaveReader(), 2024-08-06T21:19:54.2538890Z >>> planner=DynamicMetaLoadPlanner(), 2024-08-06T21:19:54.2539250Z >>> checkpoint_id="path_to_model.pt" 2024-08-06T21:19:54.2539582Z >>> ) 2024-08-06T21:19:54.2539709Z 2024-08-06T21:19:54.2539960Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2540396Z 2024-08-06T21:19:54.2579160Z msg = Cannot scrape callname=load_sharded_optimizer_state_dict in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/optimizer.py line=220. 2024-08-06T21:19:54.2580244Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2580635Z 2024-08-06T21:19:54.2580844Z Load a state_dict in conjunction with FSDP sharded optimizer state. 2024-08-06T21:19:54.2581180Z 2024-08-06T21:19:54.2581347Z This is the current recommended way to checkpoint FSDP. 2024-08-06T21:19:54.2581719Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.2582027Z >>> import torch.distributed.checkpoint as dist_cp 2024-08-06T21:19:54.2582368Z >>> # Save 2024-08-06T21:19:54.2582594Z >>> model: torch.nn.Model 2024-08-06T21:19:54.2582871Z >>> optim_params = model.parameters() 2024-08-06T21:19:54.2583229Z >>> optim = torch.optim.SGD(optim_params, lr=0.01) 2024-08-06T21:19:54.2583573Z >>> # Save 2024-08-06T21:19:54.2583909Z >>> with FSDP.state_dict_type(model, StateDictType.SHARDED_STATE_DICT): 2024-08-06T21:19:54.2584345Z >>> state_dict = { 2024-08-06T21:19:54.2584659Z >>> "optimizer": FSDP.optim_state_dict(model, optim), 2024-08-06T21:19:54.2585055Z >>> "model": model.state_dict() 2024-08-06T21:19:54.2585344Z >>> } 2024-08-06T21:19:54.2585575Z >>> dist_cp.save_state_dict( 2024-08-06T21:19:54.2585874Z >>> state_dict=optim_state, 2024-08-06T21:19:54.2586244Z >>> storage_writer=dist_cp.FileSystemWriter("checkpoint"), 2024-08-06T21:19:54.2586670Z >>> planner=dist_cp.DefaultSavePlanner(), 2024-08-06T21:19:54.2586998Z >>> ) 2024-08-06T21:19:54.2587192Z >>> 2024-08-06T21:19:54.2587391Z >>> # Load 2024-08-06T21:19:54.2587730Z >>> with FSDP.state_dict_type(model_tp, StateDictType.SHARDED_STATE_DICT): 2024-08-06T21:19:54.2588272Z >>> model_state_dict = model_tp.state_dict() 2024-08-06T21:19:54.2588608Z >>> checkpoint = { 2024-08-06T21:19:54.2588861Z >>> "model": model_state_dict 2024-08-06T21:19:54.2589151Z >>> } 2024-08-06T21:19:54.2589378Z >>> dist_cp.load_state_dict( 2024-08-06T21:19:54.2589666Z >>> state_dict=checkpoint, 2024-08-06T21:19:54.2590055Z >>> storage_reader=dist_cp.FileSystemReader(checkpoint_file), 2024-08-06T21:19:54.2590489Z >>> planner=dist_cp.DefaultLoadPlanner(), 2024-08-06T21:19:54.2590972Z >>> ) 2024-08-06T21:19:54.2591249Z >>> model.load_state_dict(checkpoint["model_state"]) 2024-08-06T21:19:54.2591599Z >>> 2024-08-06T21:19:54.2591879Z >>> optim_state = dist_cp.load_sharded_optimizer_state_dict( 2024-08-06T21:19:54.2592267Z >>> model_state_dict, 2024-08-06T21:19:54.2592561Z >>> optimizer_key="optimizer", 2024-08-06T21:19:54.2592941Z >>> storage_reader=dist_cp.FileSystemReader("checkpoint"), 2024-08-06T21:19:54.2593317Z >>> ) 2024-08-06T21:19:54.2593518Z >>> 2024-08-06T21:19:54.2593765Z >>> flattened_osd = FSDP.optim_state_dict_to_load( 2024-08-06T21:19:54.2594147Z >>> model, optim, optim_state["optimizer"] 2024-08-06T21:19:54.2594471Z >>> ) 2024-08-06T21:19:54.2594663Z >>> 2024-08-06T21:19:54.2594900Z >>> optim.load_state_dict(flattened_osd) 2024-08-06T21:19:54.2595124Z 2024-08-06T21:19:54.2595388Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2595761Z 2024-08-06T21:19:54.2603826Z msg = Cannot scrape callname=SavePlanner in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/planner.py line=110. 2024-08-06T21:19:54.2604969Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2605364Z 2024-08-06T21:19:54.2605651Z Abstract class defining the protocol used by save_state_dict to plan the save process. 2024-08-06T21:19:54.2606057Z 2024-08-06T21:19:54.2606360Z SavePlanners are stateful objects that can be used to customize the whole save process. 2024-08-06T21:19:54.2606773Z 2024-08-06T21:19:54.2607050Z SavePlanner acts as an access proxy to the state_dict, so any transformation done to it 2024-08-06T21:19:54.2607565Z will be visible to the whole process. 2024-08-06T21:19:54.2607790Z 2024-08-06T21:19:54.2608061Z A planner subclass can expect the following sequence of calls during save_state_dict: 2024-08-06T21:19:54.2608480Z 2024-08-06T21:19:54.2608602Z 1) set_up_planner - called on all ranks. 2024-08-06T21:19:54.2608961Z Signals the start of a checkpoint save. 2024-08-06T21:19:54.2609191Z 2024-08-06T21:19:54.2609372Z 2) create_local_plan - called on all ranks. 2024-08-06T21:19:54.2610017Z Process the state_dict and produces a `SavePlan` that will be sent for global planning. 2024-08-06T21:19:54.2610503Z 2024-08-06T21:19:54.2610755Z 3) create_global_plan - called on the coordinator rank only. 2024-08-06T21:19:54.2611258Z Takes the SavePlan from all ranks and make any global decision. 2024-08-06T21:19:54.2611568Z 2024-08-06T21:19:54.2611697Z 4) finish_plan - called on all ranks. 2024-08-06T21:19:54.2612121Z This gives each rank a chance to adjust to global planning decisions. 2024-08-06T21:19:54.2612468Z 2024-08-06T21:19:54.2612622Z 5) resolve_data - called multiple times on each rank 2024-08-06T21:19:54.2613100Z Lookups a value on the `state_dict` for the storage layer to write. 2024-08-06T21:19:54.2613414Z 2024-08-06T21:19:54.2613715Z Users are recommended to extend DefaultSavePlanner instead of this interface directly as 2024-08-06T21:19:54.2614330Z most changes can be expressed by changes in a single method. 2024-08-06T21:19:54.2614621Z 2024-08-06T21:19:54.2614760Z There are 3 usual patterns of extension: 2024-08-06T21:19:54.2615067Z 2024-08-06T21:19:54.2615322Z Rewriting state_dict. This is the simplest way to extend the save process as it 2024-08-06T21:19:54.2615930Z doesn't requite understanding the intrincacies of how SavePlan works: 2024-08-06T21:19:54.2616267Z 2024-08-06T21:19:54.2616395Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2616737Z >>> class RenamePlanner(DefaultSavePlanner): 2024-08-06T21:19:54.2617085Z >>> def set_up_planner( 2024-08-06T21:19:54.2617354Z >>> self, 2024-08-06T21:19:54.2617594Z >>> state_dict: STATE_DICT_TYPE, 2024-08-06T21:19:54.2617937Z >>> storage_meta: Optional[StorageMeta], 2024-08-06T21:19:54.2618281Z >>> is_coordinator: bool, 2024-08-06T21:19:54.2618559Z >>> ) -> None: 2024-08-06T21:19:54.2618902Z >>> # prefix all keys with `foo_`` 2024-08-06T21:19:54.2619421Z >>> super().set_up_planner({"foo_" + k: v for k, v in state_dict.items()}, storage_meta, is_coordinator) 2024-08-06T21:19:54.2619817Z 2024-08-06T21:19:54.2620162Z Modifying local plan and lookup in tandem. This is useful when fine control of how data is persisted 2024-08-06T21:19:54.2620605Z 2024-08-06T21:19:54.2620718Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2621066Z >>> class FP16Planner(DefaultSavePlanner): 2024-08-06T21:19:54.2621406Z >>> def create_local_plan(self): 2024-08-06T21:19:54.2621724Z >>> plan = super().create_local_plan() 2024-08-06T21:19:54.2622051Z >>> for p in plan: 2024-08-06T21:19:54.2622337Z >>> if p.tensor_data is not None: 2024-08-06T21:19:54.2622712Z >>> p.tensor_data.properties.dtype = torch.float16 2024-08-06T21:19:54.2623083Z >>> return plan 2024-08-06T21:19:54.2623323Z >>> 2024-08-06T21:19:54.2623546Z >>> def resolve_data(self, write_item): 2024-08-06T21:19:54.2623899Z >>> item = super().resolve_data(write_item) 2024-08-06T21:19:54.2624474Z >>> return item if write_item.type == WriteItemType.BYTE_IO else item.to(torch.float16) 2024-08-06T21:19:54.2624860Z 2024-08-06T21:19:54.2625202Z Using the global planning step to make central decisions that can't be made individually by each rank 2024-08-06T21:19:54.2625669Z 2024-08-06T21:19:54.2625781Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2626112Z >>> from itertools import islice 2024-08-06T21:19:54.2626411Z >>> from dataclasses import replace 2024-08-06T21:19:54.2626790Z >>> class DDPLoadBalancingPlanner(DefaultSavePlanner): 2024-08-06T21:19:54.2627348Z >>> # This uses the default local plan behavior of having all non-sharded writes in rank 0 2024-08-06T21:19:54.2627860Z >>> # This sample doesn't handle ShardedTensors 2024-08-06T21:19:54.2628233Z >>> def create_global_plan(self, all_plans): 2024-08-06T21:19:54.2628580Z >>> def chunk(it, size): 2024-08-06T21:19:54.2628856Z >>> it = iter(it) 2024-08-06T21:19:54.2629203Z >>> return list(iter(lambda: tuple(islice(it, size)), ())) 2024-08-06T21:19:54.2629588Z >>> all_plans = [ 2024-08-06T21:19:54.2629890Z >>> replace(plan, items=items) for plan, items in 2024-08-06T21:19:54.2630328Z >>> zip(all_plans, chunk(all_plans[0].items, len(all_plans))) 2024-08-06T21:19:54.2630711Z >>> ] 2024-08-06T21:19:54.2630969Z >>> return super().create_global_plan(all_plans) 2024-08-06T21:19:54.2631227Z 2024-08-06T21:19:54.2631489Z Finally, some planners need to save additional metadata in the checkpoint, this is 2024-08-06T21:19:54.2632144Z accomplished by having each rank contribute their data items in the local plan and 2024-08-06T21:19:54.2632635Z the global planner aggregate them: 2024-08-06T21:19:54.2632852Z 2024-08-06T21:19:54.2632963Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2633341Z >>> class SaveExtraDataPlanner(DefaultSavePlanner): 2024-08-06T21:19:54.2633720Z >>> def create_local_plan(self) -> SavePlan: 2024-08-06T21:19:54.2634086Z >>> plan = super().create_local_plan() 2024-08-06T21:19:54.2634476Z >>> return replace(plan, planner_data="per-rank-data") 2024-08-06T21:19:54.2634821Z >>> 2024-08-06T21:19:54.2635235Z >>> def create_global_plan(self, all_plans: List[SavePlan]) -> Tuple[List[SavePlan], Metadata]: 2024-08-06T21:19:54.2635846Z >>> global_plan, metadata = super().create_global_plan(all_plans) 2024-08-06T21:19:54.2636308Z >>> merged_data = [p.planner_data for p in global_plan] 2024-08-06T21:19:54.2636751Z >>> metadata = replace(metadata, planner_data=merged_data) 2024-08-06T21:19:54.2637148Z >>> return global_plan, metadata 2024-08-06T21:19:54.2637361Z 2024-08-06T21:19:54.2637626Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2637991Z 2024-08-06T21:19:54.2638673Z msg = Cannot scrape callname=LoadPlanner in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/planner.py line=275. 2024-08-06T21:19:54.2639646Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2640020Z 2024-08-06T21:19:54.2640318Z Abstract class defining the protocol used by load_state_dict to plan the load process. 2024-08-06T21:19:54.2640721Z 2024-08-06T21:19:54.2641023Z LoadPlanner are stateful objects that can be used to customize the whole load process. 2024-08-06T21:19:54.2641426Z 2024-08-06T21:19:54.2641703Z LoadPlanner acts as an access proxy to the state_dict, so any transformation done to it 2024-08-06T21:19:54.2642215Z will be visible to the whole process. 2024-08-06T21:19:54.2642427Z 2024-08-06T21:19:54.2642716Z A planner subclass can expect the following sequence of calls during load_state_dict: 2024-08-06T21:19:54.2643107Z 2024-08-06T21:19:54.2643223Z 1) set_up_planner - called on all ranks. 2024-08-06T21:19:54.2643585Z Signals the start of loading a checkpoint. 2024-08-06T21:19:54.2643820Z 2024-08-06T21:19:54.2643954Z 2) create_local_plan - called on all ranks. 2024-08-06T21:19:54.2644513Z Process the state_dict and produces a `LoadPlan` that will be sent for global planning. 2024-08-06T21:19:54.2644926Z 2024-08-06T21:19:54.2645107Z 3) create_global_plan - called on the coordinator rank only. 2024-08-06T21:19:54.2645595Z Takes the LoadPlan from all ranks and make any global decision. 2024-08-06T21:19:54.2645901Z 2024-08-06T21:19:54.2646055Z 4) load_bytes - called multiple times on each rank 2024-08-06T21:19:54.2646492Z This is called once per non-tensor value in state_dict. 2024-08-06T21:19:54.2646779Z 2024-08-06T21:19:54.2646998Z 5) resolve_tensor and commit_tensor - called multiple times on each rank 2024-08-06T21:19:54.2647523Z They are called in pair for each Tensor value in state_dict. 2024-08-06T21:19:54.2647812Z 2024-08-06T21:19:54.2648125Z Users are recommended to extend DefaultLoadPlanner instead of this interface directly as 2024-08-06T21:19:54.2648725Z most changes can be expressed by changes in a single method. 2024-08-06T21:19:54.2649028Z 2024-08-06T21:19:54.2649158Z There are two usual patterns of extension: 2024-08-06T21:19:54.2649385Z 2024-08-06T21:19:54.2649650Z Rewriting state_dict. This is the simplest way to extend the load process as it 2024-08-06T21:19:54.2650265Z doesn't requite understanding the intrincacies of how LoadPlan works. We need 2024-08-06T21:19:54.2650867Z to keep a reference to the original state_dict as load happens in place so 2024-08-06T21:19:54.2651336Z we need to be able to perform it in place 2024-08-06T21:19:54.2651562Z 2024-08-06T21:19:54.2651674Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2652032Z >>> class RenamePlanner(DefaultLoadPlanner): 2024-08-06T21:19:54.2652374Z >>> def set_up_planner( 2024-08-06T21:19:54.2652631Z >>> self, 2024-08-06T21:19:54.2652888Z >>> state_dict: STATE_DICT_TYPE, 2024-08-06T21:19:54.2653216Z >>> metadata: Metadata, 2024-08-06T21:19:54.2653497Z >>> is_coordinator: bool, 2024-08-06T21:19:54.2653788Z >>> ) -> None: 2024-08-06T21:19:54.2654066Z >>> self.original_state_dict = state_dict 2024-08-06T21:19:54.2654464Z >>> state_dict = {"foo_" + k: v for k, v in state_dict.items()} 2024-08-06T21:19:54.2654939Z >>> 2024-08-06T21:19:54.2655179Z >>> if self.flatten_sharded_tensors: 2024-08-06T21:19:54.2655551Z >>> state_dict = _flatten_sharded_tensors(state_dict) 2024-08-06T21:19:54.2655907Z >>> 2024-08-06T21:19:54.2656135Z >>> if self.flatten_state_dict: 2024-08-06T21:19:54.2656529Z >>> state_dict, self.mappings = flatten_state_dict(state_dict) 2024-08-06T21:19:54.2656926Z >>> 2024-08-06T21:19:54.2657153Z >>> self.state_dict = state_dict 2024-08-06T21:19:54.2657464Z >>> self.metadata = metadata 2024-08-06T21:19:54.2657793Z >>> self.is_coordinator = is_coordinator 2024-08-06T21:19:54.2658188Z >>> 2024-08-06T21:19:54.2658416Z >>> def load_bytes(self, read_item, value): 2024-08-06T21:19:54.2658761Z >>> # Remove the "foo_" prefix 2024-08-06T21:19:54.2659298Z >>> self.original_state_dict[read_item.dest_index.fqn[4:]] = torch.load(value, weights_only=False) 2024-08-06T21:19:54.2659733Z 2024-08-06T21:19:54.2659737Z 2024-08-06T21:19:54.2659997Z Modifying resolve_tensor and commit_tensor to handle load time transformation. 2024-08-06T21:19:54.2660381Z 2024-08-06T21:19:54.2660495Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.2660868Z >>> class MetaModelMaterialize(DefaultSavePlanner): 2024-08-06T21:19:54.2661241Z >>> def resolve_tensor(self, read_item): 2024-08-06T21:19:54.2661598Z >>> tensor = super().resolve_tensor(read_item) 2024-08-06T21:19:54.2661988Z >>> return torch.empty_like(tensor, device="cpu") 2024-08-06T21:19:54.2662316Z >>> 2024-08-06T21:19:54.2662559Z >>> def commit_tensor(self, read_item, tensor): 2024-08-06T21:19:54.2663206Z >>> self.state_dict[read_item.dest_index.fqn] = tensor 2024-08-06T21:19:54.2663473Z 2024-08-06T21:19:54.2663723Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2664202Z 2024-08-06T21:19:54.2782191Z msg = Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict_loader.py line=61. 2024-08-06T21:19:54.2783282Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2783658Z 2024-08-06T21:19:54.2783814Z Load a distributed ``state_dict`` in SPMD style. 2024-08-06T21:19:54.2784063Z 2024-08-06T21:19:54.2784241Z Each rank will try to read the least amount of data necessary 2024-08-06T21:19:54.2784780Z to fullfill the requested `state_dict`. When loading :class:`ShardedTensor` 2024-08-06T21:19:54.2785387Z or :class:`DTensor` instances, each rank only reads data for their local shards. 2024-08-06T21:19:54.2785748Z 2024-08-06T21:19:54.2786017Z For each ``Stateful`` object (having both a ``state_dict`` and a ``load_state_dict``), 2024-08-06T21:19:54.2786679Z load will first call ``state_dict`` before attempting deserialization, followed by 2024-08-06T21:19:54.2787227Z ``load_state_dict`` once the deserialization is complete. 2024-08-06T21:19:54.2787513Z 2024-08-06T21:19:54.2787610Z .. warning:: 2024-08-06T21:19:54.2787911Z All tensors in ``state_dict`` must be allocated on their 2024-08-06T21:19:54.2788345Z destination device *prior to* calling this function. 2024-08-06T21:19:54.2788626Z 2024-08-06T21:19:54.2788853Z All non-tensor data is loaded using `torch.load()` and modified in place 2024-08-06T21:19:54.2789291Z on state_dict. 2024-08-06T21:19:54.2789431Z 2024-08-06T21:19:54.2789521Z .. warning:: 2024-08-06T21:19:54.2789860Z Users must call `load_state_dict` on the root module to ensure load 2024-08-06T21:19:54.2790368Z pos-processing and non-tensor data properly propagates. 2024-08-06T21:19:54.2790661Z 2024-08-06T21:19:54.2790749Z .. note: 2024-08-06T21:19:54.2791098Z If no process group is initialized, this function will assume the intent 2024-08-06T21:19:54.2791673Z is to load a checkpoint into the local process. This can be useful in the 2024-08-06T21:19:54.2792255Z case of local inference, and when using regular Tensors (as opposed to DTensor 2024-08-06T21:19:54.2792722Z or ShardedTensor) 2024-08-06T21:19:54.2792878Z 2024-08-06T21:19:54.2792976Z .. note: 2024-08-06T21:19:54.2793220Z Rank 0 is assumed to be the coordinator rank. 2024-08-06T21:19:54.2793474Z 2024-08-06T21:19:54.2793557Z Args: 2024-08-06T21:19:54.2793827Z state_dict (Dict[str, Any]): The state_dict to save. 2024-08-06T21:19:54.2794228Z checkpoint_id (Union[str, os.PathLike, None]): 2024-08-06T21:19:54.2794694Z The ID of this checkpoint instance. The meaning of the checkpoint_id 2024-08-06T21:19:54.2795223Z depends on the storage. It can be a path to a folder or to a file. 2024-08-06T21:19:54.2795854Z It can also be a key if the storage is a key-value store. 2024-08-06T21:19:54.2796245Z (Default: ``None``) 2024-08-06T21:19:54.2796556Z storage_reader (Optional[StorageReader]): 2024-08-06T21:19:54.2796997Z Instance of StorageWriter used to perform reads. If this is not 2024-08-06T21:19:54.2797528Z specified, DCP will automatically infer the reader based on the 2024-08-06T21:19:54.2798053Z checkpoint_id. If checkpoint_id is also None, an exception will 2024-08-06T21:19:54.2798466Z be raised. (Default: ``None``) 2024-08-06T21:19:54.2798793Z planner (Optional[LoadPlanner]): 2024-08-06T21:19:54.2799208Z Instance of LoadPlanner. If this is not specificed, the default 2024-08-06T21:19:54.2799639Z planner will be used. (Default: ``None``) 2024-08-06T21:19:54.2800002Z process_group (Optional[ProcessGroup]): 2024-08-06T21:19:54.2800417Z ProcessGroup to be used for cross-rank synchronization. 2024-08-06T21:19:54.2800796Z (Default: ``None``) 2024-08-06T21:19:54.2800983Z 2024-08-06T21:19:54.2801071Z Returns: 2024-08-06T21:19:54.2801278Z None. 2024-08-06T21:19:54.2801392Z 2024-08-06T21:19:54.2801475Z Examples 2024-08-06T21:19:54.2801768Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.2802041Z >>> my_model = MyModule() 2024-08-06T21:19:54.2802467Z >>> optimizer = Adagrad(my_model.parameters()) 2024-08-06T21:19:54.2802845Z >>> model_state_dict = my_model.state_dict() 2024-08-06T21:19:54.2803382Z >>> fs_storage_reader = torch.distributed.checkpoint.FileSystemReader("/checkpoint/1") 2024-08-06T21:19:54.2803794Z 2024-08-06T21:19:54.2803960Z >>> torch.distributed.checkpoint.load_state_dict( 2024-08-06T21:19:54.2804323Z >>> state_dict=model_state_dict, 2024-08-06T21:19:54.2804663Z >>> storage_reader=fs_storage_reader, 2024-08-06T21:19:54.2804976Z >>> ) 2024-08-06T21:19:54.2805091Z 2024-08-06T21:19:54.2805287Z >>> # module.load_state_dict() function might have customized steps 2024-08-06T21:19:54.2805732Z >>> # to flush the state_dict, must call it to 2024-08-06T21:19:54.2806093Z >>> # ensure correct behavior. 2024-08-06T21:19:54.2806590Z >>> my_model.load_state_dict(model_state_dict) 2024-08-06T21:19:54.2806850Z 2024-08-06T21:19:54.2806981Z .. note:: 2024-08-06T21:19:54.2807398Z load_state_dict uses collectives to coordinate reads across ranks. 2024-08-06T21:19:54.2808366Z For NCCL-based process groups, internal tensor representations of 2024-08-06T21:19:54.2808953Z objects must be moved to the GPU device before communication takes place. 2024-08-06T21:19:54.2809535Z In this case, the device used is given by ``torch.cuda.current_device()`` 2024-08-06T21:19:54.2810099Z and it is the user's responsibility to ensure that this is set so that each 2024-08-06T21:19:54.2810635Z rank has an individual GPU, via ``torch.cuda.set_device()``. 2024-08-06T21:19:54.2810932Z 2024-08-06T21:19:54.2811199Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2811570Z 2024-08-06T21:19:54.2812213Z msg = Cannot scrape callname=save in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict_saver.py line=67. 2024-08-06T21:19:54.2813343Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2813784Z 2024-08-06T21:19:54.2813916Z Save a distributed model in SPMD style. 2024-08-06T21:19:54.2814190Z 2024-08-06T21:19:54.2814497Z This function is different from ``torch.save()`` as it handles 2024-08-06T21:19:54.2815445Z ``ShardedTensor`` , and ``DTensor`` by having each rank only save their local shards. 2024-08-06T21:19:54.2815819Z 2024-08-06T21:19:54.2816079Z For each ``Stateful`` object (having both a ``state_dict`` and a ``load_state_dict``), 2024-08-06T21:19:54.2816619Z save will call ``state_dict`` before serialization. 2024-08-06T21:19:54.2816879Z 2024-08-06T21:19:54.2816992Z .. warning:: 2024-08-06T21:19:54.2817353Z There is no guarantees of Backwards Compatibility across PyTorch versions 2024-08-06T21:19:54.2817915Z for saved state_dicts. 2024-08-06T21:19:54.2818087Z 2024-08-06T21:19:54.2818192Z .. warning:: 2024-08-06T21:19:54.2818528Z If using the `process_group` argument, make sure that only its ranks 2024-08-06T21:19:54.2819069Z call `save_state_dict` and that all data in state_dict belong to it. 2024-08-06T21:19:54.2819386Z 2024-08-06T21:19:54.2819489Z .. note:: 2024-08-06T21:19:54.2819864Z When saving checkpoint for FSDP's `ShardingStrategy.HYBRID_SHARD`, only one of 2024-08-06T21:19:54.2820506Z the shard_group should be calling `save_state_dict` and the corresponding process 2024-08-06T21:19:54.2821001Z group needs to be passed in. 2024-08-06T21:19:54.2821194Z 2024-08-06T21:19:54.2821293Z .. note:: 2024-08-06T21:19:54.2821669Z If no process group is available, this function assumes the intention is to save the 2024-08-06T21:19:54.2822169Z state_dict in the local process. 2024-08-06T21:19:54.2822381Z 2024-08-06T21:19:54.2822478Z .. note: 2024-08-06T21:19:54.2822719Z Rank 0 is assumed to be the coordinator rank. 2024-08-06T21:19:54.2822976Z 2024-08-06T21:19:54.2822980Z 2024-08-06T21:19:54.2823117Z Args: 2024-08-06T21:19:54.2823390Z state_dict (Dict[str, Any]): The state_dict to save. 2024-08-06T21:19:54.2823787Z checkpoint_id (Union[str, os.PathLike, None]): 2024-08-06T21:19:54.2824256Z The ID of this checkpoint instance. The meaning of the checkpoint_id 2024-08-06T21:19:54.2824793Z depends on the storage. It can be a path to a folder or to a file. 2024-08-06T21:19:54.2825274Z It can also be a key if the storage is a key-value store. 2024-08-06T21:19:54.2825657Z (Default: ``None``) 2024-08-06T21:19:54.2826068Z storage_writer (Optional[StorageWriter]): 2024-08-06T21:19:54.2826514Z Instance of StorageWriter used to perform writes. If this is not 2024-08-06T21:19:54.2827050Z specified, DCP will automatically infer the writer based on the 2024-08-06T21:19:54.2827581Z checkpoint_id. If checkpoint_id is also None, an exception will 2024-08-06T21:19:54.2827995Z be raised. (Default: ``None``) 2024-08-06T21:19:54.2828325Z planner (Optional[SavePlanner]): 2024-08-06T21:19:54.2828744Z Instance of SavePlanner. If this is not specificed, the default 2024-08-06T21:19:54.2829180Z planner will be used. (Default: ``None``) 2024-08-06T21:19:54.2829544Z process_group (Optional[ProcessGroup]): 2024-08-06T21:19:54.2829961Z ProcessGroup to be used for cross-rank synchronization. 2024-08-06T21:19:54.2830347Z (Default: ``None``) 2024-08-06T21:19:54.2830529Z 2024-08-06T21:19:54.2830616Z Returns: 2024-08-06T21:19:54.2830894Z Metadata: Metadata object for the saved checkpoint. 2024-08-06T21:19:54.2831157Z 2024-08-06T21:19:54.2831243Z Example: 2024-08-06T21:19:54.2831463Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.2831736Z >>> my_model = MyModule() 2024-08-06T21:19:54.2831913Z 2024-08-06T21:19:54.2832025Z >>> state_dict = {"model": my_model} 2024-08-06T21:19:54.2832249Z 2024-08-06T21:19:54.2832547Z >>> fs_storage_writer = torch.distributed.checkpoint.FileSystemWriter("/checkpoint/1") 2024-08-06T21:19:54.2833103Z >>> torch.distributed.checkpoint.save( 2024-08-06T21:19:54.2833432Z >>> state_dict=state_dict, 2024-08-06T21:19:54.2833750Z >>> storage_writer=fs_storage_writer, 2024-08-06T21:19:54.2834064Z >>> ) 2024-08-06T21:19:54.2834179Z 2024-08-06T21:19:54.2834267Z .. note:: 2024-08-06T21:19:54.2834604Z save_state_dict uses collectives to coordinate writes across ranks. 2024-08-06T21:19:54.2835153Z For NCCL-based process groups, internal tensor representations of 2024-08-06T21:19:54.2835701Z objects must be moved to the GPU device before communication takes place. 2024-08-06T21:19:54.2836271Z In this case, the device used is given by ``torch.cuda.current_device()`` 2024-08-06T21:19:54.2836885Z and it is the user's responsibility to ensure that this is set so that 2024-08-06T21:19:54.2837517Z each rank has an individual GPU, via ``torch.cuda.set_device()``. 2024-08-06T21:19:54.2837827Z 2024-08-06T21:19:54.2838080Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2838456Z 2024-08-06T21:19:54.2839104Z msg = Cannot scrape callname=async_save in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict_saver.py line=170. 2024-08-06T21:19:54.2840106Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2840753Z Asynchronous version of ``save``. This code first de-stages the state_dict on to the 2024-08-06T21:19:54.2841418Z staging storage (defaults to CPU memory), and then calls the `save` in a separate thread. 2024-08-06T21:19:54.2841834Z 2024-08-06T21:19:54.2841928Z .. warning:: 2024-08-06T21:19:54.2842294Z This feature is experimental and subject to change. 2024-08-06T21:19:54.2842562Z 2024-08-06T21:19:54.2842652Z Args: 2024-08-06T21:19:54.2842929Z state_dict (Dict[str, Any]): The state_dict to save. 2024-08-06T21:19:54.2843348Z checkpoint_id (Union[str, os.PathLike, None]): 2024-08-06T21:19:54.2843868Z The ID of this checkpoint instance. The meaning of the checkpoint_id 2024-08-06T21:19:54.2844407Z depends on the storage. It can be a path to a folder or to a file. 2024-08-06T21:19:54.2844900Z It can also be a key if the storage is a key-value store. 2024-08-06T21:19:54.2845273Z (Default: ``None``) 2024-08-06T21:19:54.2845594Z storage_writer (Optional[StorageWriter]): 2024-08-06T21:19:54.2846055Z Instance of StorageWriter used to perform 'stage' and 'save'. If 2024-08-06T21:19:54.2846615Z this is not specified, DCP will automatically infer the writer based on the 2024-08-06T21:19:54.2847183Z checkpoint_id. If checkpoint_id is also None, an exception will 2024-08-06T21:19:54.2847620Z be raised. (Default: ``None``) 2024-08-06T21:19:54.2847966Z planner (Optional[SavePlanner]): 2024-08-06T21:19:54.2848386Z Instance of SavePlanner. If this is not specificed, the default 2024-08-06T21:19:54.2848842Z planner will be used. (Default: ``None``) 2024-08-06T21:19:54.2849216Z process_group (Optional[ProcessGroup]): 2024-08-06T21:19:54.2849629Z ProcessGroup to be used for cross-rank synchronization. 2024-08-06T21:19:54.2850025Z (Default: ``None``) 2024-08-06T21:19:54.2850202Z 2024-08-06T21:19:54.2850301Z Returns: 2024-08-06T21:19:54.2850631Z Future: A future holding the resultant Metadata object from `save`. 2024-08-06T21:19:54.2850965Z 2024-08-06T21:19:54.2851052Z Example: 2024-08-06T21:19:54.2851281Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.2851555Z >>> my_model = MyModule() 2024-08-06T21:19:54.2851758Z 2024-08-06T21:19:54.2851871Z >>> state_dict = {"model": my_model} 2024-08-06T21:19:54.2852092Z 2024-08-06T21:19:54.2852403Z >>> fs_storage_writer = torch.distributed.checkpoint.FileSystemWriter("/checkpoint/1") 2024-08-06T21:19:54.2853026Z >>> checkpoint_future = torch.distributed.checkpoint.async_save( 2024-08-06T21:19:54.2853465Z >>> state_dict=state_dict, 2024-08-06T21:19:54.2853804Z >>> storage_writer=fs_storage_writer, 2024-08-06T21:19:54.2854115Z >>> ) 2024-08-06T21:19:54.2854336Z >>> 2024-08-06T21:19:54.2854563Z >>> # ... do some work ... 2024-08-06T21:19:54.2854912Z >>> 2024-08-06T21:19:54.2855156Z >>> checkpoint_future.result() 2024-08-06T21:19:54.2855370Z 2024-08-06T21:19:54.2855467Z 2024-08-06T21:19:54.2855824Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2856203Z 2024-08-06T21:19:54.2904295Z msg = Cannot scrape callname=construct_and_record_rdzv_event in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/elastic/events/__init__.py line=91. 2024-08-06T21:19:54.2905511Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.2905889Z 2024-08-06T21:19:54.2906107Z Initialize rendezvous event object and record its operations. 2024-08-06T21:19:54.2906418Z 2024-08-06T21:19:54.2906501Z Args: 2024-08-06T21:19:54.2906754Z run_id (str): The run id of the rendezvous. 2024-08-06T21:19:54.2907149Z message (str): The message describing the event. 2024-08-06T21:19:54.2907649Z node_state (NodeState): The state of the node (INIT, RUNNING, SUCCEEDED, FAILED). 2024-08-06T21:19:54.2908216Z name (str): Event name. (E.g. Current action being performed). 2024-08-06T21:19:54.2908634Z hostname (str): Hostname of the node. 2024-08-06T21:19:54.2908989Z pid (Optional[int]): The process id of the node. 2024-08-06T21:19:54.2909486Z master_endpoint (str): The master endpoint for the rendezvous store, if known. 2024-08-06T21:19:54.2910120Z local_id (Optional[int]): The local_id of the node, if defined in dynamic_rendezvous.py 2024-08-06T21:19:54.2910658Z rank (Optional[int]): The rank of the node, if known. 2024-08-06T21:19:54.2911018Z Returns: 2024-08-06T21:19:54.2911225Z None 2024-08-06T21:19:54.2911489Z Example: 2024-08-06T21:19:54.2911633Z >>> # See DynamicRendezvousHandler class 2024-08-06T21:19:54.2911738Z >>> def _record( 2024-08-06T21:19:54.2911824Z ... self, 2024-08-06T21:19:54.2911931Z ... message: str, 2024-08-06T21:19:54.2912068Z ... node_state: NodeState = NodeState.RUNNING, 2024-08-06T21:19:54.2912174Z ... rank: Optional[int] = None, 2024-08-06T21:19:54.2912278Z ... ) -> None: 2024-08-06T21:19:54.2912395Z ... construct_and_record_rdzv_event( 2024-08-06T21:19:54.2912572Z ... name=f"{self.__class__.__name__}.{get_method_name()}", 2024-08-06T21:19:54.2912687Z ... run_id=self._settings.run_id, 2024-08-06T21:19:54.2912784Z ... message=message, 2024-08-06T21:19:54.2912899Z ... node_state=node_state, 2024-08-06T21:19:54.2913022Z ... hostname=self._this_node.addr, 2024-08-06T21:19:54.2913127Z ... pid=self._this_node.pid, 2024-08-06T21:19:54.2913266Z ... local_id=self._this_node.local_id, 2024-08-06T21:19:54.2913360Z ... rank=rank, 2024-08-06T21:19:54.2913445Z ... ) 2024-08-06T21:19:54.2913449Z 2024-08-06T21:19:54.2913716Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.2913720Z 2024-08-06T21:19:54.4422409Z msg = Cannot scrape callname=MixedPrecision in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/api.py line=113. 2024-08-06T21:19:54.4422704Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4422710Z 2024-08-06T21:19:54.4422896Z This configures FSDP-native mixed precision training. 2024-08-06T21:19:54.4422901Z 2024-08-06T21:19:54.4422992Z Attributes: 2024-08-06T21:19:54.4423241Z param_dtype (Optional[torch.dtype]): This specifies the dtype for model 2024-08-06T21:19:54.4423463Z parameters during forward and backward and thus the dtype for 2024-08-06T21:19:54.4423704Z forward and backward computation. Outside forward and backward, the 2024-08-06T21:19:54.4423895Z *sharded* parameters are kept in full precision (e.g. for the 2024-08-06T21:19:54.4424101Z optimizer step), and for model checkpointing, the parameters are 2024-08-06T21:19:54.4424326Z always saved in full precision. (Default: ``None``) 2024-08-06T21:19:54.4424541Z reduce_dtype (Optional[torch.dtype]): This specifies the dtype for 2024-08-06T21:19:54.4424759Z gradient reduction (i.e. reduce-scatter or all-reduce). If this is 2024-08-06T21:19:54.4424949Z ``None`` but ``param_dtype`` is not ``None``, then this takes on 2024-08-06T21:19:54.4425149Z the ``param_dtype`` value, still running gradient reduction in low 2024-08-06T21:19:54.4425362Z precision. This is permitted to differ from ``param_dtype``, e.g. 2024-08-06T21:19:54.4425878Z to force gradient reduction to run in full precision. (Default: 2024-08-06T21:19:54.4426016Z ``None``) 2024-08-06T21:19:54.4426240Z buffer_dtype (Optional[torch.dtype]): This specifies the dtype for 2024-08-06T21:19:54.4426455Z buffers. FSDP does not shard buffers. Rather, FSDP casts them to 2024-08-06T21:19:54.4426654Z ``buffer_dtype`` in the first forward pass and keeps them in that 2024-08-06T21:19:54.4426876Z dtype thereafter. For model checkpointing, the buffers are saved 2024-08-06T21:19:54.4427058Z in full precision except for ``LOCAL_STATE_DICT``. (Default: 2024-08-06T21:19:54.4427146Z ``None``) 2024-08-06T21:19:54.4427356Z keep_low_precision_grads (bool): If ``False``, then FSDP upcasts 2024-08-06T21:19:54.4427576Z gradients to full precision after the backward pass in preparation 2024-08-06T21:19:54.4427779Z for the optimizer step. If ``True``, then FSDP keeps the gradients 2024-08-06T21:19:54.4427996Z in the dtype used for gradient reduction, which can save memory if 2024-08-06T21:19:54.4428302Z using a custom optimizer that supports running in low precision. 2024-08-06T21:19:54.4428406Z (Default: ``False``) 2024-08-06T21:19:54.4428629Z cast_forward_inputs (bool): If ``True``, then this FSDP module casts 2024-08-06T21:19:54.4428834Z its forward args and kwargs to ``param_dtype``. This is to ensure 2024-08-06T21:19:54.4429046Z that parameter and input dtypes match for forward computation, as 2024-08-06T21:19:54.4429266Z required by many ops. This may need to be set to ``True`` when only 2024-08-06T21:19:54.4429529Z applying mixed precision to some but not all FSDP modules, in which 2024-08-06T21:19:54.4429736Z case a mixed-precision FSDP submodule needs to recast its inputs. 2024-08-06T21:19:54.4429836Z (Default: ``False``) 2024-08-06T21:19:54.4430066Z cast_root_forward_inputs (bool): If ``True``, then the root FSDP module 2024-08-06T21:19:54.4430267Z casts its forward args and kwargs to ``param_dtype``, overriding 2024-08-06T21:19:54.4430456Z the value of ``cast_forward_inputs``. For non-root FSDP modules, 2024-08-06T21:19:54.4430607Z this does not do anything. (Default: ``True``) 2024-08-06T21:19:54.4430821Z _module_classes_to_ignore: (Sequence[Type[nn.Module]]): This specifies 2024-08-06T21:19:54.4431008Z module classes to ignore for mixed precision when using an 2024-08-06T21:19:54.4431202Z ``auto_wrap_policy``: Modules of these classes will have FSDP 2024-08-06T21:19:54.4431410Z applied to them separately with mixed precision disabled (meaning 2024-08-06T21:19:54.4431611Z that the final FSDP construction would deviate from the specified 2024-08-06T21:19:54.4431811Z policy). If ``auto_wrap_policy`` is not specified, then this does 2024-08-06T21:19:54.4432005Z not do anything. This API is experimental and subject to change. 2024-08-06T21:19:54.4432127Z (Default: ``(_BatchNorm,)``) 2024-08-06T21:19:54.4432132Z 2024-08-06T21:19:54.4432315Z .. note:: This API is experimental and subject to change. 2024-08-06T21:19:54.4432323Z 2024-08-06T21:19:54.4432543Z .. note:: Only floating point tensors are cast to their specified dtypes. 2024-08-06T21:19:54.4432548Z 2024-08-06T21:19:54.4432738Z .. note:: In ``summon_full_params``, parameters are forced to full 2024-08-06T21:19:54.4432849Z precision, but buffers are not. 2024-08-06T21:19:54.4432853Z 2024-08-06T21:19:54.4433056Z .. note:: Layer norm and batch norm accumulate in ``float32`` even when 2024-08-06T21:19:54.4433276Z their inputs are in a low precision like ``float16`` or ``bfloat16``. 2024-08-06T21:19:54.4433503Z Disabling FSDP's mixed precision for those norm modules only means that 2024-08-06T21:19:54.4433727Z the affine parameters are kept in ``float32``. However, this incurs 2024-08-06T21:19:54.4433963Z separate all-gathers and reduce-scatters for those norm modules, which 2024-08-06T21:19:54.4434594Z may be inefficient, so if the workload permits, the user should prefer 2024-08-06T21:19:54.4434758Z to still apply mixed precision to those modules. 2024-08-06T21:19:54.4434762Z 2024-08-06T21:19:54.4434969Z .. note:: By default, if the user passes a model with any ``_BatchNorm`` 2024-08-06T21:19:54.4435172Z modules and specifies an ``auto_wrap_policy``, then the batch norm 2024-08-06T21:19:54.4435408Z modules will have FSDP applied to them separately with mixed precision 2024-08-06T21:19:54.4435581Z disabled. See the ``_module_classes_to_ignore`` argument. 2024-08-06T21:19:54.4435586Z 2024-08-06T21:19:54.4435805Z .. note:: ``MixedPrecision`` has ``cast_root_forward_inputs=True`` and 2024-08-06T21:19:54.4436016Z ``cast_forward_inputs=False`` by default. For the root FSDP instance, 2024-08-06T21:19:54.4436186Z its ``cast_root_forward_inputs`` takes precedence over its 2024-08-06T21:19:54.4436376Z ``cast_forward_inputs``. For non-root FSDP instances, their 2024-08-06T21:19:54.4436589Z ``cast_root_forward_inputs`` values are ignored. The default setting is 2024-08-06T21:19:54.4436889Z sufficient for the typical case where each FSDP instance has the same 2024-08-06T21:19:54.4437129Z ``MixedPrecision`` configuration and only needs to cast inputs to the 2024-08-06T21:19:54.4437308Z ``param_dtype`` at the beginning of the model's forward pass. 2024-08-06T21:19:54.4437312Z 2024-08-06T21:19:54.4437516Z .. note:: For nested FSDP instances with different ``MixedPrecision`` 2024-08-06T21:19:54.4437764Z configurations, we recommend setting individual ``cast_forward_inputs`` 2024-08-06T21:19:54.4437963Z values to configure casting inputs or not before each instance's 2024-08-06T21:19:54.4438169Z forward. In such a case, since the casts happen before each FSDP 2024-08-06T21:19:54.4438379Z instance's forward, a parent FSDP instance should have its non-FSDP 2024-08-06T21:19:54.4438612Z submodules run before its FSDP submodules to avoid the activation dtype 2024-08-06T21:19:54.4438830Z being changed due to a different ``MixedPrecision`` configuration. 2024-08-06T21:19:54.4438834Z 2024-08-06T21:19:54.4438928Z Example:: 2024-08-06T21:19:54.4438933Z 2024-08-06T21:19:54.4439060Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:54.4439238Z >>> model = nn.Sequential(nn.Linear(3, 3), nn.Linear(3, 3)) 2024-08-06T21:19:54.4439334Z >>> model[1] = FSDP( 2024-08-06T21:19:54.4439425Z >>> model[1], 2024-08-06T21:19:54.4439743Z >>> mixed_precision=MixedPrecision(param_dtype=torch.float16, cast_forward_inputs=True), 2024-08-06T21:19:54.4439829Z >>> ) 2024-08-06T21:19:54.4439922Z >>> model = FSDP( 2024-08-06T21:19:54.4440021Z >>> model, 2024-08-06T21:19:54.4440326Z >>> mixed_precision=MixedPrecision(param_dtype=torch.bfloat16, cast_forward_inputs=True), 2024-08-06T21:19:54.4440428Z >>> ) 2024-08-06T21:19:54.4440432Z 2024-08-06T21:19:54.4440643Z The above shows a working example. On the other hand, if ``model[1]`` 2024-08-06T21:19:54.4440848Z were replaced with ``model[0]``, meaning that the submodule using 2024-08-06T21:19:54.4441085Z different ``MixedPrecision`` ran its forward first, then ``model[1]`` 2024-08-06T21:19:54.4441305Z would incorrectly see ``float16`` activations instead of ``bfloat16`` 2024-08-06T21:19:54.4441391Z ones. 2024-08-06T21:19:54.4441395Z 2024-08-06T21:19:54.4441400Z 2024-08-06T21:19:54.4441666Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4441670Z 2024-08-06T21:19:54.4556789Z msg = Cannot scrape callname=FullyShardedDataParallel.set_state_dict_type in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=648. 2024-08-06T21:19:54.4557074Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4557474Z Set the ``state_dict_type`` of all the descendant FSDP modules of the target module. 2024-08-06T21:19:54.4557480Z 2024-08-06T21:19:54.4557748Z Also takes (optional) configuration for the model's and optimizer's state dict. 2024-08-06T21:19:54.4557967Z The target module does not have to be a FSDP module. If the target 2024-08-06T21:19:54.4558196Z module is a FSDP module, its ``state_dict_type`` will also be changed. 2024-08-06T21:19:54.4558200Z 2024-08-06T21:19:54.4558415Z .. note:: This API should be called for only the top-level (root) 2024-08-06T21:19:54.4558503Z module. 2024-08-06T21:19:54.4558508Z 2024-08-06T21:19:54.4558725Z .. note:: This API enables users to transparently use the conventional 2024-08-06T21:19:54.4558913Z ``state_dict`` API to take model checkpoints in cases where the 2024-08-06T21:19:54.4559120Z root FSDP module is wrapped by another ``nn.Module``. For example, 2024-08-06T21:19:54.4559344Z the following will ensure ``state_dict`` is called on all non-FSDP 2024-08-06T21:19:54.4559574Z instances, while dispatching into `sharded_state_dict` implementation 2024-08-06T21:19:54.4559739Z for FSDP: 2024-08-06T21:19:54.4559745Z 2024-08-06T21:19:54.4559850Z Example:: 2024-08-06T21:19:54.4559854Z 2024-08-06T21:19:54.4559984Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:54.4560106Z >>> model = DDP(FSDP(...)) 2024-08-06T21:19:54.4560234Z >>> FSDP.set_state_dict_type( 2024-08-06T21:19:54.4560327Z >>> model, 2024-08-06T21:19:54.4560469Z >>> StateDictType.SHARDED_STATE_DICT, 2024-08-06T21:19:54.4560733Z >>> state_dict_config = ShardedStateDictConfig(offload_to_cpu=True), 2024-08-06T21:19:54.4560956Z >>> optim_state_dict_config = OptimStateDictConfig(offload_to_cpu=True), 2024-08-06T21:19:54.4561057Z >>> ) 2024-08-06T21:19:54.4561190Z >>> param_state_dict = model.state_dict() 2024-08-06T21:19:54.4561404Z >>> optim_state_dict = FSDP.optim_state_dict(model, optim) 2024-08-06T21:19:54.4561411Z 2024-08-06T21:19:54.4561555Z Args: 2024-08-06T21:19:54.4561720Z module (torch.nn.Module): Root module. 2024-08-06T21:19:54.4561995Z state_dict_type (StateDictType): the desired ``state_dict_type`` to set. 2024-08-06T21:19:54.4562248Z state_dict_config (Optional[StateDictConfig]): the configuration for the 2024-08-06T21:19:54.4562359Z target ``state_dict_type``. 2024-08-06T21:19:54.4562610Z optim_state_dict_config (Optional[OptimStateDictConfig]): the configuration 2024-08-06T21:19:54.4562909Z for the optimizer state dict. 2024-08-06T21:19:54.4562914Z 2024-08-06T21:19:54.4563010Z Returns: 2024-08-06T21:19:54.4563252Z A StateDictSettings that include the previous state_dict type and 2024-08-06T21:19:54.4563368Z configuration for the module. 2024-08-06T21:19:54.4563460Z 2024-08-06T21:19:54.4563727Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4563732Z 2024-08-06T21:19:54.4564563Z msg = Cannot scrape callname=FullyShardedDataParallel.state_dict_type in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=804. 2024-08-06T21:19:54.4564843Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4565089Z Set the ``state_dict_type`` of all the descendant FSDP modules of the target module. 2024-08-06T21:19:54.4565094Z 2024-08-06T21:19:54.4565416Z This context manager has the same functions as :meth:`set_state_dict_type`. Read the document of 2024-08-06T21:19:54.4565563Z :meth:`set_state_dict_type` for the detail. 2024-08-06T21:19:54.4565568Z 2024-08-06T21:19:54.4565661Z Example:: 2024-08-06T21:19:54.4565666Z 2024-08-06T21:19:54.4565890Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:54.4566014Z >>> model = DDP(FSDP(...)) 2024-08-06T21:19:54.4566128Z >>> with FSDP.state_dict_type( 2024-08-06T21:19:54.4566222Z >>> model, 2024-08-06T21:19:54.4566366Z >>> StateDictType.SHARDED_STATE_DICT, 2024-08-06T21:19:54.4566453Z >>> ): 2024-08-06T21:19:54.4566591Z >>> checkpoint = model.state_dict() 2024-08-06T21:19:54.4566595Z 2024-08-06T21:19:54.4566683Z Args: 2024-08-06T21:19:54.4566805Z module (torch.nn.Module): Root module. 2024-08-06T21:19:54.4567054Z state_dict_type (StateDictType): the desired ``state_dict_type`` to set. 2024-08-06T21:19:54.4567283Z state_dict_config (Optional[StateDictConfig]): the model ``state_dict`` 2024-08-06T21:19:54.4567442Z configuration for the target ``state_dict_type``. 2024-08-06T21:19:54.4567692Z optim_state_dict_config (Optional[OptimStateDictConfig]): the optimizer 2024-08-06T21:19:54.4567894Z ``state_dict`` configuration for the target ``state_dict_type``. 2024-08-06T21:19:54.4567982Z 2024-08-06T21:19:54.4568312Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4568316Z 2024-08-06T21:19:54.4616327Z msg = Cannot scrape callname=FullyShardedDataParallel.optim_state_dict in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=1801. 2024-08-06T21:19:54.4616636Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4616642Z 2024-08-06T21:19:54.4616881Z Transform the state-dict of an optimizer corresponding to a sharded model. 2024-08-06T21:19:54.4616886Z 2024-08-06T21:19:54.4617077Z The given state-dict can be transformed to one of three types: 2024-08-06T21:19:54.4617392Z 1) full optimizer state_dict, 2) sharded optimizer state_dict, 3) local optimizer state_dict. 2024-08-06T21:19:54.4617406Z 2024-08-06T21:19:54.4617636Z For full optimizer state_dict, all states are unflattened and not sharded. 2024-08-06T21:19:54.4617866Z Rank0 only and CPU only can be specified via :meth:`state_dict_type` to 2024-08-06T21:19:54.4617955Z avoid OOM. 2024-08-06T21:19:54.4617959Z 2024-08-06T21:19:54.4618192Z For sharded optimizer state_dict, all states are unflattened but sharded. 2024-08-06T21:19:54.4618405Z CPU only can be specified via :meth:`state_dict_type` to further save 2024-08-06T21:19:54.4618493Z memory. 2024-08-06T21:19:54.4618497Z 2024-08-06T21:19:54.4618712Z For local state_dict, no transformation will be performed. But a state 2024-08-06T21:19:54.4618960Z will be converted from nn.Tensor to ShardedTensor to represent its sharding 2024-08-06T21:19:54.4619072Z nature (this is not supported yet). 2024-08-06T21:19:54.4619077Z 2024-08-06T21:19:54.4619185Z Example:: 2024-08-06T21:19:54.4619189Z 2024-08-06T21:19:54.4619331Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:54.4619571Z >>> from torch.distributed.fsdp import FullyShardedDataParallel as FSDP 2024-08-06T21:19:54.4619812Z >>> from torch.distributed.fsdp import StateDictType 2024-08-06T21:19:54.4620045Z >>> from torch.distributed.fsdp import FullStateDictConfig 2024-08-06T21:19:54.4620295Z >>> from torch.distributed.fsdp import FullOptimStateDictConfig 2024-08-06T21:19:54.4620395Z >>> # Save a checkpoint 2024-08-06T21:19:54.4620522Z >>> model, optim = ... 2024-08-06T21:19:54.4620705Z >>> FSDP.set_state_dict_type( 2024-08-06T21:19:54.4620843Z >>> model, 2024-08-06T21:19:54.4621065Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:19:54.4621324Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4621543Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4621629Z >>> ) 2024-08-06T21:19:54.4621752Z >>> state_dict = model.state_dict() 2024-08-06T21:19:54.4621920Z >>> optim_state_dict = FSDP.optim_state_dict(model, optim) 2024-08-06T21:19:54.4622162Z >>> save_a_checkpoint(state_dict, optim_state_dict) 2024-08-06T21:19:54.4622274Z >>> # Load a checkpoint 2024-08-06T21:19:54.4622377Z >>> model, optim = ... 2024-08-06T21:19:54.4622525Z >>> state_dict, optim_state_dict = load_a_checkpoint() 2024-08-06T21:19:54.4622643Z >>> FSDP.set_state_dict_type( 2024-08-06T21:19:54.4622730Z >>> model, 2024-08-06T21:19:54.4622845Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:19:54.4622982Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4623122Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4623206Z >>> ) 2024-08-06T21:19:54.4623331Z >>> model.load_state_dict(state_dict) 2024-08-06T21:19:54.4623477Z >>> optim_state_dict = FSDP.optim_state_dict_to_load( 2024-08-06T21:19:54.4623588Z >>> model, optim, optim_state_dict 2024-08-06T21:19:54.4623684Z >>> ) 2024-08-06T21:19:54.4623809Z >>> optim.load_state_dict(optim_state_dict) 2024-08-06T21:19:54.4623817Z 2024-08-06T21:19:54.4623913Z Args: 2024-08-06T21:19:54.4624108Z model (torch.nn.Module): Root module (which may or may not be a 2024-08-06T21:19:54.4624367Z :class:`FullyShardedDataParallel` instance) whose parameters 2024-08-06T21:19:54.4624512Z were passed into the optimizer ``optim``. 2024-08-06T21:19:54.4624691Z optim (torch.optim.Optimizer): Optimizer for ``model`` 's 2024-08-06T21:19:54.4624783Z parameters. 2024-08-06T21:19:54.4625010Z optim_state_dict (Dict[str, Any]): the target optimizer state_dict to 2024-08-06T21:19:54.4625222Z transform. If the value is None, optim.state_dict() will be used. ( 2024-08-06T21:19:54.4625322Z Default: ``None``) 2024-08-06T21:19:54.4625576Z group (dist.ProcessGroup): Model's process group across which parameters 2024-08-06T21:19:54.4625762Z are sharded or ``None`` if using the default process group. ( 2024-08-06T21:19:54.4625857Z Default: ``None``) 2024-08-06T21:19:54.4625866Z 2024-08-06T21:19:54.4625964Z Returns: 2024-08-06T21:19:54.4626155Z Dict[str, Any]: A :class:`dict` containing the optimizer state for 2024-08-06T21:19:54.4626338Z ``model``. The sharding of the optimizer state is based on 2024-08-06T21:19:54.4626434Z ``state_dict_type``. 2024-08-06T21:19:54.4626439Z 2024-08-06T21:19:54.4626692Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4626697Z 2024-08-06T21:19:54.4627572Z msg = Cannot scrape callname=FullyShardedDataParallel.optim_state_dict_to_load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=1899. 2024-08-06T21:19:54.4627833Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4627838Z 2024-08-06T21:19:54.4628208Z Convert an optimizer state-dict so that it can be loaded into the optimizer associated with the FSDP model. 2024-08-06T21:19:54.4628217Z 2024-08-06T21:19:54.4628383Z Given a ``optim_state_dict`` that is transformed through 2024-08-06T21:19:54.4628607Z :meth:`optim_state_dict`, it gets converted to the flattened optimizer 2024-08-06T21:19:54.4628819Z state_dict that can be loaded to ``optim`` which is the optimizer for 2024-08-06T21:19:54.4629006Z ``model``. ``model`` must be sharded by FullyShardedDataParallel. 2024-08-06T21:19:54.4629010Z 2024-08-06T21:19:54.4629147Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:54.4629382Z >>> from torch.distributed.fsdp import FullyShardedDataParallel as FSDP 2024-08-06T21:19:54.4629534Z >>> from torch.distributed.fsdp import StateDictType 2024-08-06T21:19:54.4629719Z >>> from torch.distributed.fsdp import FullStateDictConfig 2024-08-06T21:19:54.4629916Z >>> from torch.distributed.fsdp import FullOptimStateDictConfig 2024-08-06T21:19:54.4630013Z >>> # Save a checkpoint 2024-08-06T21:19:54.4630122Z >>> model, optim = ... 2024-08-06T21:19:54.4630227Z >>> FSDP.set_state_dict_type( 2024-08-06T21:19:54.4630370Z >>> model, 2024-08-06T21:19:54.4630500Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:19:54.4630632Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4630787Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4630871Z >>> ) 2024-08-06T21:19:54.4630980Z >>> state_dict = model.state_dict() 2024-08-06T21:19:54.4631106Z >>> original_osd = optim.state_dict() 2024-08-06T21:19:54.4631232Z >>> optim_state_dict = FSDP.optim_state_dict( 2024-08-06T21:19:54.4631318Z >>> model, 2024-08-06T21:19:54.4631418Z >>> optim, 2024-08-06T21:19:54.4631527Z >>> optim_state_dict=original_osd 2024-08-06T21:19:54.4631610Z >>> ) 2024-08-06T21:19:54.4631768Z >>> save_a_checkpoint(state_dict, optim_state_dict) 2024-08-06T21:19:54.4631864Z >>> # Load a checkpoint 2024-08-06T21:19:54.4631961Z >>> model, optim = ... 2024-08-06T21:19:54.4632122Z >>> state_dict, optim_state_dict = load_a_checkpoint() 2024-08-06T21:19:54.4632230Z >>> FSDP.set_state_dict_type( 2024-08-06T21:19:54.4632315Z >>> model, 2024-08-06T21:19:54.4632514Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:19:54.4632641Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4632781Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:19:54.4632878Z >>> ) 2024-08-06T21:19:54.4632990Z >>> model.load_state_dict(state_dict) 2024-08-06T21:19:54.4633137Z >>> optim_state_dict = FSDP.optim_state_dict_to_load( 2024-08-06T21:19:54.4633260Z >>> model, optim, optim_state_dict 2024-08-06T21:19:54.4633342Z >>> ) 2024-08-06T21:19:54.4633465Z >>> optim.load_state_dict(optim_state_dict) 2024-08-06T21:19:54.4633470Z 2024-08-06T21:19:54.4633565Z Args: 2024-08-06T21:19:54.4633759Z model (torch.nn.Module): Root module (which may or may not be a 2024-08-06T21:19:54.4633956Z :class:`FullyShardedDataParallel` instance) whose parameters 2024-08-06T21:19:54.4634102Z were passed into the optimizer ``optim``. 2024-08-06T21:19:54.4634279Z optim (torch.optim.Optimizer): Optimizer for ``model`` 's 2024-08-06T21:19:54.4634388Z parameters. 2024-08-06T21:19:54.4634599Z optim_state_dict (Dict[str, Any]): The optimizer states to be loaded. 2024-08-06T21:19:54.4634797Z is_named_optimizer (bool): Is this optimizer a NamedOptimizer or 2024-08-06T21:19:54.4635001Z KeyedOptimizer. Only set to True if ``optim`` is TorchRec's 2024-08-06T21:19:54.4635175Z KeyedOptimizer or torch.distributed's NamedOptimizer. 2024-08-06T21:19:54.4635368Z load_directly (bool): If this is set to True, this API will also 2024-08-06T21:19:54.4635581Z call optim.load_state_dict(result) before returning the result. 2024-08-06T21:19:54.4635803Z Otherwise, users are responsible to call ``optim.load_state_dict()`` 2024-08-06T21:19:54.4635900Z (Default: ``False``) 2024-08-06T21:19:54.4636150Z group (dist.ProcessGroup): Model's process group across which parameters 2024-08-06T21:19:54.4636338Z are sharded or ``None`` if using the default process group. ( 2024-08-06T21:19:54.4636434Z Default: ``None``) 2024-08-06T21:19:54.4636457Z 2024-08-06T21:19:54.4636708Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4636713Z 2024-08-06T21:19:54.4809210Z msg = Cannot scrape callname=_RemoteModule.__init__ in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/api/remote_module.py line=137. 2024-08-06T21:19:54.4809572Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4809578Z 2024-08-06T21:19:54.4809806Z RemoteModule instance can only be created after RPC initialization. 2024-08-06T21:19:54.4809810Z 2024-08-06T21:19:54.4810016Z It creates a user-specified module on a specified remote node. 2024-08-06T21:19:54.4810249Z It behaves like a regular ``nn.Module`` except that the ``forward`` method is 2024-08-06T21:19:54.4810521Z executed on the remote node. 2024-08-06T21:19:54.4810767Z It takes care of autograd recording to ensure the backward pass propagates 2024-08-06T21:19:54.4810923Z gradients back to the corresponding remote module. 2024-08-06T21:19:54.4811284Z It can be shared across processors using `RPC framework `__, 2024-08-06T21:19:54.4811491Z without incurring any overheads of copying the actual module, 2024-08-06T21:19:54.4811688Z which is equivalent to an :class:`~torch.distributed.rpc.RRef` 2024-08-06T21:19:54.4811795Z pointing to the remote module. 2024-08-06T21:19:54.4811814Z 2024-08-06T21:19:54.4812012Z The arguments of ``forward_async`` and ``forward`` are the same as 2024-08-06T21:19:54.4812210Z the ``forward`` method of the module returned by the ``module_cls``. 2024-08-06T21:19:54.4812215Z 2024-08-06T21:19:54.4812533Z Apart from ``forward_async`` and ``forward``, no other methods are supported from nn.Module for now. 2024-08-06T21:19:54.4812541Z 2024-08-06T21:19:54.4812810Z Particularly, to create a hybrid model, typically the local modules should be 2024-08-06T21:19:54.4813266Z created outside of remote modules, rather than as submodules of any remote module (by calling ``add_module``). 2024-08-06T21:19:54.4813361Z Hybrid Example: 2024-08-06T21:19:54.4813476Z >>> class HybridModel(nn.Module): 2024-08-06T21:19:54.4813603Z >>> def __init__(self) -> None: 2024-08-06T21:19:54.4813714Z >>> nn.Module.__init__(self) 2024-08-06T21:19:54.4813855Z >>> self.remote_embedding = RemoteModule(...) 2024-08-06T21:19:54.4813995Z >>> self.local_linear = nn.Linear(...) 2024-08-06T21:19:54.4813999Z 2024-08-06T21:19:54.4814199Z For example, if ``module_cls`` returns an instance of ``nn.Linear``, 2024-08-06T21:19:54.4814467Z that has ``forward`` method signature, ``def forward(input: Tensor) -> Tensor:``, 2024-08-06T21:19:54.4814674Z the generated ``RemoteModule`` will have 2 methods in signature of 2024-08-06T21:19:54.4814867Z ``def forward(input: Tensor) -> Tensor:`` and 2024-08-06T21:19:54.4815044Z ``def forward_async(input: Tensor) -> Future[Tensor]:``. 2024-08-06T21:19:54.4815048Z 2024-08-06T21:19:54.4815148Z .. note:: 2024-08-06T21:19:54.4815292Z If the remote module is placed on a cuda device, 2024-08-06T21:19:54.4815540Z any input CPU tensors will be automatically moved to the same cuda device, 2024-08-06T21:19:54.4815940Z and GPU tensors are returned over the wire according to the device map of the remote worker on TensorPipe RPC backend. 2024-08-06T21:19:54.4815944Z 2024-08-06T21:19:54.4816029Z Args: 2024-08-06T21:19:54.4816339Z remote_device (str): Device on the destination worker where we'd like to place this module. 2024-08-06T21:19:54.4816630Z The device can be a local device or a remote device specified by one of the following remote 2024-08-06T21:19:54.4816734Z formats: 2024-08-06T21:19:54.4816739Z 2024-08-06T21:19:54.4816876Z 1. "rank:/" (ex: "rank:0/cuda:0"). 2024-08-06T21:19:54.4817031Z 2. "/" (ex: "trainer0/cuda:0"). 2024-08-06T21:19:54.4817035Z 2024-08-06T21:19:54.4817296Z In addition, the device field can be optional and the default value is "cpu". 2024-08-06T21:19:54.4817414Z module_cls (nn.Module): For example, 2024-08-06T21:19:54.4817575Z >>> class MyModule(nn.Module): 2024-08-06T21:19:54.4817747Z >>> def forward(input): 2024-08-06T21:19:54.4817853Z >>> return input + 1 2024-08-06T21:19:54.4817973Z >>> 2024-08-06T21:19:54.4818133Z >>> module_cls = MyModule 2024-08-06T21:19:54.4818405Z args (Sequence, optional): args to be passed to ``module_cls``. 2024-08-06T21:19:54.4818690Z kwargs (Dict, optional): kwargs to be passed to ``module_cls``. 2024-08-06T21:19:54.4819146Z _module_interface_cls (type, optional): The TorchScript interface type for the module 2024-08-06T21:19:54.4819436Z to be created. The type object should be decorated by @torch.jit.interface. 2024-08-06T21:19:54.4819791Z If not provided, the generated RemoteModule is not torchscript-able. 2024-08-06T21:19:54.4820141Z Warning, this is an experimental API and susceptible to frequent changes. 2024-08-06T21:19:54.4820151Z 2024-08-06T21:19:54.4820244Z Returns: 2024-08-06T21:19:54.4820501Z A remote module instance which wraps the :class:`~nn.Module` created by the 2024-08-06T21:19:54.4820730Z user-provided ``module_cls``, it has a blocking ``forward`` method and an 2024-08-06T21:19:54.4821000Z asynchronous ``forward_async`` method that returns a future of the ``forward`` call 2024-08-06T21:19:54.4821155Z on the user-provided module on the remote side. 2024-08-06T21:19:54.4821160Z 2024-08-06T21:19:54.4821257Z Example:: 2024-08-06T21:19:54.4821406Z Run the following code in two different processes: 2024-08-06T21:19:54.4821427Z 2024-08-06T21:19:54.4821543Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:54.4821640Z >>> # On worker 0: 2024-08-06T21:19:54.4821744Z >>> import torch 2024-08-06T21:19:54.4821871Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:19:54.4822042Z >>> from torch import nn, Tensor 2024-08-06T21:19:54.4822273Z >>> from torch.distributed.nn.api.remote_module import RemoteModule 2024-08-06T21:19:54.4822359Z >>> 2024-08-06T21:19:54.4822495Z >>> rpc.init_rpc("worker0", rank=0, world_size=2) 2024-08-06T21:19:54.4822623Z >>> remote_linear_module = RemoteModule( 2024-08-06T21:19:54.4822746Z >>> "worker1/cpu", nn.Linear, args=(20, 30), 2024-08-06T21:19:54.4822829Z >>> ) 2024-08-06T21:19:54.4822946Z >>> input = torch.randn(128, 20) 2024-08-06T21:19:54.4823097Z >>> ret_fut = remote_linear_module.forward_async(input) 2024-08-06T21:19:54.4823196Z >>> ret = ret_fut.wait() 2024-08-06T21:19:54.4823303Z >>> rpc.shutdown() 2024-08-06T21:19:54.4823308Z 2024-08-06T21:19:54.4823396Z >>> # On worker 1: 2024-08-06T21:19:54.4823491Z >>> import torch 2024-08-06T21:19:54.4823625Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:19:54.4823708Z >>> 2024-08-06T21:19:54.4823848Z >>> rpc.init_rpc("worker1", rank=1, world_size=2) 2024-08-06T21:19:54.4823954Z >>> rpc.shutdown() 2024-08-06T21:19:54.4823958Z 2024-08-06T21:19:54.4824211Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4824216Z 2024-08-06T21:19:54.4824956Z msg = Cannot scrape callname=_RemoteModule.init_from_module_rref in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/api/remote_module.py line=514. 2024-08-06T21:19:54.4825217Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4825221Z 2024-08-06T21:19:54.4825552Z Besides the constructor, a RemoteModule instance can also be initialized given a module RRef. 2024-08-06T21:19:54.4825556Z 2024-08-06T21:19:54.4825878Z This alternate initialization method can be particularly useful if we want to create multiple 2024-08-06T21:19:54.4826195Z RemoteModule instances that share the same underlying module and reduce memory consumption. 2024-08-06T21:19:54.4826212Z 2024-08-06T21:19:54.4826507Z Moreover, this also provides a workaround for passing script RemoteModule over RPC, 2024-08-06T21:19:54.4826765Z which is not supported. The recommended way is as follows: 2024-08-06T21:19:54.4826769Z 2024-08-06T21:19:54.4826930Z 1. the sender creates a RemoteModule; 2024-08-06T21:19:54.4827136Z 2. the sender sends its ``module_rref`` over RPC; 2024-08-06T21:19:54.4827621Z 3. the receiver calls this method to initialize another RemoteModule using the same ``module_rref``. 2024-08-06T21:19:54.4827631Z 2024-08-06T21:19:54.4827743Z Example:: 2024-08-06T21:19:54.4827895Z Run the following code in two different processes: 2024-08-06T21:19:54.4827900Z 2024-08-06T21:19:54.4828029Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:54.4828134Z >>> # On worker 0: 2024-08-06T21:19:54.4828336Z >>> import torch 2024-08-06T21:19:54.4828536Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:19:54.4828642Z >>> from torch import nn, Tensor 2024-08-06T21:19:54.4828867Z >>> from torch.distributed.nn.api.remote_module import RemoteModule 2024-08-06T21:19:54.4828967Z >>> 2024-08-06T21:19:54.4829106Z >>> rpc.init_rpc("worker0", rank=0, world_size=2) 2024-08-06T21:19:54.4829217Z >>> remote_module = RemoteModule( 2024-08-06T21:19:54.4829354Z >>> "worker1/cpu", nn.Linear, args=(20, 30), 2024-08-06T21:19:54.4829439Z >>> ) 2024-08-06T21:19:54.4829522Z >>> 2024-08-06T21:19:54.4829644Z >>> remote_module1 = rpc.rpc_sync( 2024-08-06T21:19:54.4829741Z >>> "worker1/cpu", 2024-08-06T21:19:54.4829864Z >>> RemoteModule.init_from_module_rref, 2024-08-06T21:19:54.4830029Z >>> ("worker1/cpu", remote_module1.get_module_rref()), 2024-08-06T21:19:54.4830114Z >>> ) 2024-08-06T21:19:54.4830209Z >>> rpc.shutdown() 2024-08-06T21:19:54.4830217Z 2024-08-06T21:19:54.4830322Z >>> # On worker 1: 2024-08-06T21:19:54.4830413Z >>> import torch 2024-08-06T21:19:54.4830537Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:19:54.4830692Z >>> 2024-08-06T21:19:54.4830874Z >>> rpc.init_rpc("worker1", rank=1, world_size=2) 2024-08-06T21:19:54.4830971Z >>> rpc.shutdown() 2024-08-06T21:19:54.4830975Z 2024-08-06T21:19:54.4831074Z Args: 2024-08-06T21:19:54.4831372Z remote_device (str): Device on the destination worker where we'd like to place this module. 2024-08-06T21:19:54.4831678Z The device can be a local device or a remote device specified by one of the following remote 2024-08-06T21:19:54.4831769Z formats: 2024-08-06T21:19:54.4831773Z 2024-08-06T21:19:54.4831914Z 1. "rank:/" (ex: "rank:0/cuda:0"). 2024-08-06T21:19:54.4832081Z 2. "/" (ex: "trainer0/cuda:0"). 2024-08-06T21:19:54.4832086Z 2024-08-06T21:19:54.4832333Z In addition, the device field can be optional and the default value is "cpu". 2024-08-06T21:19:54.4832587Z module_rref (RRef[nn.Module]): The module reference shared by both the caller and 2024-08-06T21:19:54.4832709Z the created remote module. 2024-08-06T21:19:54.4832985Z _module_interface_cls (type, optional): The TorchScript interface type for the module 2024-08-06T21:19:54.4833216Z to be created. The type object should be decorated by @torch.jit.interface. 2024-08-06T21:19:54.4833445Z If not provided, the generated RemoteModule is not torchscript-able. 2024-08-06T21:19:54.4833677Z Warning, this is an experimental API and susceptible to frequent changes. 2024-08-06T21:19:54.4833682Z 2024-08-06T21:19:54.4833779Z Returns: 2024-08-06T21:19:54.4834018Z A remote module instance which wraps the :class:`~nn.Module` created by the 2024-08-06T21:19:54.4834250Z user-provided ``module_rref``, it has a blocking ``forward`` method and an 2024-08-06T21:19:54.4834532Z asynchronous ``forward_async`` method that returns a future of the ``forward`` call 2024-08-06T21:19:54.4834678Z on the user-provided module on the remote side. 2024-08-06T21:19:54.4834682Z 2024-08-06T21:19:54.4834935Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4834940Z 2024-08-06T21:19:54.4835588Z msg = Cannot scrape callname=RemoteModule in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/api/remote_module.py line=606. 2024-08-06T21:19:54.4835860Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4835864Z 2024-08-06T21:19:54.4836091Z A RemoteModule instance can only be created after RPC initialization. 2024-08-06T21:19:54.4836096Z 2024-08-06T21:19:54.4836288Z It creates a user-specified module on a specified remote node. 2024-08-06T21:19:54.4836536Z It behaves like a regular ``nn.Module`` except that the ``forward`` method is 2024-08-06T21:19:54.4836642Z executed on the remote node. 2024-08-06T21:19:54.4836951Z It takes care of autograd recording to ensure the backward pass propagates 2024-08-06T21:19:54.4837117Z gradients back to the corresponding remote module. 2024-08-06T21:19:54.4837126Z 2024-08-06T21:19:54.4837345Z It generates two methods ``forward_async`` and ``forward`` based on the 2024-08-06T21:19:54.4837569Z signature of the ``forward`` method of ``module_cls``. ``forward_async`` 2024-08-06T21:19:54.4837818Z runs asynchronously and returns a Future. The arguments of ``forward_async`` 2024-08-06T21:19:54.4838013Z and ``forward`` are the same as the ``forward`` method of the module 2024-08-06T21:19:54.4838136Z returned by the ``module_cls``. 2024-08-06T21:19:54.4838141Z 2024-08-06T21:19:54.4838339Z For example, if ``module_cls`` returns an instance of ``nn.Linear``, 2024-08-06T21:19:54.4838652Z that has ``forward`` method signature: ``def forward(input: Tensor) -> Tensor:``, 2024-08-06T21:19:54.4838887Z the generated ``RemoteModule`` will have 2 methods with the signatures: 2024-08-06T21:19:54.4838895Z 2024-08-06T21:19:54.4839020Z | ``def forward(input: Tensor) -> Tensor:`` 2024-08-06T21:19:54.4839237Z | ``def forward_async(input: Tensor) -> Future[Tensor]:`` 2024-08-06T21:19:54.4839254Z 2024-08-06T21:19:54.4839336Z Args: 2024-08-06T21:19:54.4839630Z remote_device (str): Device on the destination worker where we'd like to place this module. 2024-08-06T21:19:54.4839985Z The format should be "/", where the device field can be parsed as torch.device type. 2024-08-06T21:19:54.4840122Z E.g., "trainer0/cpu", "trainer0", "ps0/cuda:0". 2024-08-06T21:19:54.4840363Z In addition, the device field can be optional and the default value is "cpu". 2024-08-06T21:19:54.4840619Z module_cls (nn.Module): Class for the module to be created remotely. For example, 2024-08-06T21:19:54.4840624Z 2024-08-06T21:19:54.4840733Z >>> class MyModule(nn.Module): 2024-08-06T21:19:54.4840838Z >>> def forward(input): 2024-08-06T21:19:54.4840949Z >>> return input + 1 2024-08-06T21:19:54.4841033Z >>> 2024-08-06T21:19:54.4841134Z >>> module_cls = MyModule 2024-08-06T21:19:54.4841154Z 2024-08-06T21:19:54.4841350Z args (Sequence, optional): args to be passed to ``module_cls``. 2024-08-06T21:19:54.4841540Z kwargs (Dict, optional): kwargs to be passed to ``module_cls``. 2024-08-06T21:19:54.4841544Z 2024-08-06T21:19:54.4841642Z Returns: 2024-08-06T21:19:54.4841883Z A remote module instance which wraps the :class:`~nn.Module` created by the 2024-08-06T21:19:54.4842111Z user-provided ``module_cls``, it has a blocking ``forward`` method and an 2024-08-06T21:19:54.4842393Z asynchronous ``forward_async`` method that returns a future of the ``forward`` call 2024-08-06T21:19:54.4842534Z on the user-provided module on the remote side. 2024-08-06T21:19:54.4842538Z 2024-08-06T21:19:54.4842631Z Example:: 2024-08-06T21:19:54.4842792Z Run the following code in two different processes: 2024-08-06T21:19:54.4842800Z 2024-08-06T21:19:54.4842912Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:54.4843003Z >>> # On worker 0: 2024-08-06T21:19:54.4843111Z >>> import torch 2024-08-06T21:19:54.4843234Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:19:54.4843353Z >>> from torch import nn, Tensor 2024-08-06T21:19:54.4843571Z >>> from torch.distributed.nn.api.remote_module import RemoteModule 2024-08-06T21:19:54.4843655Z >>> 2024-08-06T21:19:54.4843809Z >>> rpc.init_rpc("worker0", rank=0, world_size=2) 2024-08-06T21:19:54.4843931Z >>> remote_linear_module = RemoteModule( 2024-08-06T21:19:54.4844054Z >>> "worker1/cpu", nn.Linear, args=(20, 30), 2024-08-06T21:19:54.4844153Z >>> ) 2024-08-06T21:19:54.4844260Z >>> input = torch.randn(128, 20) 2024-08-06T21:19:54.4844411Z >>> ret_fut = remote_linear_module.forward_async(input) 2024-08-06T21:19:54.4844526Z >>> ret = ret_fut.wait() 2024-08-06T21:19:54.4844679Z >>> rpc.shutdown() 2024-08-06T21:19:54.4844683Z 2024-08-06T21:19:54.4844772Z >>> # On worker 1: 2024-08-06T21:19:54.4844876Z >>> import torch 2024-08-06T21:19:54.4845001Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:19:54.4845084Z >>> 2024-08-06T21:19:54.4845231Z >>> rpc.init_rpc("worker1", rank=1, world_size=2) 2024-08-06T21:19:54.4845323Z >>> rpc.shutdown() 2024-08-06T21:19:54.4845327Z 2024-08-06T21:19:54.4845515Z Furthermore, a more practical example that is combined with 2024-08-06T21:19:54.4846013Z `DistributedDataParallel `__ (DDP) 2024-08-06T21:19:54.4846343Z can be found in this `tutorial `__. 2024-08-06T21:19:54.4846348Z 2024-08-06T21:19:54.4846615Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4846619Z 2024-08-06T21:19:54.4977652Z msg = Cannot scrape callname=DistributedOptimizer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/optimizer.py line=130. 2024-08-06T21:19:54.4978099Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4978106Z 2024-08-06T21:19:54.4978360Z DistributedOptimizer takes remote references to parameters scattered 2024-08-06T21:19:54.4978598Z across workers and applies the given optimizer locally for each parameter. 2024-08-06T21:19:54.4978602Z 2024-08-06T21:19:54.4978848Z This class uses :meth:`~torch.distributed.autograd.get_gradients` in order 2024-08-06T21:19:54.4978999Z to retrieve the gradients for specific parameters. 2024-08-06T21:19:54.4979004Z 2024-08-06T21:19:54.4979116Z Concurrent calls to 2024-08-06T21:19:54.4979323Z :meth:`~torch.distributed.optim.DistributedOptimizer.step`, 2024-08-06T21:19:54.4979465Z either from the same or different clients, will 2024-08-06T21:19:54.4979703Z be serialized on each worker -- as each worker's optimizer can only work 2024-08-06T21:19:54.4979914Z on one set of gradients at a time. However, there is no guarantee that 2024-08-06T21:19:54.4980163Z the full forward-backward-optimizer sequence will execute for one client 2024-08-06T21:19:54.4980393Z at a time. This means that the gradients being applied may not correspond 2024-08-06T21:19:54.4980615Z to the latest forward pass executed on a given worker. Also, there is no 2024-08-06T21:19:54.4980729Z guaranteed ordering across workers. 2024-08-06T21:19:54.4980733Z 2024-08-06T21:19:54.4981008Z `DistributedOptimizer` creates the local optimizer with TorchScript enabled 2024-08-06T21:19:54.4981236Z by default, so that optimizer updates are not blocked by the Python Global 2024-08-06T21:19:54.4981496Z Interpreter Lock (GIL) in the case of multithreaded training (e.g. Distributed 2024-08-06T21:19:54.4981733Z Model Parallel). This feature is currently enabled for most optimizers. You 2024-08-06T21:19:54.4981983Z can also follow `the recipe`__ in PyTorch tutorials to enable TorchScript support 2024-08-06T21:19:54.4982108Z for your own custom optimizers. 2024-08-06T21:19:54.4982112Z 2024-08-06T21:19:54.4982198Z Args: 2024-08-06T21:19:54.4982398Z optimizer_class (optim.Optimizer): the class of optimizer to 2024-08-06T21:19:54.4982518Z instantiate on each worker. 2024-08-06T21:19:54.4982728Z params_rref (list[RRef]): list of RRefs to local or remote parameters 2024-08-06T21:19:54.4982824Z to optimize. 2024-08-06T21:19:54.4983052Z args: arguments to pass to the optimizer constructor on each worker. 2024-08-06T21:19:54.4983275Z kwargs: arguments to pass to the optimizer constructor on each worker. 2024-08-06T21:19:54.4983279Z 2024-08-06T21:19:54.4983378Z Example:: 2024-08-06T21:19:54.4983505Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:54.4983667Z >>> import torch.distributed.autograd as dist_autograd 2024-08-06T21:19:54.4983805Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:19:54.4983909Z >>> from torch import optim 2024-08-06T21:19:54.4984165Z >>> from torch.distributed.optim import DistributedOptimizer 2024-08-06T21:19:54.4984267Z >>> 2024-08-06T21:19:54.4984403Z >>> with dist_autograd.context() as context_id: 2024-08-06T21:19:54.4984501Z >>> # Forward pass. 2024-08-06T21:19:54.4984716Z >>> rref1 = rpc.remote("worker1", torch.add, args=(torch.ones(2), 3)) 2024-08-06T21:19:54.4984909Z >>> rref2 = rpc.remote("worker1", torch.add, args=(torch.ones(2), 1)) 2024-08-06T21:19:54.4985031Z >>> loss = rref1.to_here() + rref2.to_here() 2024-08-06T21:19:54.4985129Z >>> 2024-08-06T21:19:54.4985225Z >>> # Backward pass. 2024-08-06T21:19:54.4985374Z >>> dist_autograd.backward(context_id, [loss.sum()]) 2024-08-06T21:19:54.4985473Z >>> 2024-08-06T21:19:54.4985564Z >>> # Optimizer. 2024-08-06T21:19:54.4985685Z >>> dist_optim = DistributedOptimizer( 2024-08-06T21:19:54.4985789Z >>> optim.SGD, 2024-08-06T21:19:54.4985882Z >>> [rref1, rref2], 2024-08-06T21:19:54.4985973Z >>> lr=0.05, 2024-08-06T21:19:54.4986068Z >>> ) 2024-08-06T21:19:54.4986175Z >>> dist_optim.step(context_id) 2024-08-06T21:19:54.4986180Z 2024-08-06T21:19:54.4986389Z __ https://github.com/pytorch/tutorials/pull/1465 2024-08-06T21:19:54.4986394Z 2024-08-06T21:19:54.4986659Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4986663Z 2024-08-06T21:19:54.4990974Z msg = Cannot scrape callname=PostLocalSGDOptimizer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/post_localSGD_optimizer.py line=9. 2024-08-06T21:19:54.4991276Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.4991281Z 2024-08-06T21:19:54.4991672Z Wraps an arbitrary :class:`torch.optim.Optimizer` and runs `post-local SGD `_, 2024-08-06T21:19:54.4991836Z This optimizer runs local optimizer at every step. 2024-08-06T21:19:54.4992176Z After the warm-up stage, it averages parameters periodically afer the local optimizer is applied. 2024-08-06T21:19:54.4992181Z 2024-08-06T21:19:54.4992265Z Args: 2024-08-06T21:19:54.4992387Z optim: The local optimizer. 2024-08-06T21:19:54.4992603Z averager: A model averager instance to run post-localSGD algorithm. 2024-08-06T21:19:54.4992608Z 2024-08-06T21:19:54.4992703Z Example:: 2024-08-06T21:19:54.4992707Z 2024-08-06T21:19:54.4992843Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:54.4992935Z >>> import torch 2024-08-06T21:19:54.4993065Z >>> import torch.distributed as dist 2024-08-06T21:19:54.4993334Z >>> import torch.distributed.algorithms.model_averaging.averagers as averagers 2024-08-06T21:19:54.4993435Z >>> import torch.nn as nn 2024-08-06T21:19:54.4993648Z >>> from torch.distributed.optim import PostLocalSGDOptimizer 2024-08-06T21:19:54.4993921Z >>> from torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook import ( 2024-08-06T21:19:54.4994028Z >>> PostLocalSGDState, 2024-08-06T21:19:54.4994140Z >>> post_localSGD_hook, 2024-08-06T21:19:54.4994225Z >>> ) 2024-08-06T21:19:54.4994308Z >>> 2024-08-06T21:19:54.4994474Z >>> model = nn.parallel.DistributedDataParallel( 2024-08-06T21:19:54.4994613Z >>> module, device_ids=[rank], output_device=rank 2024-08-06T21:19:54.4994698Z >>> ) 2024-08-06T21:19:54.4994795Z >>> 2024-08-06T21:19:54.4994936Z >>> # Register a post-localSGD communication hook. 2024-08-06T21:19:54.4995232Z >>> state = PostLocalSGDState(process_group=None, subgroup=None, start_localSGD_iter=100) 2024-08-06T21:19:54.4995403Z >>> model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:19:54.4995486Z >>> 2024-08-06T21:19:54.4995687Z >>> # Create a post-localSGD optimizer that wraps a local optimizer. 2024-08-06T21:19:54.4995948Z >>> # Note that ``warmup_steps`` used in ``PostLocalSGDOptimizer`` must be the same as 2024-08-06T21:19:54.4996112Z >>> # ``start_localSGD_iter`` used in ``PostLocalSGDState``. 2024-08-06T21:19:54.4996431Z >>> local_optim = torch.optim.SGD(params=model.parameters(), lr=0.01) 2024-08-06T21:19:54.4996551Z >>> opt = PostLocalSGDOptimizer( 2024-08-06T21:19:54.4996653Z >>> optim=local_optim, 2024-08-06T21:19:54.4996911Z >>> averager=averagers.PeriodicModelAverager(period=4, warmup_steps=100) 2024-08-06T21:19:54.4996995Z >>> ) 2024-08-06T21:19:54.4997078Z >>> 2024-08-06T21:19:54.4997313Z >>> # In the first 100 steps, DDP runs global gradient averaging at every step. 2024-08-06T21:19:54.4997617Z >>> # After 100 steps, DDP runs gradient averaging within each subgroup (intra-node by default), 2024-08-06T21:19:54.4997997Z >>> # and post-localSGD optimizer runs global model averaging every 4 steps after applying the local optimizer. 2024-08-06T21:19:54.4998117Z >>> for step in range(0, 200): 2024-08-06T21:19:54.4998215Z >>> opt.zero_grad() 2024-08-06T21:19:54.4998328Z >>> loss = loss_fn(output, labels) 2024-08-06T21:19:54.4998444Z >>> loss.backward() 2024-08-06T21:19:54.4998538Z >>> opt.step() 2024-08-06T21:19:54.4998542Z 2024-08-06T21:19:54.4998851Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.4998868Z 2024-08-06T21:19:54.5093474Z msg = Cannot scrape callname=ZeroRedundancyOptimizer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/zero_redundancy_optimizer.py line=282. 2024-08-06T21:19:54.5094681Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.5095115Z 2024-08-06T21:19:54.5095519Z Wrap an arbitrary :class:`optim.Optimizer ` and shards its states across ranks in the group. 2024-08-06T21:19:54.5096051Z 2024-08-06T21:19:54.5096175Z The sharing is done as described by ZeRO_. 2024-08-06T21:19:54.5096422Z 2024-08-06T21:19:54.5096563Z The local optimizer instance in each rank is only 2024-08-06T21:19:54.5097077Z responsible for updating approximately ``1 / world_size`` parameters and 2024-08-06T21:19:54.5097628Z hence only needs to keep ``1 / world_size`` optimizer states. After 2024-08-06T21:19:54.5098195Z parameters are updated locally, each rank will broadcast its parameters to 2024-08-06T21:19:54.5098743Z all other peers to keep all model replicas in the same state. 2024-08-06T21:19:54.5099226Z ``ZeroRedundancyOptimizer`` can be used in conjunction with 2024-08-06T21:19:54.5099793Z :class:`torch.nn.parallel.DistributedDataParallel` to reduce per-rank peak 2024-08-06T21:19:54.5100270Z memory consumption. 2024-08-06T21:19:54.5100417Z 2024-08-06T21:19:54.5100676Z ``ZeroRedundancyOptimizer`` uses a sorted-greedy algorithm to pack a number 2024-08-06T21:19:54.5101290Z of parameters at each rank. Each parameter belongs to a single rank and is 2024-08-06T21:19:54.5101881Z not divided among ranks. The partition is arbitrary and might not match the 2024-08-06T21:19:54.5102360Z the parameter registration or usage order. 2024-08-06T21:19:54.5102610Z 2024-08-06T21:19:54.5102701Z Arguments: 2024-08-06T21:19:54.5103022Z params (``Iterable``): an ``Iterable`` of :class:`torch.Tensor` s 2024-08-06T21:19:54.5103511Z or :class:`dict` s giving all parameters, which will be sharded 2024-08-06T21:19:54.5103915Z across ranks. 2024-08-06T21:19:54.5104066Z 2024-08-06T21:19:54.5104168Z Keyword Args: 2024-08-06T21:19:54.5104515Z optimizer_class (:class:`torch.nn.Optimizer`): the class of the local 2024-08-06T21:19:54.5104948Z optimizer. 2024-08-06T21:19:54.5105303Z process_group (``ProcessGroup``, optional): ``torch.distributed`` 2024-08-06T21:19:54.5105820Z ``ProcessGroup`` (default: ``dist.group.WORLD`` initialized by 2024-08-06T21:19:54.5106283Z :meth:`torch.distributed.init_process_group`). 2024-08-06T21:19:54.5106775Z parameters_as_bucket_view (bool, optional): if ``True``, parameters are 2024-08-06T21:19:54.5107327Z packed into buckets to speed up communication, and ``param.data`` 2024-08-06T21:19:54.5108054Z fields point to bucket views at different offsets; if ``False``, 2024-08-06T21:19:54.5108597Z each individual parameter is communicated separately, and each 2024-08-06T21:19:54.5109079Z ``params.data`` stays intact (default: ``False``). 2024-08-06T21:19:54.5109533Z overlap_with_ddp (bool, optional): if ``True``, :meth:`step` is 2024-08-06T21:19:54.5110164Z overlapped with :class:`DistributedDataParallel` 's gradient 2024-08-06T21:19:54.5110948Z synchronization; this requires (1) either a functional optimizer 2024-08-06T21:19:54.5111550Z for the ``optimizer_class`` argument or one with a functional 2024-08-06T21:19:54.5112126Z equivalent and (2) registering a DDP communication hook 2024-08-06T21:19:54.5112731Z constructed from one of the functions in ``ddp_zero_hook.py``; 2024-08-06T21:19:54.5122569Z parameters are packed into buckets matching those in 2024-08-06T21:19:54.5123069Z :class:`DistributedDataParallel`, meaning that the 2024-08-06T21:19:54.5123524Z ``parameters_as_bucket_view`` argument is ignored. 2024-08-06T21:19:54.5124229Z If ``False``, :meth:`step` runs disjointly after the backward pass 2024-08-06T21:19:54.5124646Z (per normal). 2024-08-06T21:19:54.5124912Z (default: ``False``) 2024-08-06T21:19:54.5125297Z **defaults: any trailing arguments, which are forwarded to the local 2024-08-06T21:19:54.5125724Z optimizer. 2024-08-06T21:19:54.5125868Z 2024-08-06T21:19:54.5125979Z Example:: 2024-08-06T21:19:54.5126102Z 2024-08-06T21:19:54.5126200Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.5126479Z >>> import torch.nn as nn 2024-08-06T21:19:54.5126870Z >>> from torch.distributed.optim import ZeroRedundancyOptimizer 2024-08-06T21:19:54.5127378Z >>> from torch.nn.parallel import DistributedDataParallel as DDP 2024-08-06T21:19:54.5127931Z >>> model = nn.Sequential(*[nn.Linear(2000, 2000).to(rank) for _ in range(20)]) 2024-08-06T21:19:54.5128404Z >>> ddp = DDP(model, device_ids=[rank]) 2024-08-06T21:19:54.5128735Z >>> opt = ZeroRedundancyOptimizer( 2024-08-06T21:19:54.5129062Z >>> ddp.parameters(), 2024-08-06T21:19:54.5129371Z >>> optimizer_class=torch.optim.Adam, 2024-08-06T21:19:54.5129680Z >>> lr=0.01 2024-08-06T21:19:54.5129906Z >>> ) 2024-08-06T21:19:54.5130135Z >>> ddp(inputs).sum().backward() 2024-08-06T21:19:54.5130423Z >>> opt.step() 2024-08-06T21:19:54.5130573Z 2024-08-06T21:19:54.5130664Z .. warning:: 2024-08-06T21:19:54.5131000Z Currently, ``ZeroRedundancyOptimizer`` requires that all of the 2024-08-06T21:19:54.5131456Z passed-in parameters are the same dense type. 2024-08-06T21:19:54.5131719Z 2024-08-06T21:19:54.5131808Z .. warning:: 2024-08-06T21:19:54.5132150Z If you pass ``overlap_with_ddp=True``, be wary of the following: Given 2024-08-06T21:19:54.5132676Z the way that overlapping :class:`DistributedDataParallel` with 2024-08-06T21:19:54.5133229Z :class:`ZeroRedundancyOptimizer` is currently implemented, the first 2024-08-06T21:19:54.5133800Z two or three training iterations do not perform parameter updates in 2024-08-06T21:19:54.5134318Z the optimizer step, depending on if ``static_graph=False`` or 2024-08-06T21:19:54.5134887Z ``static_graph=True``, respectively. This is because it needs 2024-08-06T21:19:54.5135378Z information about the gradient bucketing strategy used by 2024-08-06T21:19:54.5135901Z :class:`DistributedDataParallel`, which is not finalized until the 2024-08-06T21:19:54.5136431Z second forward pass if ``static_graph=False`` or until the third 2024-08-06T21:19:54.5136964Z forward pass if ``static_graph=True``. To adjust for this, one option 2024-08-06T21:19:54.5137403Z is to prepend dummy inputs. 2024-08-06T21:19:54.5137590Z 2024-08-06T21:19:54.5137844Z .. warning:: ZeroRedundancyOptimizer is experimental and subject to change. 2024-08-06T21:19:54.5138223Z 2024-08-06T21:19:54.5138357Z .. _ZeRO: https://arxiv.org/abs/1910.02054 2024-08-06T21:19:54.5138713Z 2024-08-06T21:19:54.5138718Z 2024-08-06T21:19:54.5139024Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.5139398Z 2024-08-06T21:19:54.5253774Z msg = Cannot scrape callname=_CustomReducer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/microbatch.py line=28. 2024-08-06T21:19:54.5254775Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.5255235Z 2024-08-06T21:19:54.5255465Z Custom reducer class that can be used to specify a custom operation that 2024-08-06T21:19:54.5255988Z reduces losses of multiple microbatches into one value. 2024-08-06T21:19:54.5256268Z 2024-08-06T21:19:54.5256357Z Example: 2024-08-06T21:19:54.5256585Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.5256854Z >>> sum_reducer = _CustomReducer( 2024-08-06T21:19:54.5257146Z >>> torch.tensor(0.0), 2024-08-06T21:19:54.5257418Z >>> lambda a, b: a + b 2024-08-06T21:19:54.5257684Z >>> ) 2024-08-06T21:19:54.5257794Z 2024-08-06T21:19:54.5258046Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.5258422Z 2024-08-06T21:19:54.5636664Z msg = Cannot scrape callname=async_execution in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/functions.py line=6. 2024-08-06T21:19:54.5637808Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.5638184Z 2024-08-06T21:19:54.5638438Z A decorator for a function indicating that the return value of the function 2024-08-06T21:19:54.5638995Z is guaranteed to be a :class:`~torch.futures.Future` object and this 2024-08-06T21:19:54.5639562Z function can run asynchronously on the RPC callee. More specifically, the 2024-08-06T21:19:54.5640162Z callee extracts the :class:`~torch.futures.Future` returned by the wrapped 2024-08-06T21:19:54.5640740Z function and installs subsequent processing steps as a callback to that 2024-08-06T21:19:54.5641338Z :class:`~torch.futures.Future`. The installed callback will read the value 2024-08-06T21:19:54.5641894Z from the :class:`~torch.futures.Future` when completed and send the 2024-08-06T21:19:54.5642385Z value back as the RPC response. That also means the returned 2024-08-06T21:19:54.5642907Z :class:`~torch.futures.Future` only exists on the callee side and is never 2024-08-06T21:19:54.5643478Z sent through RPC. This decorator is useful when the wrapped function's 2024-08-06T21:19:54.5644008Z (``fn``) execution needs to pause and resume due to, e.g., containing 2024-08-06T21:19:54.5644546Z :meth:`~torch.distributed.rpc.rpc_async` or waiting for other signals. 2024-08-06T21:19:54.5644897Z 2024-08-06T21:19:54.5645124Z .. note:: To enable asynchronous execution, applications must pass the 2024-08-06T21:19:54.5645687Z function object returned by this decorator to RPC APIs. If RPC detected 2024-08-06T21:19:54.5646250Z attributes installed by this decorator, it knows that this function 2024-08-06T21:19:54.5646778Z returns a ``Future`` object and will handle that accordingly. 2024-08-06T21:19:54.5647293Z However, this does not mean this decorator has to be outmost one when 2024-08-06T21:19:54.5647844Z defining a function. For example, when combined with ``@staticmethod`` 2024-08-06T21:19:54.5648407Z or ``@classmethod``, ``@rpc.functions.async_execution`` needs to be the 2024-08-06T21:19:54.5648959Z inner decorator to allow the target function be recognized as a static 2024-08-06T21:19:54.5649570Z or class function. This target function can still execute asynchronously 2024-08-06T21:19:54.5650152Z because, when accessed, the static or class method preserves attributes 2024-08-06T21:19:54.5650644Z installed by ``@rpc.functions.async_execution``. 2024-08-06T21:19:54.5650920Z 2024-08-06T21:19:54.5650924Z 2024-08-06T21:19:54.5651018Z Example:: 2024-08-06T21:19:54.5651352Z The returned :class:`~torch.futures.Future` object can come from 2024-08-06T21:19:54.5651903Z :meth:`~torch.distributed.rpc.rpc_async`, 2024-08-06T21:19:54.5652372Z :meth:`~torch.futures.Future.then`, or :class:`~torch.futures.Future` 2024-08-06T21:19:54.5652897Z constructor. The example below shows directly using the 2024-08-06T21:19:54.5653308Z :class:`~torch.futures.Future` returned by 2024-08-06T21:19:54.5653675Z :meth:`~torch.futures.Future.then`. 2024-08-06T21:19:54.5653896Z 2024-08-06T21:19:54.5654030Z >>> from torch.distributed import rpc 2024-08-06T21:19:54.5654334Z >>> 2024-08-06T21:19:54.5654569Z >>> # omitting setup and shutdown RPC 2024-08-06T21:19:54.5654956Z >>> 2024-08-06T21:19:54.5655161Z >>> # On all workers 2024-08-06T21:19:54.5655449Z >>> @rpc.functions.async_execution 2024-08-06T21:19:54.5655792Z >>> def async_add_chained(to, x, y, z): 2024-08-06T21:19:54.5656200Z >>> # This function runs on "worker1" and returns immediately when 2024-08-06T21:19:54.5656708Z >>> # the callback is installed through the `then(cb)` API. In the 2024-08-06T21:19:54.5657211Z >>> # mean time, the `rpc_async` to "worker2" can run concurrently. 2024-08-06T21:19:54.5657733Z >>> # When the return value of that `rpc_async` arrives at 2024-08-06T21:19:54.5658202Z >>> # "worker1", "worker1" will run the lambda function accordingly 2024-08-06T21:19:54.5658699Z >>> # and set the value for the previously returned `Future`, which 2024-08-06T21:19:54.5659184Z >>> # will then trigger RPC to send the result back to "worker0". 2024-08-06T21:19:54.5659665Z >>> return rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:19:54.5660068Z >>> lambda fut: fut.wait() + z 2024-08-06T21:19:54.5660369Z >>> ) 2024-08-06T21:19:54.5660586Z >>> 2024-08-06T21:19:54.5660795Z >>> # On worker0 2024-08-06T21:19:54.5661029Z >>> # xdoctest: +SKIP 2024-08-06T21:19:54.5661301Z >>> ret = rpc.rpc_sync( 2024-08-06T21:19:54.5661567Z >>> "worker1", 2024-08-06T21:19:54.5661813Z >>> async_add_chained, 2024-08-06T21:19:54.5662118Z >>> args=("worker2", torch.ones(2), 1, 1) 2024-08-06T21:19:54.5662439Z >>> ) 2024-08-06T21:19:54.5662672Z >>> print(ret) # prints tensor([3., 3.]) 2024-08-06T21:19:54.5663100Z 2024-08-06T21:19:54.5663331Z When combined with TorchScript decorators, this decorator must be the 2024-08-06T21:19:54.5663771Z outmost one. 2024-08-06T21:19:54.5663906Z 2024-08-06T21:19:54.5664011Z >>> from torch import Tensor 2024-08-06T21:19:54.5664324Z >>> from torch.futures import Future 2024-08-06T21:19:54.5664664Z >>> from torch.distributed import rpc 2024-08-06T21:19:54.5664963Z >>> 2024-08-06T21:19:54.5665194Z >>> # omitting setup and shutdown RPC 2024-08-06T21:19:54.5665500Z >>> 2024-08-06T21:19:54.5665701Z >>> # On all workers 2024-08-06T21:19:54.5665965Z >>> @torch.jit.script 2024-08-06T21:19:54.5666280Z >>> def script_add(x: Tensor, y: Tensor) -> Tensor: 2024-08-06T21:19:54.5666629Z >>> return x + y 2024-08-06T21:19:54.5666880Z >>> 2024-08-06T21:19:54.5667111Z >>> @rpc.functions.async_execution 2024-08-06T21:19:54.5667416Z >>> @torch.jit.script 2024-08-06T21:19:54.5667785Z >>> def async_add(to: str, x: Tensor, y: Tensor) -> Future[Tensor]: 2024-08-06T21:19:54.5668231Z >>> return rpc.rpc_async(to, script_add, (x, y)) 2024-08-06T21:19:54.5668558Z >>> 2024-08-06T21:19:54.5668765Z >>> # On worker0 2024-08-06T21:19:54.5669013Z >>> ret = rpc.rpc_sync( 2024-08-06T21:19:54.5669266Z >>> "worker1", 2024-08-06T21:19:54.5669508Z >>> async_add, 2024-08-06T21:19:54.5669764Z >>> args=("worker2", torch.ones(2), 1) 2024-08-06T21:19:54.5670080Z >>> ) 2024-08-06T21:19:54.5670321Z >>> print(ret) # prints tensor([2., 2.]) 2024-08-06T21:19:54.5670544Z 2024-08-06T21:19:54.5670763Z When combined with static or class method, this decorator must be the 2024-08-06T21:19:54.5671196Z inner one. 2024-08-06T21:19:54.5671337Z 2024-08-06T21:19:54.5671580Z >>> from torch.distributed import rpc 2024-08-06T21:19:54.5671887Z >>> 2024-08-06T21:19:54.5672125Z >>> # omitting setup and shutdown RPC 2024-08-06T21:19:54.5672436Z >>> 2024-08-06T21:19:54.5672643Z >>> # On all workers 2024-08-06T21:19:54.5672924Z >>> class AsyncExecutionClass: 2024-08-06T21:19:54.5673215Z >>> 2024-08-06T21:19:54.5673416Z >>> @staticmethod 2024-08-06T21:19:54.5673699Z >>> @rpc.functions.async_execution 2024-08-06T21:19:54.5674039Z >>> def static_async_add(to, x, y, z): 2024-08-06T21:19:54.5674426Z >>> return rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:19:54.5674830Z >>> lambda fut: fut.wait() + z 2024-08-06T21:19:54.5675140Z >>> ) 2024-08-06T21:19:54.5675354Z >>> 2024-08-06T21:19:54.5675617Z >>> @classmethod 2024-08-06T21:19:54.5675967Z >>> @rpc.functions.async_execution 2024-08-06T21:19:54.5676357Z >>> def class_async_add(cls, to, x, y, z): 2024-08-06T21:19:54.5676763Z >>> ret_fut = torch.futures.Future() 2024-08-06T21:19:54.5677211Z >>> rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:19:54.5678038Z >>> lambda fut: ret_fut.set_result(fut.wait() + z) 2024-08-06T21:19:54.5678494Z >>> ) 2024-08-06T21:19:54.5678730Z >>> return ret_fut 2024-08-06T21:19:54.5678983Z >>> 2024-08-06T21:19:54.5679220Z >>> @rpc.functions.async_execution 2024-08-06T21:19:54.5679566Z >>> def bound_async_add(self, to, x, y, z): 2024-08-06T21:19:54.5679960Z >>> return rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:19:54.5680363Z >>> lambda fut: fut.wait() + z 2024-08-06T21:19:54.5680674Z >>> ) 2024-08-06T21:19:54.5680887Z >>> 2024-08-06T21:19:54.5681094Z >>> # On worker0 2024-08-06T21:19:54.5681343Z >>> ret = rpc.rpc_sync( 2024-08-06T21:19:54.5681598Z >>> "worker1", 2024-08-06T21:19:54.5681894Z >>> AsyncExecutionClass.static_async_add, 2024-08-06T21:19:54.5682259Z >>> args=("worker2", torch.ones(2), 1, 2) 2024-08-06T21:19:54.5682567Z >>> ) 2024-08-06T21:19:54.5682815Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:19:54.5683116Z >>> 2024-08-06T21:19:54.5683334Z >>> ret = rpc.rpc_sync( 2024-08-06T21:19:54.5683597Z >>> "worker1", 2024-08-06T21:19:54.5683866Z >>> AsyncExecutionClass.class_async_add, 2024-08-06T21:19:54.5684222Z >>> args=("worker2", torch.ones(2), 1, 2) 2024-08-06T21:19:54.5684546Z >>> ) 2024-08-06T21:19:54.5684785Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:19:54.5685009Z 2024-08-06T21:19:54.5685183Z This decorator also works with RRef helpers, i.e., . 2024-08-06T21:19:54.5685585Z :meth:`torch.distributed.rpc.RRef.rpc_sync`, 2024-08-06T21:19:54.5685994Z :meth:`torch.distributed.rpc.RRef.rpc_async`, and 2024-08-06T21:19:54.5686403Z :meth:`torch.distributed.rpc.RRef.remote`. 2024-08-06T21:19:54.5686654Z 2024-08-06T21:19:54.5686773Z >>> from torch.distributed import rpc 2024-08-06T21:19:54.5687087Z >>> 2024-08-06T21:19:54.5687340Z >>> # reuse the AsyncExecutionClass class above 2024-08-06T21:19:54.5687737Z >>> rref = rpc.remote("worker1", AsyncExecutionClass) 2024-08-06T21:19:54.5688221Z >>> ret = rref.rpc_sync().static_async_add("worker2", torch.ones(2), 1, 2) 2024-08-06T21:19:54.5688676Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:19:54.5688980Z >>> 2024-08-06T21:19:54.5689252Z >>> rref = rpc.remote("worker1", AsyncExecutionClass) 2024-08-06T21:19:54.5689757Z >>> ret = rref.rpc_async().static_async_add("worker2", torch.ones(2), 1, 2).wait() 2024-08-06T21:19:54.5690220Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:19:54.5690541Z >>> 2024-08-06T21:19:54.5690814Z >>> rref = rpc.remote("worker1", AsyncExecutionClass) 2024-08-06T21:19:54.5691303Z >>> ret = rref.remote().static_async_add("worker2", torch.ones(2), 1, 2).to_here() 2024-08-06T21:19:54.5691862Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:19:54.5692086Z 2024-08-06T21:19:54.5692351Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.5692720Z 2024-08-06T21:19:54.5693462Z msg = Cannot scrape callname=TensorPipeRpcBackendOptions.set_device_map in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/options.py line=108. 2024-08-06T21:19:54.5694521Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.5695003Z 2024-08-06T21:19:54.5695205Z Set device mapping between each RPC caller and callee pair. This 2024-08-06T21:19:54.5695707Z function can be called multiple times to incrementally add 2024-08-06T21:19:54.5696103Z device placement configurations. 2024-08-06T21:19:54.5696313Z 2024-08-06T21:19:54.5696398Z Args: 2024-08-06T21:19:54.5696610Z to (str): Callee name. 2024-08-06T21:19:54.5696969Z device_map (Dict of int, str, or torch.device): Device placement 2024-08-06T21:19:54.5697468Z mappings from this worker to the callee. This map must be 2024-08-06T21:19:54.5697853Z invertible. 2024-08-06T21:19:54.5697992Z 2024-08-06T21:19:54.5698157Z Example: 2024-08-06T21:19:54.5698390Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:54.5698704Z >>> # both workers 2024-08-06T21:19:54.5698945Z >>> def add(x, y): 2024-08-06T21:19:54.5699238Z >>> print(x) # tensor([1., 1.], device='cuda:1') 2024-08-06T21:19:54.5699594Z >>> return x + y, (x + y).to(2) 2024-08-06T21:19:54.5699884Z >>> 2024-08-06T21:19:54.5700094Z >>> # on worker 0 2024-08-06T21:19:54.5700389Z >>> options = TensorPipeRpcBackendOptions( 2024-08-06T21:19:54.5700725Z >>> num_worker_threads=8, 2024-08-06T21:19:54.5701031Z >>> device_maps={"worker1": {0: 1}} 2024-08-06T21:19:54.5701385Z >>> # maps worker0's cuda:0 to worker1's cuda:1 2024-08-06T21:19:54.5701703Z >>> ) 2024-08-06T21:19:54.5701955Z >>> options.set_device_map("worker1", {1: 2}) 2024-08-06T21:19:54.5702322Z >>> # maps worker0's cuda:1 to worker1's cuda:2 2024-08-06T21:19:54.5702639Z >>> 2024-08-06T21:19:54.5702851Z >>> rpc.init_rpc( 2024-08-06T21:19:54.5703101Z >>> "worker0", 2024-08-06T21:19:54.5703331Z >>> rank=0, 2024-08-06T21:19:54.5703566Z >>> world_size=2, 2024-08-06T21:19:54.5703863Z >>> backend=rpc.BackendType.TENSORPIPE, 2024-08-06T21:19:54.5704206Z >>> rpc_backend_options=options 2024-08-06T21:19:54.5704509Z >>> ) 2024-08-06T21:19:54.5704701Z >>> 2024-08-06T21:19:54.5704915Z >>> x = torch.ones(2) 2024-08-06T21:19:54.5705241Z >>> rets = rpc.rpc_sync("worker1", add, args=(x.to(0), 1)) 2024-08-06T21:19:54.5705685Z >>> # The first argument will be moved to cuda:1 on worker1. When 2024-08-06T21:19:54.5706169Z >>> # sending the return value back, it will follow the invert of 2024-08-06T21:19:54.5706644Z >>> # the device map, and hence will be moved back to cuda:0 and 2024-08-06T21:19:54.5707037Z >>> # cuda:1 on worker0 2024-08-06T21:19:54.5707344Z >>> print(rets[0]) # tensor([2., 2.], device='cuda:0') 2024-08-06T21:19:54.5707751Z >>> print(rets[1]) # tensor([2., 2.], device='cuda:1') 2024-08-06T21:19:54.5708002Z 2024-08-06T21:19:54.5708265Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.5708629Z 2024-08-06T21:19:54.5883834Z msg = Cannot scrape callname=PrepareModuleInput in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py line=378. 2024-08-06T21:19:54.5884994Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.5885375Z 2024-08-06T21:19:54.5885845Z Configure the nn.Module's inputs to convert the input tensors of the nn.Module to DTensors at runtime according to 2024-08-06T21:19:54.5886722Z ``input_layouts``, and perform layout redistribution according to the ``desired_input_layouts``. 2024-08-06T21:19:54.5887404Z 2024-08-06T21:19:54.5887499Z Keyword Args: 2024-08-06T21:19:54.5887840Z input_layouts (Union[Placement, Tuple[Optional[Placement]]]): 2024-08-06T21:19:54.5888684Z The DTensor layouts of input tensors for the nn.Module, this is used to convert the input tensors to 2024-08-06T21:19:54.5889683Z DTensors. If some inputs are not torch.Tensor or no need to convert to DTensors, ``None`` need to be specified 2024-08-06T21:19:54.5890441Z as a placeholder. default: None. 2024-08-06T21:19:54.5890937Z desired_input_layouts (Union[Placement, Tuple[Optional[Placement]]]): 2024-08-06T21:19:54.5891722Z The desired DTensor layout of input tensors for the nn.Module, this is used to ensure the inputs of the nn.Module 2024-08-06T21:19:54.5892661Z have the desired DTensor layouts. This argument needs to have the same length with ``input_layouts``. default: None. 2024-08-06T21:19:54.5893367Z input_kwarg_layouts (Dict[str, Placement]): 2024-08-06T21:19:54.5894059Z The DTensor layouts of input kwargs for the nn.Module, this is used to convert the input kwarg tensors to DTensors. 2024-08-06T21:19:54.5894693Z default: None 2024-08-06T21:19:54.5895227Z desired_input_kwarg_layouts: (Dict[str, Placement]): 2024-08-06T21:19:54.5895949Z The desired DTensor layout of input kwargs for the nn.Module, this is used to ensure the inputs of the nn.Module 2024-08-06T21:19:54.5896605Z have the desired DTensor layouts. default: None. 2024-08-06T21:19:54.5896996Z use_local_output (bool, optional): 2024-08-06T21:19:54.5897632Z Whether to use local :class:`torch.Tensor` instead of :class:`DTensor` for the module inputs, default: False. 2024-08-06T21:19:54.5898233Z Returns: 2024-08-06T21:19:54.5898676Z A :class:`ParallelStyle` object that prepares the sharding layouts of the nn.Module's inputs. 2024-08-06T21:19:54.5899176Z 2024-08-06T21:19:54.5899281Z Example:: 2024-08-06T21:19:54.5899498Z >>> # xdoctest: +SKIP(failing) 2024-08-06T21:19:54.5900079Z >>> from torch.distributed.tensor.parallel import parallelize_module, PrepareModuleInput 2024-08-06T21:19:54.5900760Z >>> from torch.distributed.device_mesh import init_device_mesh 2024-08-06T21:19:54.5901194Z >>> ... 2024-08-06T21:19:54.5901628Z >>> block = TransformerBlock(...) # block is a nn.Module that contains an "attn" Attention submodule 2024-08-06T21:19:54.5902232Z >>> tp_mesh = init_device_mesh("cuda", (8,)) 2024-08-06T21:19:54.5902557Z >>> 2024-08-06T21:19:54.5903051Z >>> # According to the style specified below, the first input of attn will be annotated to Sharded DTensor 2024-08-06T21:19:54.5903704Z >>> # and then redistributed to Replicated DTensor. 2024-08-06T21:19:54.5904071Z >>> parallelize_module( 2024-08-06T21:19:54.5904424Z >>> block, # this can be a submodule or module 2024-08-06T21:19:54.5904766Z >>> tp_mesh, 2024-08-06T21:19:54.5905074Z >>> parallelize_plan={ 2024-08-06T21:19:54.5905371Z >>> "attn": PrepareModuleInput( 2024-08-06T21:19:54.5905774Z >>> input_layouts=(Shard(0), None, None, ...), 2024-08-06T21:19:54.5906223Z >>> desired_input_layouts=(Replicate(), None, None, ...) 2024-08-06T21:19:54.5906640Z >>> ), 2024-08-06T21:19:54.5906871Z >>> } 2024-08-06T21:19:54.5907082Z >>> ) 2024-08-06T21:19:54.5907212Z 2024-08-06T21:19:54.5907520Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.5907900Z 2024-08-06T21:19:54.5908641Z msg = Cannot scrape callname=PrepareModuleOutput in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py line=533. 2024-08-06T21:19:54.5909790Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.5910167Z 2024-08-06T21:19:54.5910630Z Configure the nn.Module's outputs to convert the output tensors of the nn.Module to DTensors at runtime according to 2024-08-06T21:19:54.5911602Z ``output_layouts``, and perform layout redistribution according to the ``desired_output_layouts``. 2024-08-06T21:19:54.5912119Z 2024-08-06T21:19:54.5912210Z Keyword Args: 2024-08-06T21:19:54.5912516Z output_layouts (Union[Placement, Tuple[Placement]]): 2024-08-06T21:19:54.5913183Z The DTensor layouts of output tensors for the nn.Module, this is used to convert the output tensors to 2024-08-06T21:19:54.5914084Z DTensors if they are :class:`torch.Tensor`. If some outputs are not torch.Tensor or no need to convert to DTensors, 2024-08-06T21:19:54.5914782Z ``None`` need to be specified as a placeholder. 2024-08-06T21:19:54.5915280Z desired_output_layouts (Union[Placement, Tuple[Placement]]): 2024-08-06T21:19:54.5916039Z The desired DTensor layouts of output tensors for the nn.Module, this is used to ensure the outputs of the nn.Module 2024-08-06T21:19:54.5916722Z have the desired DTensor layouts. 2024-08-06T21:19:54.5917061Z use_local_output (bool, optional): 2024-08-06T21:19:54.5917690Z Whether to use local :class:`torch.Tensor` instead of :class:`DTensor` for the module outputs, default: True. 2024-08-06T21:19:54.5918310Z Returns: 2024-08-06T21:19:54.5918833Z A ParallelStyle object that prepares the sharding layouts of the nn.Module's outputs. 2024-08-06T21:19:54.5919249Z 2024-08-06T21:19:54.5919340Z Example:: 2024-08-06T21:19:54.5919620Z >>> # xdoctest: +SKIP(failing) 2024-08-06T21:19:54.5920143Z >>> from torch.distributed.tensor.parallel import parallelize_module, PrepareModuleOutput 2024-08-06T21:19:54.5920820Z >>> from torch.distributed.device_mesh import init_device_mesh 2024-08-06T21:19:54.5921261Z >>> ... 2024-08-06T21:19:54.5921701Z >>> block = TransformerBlock(...) # block is a nn.Module that contains an "attn" Attention submodule 2024-08-06T21:19:54.5922240Z >>> tp_mesh = init_device_mesh("cuda", (8,)) 2024-08-06T21:19:54.5922593Z >>> 2024-08-06T21:19:54.5923141Z >>> # According to the style specified below, the output of the TransformerBlock will be converted to Replicated DTensor 2024-08-06T21:19:54.5923787Z >>> # and then redistributed to Sharded DTensor. 2024-08-06T21:19:54.5924143Z >>> parallelize_module( 2024-08-06T21:19:54.5924455Z >>> block, # this can be a submodule or module 2024-08-06T21:19:54.5924830Z >>> tp_mesh, 2024-08-06T21:19:54.5925117Z >>> parallelize_plan = PrepareModuleOutput( 2024-08-06T21:19:54.5925486Z >>> output_layouts=Replicate(), 2024-08-06T21:19:54.5925817Z >>> desired_output_layouts=Shard(0) 2024-08-06T21:19:54.5926133Z >>> ) 2024-08-06T21:19:54.5926348Z >>> ) 2024-08-06T21:19:54.5926467Z 2024-08-06T21:19:54.5926717Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.5927095Z 2024-08-06T21:19:54.6444438Z msg = Cannot scrape callname=MixtureSameFamily in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/mixture_same_family.py line=13. 2024-08-06T21:19:54.6445629Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.6446008Z 2024-08-06T21:19:54.6446311Z The `MixtureSameFamily` distribution implements a (batch of) mixture 2024-08-06T21:19:54.6446930Z distribution where all component are from different parameterizations of 2024-08-06T21:19:54.6447530Z the same distribution type. It is parameterized by a `Categorical` 2024-08-06T21:19:54.6448115Z "selecting distribution" (over `k` component) and a component 2024-08-06T21:19:54.6448671Z distribution, i.e., a `Distribution` with a rightmost batch shape 2024-08-06T21:19:54.6449159Z (equal to `[k]`) which indexes each (batch of) component. 2024-08-06T21:19:54.6449470Z 2024-08-06T21:19:54.6449585Z Examples:: 2024-08-06T21:19:54.6449707Z 2024-08-06T21:19:54.6449822Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:54.6450312Z >>> # Construct Gaussian Mixture Model in 1D consisting of 5 equally 2024-08-06T21:19:54.6450794Z >>> # weighted normal distributions 2024-08-06T21:19:54.6451323Z >>> mix = D.Categorical(torch.ones(5,)) 2024-08-06T21:19:54.6451743Z >>> comp = D.Normal(torch.randn(5,), torch.rand(5,)) 2024-08-06T21:19:54.6452130Z >>> gmm = MixtureSameFamily(mix, comp) 2024-08-06T21:19:54.6452412Z 2024-08-06T21:19:54.6452627Z >>> # Construct Gaussian Mixture Model in 2D consisting of 5 equally 2024-08-06T21:19:54.6453127Z >>> # weighted bivariate normal distributions 2024-08-06T21:19:54.6453489Z >>> mix = D.Categorical(torch.ones(5,)) 2024-08-06T21:19:54.6453875Z >>> comp = D.Independent(D.Normal( 2024-08-06T21:19:54.6454207Z ... torch.randn(5,2), torch.rand(5,2)), 1) 2024-08-06T21:19:54.6454618Z >>> gmm = MixtureSameFamily(mix, comp) 2024-08-06T21:19:54.6454901Z 2024-08-06T21:19:54.6455098Z >>> # Construct a batch of 3 Gaussian Mixture Models in 2D each 2024-08-06T21:19:54.6455649Z >>> # consisting of 5 random weighted bivariate normal distributions 2024-08-06T21:19:54.6456144Z >>> mix = D.Categorical(torch.rand(3,5)) 2024-08-06T21:19:54.6456485Z >>> comp = D.Independent(D.Normal( 2024-08-06T21:19:54.6456848Z ... torch.randn(3,5,2), torch.rand(3,5,2)), 1) 2024-08-06T21:19:54.6457335Z >>> gmm = MixtureSameFamily(mix, comp) 2024-08-06T21:19:54.6457571Z 2024-08-06T21:19:54.6457709Z Args: 2024-08-06T21:19:54.6458019Z mixture_distribution: `torch.distributions.Categorical`-like 2024-08-06T21:19:54.6458579Z instance. Manages the probability of selecting component. 2024-08-06T21:19:54.6459050Z The number of categories must match the rightmost batch 2024-08-06T21:19:54.6459570Z dimension of the `component_distribution`. Must have either 2024-08-06T21:19:54.6460065Z scalar `batch_shape` or `batch_shape` matching 2024-08-06T21:19:54.6460458Z `component_distribution.batch_shape[:-1]` 2024-08-06T21:19:54.6460967Z component_distribution: `torch.distributions.Distribution`-like 2024-08-06T21:19:54.6461542Z instance. Right-most batch dimension indexes component. 2024-08-06T21:19:54.6461835Z 2024-08-06T21:19:54.6462100Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.6462516Z 2024-08-06T21:19:54.6554869Z msg = Cannot scrape callname=RelaxedBernoulli in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/relaxed_bernoulli.py line=110. 2024-08-06T21:19:54.6555863Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.6556255Z 2024-08-06T21:19:54.6556436Z Creates a RelaxedBernoulli distribution, parametrized by 2024-08-06T21:19:54.6556923Z :attr:`temperature`, and either :attr:`probs` or :attr:`logits` 2024-08-06T21:19:54.6557435Z (but not both). This is a relaxed version of the `Bernoulli` distribution, 2024-08-06T21:19:54.6557950Z so the values are in (0, 1), and has reparametrizable samples. 2024-08-06T21:19:54.6558239Z 2024-08-06T21:19:54.6558349Z Example:: 2024-08-06T21:19:54.6558469Z 2024-08-06T21:19:54.6558624Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:19:54.6558993Z >>> m = RelaxedBernoulli(torch.tensor([2.2]), 2024-08-06T21:19:54.6559368Z ... torch.tensor([0.1, 0.2, 0.3, 0.99])) 2024-08-06T21:19:54.6559717Z >>> m.sample() 2024-08-06T21:19:54.6559962Z tensor([ 0.2951, 0.3442, 0.8918, 0.9021]) 2024-08-06T21:19:54.6560199Z 2024-08-06T21:19:54.6560283Z Args: 2024-08-06T21:19:54.6560539Z temperature (Tensor): relaxation temperature 2024-08-06T21:19:54.6560961Z probs (Number, Tensor): the probability of sampling `1` 2024-08-06T21:19:54.6561413Z logits (Number, Tensor): the log-odds of sampling `1` 2024-08-06T21:19:54.6561684Z 2024-08-06T21:19:54.6561949Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.6562314Z 2024-08-06T21:19:54.6569513Z msg = Cannot scrape callname=RelaxedOneHotCategorical in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/relaxed_categorical.py line=98. 2024-08-06T21:19:54.6570746Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:54.6571138Z 2024-08-06T21:19:54.6571358Z Creates a RelaxedOneHotCategorical distribution parametrized by 2024-08-06T21:19:54.6571891Z :attr:`temperature`, and either :attr:`probs` or :attr:`logits`. 2024-08-06T21:19:54.6572446Z This is a relaxed version of the :class:`OneHotCategorical` distribution, so 2024-08-06T21:19:54.6572973Z its samples are on simplex, and are reparametrizable. 2024-08-06T21:19:54.6573244Z 2024-08-06T21:19:54.6573358Z Example:: 2024-08-06T21:19:54.6573479Z 2024-08-06T21:19:54.6573616Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:19:54.6574027Z >>> m = RelaxedOneHotCategorical(torch.tensor([2.2]), 2024-08-06T21:19:54.6574430Z ... torch.tensor([0.1, 0.2, 0.3, 0.4])) 2024-08-06T21:19:54.6574763Z >>> m.sample() 2024-08-06T21:19:54.6575103Z tensor([ 0.1294, 0.2324, 0.3859, 0.2523]) 2024-08-06T21:19:54.6575330Z 2024-08-06T21:19:54.6575430Z Args: 2024-08-06T21:19:54.6575674Z temperature (Tensor): relaxation temperature 2024-08-06T21:19:54.6576126Z probs (Tensor): event probabilities 2024-08-06T21:19:54.6576538Z logits (Tensor): unnormalized log probability for each event 2024-08-06T21:19:54.6576834Z 2024-08-06T21:19:54.6577082Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:54.6577458Z 2024-08-06T21:19:55.0198777Z msg = Cannot scrape callname=assoc_in in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=230. 2024-08-06T21:19:55.0200755Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.0201841Z Return a new dict with new, potentially nested, key value pair 2024-08-06T21:19:55.0202400Z 2024-08-06T21:19:55.0202607Z >>> purchase = {'name': 'Alice', 2024-08-06T21:19:55.0203211Z ... 'order': {'items': ['Apple', 'Orange'], 2024-08-06T21:19:55.0203803Z ... 'costs': [0.50, 1.25]}, 2024-08-06T21:19:55.0204430Z ... 'credit card': '5555-1234-1234-1234'} 2024-08-06T21:19:55.0205231Z >>> assoc_in(purchase, ['order', 'costs'], [0.25, 1.00]) # doctest: +SKIP 2024-08-06T21:19:55.0206008Z {'credit card': '5555-1234-1234-1234', 2024-08-06T21:19:55.0206559Z 'name': 'Alice', 2024-08-06T21:19:55.0207114Z 'order': {'costs': [0.25, 1.00], 'items': ['Apple', 'Orange']}} 2024-08-06T21:19:55.0207769Z 2024-08-06T21:19:55.0208432Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.0209061Z 2024-08-06T21:19:55.0210301Z msg = Cannot scrape callname=update_in in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=245. 2024-08-06T21:19:55.0212205Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.0213185Z Update value in a (potentially) nested dictionary 2024-08-06T21:19:55.0213658Z 2024-08-06T21:19:55.0213821Z inputs: 2024-08-06T21:19:55.0214219Z d - dictionary on which to operate 2024-08-06T21:19:55.0215100Z keys - list or tuple giving the location of the value to be changed in d 2024-08-06T21:19:55.0215946Z func - function to operate on that value 2024-08-06T21:19:55.0216368Z 2024-08-06T21:19:55.0216697Z If keys == [k0,..,kX] and d[k0]..[kX] == v, update_in returns a copy of the 2024-08-06T21:19:55.0217700Z original dictionary with v replaced by func(v), but does not mutate the 2024-08-06T21:19:55.0218524Z original dictionary. 2024-08-06T21:19:55.0218809Z 2024-08-06T21:19:55.0219197Z If k0 is not a key in d, update_in creates nested dictionaries to the depth 2024-08-06T21:19:55.0220189Z specified by the keys, with the innermost value set to func(default). 2024-08-06T21:19:55.0220787Z 2024-08-06T21:19:55.0220953Z >>> inc = lambda x: x + 1 2024-08-06T21:19:55.0221801Z >>> update_in({'a': 0}, ['a'], inc) 2024-08-06T21:19:55.0222278Z {'a': 1} 2024-08-06T21:19:55.0222507Z 2024-08-06T21:19:55.0222696Z >>> transaction = {'name': 'Alice', 2024-08-06T21:19:55.0223340Z ... 'purchase': {'items': ['Apple', 'Orange'], 2024-08-06T21:19:55.0223967Z ... 'costs': [0.50, 1.25]}, 2024-08-06T21:19:55.0224579Z ... 'credit card': '5555-1234-1234-1234'} 2024-08-06T21:19:55.0225381Z >>> update_in(transaction, ['purchase', 'costs'], sum) # doctest: +SKIP 2024-08-06T21:19:55.0226162Z {'credit card': '5555-1234-1234-1234', 2024-08-06T21:19:55.0226693Z 'name': 'Alice', 2024-08-06T21:19:55.0227266Z 'purchase': {'costs': 1.75, 'items': ['Apple', 'Orange']}} 2024-08-06T21:19:55.0227775Z 2024-08-06T21:19:55.0227974Z >>> # updating a value when k0 is not in d 2024-08-06T21:19:55.0228605Z >>> update_in({}, [1, 2, 3], str, default="bar") 2024-08-06T21:19:55.0229164Z {1: {2: {3: 'bar'}}} 2024-08-06T21:19:55.0229624Z >>> update_in({1: 'foo'}, [2, 3, 4], inc, 0) 2024-08-06T21:19:55.0230195Z {1: 'foo', 2: {3: {4: 1}}} 2024-08-06T21:19:55.0230662Z 2024-08-06T21:19:55.0231607Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.0232323Z 2024-08-06T21:19:55.0233562Z msg = Cannot scrape callname=get_in in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=303. 2024-08-06T21:19:55.0235466Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.0236462Z Returns coll[i0][i1]...[iX] where [i0, i1, ..., iX]==keys. 2024-08-06T21:19:55.0236961Z 2024-08-06T21:19:55.0237274Z If coll[i0][i1]...[iX] cannot be found, returns ``default``, unless 2024-08-06T21:19:55.0238191Z ``no_default`` is specified, then it raises KeyError or IndexError. 2024-08-06T21:19:55.0238771Z 2024-08-06T21:19:55.0239156Z ``get_in`` is a generalization of ``operator.getitem`` for nested data 2024-08-06T21:19:55.0240004Z structures such as dictionaries and lists. 2024-08-06T21:19:55.0240445Z 2024-08-06T21:19:55.0240627Z >>> transaction = {'name': 'Alice', 2024-08-06T21:19:55.0241262Z ... 'purchase': {'items': ['Apple', 'Orange'], 2024-08-06T21:19:55.0241901Z ... 'costs': [0.50, 1.25]}, 2024-08-06T21:19:55.0242531Z ... 'credit card': '5555-1234-1234-1234'} 2024-08-06T21:19:55.0243184Z >>> get_in(['purchase', 'items', 0], transaction) 2024-08-06T21:19:55.0243782Z 'Apple' 2024-08-06T21:19:55.0244180Z >>> get_in(['name'], transaction) 2024-08-06T21:19:55.0244682Z 'Alice' 2024-08-06T21:19:55.0245107Z >>> get_in(['purchase', 'total'], transaction) 2024-08-06T21:19:55.0245810Z >>> get_in(['purchase', 'items', 'apple'], transaction) 2024-08-06T21:19:55.0246521Z >>> get_in(['purchase', 'items', 10], transaction) 2024-08-06T21:19:55.0247164Z >>> get_in(['purchase', 'total'], transaction, 0) 2024-08-06T21:19:55.0247796Z 0 2024-08-06T21:19:55.0248148Z >>> get_in(['y'], {}, no_default=True) 2024-08-06T21:19:55.0248735Z Traceback (most recent call last): 2024-08-06T21:19:55.0249274Z ... 2024-08-06T21:19:55.0249630Z KeyError: 'y' 2024-08-06T21:19:55.0249852Z 2024-08-06T21:19:55.0249993Z See Also: 2024-08-06T21:19:55.0250357Z itertoolz.get 2024-08-06T21:19:55.0250798Z operator.getitem 2024-08-06T21:19:55.0251200Z 2024-08-06T21:19:55.0251855Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.0252538Z 2024-08-06T21:19:55.0253793Z msg = Cannot scrape callname=groupby in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=355. 2024-08-06T21:19:55.0255755Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.0256603Z Group a collection by a key function 2024-08-06T21:19:55.0256961Z 2024-08-06T21:19:55.0257454Z >>> names = ['Alice', 'Bob', 'Charlie', 'Dan', 'Edith', 'Frank'] 2024-08-06T21:19:55.0258149Z >>> groupby(len, names) # doctest: +SKIP 2024-08-06T21:19:55.0258833Z {3: ['Bob', 'Dan'], 5: ['Alice', 'Edith', 'Frank'], 7: ['Charlie']} 2024-08-06T21:19:55.0259321Z 2024-08-06T21:19:55.0259502Z >>> iseven = lambda x: x % 2 == 0 2024-08-06T21:19:55.0260187Z >>> groupby(iseven, [1, 2, 3, 4, 5, 6, 7, 8]) # doctest: +SKIP 2024-08-06T21:19:55.0260898Z {False: [1, 3, 5, 7], True: [2, 4, 6, 8]} 2024-08-06T21:19:55.0261273Z 2024-08-06T21:19:55.0261516Z Non-callable keys imply grouping on a member. 2024-08-06T21:19:55.0261968Z 2024-08-06T21:19:55.0262254Z >>> groupby('gender', [{'name': 'Alice', 'gender': 'F'}, 2024-08-06T21:19:55.0263157Z ... {'name': 'Bob', 'gender': 'M'}, 2024-08-06T21:19:55.0263866Z ... {'name': 'Charlie', 'gender': 'M'}]) # doctest:+SKIP 2024-08-06T21:19:55.0264575Z {'F': [{'gender': 'F', 'name': 'Alice'}], 2024-08-06T21:19:55.0265165Z 'M': [{'gender': 'M', 'name': 'Bob'}, 2024-08-06T21:19:55.0265712Z {'gender': 'M', 'name': 'Charlie'}]} 2024-08-06T21:19:55.0266088Z 2024-08-06T21:19:55.0266547Z Not to be confused with ``itertools.groupby`` 2024-08-06T21:19:55.0266988Z 2024-08-06T21:19:55.0267132Z See Also: 2024-08-06T21:19:55.0267506Z countby 2024-08-06T21:19:55.0267873Z 2024-08-06T21:19:55.0268525Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.0269232Z 2024-08-06T21:19:55.3271392Z msg = Cannot scrape callname=SyncBatchNorm in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py line=601. 2024-08-06T21:19:55.3273222Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.3274281Z Applies Batch Normalization over a N-Dimensional input. 2024-08-06T21:19:55.3274796Z 2024-08-06T21:19:55.3275365Z The N-D input is a mini-batch of [N-2]D inputs with additional channel dimension) as described in the paper 2024-08-06T21:19:55.3276620Z `Batch Normalization: Accelerating Deep Network Training by Reducing 2024-08-06T21:19:55.3277652Z Internal Covariate Shift `__ . 2024-08-06T21:19:55.3278246Z 2024-08-06T21:19:55.3278433Z .. math:: 2024-08-06T21:19:55.3278655Z 2024-08-06T21:19:55.3279038Z y = \frac{x - \mathrm{E}[x]}{ \sqrt{\mathrm{Var}[x] + \epsilon}} * \gamma + \beta 2024-08-06T21:19:55.3279634Z 2024-08-06T21:19:55.3280057Z The mean and standard-deviation are calculated per-dimension over all 2024-08-06T21:19:55.3281109Z mini-batches of the same process groups. :math:`\gamma` and :math:`\beta` 2024-08-06T21:19:55.3282220Z are learnable parameter vectors of size `C` (where `C` is the input size). 2024-08-06T21:19:55.3283229Z By default, the elements of :math:`\gamma` are sampled from 2024-08-06T21:19:55.3284124Z :math:`\mathcal{U}(0, 1)` and the elements of :math:`\beta` are set to 0. 2024-08-06T21:19:55.3285192Z The standard-deviation is calculated via the biased estimator, equivalent to 2024-08-06T21:19:55.3286089Z `torch.var(input, unbiased=False)`. 2024-08-06T21:19:55.3286515Z 2024-08-06T21:19:55.3286962Z Also by default, during training this layer keeps running estimates of its 2024-08-06T21:19:55.3288055Z computed mean and variance, which are then used for normalization during 2024-08-06T21:19:55.3289144Z evaluation. The running estimates are kept with a default :attr:`momentum` 2024-08-06T21:19:55.3289980Z of 0.1. 2024-08-06T21:19:55.3290193Z 2024-08-06T21:19:55.3290618Z If :attr:`track_running_stats` is set to ``False``, this layer then does not 2024-08-06T21:19:55.3291644Z keep running estimates, and batch statistics are instead used during 2024-08-06T21:19:55.3292425Z evaluation time as well. 2024-08-06T21:19:55.3292753Z 2024-08-06T21:19:55.3292937Z .. note:: 2024-08-06T21:19:55.3293558Z This :attr:`momentum` argument is different from one used in optimizer 2024-08-06T21:19:55.3294991Z classes and the conventional notion of momentum. Mathematically, the 2024-08-06T21:19:55.3295861Z update rule for running statistics here is 2024-08-06T21:19:55.3296784Z :math:`\hat{x}_\text{new} = (1 - \text{momentum}) \times \hat{x} + \text{momentum} \times x_t`, 2024-08-06T21:19:55.3297871Z where :math:`\hat{x}` is the estimated statistic and :math:`x_t` is the 2024-08-06T21:19:55.3298629Z new observed value. 2024-08-06T21:19:55.3298947Z 2024-08-06T21:19:55.3299524Z Because the Batch Normalization is done for each channel in the ``C`` dimension, computing 2024-08-06T21:19:55.3300761Z statistics on ``(N, +)`` slices, it's common terminology to call this Volumetric Batch 2024-08-06T21:19:55.3301769Z Normalization or Spatio-temporal Batch Normalization. 2024-08-06T21:19:55.3302295Z 2024-08-06T21:19:55.3302541Z Currently :class:`SyncBatchNorm` only supports 2024-08-06T21:19:55.3303531Z :class:`~torch.nn.DistributedDataParallel` (DDP) with single GPU per process. Use 2024-08-06T21:19:55.3304694Z :meth:`torch.nn.SyncBatchNorm.convert_sync_batchnorm()` to convert 2024-08-06T21:19:55.3305904Z :attr:`BatchNorm*D` layer to :class:`SyncBatchNorm` before wrapping 2024-08-06T21:19:55.3306671Z Network with DDP. 2024-08-06T21:19:55.3306961Z 2024-08-06T21:19:55.3307112Z Args: 2024-08-06T21:19:55.3307615Z num_features: :math:`C` from an expected input of size 2024-08-06T21:19:55.3308279Z :math:`(N, C, +)` 2024-08-06T21:19:55.3308949Z eps: a value added to the denominator for numerical stability. 2024-08-06T21:19:55.3309691Z Default: ``1e-5`` 2024-08-06T21:19:55.3310362Z momentum: the value used for the running_mean and running_var 2024-08-06T21:19:55.3311245Z computation. Can be set to ``None`` for cumulative moving average 2024-08-06T21:19:55.3312072Z (i.e. simple average). Default: 0.1 2024-08-06T21:19:55.3312848Z affine: a boolean value that when set to ``True``, this module has 2024-08-06T21:19:55.3313725Z learnable affine parameters. Default: ``True`` 2024-08-06T21:19:55.3314618Z track_running_stats: a boolean value that when set to ``True``, this 2024-08-06T21:19:55.3315662Z module tracks the running mean and variance, and when set to ``False``, 2024-08-06T21:19:55.3316748Z this module does not track such statistics, and initializes statistics 2024-08-06T21:19:55.3317777Z buffers :attr:`running_mean` and :attr:`running_var` as ``None``. 2024-08-06T21:19:55.3318797Z When these buffers are ``None``, this module always uses batch statistics. 2024-08-06T21:19:55.3319715Z in both training and eval modes. Default: ``True`` 2024-08-06T21:19:55.3320672Z process_group: synchronization of stats happen within each process group 2024-08-06T21:19:55.3321792Z individually. Default behavior is synchronization across the whole 2024-08-06T21:19:55.3322596Z world 2024-08-06T21:19:55.3322847Z 2024-08-06T21:19:55.3322993Z Shape: 2024-08-06T21:19:55.3323405Z - Input: :math:`(N, C, +)` 2024-08-06T21:19:55.3324033Z - Output: :math:`(N, C, +)` (same shape as input) 2024-08-06T21:19:55.3324508Z 2024-08-06T21:19:55.3324670Z .. note:: 2024-08-06T21:19:55.3325344Z Synchronization of batchnorm statistics occurs only while training, i.e. 2024-08-06T21:19:55.3326393Z synchronization is disabled when ``model.eval()`` is set or if 2024-08-06T21:19:55.3327225Z ``self.training`` is otherwise ``False``. 2024-08-06T21:19:55.3327569Z 2024-08-06T21:19:55.3327727Z Examples:: 2024-08-06T21:19:55.3327937Z 2024-08-06T21:19:55.3328105Z >>> # xdoctest: +SKIP 2024-08-06T21:19:55.3328639Z >>> # With Learnable Parameters 2024-08-06T21:19:55.3329234Z >>> m = nn.SyncBatchNorm(100) 2024-08-06T21:19:55.3329818Z >>> # creating process group (optional) 2024-08-06T21:19:55.3330700Z >>> # ranks is a list of int identifying rank ids. 2024-08-06T21:19:55.3331344Z >>> ranks = list(range(8)) 2024-08-06T21:19:55.3331859Z >>> r1, r2 = ranks[:4], ranks[4:] 2024-08-06T21:19:55.3332518Z >>> # Note: every rank calls into new_group for every 2024-08-06T21:19:55.3333271Z >>> # process group created, even if that rank is not 2024-08-06T21:19:55.3333936Z >>> # part of the group. 2024-08-06T21:19:55.3334732Z >>> process_groups = [torch.distributed.new_group(pids) for pids in [r1, r2]] 2024-08-06T21:19:55.3335880Z >>> process_group = process_groups[0 if dist.get_rank() <= 3 else 1] 2024-08-06T21:19:55.3336688Z >>> # Without Learnable Parameters 2024-08-06T21:19:55.3337477Z >>> m = nn.BatchNorm3d(100, affine=False, process_group=process_group) 2024-08-06T21:19:55.3338265Z >>> input = torch.randn(20, 100, 35, 45, 10) 2024-08-06T21:19:55.3338853Z >>> output = m(input) 2024-08-06T21:19:55.3339193Z 2024-08-06T21:19:55.3339408Z >>> # network is nn.BatchNorm layer 2024-08-06T21:19:55.3340337Z >>> sync_bn_network = nn.SyncBatchNorm.convert_sync_batchnorm(network, process_group) 2024-08-06T21:19:55.3341514Z >>> # only single gpu per process is currently supported 2024-08-06T21:19:55.3342406Z >>> ddp_sync_bn_network = torch.nn.parallel.DistributedDataParallel( 2024-08-06T21:19:55.3343220Z >>> sync_bn_network, 2024-08-06T21:19:55.3343854Z >>> device_ids=[args.local_rank], 2024-08-06T21:19:55.3344515Z >>> output_device=args.local_rank) 2024-08-06T21:19:55.3345118Z 2024-08-06T21:19:55.3345789Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.3346488Z 2024-08-06T21:19:55.3347782Z msg = Cannot scrape callname=SyncBatchNorm.convert_sync_batchnorm in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py line=824. 2024-08-06T21:19:55.3349763Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.3351065Z Converts all :attr:`BatchNorm*D` layers in the model to :class:`torch.nn.SyncBatchNorm` layers. 2024-08-06T21:19:55.3351868Z 2024-08-06T21:19:55.3352027Z Args: 2024-08-06T21:19:55.3352692Z module (nn.Module): module containing one or more :attr:`BatchNorm*D` layers 2024-08-06T21:19:55.3353777Z process_group (optional): process group to scope synchronization, 2024-08-06T21:19:55.3354607Z default is the whole world 2024-08-06T21:19:55.3355003Z 2024-08-06T21:19:55.3355154Z Returns: 2024-08-06T21:19:55.3355859Z The original :attr:`module` with the converted :class:`torch.nn.SyncBatchNorm` 2024-08-06T21:19:55.3356958Z layers. If the original :attr:`module` is a :attr:`BatchNorm*D` layer, 2024-08-06T21:19:55.3357945Z a new :class:`torch.nn.SyncBatchNorm` layer object will be returned 2024-08-06T21:19:55.3358698Z instead. 2024-08-06T21:19:55.3358953Z 2024-08-06T21:19:55.3359155Z Example:: 2024-08-06T21:19:55.3359434Z 2024-08-06T21:19:55.3359685Z >>> # Network with nn.BatchNorm layer 2024-08-06T21:19:55.3360362Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:19:55.3360998Z >>> module = torch.nn.Sequential( 2024-08-06T21:19:55.3361578Z >>> torch.nn.Linear(20, 100), 2024-08-06T21:19:55.3362173Z >>> torch.nn.BatchNorm1d(100), 2024-08-06T21:19:55.3362711Z >>> ).cuda() 2024-08-06T21:19:55.3363418Z >>> # creating process group (optional) 2024-08-06T21:19:55.3364026Z >>> # ranks is a list of int identifying rank ids. 2024-08-06T21:19:55.3364663Z >>> ranks = list(range(8)) 2024-08-06T21:19:55.3365198Z >>> r1, r2 = ranks[:4], ranks[4:] 2024-08-06T21:19:55.3365836Z >>> # Note: every rank calls into new_group for every 2024-08-06T21:19:55.3366777Z >>> # process group created, even if that rank is not 2024-08-06T21:19:55.3367409Z >>> # part of the group. 2024-08-06T21:19:55.3368065Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:19:55.3368946Z >>> process_groups = [torch.distributed.new_group(pids) for pids in [r1, r2]] 2024-08-06T21:19:55.3370000Z >>> process_group = process_groups[0 if dist.get_rank() <= 3 else 1] 2024-08-06T21:19:55.3371074Z >>> sync_bn_module = torch.nn.SyncBatchNorm.convert_sync_batchnorm(module, process_group) 2024-08-06T21:19:55.3371844Z 2024-08-06T21:19:55.3371986Z 2024-08-06T21:19:55.3372646Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.3373335Z 2024-08-06T21:19:55.3553751Z msg = Cannot scrape callname=Unflatten in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/flatten.py line=60. 2024-08-06T21:19:55.3555503Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.3556243Z 2024-08-06T21:19:55.3557005Z Unflattens a tensor dim expanding it to a desired shape. For use with :class:`~nn.Sequential`. 2024-08-06T21:19:55.3557831Z 2024-08-06T21:19:55.3558328Z * :attr:`dim` specifies the dimension of the input tensor to be unflattened, and it can 2024-08-06T21:19:55.3559410Z be either `int` or `str` when `Tensor` or `NamedTensor` is used, respectively. 2024-08-06T21:19:55.3560067Z 2024-08-06T21:19:55.3560664Z * :attr:`unflattened_size` is the new shape of the unflattened dimension of the tensor and it can be 2024-08-06T21:19:55.3561922Z a `tuple` of ints or a `list` of ints or `torch.Size` for `Tensor` input; a `NamedShape` 2024-08-06T21:19:55.3563170Z (tuple of `(name, size)` tuples) for `NamedTensor` input. 2024-08-06T21:19:55.3563703Z 2024-08-06T21:19:55.3563857Z Shape: 2024-08-06T21:19:55.3564450Z - Input: :math:`(*, S_{\text{dim}}, *)`, where :math:`S_{\text{dim}}` is the size at 2024-08-06T21:19:55.3565554Z dimension :attr:`dim` and :math:`*` means any number of dimensions including none. 2024-08-06T21:19:55.3566661Z - Output: :math:`(*, U_1, ..., U_n, *)`, where :math:`U` = :attr:`unflattened_size` and 2024-08-06T21:19:55.3567516Z :math:`\prod_{i=1}^n U_i = S_{\text{dim}}`. 2024-08-06T21:19:55.3567954Z 2024-08-06T21:19:55.3568110Z Args: 2024-08-06T21:19:55.3568562Z dim (Union[int, str]): Dimension to be unflattened 2024-08-06T21:19:55.3569694Z unflattened_size (Union[torch.Size, Tuple, List, NamedShape]): New shape of the unflattened dimension 2024-08-06T21:19:55.3570569Z 2024-08-06T21:19:55.3570740Z Examples: 2024-08-06T21:19:55.3571131Z >>> input = torch.randn(2, 50) 2024-08-06T21:19:55.3571623Z >>> # With tuple of ints 2024-08-06T21:19:55.3572104Z >>> m = nn.Sequential( 2024-08-06T21:19:55.3572536Z >>> nn.Linear(50, 50), 2024-08-06T21:19:55.3573051Z >>> nn.Unflatten(1, (2, 5, 5)) 2024-08-06T21:19:55.3573593Z >>> ) 2024-08-06T21:19:55.3573960Z >>> output = m(input) 2024-08-06T21:19:55.3574440Z >>> output.size() 2024-08-06T21:19:55.3574952Z torch.Size([2, 2, 5, 5]) 2024-08-06T21:19:55.3575420Z >>> # With torch.Size 2024-08-06T21:19:55.3575873Z >>> m = nn.Sequential( 2024-08-06T21:19:55.3576357Z >>> nn.Linear(50, 50), 2024-08-06T21:19:55.3576879Z >>> nn.Unflatten(1, torch.Size([2, 5, 5])) 2024-08-06T21:19:55.3577462Z >>> ) 2024-08-06T21:19:55.3577836Z >>> output = m(input) 2024-08-06T21:19:55.3578305Z >>> output.size() 2024-08-06T21:19:55.3578760Z torch.Size([2, 2, 5, 5]) 2024-08-06T21:19:55.3579287Z >>> # With namedshape (tuple of tuples) 2024-08-06T21:19:55.3579984Z >>> input = torch.randn(2, 50, names=('N', 'features')) 2024-08-06T21:19:55.3580845Z >>> unflatten = nn.Unflatten('features', (('C', 2), ('H', 5), ('W', 5))) 2024-08-06T21:19:55.3581665Z >>> output = unflatten(input) 2024-08-06T21:19:55.3582199Z >>> output.size() 2024-08-06T21:19:55.3582873Z torch.Size([2, 2, 5, 5]) 2024-08-06T21:19:55.3583189Z 2024-08-06T21:19:55.3583688Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.3584391Z 2024-08-06T21:19:55.3904624Z msg = Cannot scrape callname=TripletMarginWithDistanceLoss in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py line=1696. 2024-08-06T21:19:55.3906651Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.3907770Z Creates a criterion that measures the triplet loss given input 2024-08-06T21:19:55.3908729Z tensors :math:`a`, :math:`p`, and :math:`n` (representing anchor, 2024-08-06T21:19:55.3909706Z positive, and negative examples, respectively), and a nonnegative, 2024-08-06T21:19:55.3910800Z real-valued function ("distance function") used to compute the relationship 2024-08-06T21:19:55.3911921Z between the anchor and positive example ("positive distance") and the 2024-08-06T21:19:55.3912828Z anchor and negative example ("negative distance"). 2024-08-06T21:19:55.3913344Z 2024-08-06T21:19:55.3913735Z The unreduced loss (i.e., with :attr:`reduction` set to ``'none'``) 2024-08-06T21:19:55.3914739Z can be described as: 2024-08-06T21:19:55.3915050Z 2024-08-06T21:19:55.3915239Z .. math:: 2024-08-06T21:19:55.3915662Z \ell(a, p, n) = L = \{l_1,\dots,l_N\}^\top, \quad 2024-08-06T21:19:55.3916369Z l_i = \max \{d(a_i, p_i) - d(a_i, n_i) + {\rm margin}, 0\} 2024-08-06T21:19:55.3916850Z 2024-08-06T21:19:55.3917299Z where :math:`N` is the batch size; :math:`d` is a nonnegative, real-valued function 2024-08-06T21:19:55.3918498Z quantifying the closeness of two tensors, referred to as the :attr:`distance_function`; 2024-08-06T21:19:55.3919725Z and :math:`margin` is a nonnegative margin representing the minimum difference 2024-08-06T21:19:55.3920872Z between the positive and negative distances that is required for the loss to 2024-08-06T21:19:55.3921997Z be 0. The input tensors have :math:`N` elements each and can be of any shape 2024-08-06T21:19:55.3922862Z that the distance function can handle. 2024-08-06T21:19:55.3923284Z 2024-08-06T21:19:55.3923509Z If :attr:`reduction` is not ``'none'`` 2024-08-06T21:19:55.3924083Z (default ``'mean'``), then: 2024-08-06T21:19:55.3924432Z 2024-08-06T21:19:55.3924587Z .. math:: 2024-08-06T21:19:55.3924974Z \ell(x, y) = 2024-08-06T21:19:55.3925380Z \begin{cases} 2024-08-06T21:19:55.3926023Z \operatorname{mean}(L), & \text{if reduction} = \text{`mean';}\\ 2024-08-06T21:19:55.3926971Z \operatorname{sum}(L), & \text{if reduction} = \text{`sum'.} 2024-08-06T21:19:55.3927696Z \end{cases} 2024-08-06T21:19:55.3927963Z 2024-08-06T21:19:55.3928398Z See also :class:`~torch.nn.TripletMarginLoss`, which computes the triplet 2024-08-06T21:19:55.3929530Z loss for input tensors using the :math:`l_p` distance as the distance function. 2024-08-06T21:19:55.3930246Z 2024-08-06T21:19:55.3930411Z Args: 2024-08-06T21:19:55.3931128Z distance_function (Callable, optional): A nonnegative, real-valued function that 2024-08-06T21:19:55.3932237Z quantifies the closeness of two tensors. If not specified, 2024-08-06T21:19:55.3933123Z `nn.PairwiseDistance` will be used. Default: ``None`` 2024-08-06T21:19:55.3934149Z margin (float, optional): A nonnegative margin representing the minimum difference 2024-08-06T21:19:55.3935482Z between the positive and negative distances required for the loss to be 0. Larger 2024-08-06T21:19:55.3936711Z margins penalize cases where the negative examples are not distant enough from the 2024-08-06T21:19:55.3937761Z anchors, relative to the positives. Default: :math:`1`. 2024-08-06T21:19:55.3938769Z swap (bool, optional): Whether to use the distance swap described in the paper 2024-08-06T21:19:55.3939952Z `Learning shallow convolutional feature descriptors with triplet losses` by 2024-08-06T21:19:55.3941296Z V. Balntas, E. Riba et al. If True, and if the positive example is closer to the 2024-08-06T21:19:55.3942436Z negative example than the anchor is, swaps the positive example and the anchor in 2024-08-06T21:19:55.3943388Z the loss computation. Default: ``False``. 2024-08-06T21:19:55.3944378Z reduction (str, optional): Specifies the (optional) reduction to apply to the output: 2024-08-06T21:19:55.3945465Z ``'none'`` | ``'mean'`` | ``'sum'``. ``'none'``: no reduction will be applied, 2024-08-06T21:19:55.3946364Z ``'mean'``: the sum of the output will be divided by the number of 2024-08-06T21:19:55.3947378Z elements in the output, ``'sum'``: the output will be summed. Default: ``'mean'`` 2024-08-06T21:19:55.3948055Z 2024-08-06T21:19:55.3948063Z 2024-08-06T21:19:55.3948217Z Shape: 2024-08-06T21:19:55.3948897Z - Input: :math:`(N, *)` where :math:`*` represents any number of additional dimensions 2024-08-06T21:19:55.3949771Z as supported by the distance function. 2024-08-06T21:19:55.3950823Z - Output: A Tensor of shape :math:`(N)` if :attr:`reduction` is ``'none'``, or a scalar 2024-08-06T21:19:55.3951693Z otherwise. 2024-08-06T21:19:55.3951965Z 2024-08-06T21:19:55.3952153Z Examples:: 2024-08-06T21:19:55.3952401Z 2024-08-06T21:19:55.3952583Z >>> # Initialize embeddings 2024-08-06T21:19:55.3953136Z >>> embedding = nn.Embedding(1000, 128) 2024-08-06T21:19:55.3953778Z >>> anchor_ids = torch.randint(0, 1000, (1,)) 2024-08-06T21:19:55.3954435Z >>> positive_ids = torch.randint(0, 1000, (1,)) 2024-08-06T21:19:55.3955119Z >>> negative_ids = torch.randint(0, 1000, (1,)) 2024-08-06T21:19:55.3955753Z >>> anchor = embedding(anchor_ids) 2024-08-06T21:19:55.3956322Z >>> positive = embedding(positive_ids) 2024-08-06T21:19:55.3956963Z >>> negative = embedding(negative_ids) 2024-08-06T21:19:55.3957527Z >>> 2024-08-06T21:19:55.3957917Z >>> # Built-in Distance Function 2024-08-06T21:19:55.3958426Z >>> triplet_loss = \ 2024-08-06T21:19:55.3959209Z >>> nn.TripletMarginWithDistanceLoss(distance_function=nn.PairwiseDistance()) 2024-08-06T21:19:55.3960176Z >>> output = triplet_loss(anchor, positive, negative) 2024-08-06T21:19:55.3960829Z >>> output.backward() 2024-08-06T21:19:55.3961281Z >>> 2024-08-06T21:19:55.3961647Z >>> # Custom Distance Function 2024-08-06T21:19:55.3962186Z >>> def l_infinity(x1, x2): 2024-08-06T21:19:55.3963014Z >>> return torch.max(torch.abs(x1 - x2), dim=1).values 2024-08-06T21:19:55.3963646Z >>> 2024-08-06T21:19:55.3964181Z >>> # xdoctest: +SKIP("FIXME: Would call backwards a second time") 2024-08-06T21:19:55.3964911Z >>> triplet_loss = ( 2024-08-06T21:19:55.3965663Z >>> nn.TripletMarginWithDistanceLoss(distance_function=l_infinity, margin=1.5)) 2024-08-06T21:19:55.3966650Z >>> output = triplet_loss(anchor, positive, negative) 2024-08-06T21:19:55.3967320Z >>> output.backward() 2024-08-06T21:19:55.3967744Z >>> 2024-08-06T21:19:55.3968158Z >>> # Custom Distance Function (Lambda) 2024-08-06T21:19:55.3968735Z >>> triplet_loss = ( 2024-08-06T21:19:55.3969265Z >>> nn.TripletMarginWithDistanceLoss( 2024-08-06T21:19:55.3970077Z >>> distance_function=lambda x, y: 1.0 - F.cosine_similarity(x, y))) 2024-08-06T21:19:55.3970972Z >>> output = triplet_loss(anchor, positive, negative) 2024-08-06T21:19:55.3971625Z >>> output.backward() 2024-08-06T21:19:55.3971944Z 2024-08-06T21:19:55.3972096Z Reference: 2024-08-06T21:19:55.3972888Z V. Balntas, et al.: Learning shallow convolutional feature descriptors with triplet losses: 2024-08-06T21:19:55.3974029Z http://www.bmva.org/bmvc/2016/papers/paper119/index.html 2024-08-06T21:19:55.3974684Z 2024-08-06T21:19:55.3975458Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 17)) 2024-08-06T21:19:55.3976109Z 2024-08-06T21:19:55.4499744Z msg = Cannot scrape callname=MaxUnpool2d in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py line=395. 2024-08-06T21:19:55.4501569Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.4502543Z Computes a partial inverse of :class:`MaxPool2d`. 2024-08-06T21:19:55.4503057Z 2024-08-06T21:19:55.4503547Z :class:`MaxPool2d` is not fully invertible, since the non-maximal values are lost. 2024-08-06T21:19:55.4504264Z 2024-08-06T21:19:55.4504703Z :class:`MaxUnpool2d` takes in as input the output of :class:`MaxPool2d` 2024-08-06T21:19:55.4505751Z including the indices of the maximal values and computes a partial inverse 2024-08-06T21:19:55.4506680Z in which all non-maximal values are set to zero. 2024-08-06T21:19:55.4507167Z 2024-08-06T21:19:55.4507332Z Note: 2024-08-06T21:19:55.4508130Z This operation may behave nondeterministically when the input indices has repeat values. 2024-08-06T21:19:55.4509704Z See https://github.com/pytorch/pytorch/issues/80827 and :doc:`/notes/randomness` for more information. 2024-08-06T21:19:55.4510653Z 2024-08-06T21:19:55.4511396Z .. note:: :class:`MaxPool2d` can map several input sizes to the same output 2024-08-06T21:19:55.4512370Z sizes. Hence, the inversion process can get ambiguous. 2024-08-06T21:19:55.4513246Z To accommodate this, you can provide the needed output size 2024-08-06T21:19:55.4514160Z as an additional argument :attr:`output_size` in the forward call. 2024-08-06T21:19:55.4514980Z See the Inputs and Example below. 2024-08-06T21:19:55.4515406Z 2024-08-06T21:19:55.4515557Z Args: 2024-08-06T21:19:55.4516095Z kernel_size (int or tuple): Size of the max pooling window. 2024-08-06T21:19:55.4516925Z stride (int or tuple): Stride of the max pooling window. 2024-08-06T21:19:55.4517686Z It is set to :attr:`kernel_size` by default. 2024-08-06T21:19:55.4518493Z padding (int or tuple): Padding that was added to the input 2024-08-06T21:19:55.4519058Z 2024-08-06T21:19:55.4519220Z Inputs: 2024-08-06T21:19:55.4519659Z - `input`: the input Tensor to invert 2024-08-06T21:19:55.4520458Z - `indices`: the indices given out by :class:`~torch.nn.MaxPool2d` 2024-08-06T21:19:55.4521356Z - `output_size` (optional): the targeted output size 2024-08-06T21:19:55.4521858Z 2024-08-06T21:19:55.4522005Z Shape: 2024-08-06T21:19:55.4522547Z - Input: :math:`(N, C, H_{in}, W_{in})` or :math:`(C, H_{in}, W_{in})`. 2024-08-06T21:19:55.4523483Z - Output: :math:`(N, C, H_{out}, W_{out})` or :math:`(C, H_{out}, W_{out})`, where 2024-08-06T21:19:55.4524113Z 2024-08-06T21:19:55.4524265Z .. math:: 2024-08-06T21:19:55.4524972Z H_{out} = (H_{in} - 1) \times \text{stride[0]} - 2 \times \text{padding[0]} + \text{kernel\_size[0]} 2024-08-06T21:19:55.4525660Z 2024-08-06T21:19:55.4525818Z .. math:: 2024-08-06T21:19:55.4526567Z W_{out} = (W_{in} - 1) \times \text{stride[1]} - 2 \times \text{padding[1]} + \text{kernel\_size[1]} 2024-08-06T21:19:55.4527268Z 2024-08-06T21:19:55.4527569Z or as given by :attr:`output_size` in the call operator 2024-08-06T21:19:55.4528069Z 2024-08-06T21:19:55.4528226Z Example:: 2024-08-06T21:19:55.4528456Z 2024-08-06T21:19:55.4528747Z >>> pool = nn.MaxPool2d(2, stride=2, return_indices=True) 2024-08-06T21:19:55.4529444Z >>> unpool = nn.MaxUnpool2d(2, stride=2) 2024-08-06T21:19:55.4530114Z >>> input = torch.tensor([[[[ 1., 2., 3., 4.], 2024-08-06T21:19:55.4530737Z [ 5., 6., 7., 8.], 2024-08-06T21:19:55.4531328Z [ 9., 10., 11., 12.], 2024-08-06T21:19:55.4531933Z [13., 14., 15., 16.]]]]) 2024-08-06T21:19:55.4532543Z >>> output, indices = pool(input) 2024-08-06T21:19:55.4533136Z >>> unpool(output, indices) 2024-08-06T21:19:55.4534389Z tensor([[[[ 0., 0., 0., 0.], 2024-08-06T21:19:55.4535036Z [ 0., 6., 0., 8.], 2024-08-06T21:19:55.4535577Z [ 0., 0., 0., 0.], 2024-08-06T21:19:55.4536139Z [ 0., 14., 0., 16.]]]]) 2024-08-06T21:19:55.4536924Z >>> # Now using output_size to resolve an ambiguous size for the inverse 2024-08-06T21:19:55.4537722Z >>> input = torch.tensor([[[[ 1., 2., 3., 4., 5.], 2024-08-06T21:19:55.4538352Z [ 6., 7., 8., 9., 10.], 2024-08-06T21:19:55.4538973Z [11., 12., 13., 14., 15.], 2024-08-06T21:19:55.4539572Z [16., 17., 18., 19., 20.]]]]) 2024-08-06T21:19:55.4540204Z >>> output, indices = pool(input) 2024-08-06T21:19:55.4540904Z >>> # This call will not work without specifying output_size 2024-08-06T21:19:55.4541688Z >>> unpool(output, indices, output_size=input.size()) 2024-08-06T21:19:55.4542374Z tensor([[[[ 0., 0., 0., 0., 0.], 2024-08-06T21:19:55.4542950Z [ 0., 7., 0., 9., 0.], 2024-08-06T21:19:55.4543638Z [ 0., 0., 0., 0., 0.], 2024-08-06T21:19:55.4544213Z [ 0., 17., 0., 19., 0.]]]]) 2024-08-06T21:19:55.4544601Z 2024-08-06T21:19:55.4544622Z 2024-08-06T21:19:55.4544758Z 2024-08-06T21:19:55.4545455Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.4546168Z 2024-08-06T21:19:55.4798406Z msg = Cannot scrape callname=EmbeddingBag in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py line=270. 2024-08-06T21:19:55.4800180Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.4801531Z Compute sums or means of 'bags' of embeddings, without instantiating the intermediate embeddings. 2024-08-06T21:19:55.4802405Z 2024-08-06T21:19:55.4803029Z For bags of constant length, no :attr:`per_sample_weights`, no indices equal to :attr:`padding_idx`, 2024-08-06T21:19:55.4804046Z and with 2D inputs, this class 2024-08-06T21:19:55.4804423Z 2024-08-06T21:19:55.4804984Z * with ``mode="sum"`` is equivalent to :class:`~torch.nn.Embedding` followed by ``torch.sum(dim=1)``, 2024-08-06T21:19:55.4806368Z * with ``mode="mean"`` is equivalent to :class:`~torch.nn.Embedding` followed by ``torch.mean(dim=1)``, 2024-08-06T21:19:55.4807754Z * with ``mode="max"`` is equivalent to :class:`~torch.nn.Embedding` followed by ``torch.max(dim=1)``. 2024-08-06T21:19:55.4808506Z 2024-08-06T21:19:55.4809149Z However, :class:`~torch.nn.EmbeddingBag` is much more time and memory efficient than using a chain of these 2024-08-06T21:19:55.4810214Z operations. 2024-08-06T21:19:55.4810459Z 2024-08-06T21:19:55.4810961Z EmbeddingBag also supports per-sample weights as an argument to the forward 2024-08-06T21:19:55.4812056Z pass. This scales the output of the Embedding before performing a weighted 2024-08-06T21:19:55.4813152Z reduction as specified by ``mode``. If :attr:`per_sample_weights` is passed, the 2024-08-06T21:19:55.4814268Z only supported ``mode`` is ``"sum"``, which computes a weighted sum according to 2024-08-06T21:19:55.4815210Z :attr:`per_sample_weights`. 2024-08-06T21:19:55.4815553Z 2024-08-06T21:19:55.4815689Z Args: 2024-08-06T21:19:55.4816205Z num_embeddings (int): size of the dictionary of embeddings 2024-08-06T21:19:55.4817022Z embedding_dim (int): the size of each embedding vector 2024-08-06T21:19:55.4818110Z max_norm (float, optional): If given, each embedding vector with norm larger than :attr:`max_norm` 2024-08-06T21:19:55.4819183Z is renormalized to have norm :attr:`max_norm`. 2024-08-06T21:19:55.4820302Z norm_type (float, optional): The p of the p-norm to compute for the :attr:`max_norm` option. Default ``2``. 2024-08-06T21:19:55.4821765Z scale_grad_by_freq (bool, optional): if given, this will scale gradients by the inverse of frequency of 2024-08-06T21:19:55.4823167Z the words in the mini-batch. Default ``False``. 2024-08-06T21:19:55.4824023Z Note: this option is not supported when ``mode="max"``. 2024-08-06T21:19:55.4825000Z mode (str, optional): ``"sum"``, ``"mean"`` or ``"max"``. Specifies the way to reduce the bag. 2024-08-06T21:19:55.4826087Z ``"sum"`` computes the weighted sum, taking :attr:`per_sample_weights` 2024-08-06T21:19:55.4827118Z into consideration. ``"mean"`` computes the average of the values 2024-08-06T21:19:55.4828063Z in the bag, ``"max"`` computes the max value over each bag. 2024-08-06T21:19:55.4828794Z Default: ``"mean"`` 2024-08-06T21:19:55.4829798Z sparse (bool, optional): if ``True``, gradient w.r.t. :attr:`weight` matrix will be a sparse tensor. See 2024-08-06T21:19:55.4831109Z Notes for more details regarding sparse gradients. Note: this option is not 2024-08-06T21:19:55.4832197Z supported when ``mode="max"``. 2024-08-06T21:19:55.4833346Z include_last_offset (bool, optional): if ``True``, :attr:`offsets` has one additional element, where the last element 2024-08-06T21:19:55.4834595Z is equivalent to the size of `indices`. This matches the CSR format. 2024-08-06T21:19:55.4835846Z padding_idx (int, optional): If specified, the entries at :attr:`padding_idx` do not contribute to the 2024-08-06T21:19:55.4837433Z gradient; therefore, the embedding vector at :attr:`padding_idx` is not updated 2024-08-06T21:19:55.4855869Z during training, i.e. it remains as a fixed "pad". For a newly constructed 2024-08-06T21:19:55.4857259Z EmbeddingBag, the embedding vector at :attr:`padding_idx` will default to all 2024-08-06T21:19:55.4858464Z zeros, but can be updated to another value to be used as the padding vector. 2024-08-06T21:19:55.4859602Z Note that the embedding vector at :attr:`padding_idx` is excluded from the 2024-08-06T21:19:55.4860454Z reduction. 2024-08-06T21:19:55.4860870Z 2024-08-06T21:19:55.4861032Z Attributes: 2024-08-06T21:19:55.4861863Z weight (Tensor): the learnable weights of the module of shape `(num_embeddings, embedding_dim)` 2024-08-06T21:19:55.4863156Z initialized from :math:`\mathcal{N}(0, 1)`. 2024-08-06T21:19:55.4863635Z 2024-08-06T21:19:55.4863817Z Examples:: 2024-08-06T21:19:55.4864070Z 2024-08-06T21:19:55.4864377Z >>> # an EmbeddingBag module containing 10 tensors of size 3 2024-08-06T21:19:55.4865202Z >>> embedding_sum = nn.EmbeddingBag(10, 3, mode='sum') 2024-08-06T21:19:55.4865918Z >>> # a batch of 2 samples of 4 indices each 2024-08-06T21:19:55.4866704Z >>> input = torch.tensor([1, 2, 4, 5, 4, 3, 2, 9], dtype=torch.long) 2024-08-06T21:19:55.4867532Z >>> offsets = torch.tensor([0, 4], dtype=torch.long) 2024-08-06T21:19:55.4868246Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:19:55.4868908Z >>> embedding_sum(input, offsets) 2024-08-06T21:19:55.4869504Z tensor([[-0.8861, -5.4350, -0.0523], 2024-08-06T21:19:55.4870055Z [ 1.1306, -2.5798, -1.0044]]) 2024-08-06T21:19:55.4870461Z 2024-08-06T21:19:55.4870654Z >>> # Example with padding_idx 2024-08-06T21:19:55.4871417Z >>> embedding_sum = nn.EmbeddingBag(10, 3, mode='sum', padding_idx=2) 2024-08-06T21:19:55.4872328Z >>> input = torch.tensor([2, 2, 2, 2, 4, 3, 2, 9], dtype=torch.long) 2024-08-06T21:19:55.4873123Z >>> offsets = torch.tensor([0, 4], dtype=torch.long) 2024-08-06T21:19:55.4874069Z >>> embedding_sum(input, offsets) 2024-08-06T21:19:55.4874608Z tensor([[ 0.0000, 0.0000, 0.0000], 2024-08-06T21:19:55.4875159Z [-0.7082, 3.2145, -2.6251]]) 2024-08-06T21:19:55.4875523Z 2024-08-06T21:19:55.4875834Z >>> # An EmbeddingBag can be loaded from an Embedding like so 2024-08-06T21:19:55.4876519Z >>> embedding = nn.Embedding(10, 3, padding_idx=2) 2024-08-06T21:19:55.4877222Z >>> embedding_sum = nn.EmbeddingBag.from_pretrained( 2024-08-06T21:19:55.4877890Z embedding.weight, 2024-08-06T21:19:55.4878435Z padding_idx=embedding.padding_idx, 2024-08-06T21:19:55.4879023Z mode='sum') 2024-08-06T21:19:55.4879466Z 2024-08-06T21:19:55.4880159Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.4880856Z 2024-08-06T21:19:55.5178587Z msg = Cannot scrape callname=DistributedDataParallel.join in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py line=1745. 2024-08-06T21:19:55.5180624Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5181603Z 2024-08-06T21:19:55.5182048Z Context manager for training with uneven inputs across processes in DDP. 2024-08-06T21:19:55.5182723Z 2024-08-06T21:19:55.5183156Z This context manager will keep track of already-joined DDP processes, 2024-08-06T21:19:55.5184183Z and "shadow" the forward and backward passes by inserting collective 2024-08-06T21:19:55.5185250Z communication operations to match with the ones created by non-joined 2024-08-06T21:19:55.5186350Z DDP processes. This will ensure each collective call has a corresponding 2024-08-06T21:19:55.5187421Z call by already-joined DDP processes, preventing hangs or errors that 2024-08-06T21:19:55.5188442Z would otherwise happen when training with uneven inputs across 2024-08-06T21:19:55.5189438Z processes. Alternatively, if the flag ``throw_on_early_termination`` is 2024-08-06T21:19:55.5190469Z specified to be ``True``, all trainers will throw an error once one rank 2024-08-06T21:19:55.5191451Z runs out of inputs, allowing these errors to be caught and handled 2024-08-06T21:19:55.5192241Z according to application logic. 2024-08-06T21:19:55.5192604Z 2024-08-06T21:19:55.5193018Z Once all DDP processes have joined, the context manager will broadcast 2024-08-06T21:19:55.5194008Z the model corresponding to the last joined process to all processes to 2024-08-06T21:19:55.5194903Z ensure the model is the same across all processes 2024-08-06T21:19:55.5195551Z (which is guaranteed by DDP). 2024-08-06T21:19:55.5195940Z 2024-08-06T21:19:55.5196334Z To use this to enable training with uneven inputs across processes, 2024-08-06T21:19:55.5197291Z simply wrap this context manager around your training loop. No further 2024-08-06T21:19:55.5198219Z modifications to the model or data loading is required. 2024-08-06T21:19:55.5198757Z 2024-08-06T21:19:55.5198965Z .. warning:: 2024-08-06T21:19:55.5199569Z If the model or training loop this context manager is wrapped around 2024-08-06T21:19:55.5200518Z has additional distributed collective operations, such as 2024-08-06T21:19:55.5201430Z ``SyncBatchNorm`` in the model's forward pass, then the flag 2024-08-06T21:19:55.5202353Z ``throw_on_early_termination`` must be enabled. This is because this 2024-08-06T21:19:55.5203324Z context manager is not aware of non-DDP collective communication. 2024-08-06T21:19:55.5204246Z This flag will cause all ranks to throw when any one rank 2024-08-06T21:19:55.5205174Z exhausts inputs, allowing these errors to be caught and recovered 2024-08-06T21:19:55.5205945Z from across all ranks. 2024-08-06T21:19:55.5206265Z 2024-08-06T21:19:55.5206430Z Args: 2024-08-06T21:19:55.5206963Z divide_by_initial_world_size (bool): If ``True``, will divide 2024-08-06T21:19:55.5207900Z gradients by the initial ``world_size`` DDP training was launched 2024-08-06T21:19:55.5209022Z with. If ``False``, will compute the effective world size 2024-08-06T21:19:55.5209848Z (number of ranks that have not depleted their inputs yet) and 2024-08-06T21:19:55.5210663Z divide gradients by that during allreduce. Set 2024-08-06T21:19:55.5211464Z ``divide_by_initial_world_size=True`` to ensure every input 2024-08-06T21:19:55.5212351Z sample including the uneven inputs have equal weight in terms of 2024-08-06T21:19:55.5213239Z how much they contribute to the global gradient. This is 2024-08-06T21:19:55.5214116Z achieved by always dividing the gradient by the initial 2024-08-06T21:19:55.5215089Z ``world_size`` even when we encounter uneven inputs. If you set 2024-08-06T21:19:55.5215953Z this to ``False``, we divide the gradient by the remaining 2024-08-06T21:19:55.5216843Z number of nodes. This ensures parity with training on a smaller 2024-08-06T21:19:55.5217743Z ``world_size`` although it also means the uneven inputs would 2024-08-06T21:19:55.5218618Z contribute more towards the global gradient. Typically, you 2024-08-06T21:19:55.5219748Z would want to set this to ``True`` for cases where the last few 2024-08-06T21:19:55.5220670Z inputs of your training job are uneven. In extreme cases, where 2024-08-06T21:19:55.5221577Z there is a large discrepancy in the number of inputs, setting 2024-08-06T21:19:55.5222411Z this to ``False`` might provide better results. 2024-08-06T21:19:55.5223279Z enable (bool): Whether to enable uneven input detection or not. Pass 2024-08-06T21:19:55.5224204Z in ``enable=False`` to disable in cases where you know that 2024-08-06T21:19:55.5225069Z inputs are even across participating processes. Default is 2024-08-06T21:19:55.5225686Z ``True``. 2024-08-06T21:19:55.5226168Z throw_on_early_termination (bool): Whether to throw an error 2024-08-06T21:19:55.5226984Z or continue training when at least one rank has exhausted 2024-08-06T21:19:55.5227854Z inputs. If ``True``, will throw upon the first rank reaching end 2024-08-06T21:19:55.5228726Z of data. If ``False``, will continue training with a smaller 2024-08-06T21:19:55.5229617Z effective world size until all ranks are joined. Note that if 2024-08-06T21:19:55.5230413Z this flag is specified, then the flag 2024-08-06T21:19:55.5231141Z ``divide_by_initial_world_size`` would be ignored. Default 2024-08-06T21:19:55.5231842Z is ``False``. 2024-08-06T21:19:55.5232114Z 2024-08-06T21:19:55.5232134Z 2024-08-06T21:19:55.5232297Z Example:: 2024-08-06T21:19:55.5232511Z 2024-08-06T21:19:55.5232716Z >>> # xdoctest: +SKIP("Distributed") 2024-08-06T21:19:55.5233275Z >>> import torch 2024-08-06T21:19:55.5233744Z >>> import torch.distributed as dist 2024-08-06T21:19:55.5234303Z >>> import os 2024-08-06T21:19:55.5234750Z >>> import torch.multiprocessing as mp 2024-08-06T21:19:55.5235353Z >>> import torch.nn as nn 2024-08-06T21:19:55.5235868Z >>> # On each spawned worker 2024-08-06T21:19:55.5236391Z >>> def worker(rank): 2024-08-06T21:19:55.5237025Z >>> dist.init_process_group("nccl", rank=rank, world_size=2) 2024-08-06T21:19:55.5237757Z >>> torch.cuda.set_device(rank) 2024-08-06T21:19:55.5238367Z >>> model = nn.Linear(1, 1, bias=False).to(rank) 2024-08-06T21:19:55.5239097Z >>> model = torch.nn.parallel.DistributedDataParallel( 2024-08-06T21:19:55.5239792Z >>> model, device_ids=[rank], output_device=rank 2024-08-06T21:19:55.5240365Z >>> ) 2024-08-06T21:19:55.5240803Z >>> # Rank 1 gets one more input than rank 0. 2024-08-06T21:19:55.5241560Z >>> inputs = [torch.tensor([1]).float() for _ in range(10 + rank)] 2024-08-06T21:19:55.5242285Z >>> with model.join(): 2024-08-06T21:19:55.5242781Z >>> for _ in range(5): 2024-08-06T21:19:55.5243303Z >>> for inp in inputs: 2024-08-06T21:19:55.5243867Z >>> loss = model(inp).sum() 2024-08-06T21:19:55.5244606Z >>> loss.backward() 2024-08-06T21:19:55.5245300Z >>> # Without the join() API, the below synchronization will hang 2024-08-06T21:19:55.5246135Z >>> # blocking for rank 1's allreduce to complete. 2024-08-06T21:19:55.5246827Z >>> torch.cuda.synchronize(device=rank) 2024-08-06T21:19:55.5247263Z 2024-08-06T21:19:55.5247735Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5248415Z 2024-08-06T21:19:55.5249849Z msg = Cannot scrape callname=DistributedDataParallel._register_fused_optim in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py line=2036. 2024-08-06T21:19:55.5251941Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5252671Z 2024-08-06T21:19:55.5253235Z Register an optimizer in DDP to optimize parameter immediately after its gradient reduction. 2024-08-06T21:19:55.5253996Z 2024-08-06T21:19:55.5254392Z Registers an optimizer with DDP such that the optimization for a 2024-08-06T21:19:55.5255419Z parameter will run immediately when that parameter's gradient is 2024-08-06T21:19:55.5256519Z finished with reduction, instead of waiting for all parameters' 2024-08-06T21:19:55.5257498Z gradients to finish reduction. This can result in a training speedup 2024-08-06T21:19:55.5258482Z depending on your workload since the optimizer can run while gradient 2024-08-06T21:19:55.5259473Z reduction for other parameters are still ongoing. In addition, this has 2024-08-06T21:19:55.5260476Z the potential to reduce peak memory consumption during training, as it 2024-08-06T21:19:55.5261457Z only needs to load the per-parameter optimizer states of a single 2024-08-06T21:19:55.5262418Z parameter at a time, instead of loading all per-parameter optimizer 2024-08-06T21:19:55.5263400Z states at once. 2024-08-06T21:19:55.5263646Z 2024-08-06T21:19:55.5263790Z Args: 2024-08-06T21:19:55.5264353Z optim (Type): a ``torch.optim.Optimizer`` class to be registered 2024-08-06T21:19:55.5265105Z as a fused optimizer. 2024-08-06T21:19:55.5265698Z *args (Sequence[Any]): Arguments to forward to `optim`. 2024-08-06T21:19:55.5266599Z optim_params (Optional[Iterable[torch.Tensor]]): Set of parameters 2024-08-06T21:19:55.5267614Z to optimize, similar to `params` argument of traditional `torch.optim` 2024-08-06T21:19:55.5268603Z Optimizers. If this is omitted, all DDP model parameters will be 2024-08-06T21:19:55.5269359Z optimized. 2024-08-06T21:19:55.5269948Z **kwargs: (Dict[str, Any]): Keyword arguments to forward to `optim`. 2024-08-06T21:19:55.5270518Z 2024-08-06T21:19:55.5270685Z .. warning :: 2024-08-06T21:19:55.5271284Z _register_fused_optim should only be called once on a DDP instance, 2024-08-06T21:19:55.5272296Z and registering multiple fused optimizers for the same DDP model 2024-08-06T21:19:55.5273136Z is not currently supported. Please ping 2024-08-06T21:19:55.5273998Z https://github.com/pytorch/pytorch/issues/71595 if this is necessary 2024-08-06T21:19:55.5274822Z for your use case. 2024-08-06T21:19:55.5275104Z 2024-08-06T21:19:55.5275271Z .. warning :: 2024-08-06T21:19:55.5275838Z _register_fused_optim and register_comm_hook currently do not 2024-08-06T21:19:55.5276796Z compose together, meaning that custom DDP communication hooks are 2024-08-06T21:19:55.5277704Z not supported with overlapped optimizers. Please ping 2024-08-06T21:19:55.5278631Z https://github.com/pytorch/pytorch/issues/71595 if this is necessary 2024-08-06T21:19:55.5279425Z for your use case. 2024-08-06T21:19:55.5279683Z 2024-08-06T21:19:55.5279849Z .. warning :: 2024-08-06T21:19:55.5280450Z Gradient accumulation and DDP `no_sync` are currently not supported 2024-08-06T21:19:55.5281257Z with overlapped optimizer. Please ping 2024-08-06T21:19:55.5282077Z https://github.com/pytorch/pytorch/issues/71595 if this is necessary 2024-08-06T21:19:55.5283083Z for your use case. 2024-08-06T21:19:55.5283374Z 2024-08-06T21:19:55.5283534Z Example:: 2024-08-06T21:19:55.5283747Z 2024-08-06T21:19:55.5283985Z >>> # xdoctest: +SKIP("No rendezvous handler") 2024-08-06T21:19:55.5284982Z >>> torch.distributed.init_process_group(backend='nccl', world_size=4, init_method='...') 2024-08-06T21:19:55.5286115Z >>> net = torch.nn.parallel.DistributedDataParallel(model, pg) 2024-08-06T21:19:55.5286838Z >>> lr = 1e-2 2024-08-06T21:19:55.5287263Z >>> betas = (0.9, 0.99) 2024-08-06T21:19:55.5287728Z >>> eps = 1e-6 2024-08-06T21:19:55.5288380Z >>> net._register_fused_optim(torch.optim.Adam, lr, betas=betas, eps=eps) 2024-08-06T21:19:55.5289221Z >>> # Example with subset of parameters 2024-08-06T21:19:55.5289877Z >>> params_to_opt = [list(net.parameters())[0]] 2024-08-06T21:19:55.5290514Z >>> net._register_fused_optim( 2024-08-06T21:19:55.5291301Z ... torch.optim.Adam, lr, optim_params=params_to_opt, betas=betas, eps=eps 2024-08-06T21:19:55.5292129Z ... ) 2024-08-06T21:19:55.5292338Z 2024-08-06T21:19:55.5292882Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5293480Z 2024-08-06T21:19:55.5504765Z msg = Cannot scrape callname=convert_conv2d_weight_memory_format in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/memory_format.py line=6. 2024-08-06T21:19:55.5505815Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5506428Z Convert ``memory_format`` of ``nn.Conv2d.weight`` to ``memory_format``. 2024-08-06T21:19:55.5506762Z 2024-08-06T21:19:55.5507038Z The conversion recursively applies to nested ``nn.Module``, including ``module``. 2024-08-06T21:19:55.5507715Z Note that it only changes the memory_format, but not the semantics of each dimensions. 2024-08-06T21:19:55.5508379Z This function is used to facilitate the computation to adopt NHWC kernels, which 2024-08-06T21:19:55.5509145Z provides considerable speed up for fp16 data on CUDA devices with compute capability >= 7.0 2024-08-06T21:19:55.5509774Z 2024-08-06T21:19:55.5509909Z .. note:: 2024-08-06T21:19:55.5510505Z Calling ``model.to(memory_format=torch.channels_last)`` is more aggressive 2024-08-06T21:19:55.5511322Z than the utility function ``convert_conv2d_weight_memory_format``. Any 2024-08-06T21:19:55.5511869Z layer with 4d weight will be affected by ``model.to``, which does not 2024-08-06T21:19:55.5512425Z necessarily benefit from conversion to specified ``memory_format``. 2024-08-06T21:19:55.5512987Z One place we are confident in is that NHWC(channels_last) conversion for 2024-08-06T21:19:55.5513537Z convolution in cuDNN, As it is beneficial to run convolution in NHWC, 2024-08-06T21:19:55.5514080Z even in cases where we have to apply permutation to input tensors. 2024-08-06T21:19:55.5514398Z 2024-08-06T21:19:55.5514636Z Hence our strategy here is to convert only the weight of convolution to 2024-08-06T21:19:55.5515092Z channels_last. This ensures that; 2024-08-06T21:19:55.5515535Z 1. Fast convolution kernels will be used, the benefit of which could 2024-08-06T21:19:55.5516103Z outweigh overhead of permutation (if input is not in the same format) 2024-08-06T21:19:55.5516677Z 2. No unnecessary permutations are applied on layers that do not benefit 2024-08-06T21:19:55.5517142Z from memory_format conversion. 2024-08-06T21:19:55.5517353Z 2024-08-06T21:19:55.5517591Z The optimal case is that, layers between convolution layers are channels 2024-08-06T21:19:55.5518162Z last compatible. Input tensor would be permuted to channels last when it 2024-08-06T21:19:55.5518751Z encounters the first convolution layer and stay in that memory format. 2024-08-06T21:19:55.5519345Z Hence following convolutions will not need to permute its input tensor. 2024-08-06T21:19:55.5519698Z 2024-08-06T21:19:55.5519932Z In case where a channels last incompatible layer is between convolution 2024-08-06T21:19:55.5520612Z layers, we need to permute the input tensor back to contiguous format 2024-08-06T21:19:55.5521184Z for that layer. The input tensor will go through the remaining layers in 2024-08-06T21:19:55.5521759Z contiguous format and be permuted to channels last when it encounters 2024-08-06T21:19:55.5522304Z another convolution layer. There's no point in propagating that 2024-08-06T21:19:55.5522851Z permutation to an earlier layer, as most layers are quite agnostic to 2024-08-06T21:19:55.5523292Z ``memory_format``. 2024-08-06T21:19:55.5523461Z 2024-08-06T21:19:55.5523693Z This claim might change when PyTorch supports fusion of permutation, as 2024-08-06T21:19:55.5524271Z there might have been a better spot to fuse the permutation other than 2024-08-06T21:19:55.5524732Z immediately before a convolution. 2024-08-06T21:19:55.5524953Z 2024-08-06T21:19:55.5525045Z Args: 2024-08-06T21:19:55.5525385Z module (nn.Module): ``nn.Conv2d`` & ``nn.ConvTranspose2d`` or container 2024-08-06T21:19:55.5525820Z ``nn.Module`` 2024-08-06T21:19:55.5526237Z memory_format: user specified ``memory_format``, 2024-08-06T21:19:55.5526683Z e.g. ``torch.channels_last`` or ``torch.contiguous_format`` 2024-08-06T21:19:55.5526987Z 2024-08-06T21:19:55.5527076Z Returns: 2024-08-06T21:19:55.5527375Z The original module with updated ``nn.Conv2d`` 2024-08-06T21:19:55.5527622Z 2024-08-06T21:19:55.5527722Z Example: 2024-08-06T21:19:55.5527980Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:19:55.5528385Z >>> # xdoctest: +REQUIRES(env:CUBLAS_WORKSPACE_CONFIG) 2024-08-06T21:19:55.5528888Z >>> input = torch.randint(1, 10, (2, 8, 4, 4), dtype=torch.float16, device="cuda") 2024-08-06T21:19:55.5529335Z >>> model = nn.Sequential( 2024-08-06T21:19:55.5529653Z >>> nn.Conv2d(8, 4, 3)).cuda().half() 2024-08-06T21:19:55.5529990Z >>> # This is identical to: 2024-08-06T21:19:55.5530424Z >>> # nn.utils.convert_conv2d_weight_memory_format(model, torch.channels_last) 2024-08-06T21:19:55.5531053Z >>> model = nn.utils.convert_conv2d_weight_memory_format(model, torch.channels_last) 2024-08-06T21:19:55.5531540Z >>> out = model(input) 2024-08-06T21:19:55.5531795Z 2024-08-06T21:19:55.5532161Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5532525Z 2024-08-06T21:19:55.5533173Z msg = Cannot scrape callname=convert_conv3d_weight_memory_format in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/memory_format.py line=81. 2024-08-06T21:19:55.5534167Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5534758Z Convert ``memory_format`` of ``nn.Conv3d.weight`` to ``memory_format`` 2024-08-06T21:19:55.5535463Z The conversion recursively applies to nested ``nn.Module``, including ``module``. 2024-08-06T21:19:55.5536123Z Note that it only changes the memory_format, but not the semantics of each dimensions. 2024-08-06T21:19:55.5536783Z This function is used to facilitate the computation to adopt NHWC kernels, which 2024-08-06T21:19:55.5537473Z provides considerable speed up for fp16 data on CUDA devices with compute capability >= 7.0 2024-08-06T21:19:55.5537895Z 2024-08-06T21:19:55.5537999Z .. note:: 2024-08-06T21:19:55.5538354Z Calling ``model.to(memory_format=torch.channels_last)`` is more aggressive 2024-08-06T21:19:55.5538932Z than the utility function ``convert_conv3d_weight_memory_format``. Any 2024-08-06T21:19:55.5539486Z layer with 4d weight will be affected by ``model.to``, which does not 2024-08-06T21:19:55.5540027Z necessarily benefit from conversion to specified ``memory_format``. 2024-08-06T21:19:55.5540594Z One place we are confident in is that NHWC(channels_last) conversion for 2024-08-06T21:19:55.5541227Z convolution in cuDNN, As it is beneficial to run convolution in NHWC, 2024-08-06T21:19:55.5541761Z even in cases where we have to apply permutation to input tensors. 2024-08-06T21:19:55.5542091Z 2024-08-06T21:19:55.5542317Z Hence our strategy here is to convert only the weight of convolution to 2024-08-06T21:19:55.5542782Z channels_last. This ensures that; 2024-08-06T21:19:55.5543216Z 1. Fast convolution kernels will be used, the benefit of which could 2024-08-06T21:19:55.5543784Z outweigh overhead of permutation (if input is not in the same format) 2024-08-06T21:19:55.5544372Z 2. No unnecessary permutations are applied on layers that do not benefit 2024-08-06T21:19:55.5544838Z from memory_format conversion. 2024-08-06T21:19:55.5545049Z 2024-08-06T21:19:55.5545276Z The optimal case is that, layers between convolution layers are channels 2024-08-06T21:19:55.5545858Z last compatible. Input tensor would be permuted to channels last when it 2024-08-06T21:19:55.5546447Z encounters the first convolution layer and stay in that memory format. 2024-08-06T21:19:55.5547110Z Hence following convolutions will not need to permute its input tensor. 2024-08-06T21:19:55.5547480Z 2024-08-06T21:19:55.5547701Z In case where a channels last incompatible layer is between convolution 2024-08-06T21:19:55.5548255Z layers, we need to permute the input tensor back to contiguous format 2024-08-06T21:19:55.5548801Z for that layer. The input tensor will go through the remaining layers in 2024-08-06T21:19:55.5549375Z contiguous format and be permuted to channels last when it encounters 2024-08-06T21:19:55.5549932Z another convolution layer. There's no point in propagating that 2024-08-06T21:19:55.5550474Z permutation to an earlier layer, as most layers are quite agnostic to 2024-08-06T21:19:55.5550915Z ``memory_format``. 2024-08-06T21:19:55.5551098Z 2024-08-06T21:19:55.5551331Z This claim might change when PyTorch supports fusion of permutation, as 2024-08-06T21:19:55.5551913Z there might have been a better spot to fuse the permutation other than 2024-08-06T21:19:55.5552368Z immediately before a convolution. 2024-08-06T21:19:55.5552601Z 2024-08-06T21:19:55.5552687Z Args: 2024-08-06T21:19:55.5553029Z module (nn.Module): ``nn.Conv3d`` & ``nn.ConvTranspose3d`` or container 2024-08-06T21:19:55.5553451Z ``nn.Module`` 2024-08-06T21:19:55.5553820Z memory_format: user specified ``memory_format``, 2024-08-06T21:19:55.5554267Z e.g. ``torch.channels_last`` or ``torch.contiguous_format`` 2024-08-06T21:19:55.5554555Z 2024-08-06T21:19:55.5554641Z Returns: 2024-08-06T21:19:55.5554915Z The original module with updated ``nn.Conv3d`` 2024-08-06T21:19:55.5555167Z 2024-08-06T21:19:55.5555268Z Example: 2024-08-06T21:19:55.5555527Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:19:55.5555942Z >>> # xdoctest: +REQUIRES(env:CUBLAS_WORKSPACE_CONFIG) 2024-08-06T21:19:55.5556457Z >>> input = torch.randint(1, 10, (2, 8, 4, 4, 4), dtype=torch.float16, device="cuda") 2024-08-06T21:19:55.5556907Z >>> model = nn.Sequential( 2024-08-06T21:19:55.5557224Z >>> nn.Conv3d(8, 4, 3)).cuda().half() 2024-08-06T21:19:55.5557557Z >>> # This is identical to: 2024-08-06T21:19:55.5557997Z >>> # nn.utils.convert_conv3d_weight_memory_format(model, torch.channels_last) 2024-08-06T21:19:55.5558638Z >>> model = nn.utils.convert_conv3d_weight_memory_format(model, torch.channels_last_3d) 2024-08-06T21:19:55.5559130Z >>> out = model(input) 2024-08-06T21:19:55.5559389Z 2024-08-06T21:19:55.5559760Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5560123Z 2024-08-06T21:19:55.5720293Z msg = Cannot scrape callname=random_structured in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=937. 2024-08-06T21:19:55.5721404Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5722013Z Prune tensor by removing random channels along the specified dimension. 2024-08-06T21:19:55.5722368Z 2024-08-06T21:19:55.5722601Z Prunes tensor corresponding to parameter called ``name`` in ``module`` 2024-08-06T21:19:55.5723179Z by removing the specified ``amount`` of (currently unpruned) channels 2024-08-06T21:19:55.5723858Z along the specified ``dim`` selected at random. 2024-08-06T21:19:55.5724436Z Modifies module in place (and also return the modified module) 2024-08-06T21:19:55.5724981Z by: 2024-08-06T21:19:55.5725098Z 2024-08-06T21:19:55.5725320Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:19:55.5725862Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:19:55.5726415Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:19:55.5726962Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:19:55.5727377Z ``name+'_orig'``. 2024-08-06T21:19:55.5727652Z 2024-08-06T21:19:55.5727741Z Args: 2024-08-06T21:19:55.5728049Z module (nn.Module): module containing the tensor to prune 2024-08-06T21:19:55.5728517Z name (str): parameter name within ``module`` on which pruning 2024-08-06T21:19:55.5728913Z will act. 2024-08-06T21:19:55.5729268Z amount (int or float): quantity of parameters to prune. 2024-08-06T21:19:55.5729878Z If ``float``, should be between 0.0 and 1.0 and represent the 2024-08-06T21:19:55.5730491Z fraction of parameters to prune. If ``int``, it represents the 2024-08-06T21:19:55.5731176Z absolute number of parameters to prune. 2024-08-06T21:19:55.5731610Z dim (int): index of the dim along which we define channels to prune. 2024-08-06T21:19:55.5731941Z 2024-08-06T21:19:55.5732031Z Returns: 2024-08-06T21:19:55.5732383Z module (nn.Module): modified (i.e. pruned) version of the input module 2024-08-06T21:19:55.5732717Z 2024-08-06T21:19:55.5732812Z Examples: 2024-08-06T21:19:55.5733047Z >>> # xdoctest: +SKIP 2024-08-06T21:19:55.5733347Z >>> m = prune.random_structured( 2024-08-06T21:19:55.5733694Z ... nn.Linear(5, 3), 'weight', amount=3, dim=1 2024-08-06T21:19:55.5734035Z ... ) 2024-08-06T21:19:55.5734462Z >>> columns_pruned = int(sum(torch.sum(m.weight, dim=0) == 0)) 2024-08-06T21:19:55.5735135Z >>> print(columns_pruned) 2024-08-06T21:19:55.5735431Z 3 2024-08-06T21:19:55.5735641Z 2024-08-06T21:19:55.5736053Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5736430Z 2024-08-06T21:19:55.5736991Z msg = Cannot scrape callname=ln_structured in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=978. 2024-08-06T21:19:55.5737866Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5738568Z Prune tensor by removing channels with the lowest L\ ``n``-norm along the specified dimension. 2024-08-06T21:19:55.5738991Z 2024-08-06T21:19:55.5739237Z Prunes tensor corresponding to parameter called ``name`` in ``module`` 2024-08-06T21:19:55.5739797Z by removing the specified ``amount`` of (currently unpruned) channels 2024-08-06T21:19:55.5740312Z along the specified ``dim`` with the lowest L\ ``n``-norm. 2024-08-06T21:19:55.5740801Z Modifies module in place (and also return the modified module) 2024-08-06T21:19:55.5741188Z by: 2024-08-06T21:19:55.5741313Z 2024-08-06T21:19:55.5741524Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:19:55.5742072Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:19:55.5742623Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:19:55.5743292Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:19:55.5743717Z ``name+'_orig'``. 2024-08-06T21:19:55.5743877Z 2024-08-06T21:19:55.5743986Z Args: 2024-08-06T21:19:55.5744279Z module (nn.Module): module containing the tensor to prune 2024-08-06T21:19:55.5744762Z name (str): parameter name within ``module`` on which pruning 2024-08-06T21:19:55.5745156Z will act. 2024-08-06T21:19:55.5745480Z amount (int or float): quantity of parameters to prune. 2024-08-06T21:19:55.5745946Z If ``float``, should be between 0.0 and 1.0 and represent the 2024-08-06T21:19:55.5746446Z fraction of parameters to prune. If ``int``, it represents the 2024-08-06T21:19:55.5746884Z absolute number of parameters to prune. 2024-08-06T21:19:55.5747331Z n (int, float, inf, -inf, 'fro', 'nuc'): See documentation of valid 2024-08-06T21:19:55.5747802Z entries for argument ``p`` in :func:`torch.norm`. 2024-08-06T21:19:55.5748267Z dim (int): index of the dim along which we define channels to prune. 2024-08-06T21:19:55.5748880Z importance_scores (torch.Tensor): tensor of importance scores (of same 2024-08-06T21:19:55.5749431Z shape as module parameter) used to compute mask for pruning. 2024-08-06T21:19:55.5749954Z The values in this tensor indicate the importance of the corresponding 2024-08-06T21:19:55.5750429Z elements in the parameter being pruned. 2024-08-06T21:19:55.5750904Z If unspecified or None, the module parameter will be used in its place. 2024-08-06T21:19:55.5751249Z 2024-08-06T21:19:55.5751338Z Returns: 2024-08-06T21:19:55.5751689Z module (nn.Module): modified (i.e. pruned) version of the input module 2024-08-06T21:19:55.5752033Z 2024-08-06T21:19:55.5752122Z Examples: 2024-08-06T21:19:55.5752376Z >>> from torch.nn.utils import prune 2024-08-06T21:19:55.5752703Z >>> m = prune.ln_structured( 2024-08-06T21:19:55.5753099Z ... nn.Conv2d(5, 3, 2), 'weight', amount=0.3, dim=1, n=float('-inf') 2024-08-06T21:19:55.5753497Z ... ) 2024-08-06T21:19:55.5753700Z 2024-08-06T21:19:55.5754073Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5754439Z 2024-08-06T21:19:55.5755004Z msg = Cannot scrape callname=global_unstructured in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=1025. 2024-08-06T21:19:55.5755910Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5756299Z 2024-08-06T21:19:55.5756731Z Globally prunes tensors corresponding to all parameters in ``parameters`` by applying the specified ``pruning_method``. 2024-08-06T21:19:55.5757276Z 2024-08-06T21:19:55.5757401Z Modifies modules in place by: 2024-08-06T21:19:55.5757590Z 2024-08-06T21:19:55.5757800Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:19:55.5758356Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:19:55.5758909Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:19:55.5759453Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:19:55.5759863Z ``name+'_orig'``. 2024-08-06T21:19:55.5760028Z 2024-08-06T21:19:55.5760113Z Args: 2024-08-06T21:19:55.5760432Z parameters (Iterable of (module, name) tuples): parameters of 2024-08-06T21:19:55.5760937Z the model to prune in a global fashion, i.e. by aggregating all 2024-08-06T21:19:55.5761465Z weights prior to deciding which ones to prune. module must be of 2024-08-06T21:19:55.5761943Z type :class:`nn.Module`, and name must be a string. 2024-08-06T21:19:55.5762423Z pruning_method (function): a valid pruning function from this module, 2024-08-06T21:19:55.5763174Z or a custom one implemented by the user that satisfies the 2024-08-06T21:19:55.5763814Z implementation guidelines and has ``PRUNING_TYPE='unstructured'``. 2024-08-06T21:19:55.5764384Z importance_scores (dict): a dictionary mapping (module, name) tuples to 2024-08-06T21:19:55.5764973Z the corresponding parameter's importance scores tensor. The tensor 2024-08-06T21:19:55.5765534Z should be the same shape as the parameter, and is used for computing 2024-08-06T21:19:55.5765951Z mask for pruning. 2024-08-06T21:19:55.5766339Z If unspecified or None, the parameter will be used in place of its 2024-08-06T21:19:55.5766763Z importance scores. 2024-08-06T21:19:55.5767047Z kwargs: other keyword arguments such as: 2024-08-06T21:19:55.5767478Z amount (int or float): quantity of parameters to prune across the 2024-08-06T21:19:55.5767902Z specified parameters. 2024-08-06T21:19:55.5768252Z If ``float``, should be between 0.0 and 1.0 and represent the 2024-08-06T21:19:55.5768747Z fraction of parameters to prune. If ``int``, it represents the 2024-08-06T21:19:55.5769191Z absolute number of parameters to prune. 2024-08-06T21:19:55.5769426Z 2024-08-06T21:19:55.5769509Z Raises: 2024-08-06T21:19:55.5769854Z TypeError: if ``PRUNING_TYPE != 'unstructured'`` 2024-08-06T21:19:55.5770113Z 2024-08-06T21:19:55.5770209Z Note: 2024-08-06T21:19:55.5770532Z Since global structured pruning doesn't make much sense unless the 2024-08-06T21:19:55.5771068Z norm is normalized by the size of the parameter, we now limit the 2024-08-06T21:19:55.5771540Z scope of global pruning to unstructured methods. 2024-08-06T21:19:55.5771798Z 2024-08-06T21:19:55.5771886Z Examples: 2024-08-06T21:19:55.5772131Z >>> from torch.nn.utils import prune 2024-08-06T21:19:55.5772478Z >>> from collections import OrderedDict 2024-08-06T21:19:55.5772809Z >>> net = nn.Sequential(OrderedDict([ 2024-08-06T21:19:55.5773143Z ... ('first', nn.Linear(10, 4)), 2024-08-06T21:19:55.5773461Z ... ('second', nn.Linear(4, 1)), 2024-08-06T21:19:55.5773751Z ... ])) 2024-08-06T21:19:55.5773981Z >>> parameters_to_prune = ( 2024-08-06T21:19:55.5774276Z ... (net.first, 'weight'), 2024-08-06T21:19:55.5774569Z ... (net.second, 'weight'), 2024-08-06T21:19:55.5774942Z ... ) 2024-08-06T21:19:55.5775181Z >>> prune.global_unstructured( 2024-08-06T21:19:55.5775488Z ... parameters_to_prune, 2024-08-06T21:19:55.5775819Z ... pruning_method=prune.L1Unstructured, 2024-08-06T21:19:55.5776160Z ... amount=10, 2024-08-06T21:19:55.5776392Z ... ) 2024-08-06T21:19:55.5776732Z >>> print(sum(torch.nn.utils.parameters_to_vector(net.buffers()) == 0)) 2024-08-06T21:19:55.5777160Z tensor(10) 2024-08-06T21:19:55.5777288Z 2024-08-06T21:19:55.5777293Z 2024-08-06T21:19:55.5777545Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5777922Z 2024-08-06T21:19:55.5778441Z msg = Cannot scrape callname=custom_from_mask in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=1144. 2024-08-06T21:19:55.5779335Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.5780111Z Prune tensor corresponding to parameter called ``name`` in ``module`` by applying the pre-computed mask in ``mask``. 2024-08-06T21:19:55.5780612Z 2024-08-06T21:19:55.5780824Z Modifies module in place (and also return the modified module) by: 2024-08-06T21:19:55.5781160Z 2024-08-06T21:19:55.5781366Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:19:55.5781915Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:19:55.5782452Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:19:55.5782989Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:19:55.5783412Z ``name+'_orig'``. 2024-08-06T21:19:55.5783573Z 2024-08-06T21:19:55.5783660Z Args: 2024-08-06T21:19:55.5784033Z module (nn.Module): module containing the tensor to prune 2024-08-06T21:19:55.5784515Z name (str): parameter name within ``module`` on which pruning 2024-08-06T21:19:55.5784899Z will act. 2024-08-06T21:19:55.5785232Z mask (Tensor): binary mask to be applied to the parameter. 2024-08-06T21:19:55.5785520Z 2024-08-06T21:19:55.5785621Z Returns: 2024-08-06T21:19:55.5785956Z module (nn.Module): modified (i.e. pruned) version of the input module 2024-08-06T21:19:55.5786301Z 2024-08-06T21:19:55.5786389Z Examples: 2024-08-06T21:19:55.5786642Z >>> from torch.nn.utils import prune 2024-08-06T21:19:55.5786969Z >>> m = prune.custom_from_mask( 2024-08-06T21:19:55.5787358Z ... nn.Linear(5, 3), name='bias', mask=torch.tensor([0, 1, 0]) 2024-08-06T21:19:55.5787737Z ... ) 2024-08-06T21:19:55.5787956Z >>> print(m.bias_mask) 2024-08-06T21:19:55.5788236Z tensor([0., 1., 0.]) 2024-08-06T21:19:55.5788405Z 2024-08-06T21:19:55.5788503Z 2024-08-06T21:19:55.5788859Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.5789234Z 2024-08-06T21:19:55.6778237Z msg = Cannot scrape callname=AveragedModel in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/swa_utils.py line=106. 2024-08-06T21:19:55.6779244Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.6780053Z Implements averaged model for Stochastic Weight Averaging (SWA) and Exponential Moving Average (EMA). 2024-08-06T21:19:55.6780593Z 2024-08-06T21:19:55.6780839Z Stochastic Weight Averaging was proposed in `Averaging Weights Leads to 2024-08-06T21:19:55.6781490Z Wider Optima and Better Generalization`_ by Pavel Izmailov, Dmitrii 2024-08-06T21:19:55.6782099Z Podoprikhin, Timur Garipov, Dmitry Vetrov and Andrew Gordon Wilson 2024-08-06T21:19:55.6782531Z (UAI 2018). 2024-08-06T21:19:55.6782720Z 2024-08-06T21:19:55.6782940Z Exponential Moving Average is a variation of `Polyak averaging`_, 2024-08-06T21:19:55.6783582Z but using exponential weights instead of equal weights across iterations. 2024-08-06T21:19:55.6783938Z 2024-08-06T21:19:55.6784243Z AveragedModel class creates a copy of the provided module :attr:`model` 2024-08-06T21:19:55.6784818Z on the device :attr:`device` and allows to compute running averages of the 2024-08-06T21:19:55.6785333Z parameters of the :attr:`model`. 2024-08-06T21:19:55.6785542Z 2024-08-06T21:19:55.6785650Z Args: 2024-08-06T21:19:55.6785958Z model (torch.nn.Module): model to use with SWA/EMA 2024-08-06T21:19:55.6786520Z device (torch.device, optional): if provided, the averaged model will be 2024-08-06T21:19:55.6786989Z stored on the :attr:`device` 2024-08-06T21:19:55.6787574Z avg_fn (function, optional): the averaging function used to update 2024-08-06T21:19:55.6788278Z parameters; the function must take in the current value of the 2024-08-06T21:19:55.6788894Z :class:`AveragedModel` parameter, the current value of :attr:`model` 2024-08-06T21:19:55.6789426Z parameter, and the number of models already averaged; if None, 2024-08-06T21:19:55.6789943Z an equally weighted average is used (default: None) 2024-08-06T21:19:55.6790456Z multi_avg_fn (function, optional): the averaging function used to update 2024-08-06T21:19:55.6791051Z parameters inplace; the function must take in the current values of the 2024-08-06T21:19:55.6791676Z :class:`AveragedModel` parameters as a list, the current values of :attr:`model` 2024-08-06T21:19:55.6792303Z parameters as a list, and the number of models already averaged; if None, 2024-08-06T21:19:55.6792819Z an equally weighted average is used (default: None) 2024-08-06T21:19:55.6793307Z use_buffers (bool): if ``True``, it will compute running averages for 2024-08-06T21:19:55.6793849Z both the parameters and the buffers of the model. (default: ``False``) 2024-08-06T21:19:55.6794328Z 2024-08-06T21:19:55.6794421Z Example: 2024-08-06T21:19:55.6794689Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:55.6795057Z >>> loader, optimizer, model, loss_fn = ... 2024-08-06T21:19:55.6795477Z >>> swa_model = torch.optim.swa_utils.AveragedModel(model) 2024-08-06T21:19:55.6795994Z >>> scheduler = torch.optim.lr_scheduler.CosineAnnealingLR(optimizer, 2024-08-06T21:19:55.6796443Z >>> T_max=300) 2024-08-06T21:19:55.6796778Z >>> swa_start = 160 2024-08-06T21:19:55.6797098Z >>> swa_scheduler = SWALR(optimizer, swa_lr=0.05) 2024-08-06T21:19:55.6797446Z >>> for i in range(300): 2024-08-06T21:19:55.6797749Z >>> for input, target in loader: 2024-08-06T21:19:55.6798086Z >>> optimizer.zero_grad() 2024-08-06T21:19:55.6798430Z >>> loss_fn(model(input), target).backward() 2024-08-06T21:19:55.6798791Z >>> optimizer.step() 2024-08-06T21:19:55.6799096Z >>> if i > swa_start: 2024-08-06T21:19:55.6799408Z >>> swa_model.update_parameters(model) 2024-08-06T21:19:55.6799847Z >>> swa_scheduler.step() 2024-08-06T21:19:55.6800161Z >>> else: 2024-08-06T21:19:55.6800409Z >>> scheduler.step() 2024-08-06T21:19:55.6800704Z >>> 2024-08-06T21:19:55.6800987Z >>> # Update bn statistics for the swa_model at the end 2024-08-06T21:19:55.6801409Z >>> torch.optim.swa_utils.update_bn(loader, swa_model) 2024-08-06T21:19:55.6801696Z 2024-08-06T21:19:55.6801996Z You can also use custom averaging functions with the `avg_fn` or `multi_avg_fn` parameters. 2024-08-06T21:19:55.6802613Z If no averaging function is provided, the default is to compute 2024-08-06T21:19:55.6803062Z equally-weighted average of the weights (SWA). 2024-08-06T21:19:55.6803330Z 2024-08-06T21:19:55.6803417Z Example: 2024-08-06T21:19:55.6803681Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:19:55.6804123Z >>> # Compute exponential moving averages of the weights and buffers 2024-08-06T21:19:55.6804626Z >>> ema_model = torch.optim.swa_utils.AveragedModel(model, 2024-08-06T21:19:55.6805126Z >>> torch.optim.swa_utils.get_ema_multi_avg_fn(0.9), use_buffers=True) 2024-08-06T21:19:55.6805458Z 2024-08-06T21:19:55.6805567Z .. note:: 2024-08-06T21:19:55.6805926Z When using SWA/EMA with models containing Batch Normalization you may 2024-08-06T21:19:55.6806478Z need to update the activation statistics for Batch Normalization. 2024-08-06T21:19:55.6807029Z This can be done either by using the :meth:`torch.optim.swa_utils.update_bn` 2024-08-06T21:19:55.6807616Z or by setting :attr:`use_buffers` to `True`. The first approach updates the 2024-08-06T21:19:55.6808208Z statistics in a post-training step by passing data through the model. The 2024-08-06T21:19:55.6808817Z second does it during the parameter update phase by averaging all buffers. 2024-08-06T21:19:55.6809416Z Empirical evidence has shown that updating the statistics in normalization 2024-08-06T21:19:55.6810019Z layers increases accuracy, but you may wish to empirically test which 2024-08-06T21:19:55.6810521Z approach yields the best results in your problem. 2024-08-06T21:19:55.6810786Z 2024-08-06T21:19:55.6810876Z .. note:: 2024-08-06T21:19:55.6811263Z :attr:`avg_fn` and `multi_avg_fn` are not saved in the :meth:`state_dict` of the model. 2024-08-06T21:19:55.6811630Z 2024-08-06T21:19:55.6811730Z .. note:: 2024-08-06T21:19:55.6812049Z When :meth:`update_parameters` is called for the first time (i.e. 2024-08-06T21:19:55.6812556Z :attr:`n_averaged` is `0`) the parameters of `model` are copied 2024-08-06T21:19:55.6813066Z to the parameters of :class:`AveragedModel`. For every subsequent 2024-08-06T21:19:55.6813626Z call of :meth:`update_parameters` the function `avg_fn` is used 2024-08-06T21:19:55.6814044Z to update the parameters. 2024-08-06T21:19:55.6814240Z 2024-08-06T21:19:55.6814483Z .. _Averaging Weights Leads to Wider Optima and Better Generalization: 2024-08-06T21:19:55.6815141Z https://arxiv.org/abs/1803.05407 2024-08-06T21:19:55.6815594Z .. _There Are Many Consistent Explanations of Unlabeled Data: Why You Should 2024-08-06T21:19:55.6816042Z Average: 2024-08-06T21:19:55.6816302Z https://arxiv.org/abs/1806.05594 2024-08-06T21:19:55.6816717Z .. _SWALP: Stochastic Weight Averaging in Low-Precision Training: 2024-08-06T21:19:55.6817150Z https://arxiv.org/abs/1904.11943 2024-08-06T21:19:55.6817594Z .. _Stochastic Weight Averaging in Parallel: Large-Batch Training That 2024-08-06T21:19:55.6818028Z Generalizes Well: 2024-08-06T21:19:55.6818315Z https://arxiv.org/abs/2001.02312 2024-08-06T21:19:55.6818634Z .. _Polyak averaging: 2024-08-06T21:19:55.6818965Z https://paperswithcode.com/method/polyak-averaging 2024-08-06T21:19:55.6819331Z 2024-08-06T21:19:55.6819746Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.6820123Z 2024-08-06T21:19:55.6820648Z msg = Cannot scrape callname=SWALR in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/swa_utils.py line=357. 2024-08-06T21:19:55.6821528Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:55.6822126Z Anneals the learning rate in each parameter group to a fixed value. 2024-08-06T21:19:55.6822451Z 2024-08-06T21:19:55.6822683Z This learning rate scheduler is meant to be used with Stochastic Weight 2024-08-06T21:19:55.6823250Z Averaging (SWA) method (see `torch.optim.swa_utils.AveragedModel`). 2024-08-06T21:19:55.6823575Z 2024-08-06T21:19:55.6823675Z Args: 2024-08-06T21:19:55.6823961Z optimizer (torch.optim.Optimizer): wrapped optimizer 2024-08-06T21:19:55.6824462Z swa_lrs (float or list): the learning rate value for all param groups 2024-08-06T21:19:55.6824922Z together or separately for each group. 2024-08-06T21:19:55.6825367Z annealing_epochs (int): number of epochs in the annealing phase 2024-08-06T21:19:55.6825786Z (default: 10) 2024-08-06T21:19:55.6826172Z annealing_strategy (str): "cos" or "linear"; specifies the annealing 2024-08-06T21:19:55.6826703Z strategy: "cos" for cosine annealing, "linear" for linear annealing 2024-08-06T21:19:55.6827128Z (default: "cos") 2024-08-06T21:19:55.6827493Z last_epoch (int): the index of the last epoch (default: -1) 2024-08-06T21:19:55.6827785Z 2024-08-06T21:19:55.6827975Z The :class:`SWALR` scheduler can be used together with other 2024-08-06T21:19:55.6828478Z schedulers to switch to a constant learning rate late in the training 2024-08-06T21:19:55.6828916Z as in the example below. 2024-08-06T21:19:55.6829099Z 2024-08-06T21:19:55.6829213Z Example: 2024-08-06T21:19:55.6829463Z >>> # xdoctest: +SKIP("Undefined variables") 2024-08-06T21:19:55.6829824Z >>> loader, optimizer, model = ... 2024-08-06T21:19:55.6830167Z >>> lr_lambda = lambda epoch: 0.9 2024-08-06T21:19:55.6830599Z >>> scheduler = torch.optim.lr_scheduler.MultiplicativeLR(optimizer, 2024-08-06T21:19:55.6831045Z >>> lr_lambda=lr_lambda) 2024-08-06T21:19:55.6831436Z >>> swa_scheduler = torch.optim.swa_utils.SWALR(optimizer, 2024-08-06T21:19:55.6831895Z >>> anneal_strategy="linear", anneal_epochs=20, swa_lr=0.05) 2024-08-06T21:19:55.6832293Z >>> swa_start = 160 2024-08-06T21:19:55.6832576Z >>> for i in range(300): 2024-08-06T21:19:55.6832873Z >>> for input, target in loader: 2024-08-06T21:19:55.6833218Z >>> optimizer.zero_grad() 2024-08-06T21:19:55.6833579Z >>> loss_fn(model(input), target).backward() 2024-08-06T21:19:55.6834002Z >>> optimizer.step() 2024-08-06T21:19:55.6834313Z >>> if i > swa_start: 2024-08-06T21:19:55.6834626Z >>> swa_scheduler.step() 2024-08-06T21:19:55.6834928Z >>> else: 2024-08-06T21:19:55.6835191Z >>> scheduler.step() 2024-08-06T21:19:55.6835394Z 2024-08-06T21:19:55.6835634Z .. _Averaging Weights Leads to Wider Optima and Better Generalization: 2024-08-06T21:19:55.6836085Z https://arxiv.org/abs/1803.05407 2024-08-06T21:19:55.6836392Z 2024-08-06T21:19:55.6836767Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:55.6837131Z 2024-08-06T21:19:56.0597224Z msg = Cannot scrape callname=assert_close in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_comparison.py line=1274. 2024-08-06T21:19:56.0598926Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:56.0599448Z Asserts that ``actual`` and ``expected`` are close. 2024-08-06T21:19:56.0599743Z 2024-08-06T21:19:56.0600112Z If ``actual`` and ``expected`` are strided, non-quantized, real-valued, and finite, they are considered close if 2024-08-06T21:19:56.0600832Z 2024-08-06T21:19:56.0600945Z .. math:: 2024-08-06T21:19:56.0601075Z 2024-08-06T21:19:56.0601466Z \lvert \text{actual} - \text{expected} \rvert \le \texttt{atol} + \texttt{rtol} \cdot \lvert \text{expected} \rvert 2024-08-06T21:19:56.0601947Z 2024-08-06T21:19:56.0602291Z Non-finite values (``-inf`` and ``inf``) are only considered close if and only if they are equal. ``NaN``'s are 2024-08-06T21:19:56.0602962Z only considered equal to each other if ``equal_nan`` is ``True``. 2024-08-06T21:19:56.0603280Z 2024-08-06T21:19:56.0603491Z In addition, they are only considered close if they have the same 2024-08-06T21:19:56.0603802Z 2024-08-06T21:19:56.0604009Z - :attr:`~torch.Tensor.device` (if ``check_device`` is ``True``), 2024-08-06T21:19:56.0604435Z - ``dtype`` (if ``check_dtype`` is ``True``), 2024-08-06T21:19:56.0604825Z - ``layout`` (if ``check_layout`` is ``True``), and 2024-08-06T21:19:56.0605203Z - stride (if ``check_stride`` is ``True``). 2024-08-06T21:19:56.0605437Z 2024-08-06T21:19:56.0605735Z If either ``actual`` or ``expected`` is a meta tensor, only the attribute checks will be performed. 2024-08-06T21:19:56.0606160Z 2024-08-06T21:19:56.0606515Z If ``actual`` and ``expected`` are sparse (either having COO, CSR, CSC, BSR, or BSC layout), their strided members are 2024-08-06T21:19:56.0607363Z checked individually. Indices, namely ``indices`` for COO, ``crow_indices`` and ``col_indices`` for CSR and BSR, 2024-08-06T21:19:56.0608067Z or ``ccol_indices`` and ``row_indices`` for CSC and BSC layouts, respectively, 2024-08-06T21:19:56.0608798Z are always checked for equality whereas the values are checked for closeness according to the definition above. 2024-08-06T21:19:56.0609303Z 2024-08-06T21:19:56.0609583Z If ``actual`` and ``expected`` are quantized, they are considered close if they have the same 2024-08-06T21:19:56.0610346Z :meth:`~torch.Tensor.qscheme` and the result of :meth:`~torch.Tensor.dequantize` is close according to the 2024-08-06T21:19:56.0610901Z definition above. 2024-08-06T21:19:56.0611067Z 2024-08-06T21:19:56.0611369Z ``actual`` and ``expected`` can be :class:`~torch.Tensor`'s or any tensor-or-scalar-likes from which 2024-08-06T21:19:56.0612169Z :class:`torch.Tensor`'s can be constructed with :func:`torch.as_tensor`. Except for Python scalars the input types 2024-08-06T21:19:56.0613015Z have to be directly related. In addition, ``actual`` and ``expected`` can be :class:`~collections.abc.Sequence`'s 2024-08-06T21:19:56.0613874Z or :class:`~collections.abc.Mapping`'s in which case they are considered close if their structure matches and all 2024-08-06T21:19:56.0614596Z their elements are considered close according to the above definition. 2024-08-06T21:19:56.0615028Z 2024-08-06T21:19:56.0615261Z .. note:: 2024-08-06T21:19:56.0615389Z 2024-08-06T21:19:56.0615721Z Python scalars are an exception to the type relation requirement, because their :func:`type`, i.e. 2024-08-06T21:19:56.0616503Z :class:`int`, :class:`float`, and :class:`complex`, is equivalent to the ``dtype`` of a tensor-like. Thus, 2024-08-06T21:19:56.0617224Z Python scalars of different types can be checked, but require ``check_dtype=False``. 2024-08-06T21:19:56.0617614Z 2024-08-06T21:19:56.0617699Z Args: 2024-08-06T21:19:56.0617930Z actual (Any): Actual input. 2024-08-06T21:19:56.0618250Z expected (Any): Expected input. 2024-08-06T21:19:56.0618819Z allow_subclasses (bool): If ``True`` (default) and except for Python scalars, inputs of directly related types 2024-08-06T21:19:56.0619450Z are allowed. Otherwise type equality is required. 2024-08-06T21:19:56.0620093Z rtol (Optional[float]): Relative tolerance. If specified ``atol`` must also be specified. If omitted, default 2024-08-06T21:19:56.0620840Z values based on the :attr:`~torch.Tensor.dtype` are selected with the below table. 2024-08-06T21:19:56.0621640Z atol (Optional[float]): Absolute tolerance. If specified ``rtol`` must also be specified. If omitted, default 2024-08-06T21:19:56.0622380Z values based on the :attr:`~torch.Tensor.dtype` are selected with the below table. 2024-08-06T21:19:56.0623011Z equal_nan (Union[bool, str]): If ``True``, two ``NaN`` values will be considered equal. 2024-08-06T21:19:56.0623661Z check_device (bool): If ``True`` (default), asserts that corresponding tensors are on the same 2024-08-06T21:19:56.0624320Z :attr:`~torch.Tensor.device`. If this check is disabled, tensors on different 2024-08-06T21:19:56.0624930Z :attr:`~torch.Tensor.device`'s are moved to the CPU before being compared. 2024-08-06T21:19:56.0625626Z check_dtype (bool): If ``True`` (default), asserts that corresponding tensors have the same ``dtype``. If this 2024-08-06T21:19:56.0626446Z check is disabled, tensors with different ``dtype``'s are promoted to a common ``dtype`` (according to 2024-08-06T21:19:56.0627069Z :func:`torch.promote_types`) before being compared. 2024-08-06T21:19:56.0627705Z check_layout (bool): If ``True`` (default), asserts that corresponding tensors have the same ``layout``. If this 2024-08-06T21:19:56.0628498Z check is disabled, tensors with different ``layout``'s are converted to strided tensors before being 2024-08-06T21:19:56.0629046Z compared. 2024-08-06T21:19:56.0629566Z check_stride (bool): If ``True`` and corresponding tensors are strided, asserts that they have the same stride. 2024-08-06T21:19:56.0630388Z msg (Optional[Union[str, Callable[[str], str]]]): Optional error message to use in case a failure occurs during 2024-08-06T21:19:56.0631213Z the comparison. Can also passed as callable in which case it will be called with the generated message and 2024-08-06T21:19:56.0631809Z should return the new message. 2024-08-06T21:19:56.0632026Z 2024-08-06T21:19:56.0632112Z Raises: 2024-08-06T21:19:56.0632475Z ValueError: If no :class:`torch.Tensor` can be constructed from an input. 2024-08-06T21:19:56.0632993Z ValueError: If only ``rtol`` or ``atol`` is specified. 2024-08-06T21:19:56.0633603Z AssertionError: If corresponding inputs are not Python scalars and are not directly related. 2024-08-06T21:19:56.0634398Z AssertionError: If ``allow_subclasses`` is ``False``, but corresponding inputs are not Python scalars and have 2024-08-06T21:19:56.0634979Z different types. 2024-08-06T21:19:56.0635527Z AssertionError: If the inputs are :class:`~collections.abc.Sequence`'s, but their length does not match. 2024-08-06T21:19:56.0636362Z AssertionError: If the inputs are :class:`~collections.abc.Mapping`'s, but their set of keys do not match. 2024-08-06T21:19:56.0637297Z AssertionError: If corresponding tensors do not have the same :attr:`~torch.Tensor.shape`. 2024-08-06T21:19:56.0638041Z AssertionError: If ``check_layout`` is ``True``, but corresponding tensors do not have the same 2024-08-06T21:19:56.0638564Z :attr:`~torch.Tensor.layout`. 2024-08-06T21:19:56.0639013Z AssertionError: If only one of corresponding tensors is quantized. 2024-08-06T21:19:56.0639743Z AssertionError: If corresponding tensors are quantized, but have different :meth:`~torch.Tensor.qscheme`'s. 2024-08-06T21:19:56.0640545Z AssertionError: If ``check_device`` is ``True``, but corresponding tensors are not on the same 2024-08-06T21:19:56.0641064Z :attr:`~torch.Tensor.device`. 2024-08-06T21:19:56.0641623Z AssertionError: If ``check_dtype`` is ``True``, but corresponding tensors do not have the same ``dtype``. 2024-08-06T21:19:56.0642438Z AssertionError: If ``check_stride`` is ``True``, but corresponding strided tensors do not have the same stride. 2024-08-06T21:19:56.0643278Z AssertionError: If the values of corresponding tensors are not close according to the definition above. 2024-08-06T21:19:56.0643768Z 2024-08-06T21:19:56.0644186Z The following table displays the default ``rtol`` and ``atol`` for different ``dtype``'s. In case of mismatching 2024-08-06T21:19:56.0644818Z ``dtype``'s, the maximum of both tolerances is used. 2024-08-06T21:19:56.0645074Z 2024-08-06T21:19:56.0645208Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0645582Z | ``dtype`` | ``rtol`` | ``atol`` | 2024-08-06T21:19:56.0645929Z +===========================+============+==========+ 2024-08-06T21:19:56.0646295Z | :attr:`~torch.float16` | ``1e-3`` | ``1e-5`` | 2024-08-06T21:19:56.0646657Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0647033Z | :attr:`~torch.bfloat16` | ``1.6e-2`` | ``1e-5`` | 2024-08-06T21:19:56.0647408Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0647773Z | :attr:`~torch.float32` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:19:56.0648147Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0648516Z | :attr:`~torch.float64` | ``1e-7`` | ``1e-7`` | 2024-08-06T21:19:56.0648876Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0649251Z | :attr:`~torch.complex32` | ``1e-3`` | ``1e-5`` | 2024-08-06T21:19:56.0649624Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0649989Z | :attr:`~torch.complex64` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:19:56.0650365Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0650739Z | :attr:`~torch.complex128` | ``1e-7`` | ``1e-7`` | 2024-08-06T21:19:56.0651102Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0651476Z | :attr:`~torch.quint8` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:19:56.0651854Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0652217Z | :attr:`~torch.quint2x4` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:19:56.0652595Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0652969Z | :attr:`~torch.quint4x2` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:19:56.0653329Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0653703Z | :attr:`~torch.qint8` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:19:56.0654073Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0654433Z | :attr:`~torch.qint32` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:19:56.0654895Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0655267Z | other | ``0.0`` | ``0.0`` | 2024-08-06T21:19:56.0655619Z +---------------------------+------------+----------+ 2024-08-06T21:19:56.0655867Z 2024-08-06T21:19:56.0655961Z .. note:: 2024-08-06T21:19:56.0656187Z 2024-08-06T21:19:56.0656588Z :func:`~torch.testing.assert_close` is highly configurable with strict default settings. Users are encouraged 2024-08-06T21:19:56.0657444Z to :func:`~functools.partial` it to fit their use case. For example, if an equality check is needed, one might 2024-08-06T21:19:56.0658184Z define an ``assert_equal`` that uses zero tolerances for every ``dtype`` by default: 2024-08-06T21:19:56.0658574Z 2024-08-06T21:19:56.0658675Z >>> import functools 2024-08-06T21:19:56.0659116Z >>> assert_equal = functools.partial(torch.testing.assert_close, rtol=0, atol=0) 2024-08-06T21:19:56.0659588Z >>> assert_equal(1e-9, 1e-10) 2024-08-06T21:19:56.0659912Z Traceback (most recent call last): 2024-08-06T21:19:56.0660224Z ... 2024-08-06T21:19:56.0660462Z AssertionError: Scalars are not equal! 2024-08-06T21:19:56.0660790Z 2024-08-06T21:19:56.0661043Z Expected 1e-10 but got 1e-09. 2024-08-06T21:19:56.0661367Z Absolute difference: 9.000000000000001e-10 2024-08-06T21:19:56.0661711Z Relative difference: 9.0 2024-08-06T21:19:56.0661901Z 2024-08-06T21:19:56.0662002Z Examples: 2024-08-06T21:19:56.0662296Z >>> # tensor to tensor comparison 2024-08-06T21:19:56.0662652Z >>> expected = torch.tensor([1e0, 1e-1, 1e-2]) 2024-08-06T21:19:56.0663249Z >>> actual = torch.acos(torch.cos(expected)) 2024-08-06T21:19:56.0663628Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:19:56.0663895Z 2024-08-06T21:19:56.0664006Z >>> # scalar to scalar comparison 2024-08-06T21:19:56.0664326Z >>> import math 2024-08-06T21:19:56.0664583Z >>> expected = math.sqrt(2.0) 2024-08-06T21:19:56.0664897Z >>> actual = 2.0 / math.sqrt(2.0) 2024-08-06T21:19:56.0665255Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:19:56.0665506Z 2024-08-06T21:19:56.0665629Z >>> # numpy array to numpy array comparison 2024-08-06T21:19:56.0665976Z >>> import numpy as np 2024-08-06T21:19:56.0666281Z >>> expected = np.array([1e0, 1e-1, 1e-2]) 2024-08-06T21:19:56.0666623Z >>> actual = np.arccos(np.cos(expected)) 2024-08-06T21:19:56.0667004Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:19:56.0667254Z 2024-08-06T21:19:56.0667382Z >>> # sequence to sequence comparison 2024-08-06T21:19:56.0667702Z >>> import numpy as np 2024-08-06T21:19:56.0668142Z >>> # The types of the sequences do not have to match. They only have to have the same 2024-08-06T21:19:56.0668647Z >>> # length and their elements have to match. 2024-08-06T21:19:56.0669037Z >>> expected = [torch.tensor([1.0]), 2.0, np.array(3.0)] 2024-08-06T21:19:56.0669414Z >>> actual = tuple(expected) 2024-08-06T21:19:56.0669769Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:19:56.0670020Z 2024-08-06T21:19:56.0670135Z >>> # mapping to mapping comparison 2024-08-06T21:19:56.0670488Z >>> from collections import OrderedDict 2024-08-06T21:19:56.0670830Z >>> import numpy as np 2024-08-06T21:19:56.0671109Z >>> foo = torch.tensor(1.0) 2024-08-06T21:19:56.0671406Z >>> bar = 2.0 2024-08-06T21:19:56.0671656Z >>> baz = np.array(3.0) 2024-08-06T21:19:56.0672084Z >>> # The types and a possible ordering of mappings do not have to match. They only 2024-08-06T21:19:56.0672657Z >>> # have to have the same set of keys and their elements have to match. 2024-08-06T21:19:56.0673186Z >>> expected = OrderedDict([("foo", foo), ("bar", bar), ("baz", baz)]) 2024-08-06T21:19:56.0673634Z >>> actual = {"baz": baz, "bar": bar, "foo": foo} 2024-08-06T21:19:56.0674027Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:19:56.0674275Z 2024-08-06T21:19:56.0674412Z >>> expected = torch.tensor([1.0, 2.0, 3.0]) 2024-08-06T21:19:56.0674752Z >>> actual = expected.clone() 2024-08-06T21:19:56.0675265Z >>> # By default, directly related instances can be compared 2024-08-06T21:19:56.0675774Z >>> torch.testing.assert_close(torch.nn.Parameter(actual), expected) 2024-08-06T21:19:56.0676307Z >>> # This check can be made more strict with allow_subclasses=False 2024-08-06T21:19:56.0676750Z >>> torch.testing.assert_close( 2024-08-06T21:19:56.0677164Z ... torch.nn.Parameter(actual), expected, allow_subclasses=False 2024-08-06T21:19:56.0677573Z ... ) 2024-08-06T21:19:56.0677821Z Traceback (most recent call last): 2024-08-06T21:19:56.0678124Z ... 2024-08-06T21:19:56.0678457Z TypeError: No comparison pair was able to handle inputs of type 2024-08-06T21:19:56.0679003Z and . 2024-08-06T21:19:56.0679556Z >>> # If the inputs are not directly related, they are never considered close 2024-08-06T21:19:56.0680073Z >>> torch.testing.assert_close(actual.numpy(), expected) 2024-08-06T21:19:56.0680484Z Traceback (most recent call last): 2024-08-06T21:19:56.0680789Z ... 2024-08-06T21:19:56.0681272Z TypeError: No comparison pair was able to handle inputs of type 2024-08-06T21:19:56.0681794Z and . 2024-08-06T21:19:56.0682252Z >>> # Exceptions to these rules are Python scalars. They can be checked regardless of 2024-08-06T21:19:56.0682764Z >>> # their type if check_dtype=False. 2024-08-06T21:19:56.0683171Z >>> torch.testing.assert_close(1.0, 1, check_dtype=False) 2024-08-06T21:19:56.0683450Z 2024-08-06T21:19:56.0683565Z >>> # NaN != NaN by default. 2024-08-06T21:19:56.0683882Z >>> expected = torch.tensor(float("Nan")) 2024-08-06T21:19:56.0684232Z >>> actual = expected.clone() 2024-08-06T21:19:56.0684591Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:19:56.0684957Z Traceback (most recent call last): 2024-08-06T21:19:56.0685273Z ... 2024-08-06T21:19:56.0685520Z AssertionError: Scalars are not close! 2024-08-06T21:19:56.0685833Z 2024-08-06T21:19:56.0686079Z Expected nan but got nan. 2024-08-06T21:19:56.0686410Z Absolute difference: nan (up to 1e-05 allowed) 2024-08-06T21:19:56.0686808Z Relative difference: nan (up to 1.3e-06 allowed) 2024-08-06T21:19:56.0687262Z >>> torch.testing.assert_close(actual, expected, equal_nan=True) 2024-08-06T21:19:56.0687573Z 2024-08-06T21:19:56.0687709Z >>> expected = torch.tensor([1.0, 2.0, 3.0]) 2024-08-06T21:19:56.0688051Z >>> actual = torch.tensor([1.0, 4.0, 5.0]) 2024-08-06T21:19:56.0688426Z >>> # The default error message can be overwritten. 2024-08-06T21:19:56.0688972Z >>> torch.testing.assert_close(actual, expected, msg="Argh, the tensors are not close!") 2024-08-06T21:19:56.0689484Z Traceback (most recent call last): 2024-08-06T21:19:56.0689798Z ... 2024-08-06T21:19:56.0690080Z AssertionError: Argh, the tensors are not close! 2024-08-06T21:19:56.0690553Z >>> # If msg is a callable, it can be used to augment the generated message with 2024-08-06T21:19:56.0690999Z >>> # extra information 2024-08-06T21:19:56.0691300Z >>> torch.testing.assert_close( 2024-08-06T21:19:56.0691710Z ... actual, expected, msg=lambda msg: f"Header\n\n{msg}\n\nFooter" 2024-08-06T21:19:56.0692117Z ... ) 2024-08-06T21:19:56.0692360Z Traceback (most recent call last): 2024-08-06T21:19:56.0692661Z ... 2024-08-06T21:19:56.0692889Z AssertionError: Header 2024-08-06T21:19:56.0693167Z 2024-08-06T21:19:56.0693407Z Tensor-likes are not close! 2024-08-06T21:19:56.0693703Z 2024-08-06T21:19:56.0693958Z Mismatched elements: 2 / 3 (66.7%) 2024-08-06T21:19:56.0694392Z Greatest absolute difference: 2.0 at index (1,) (up to 1e-05 allowed) 2024-08-06T21:19:56.0695056Z Greatest relative difference: 1.0 at index (1,) (up to 1.3e-06 allowed) 2024-08-06T21:19:56.0695582Z 2024-08-06T21:19:56.0695808Z Footer 2024-08-06T21:19:56.0696029Z 2024-08-06T21:19:56.0696389Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:56.0696767Z 2024-08-06T21:19:57.2137816Z msg = Cannot scrape callname=register_pytree_node in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py line=111. 2024-08-06T21:19:57.2138792Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.2139321Z Register a container-like type as pytree node. 2024-08-06T21:19:57.2139578Z 2024-08-06T21:19:57.2139678Z Args: 2024-08-06T21:19:57.2139983Z cls (type): A Python type to treat as an internal pytree node. 2024-08-06T21:19:57.2140564Z flatten_fn (callable): A function to be used during flattening, taking an instance of 2024-08-06T21:19:57.2141217Z ``cls`` and returning a pair, with (1) an iterable for the children to be flattened 2024-08-06T21:19:57.2141897Z recursively, and (2) some hashable auxiliary data to be stored in the treespec and to be 2024-08-06T21:19:57.2142669Z passed to the ``unflatten_fn``. 2024-08-06T21:19:57.2143183Z unflatten_fn (callable): A function taking two arguments: the auxiliary data that was 2024-08-06T21:19:57.2143835Z returned by ``flatten_fn`` and stored in the treespec, and the unflattened children. 2024-08-06T21:19:57.2144378Z The function should return an instance of ``cls``. 2024-08-06T21:19:57.2144924Z serialized_type_name (str, optional): A keyword argument used to specify the fully 2024-08-06T21:19:57.2145466Z qualified name used when serializing the tree spec. 2024-08-06T21:19:57.2146064Z to_dumpable_context (callable, optional): An optional keyword argument to custom specify how 2024-08-06T21:19:57.2146776Z to convert the context of the pytree to a custom json dumpable representation. This is 2024-08-06T21:19:57.2147442Z used for json serialization, which is being used in :mod:`torch.export` right now. 2024-08-06T21:19:57.2148152Z from_dumpable_context (callable, optional): An optional keyword argument to custom specify 2024-08-06T21:19:57.2148841Z how to convert the custom json dumpable representation of the context back to the 2024-08-06T21:19:57.2149481Z original context. This is used for json deserialization, which is being used in 2024-08-06T21:19:57.2149967Z :mod:`torch.export` right now. 2024-08-06T21:19:57.2150200Z 2024-08-06T21:19:57.2150306Z Example:: 2024-08-06T21:19:57.2150434Z 2024-08-06T21:19:57.2150546Z >>> # xdoctest: +SKIP 2024-08-06T21:19:57.2150864Z >>> # Registry a Python type with lambda functions 2024-08-06T21:19:57.2151230Z >>> register_pytree_node( 2024-08-06T21:19:57.2151515Z ... set, 2024-08-06T21:19:57.2151781Z ... lambda s: (sorted(s), None, None), 2024-08-06T21:19:57.2152145Z ... lambda children, _: set(children), 2024-08-06T21:19:57.2152471Z ... ) 2024-08-06T21:19:57.2152676Z 2024-08-06T21:19:57.2153051Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.2153415Z 2024-08-06T21:19:57.2615886Z msg = Cannot scrape callname=SelectiveCheckpointContext in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py line=1199. 2024-08-06T21:19:57.2616969Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.2617445Z 2024-08-06T21:19:57.2617692Z Context passed to policy function during selective checkpointing. 2024-08-06T21:19:57.2618048Z 2024-08-06T21:19:57.2625113Z This class is used to pass relevant metadata to the policy function during 2024-08-06T21:19:57.2626251Z selective checkpointing. The metadata includes whether the current invocation 2024-08-06T21:19:57.2627057Z of the policy function is during recomputation or not. 2024-08-06T21:19:57.2627332Z 2024-08-06T21:19:57.2627436Z Example: 2024-08-06T21:19:57.2627655Z >>> # xdoctest: +SKIP(stub) 2024-08-06T21:19:57.2627939Z >>> 2024-08-06T21:19:57.2628186Z >>> def policy_fn(ctx, op, *args, **kwargs): 2024-08-06T21:19:57.2628522Z >>> print(ctx.is_recompute) 2024-08-06T21:19:57.2628819Z >>> 2024-08-06T21:19:57.2629214Z >>> context_fn = functools.partial(create_selective_checkpoint_contexts, policy_fn) 2024-08-06T21:19:57.2629684Z >>> 2024-08-06T21:19:57.2629946Z >>> out = torch.utils.checkpoint.checkpoint( 2024-08-06T21:19:57.2630298Z >>> fn, x, y, 2024-08-06T21:19:57.2630544Z >>> use_reentrant=False, 2024-08-06T21:19:57.2630842Z >>> context_fn=context_fn, 2024-08-06T21:19:57.2631127Z >>> ) 2024-08-06T21:19:57.2631242Z 2024-08-06T21:19:57.2631502Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.2631881Z 2024-08-06T21:19:57.2632543Z msg = Cannot scrape callname=create_selective_checkpoint_contexts in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py line=1333. 2024-08-06T21:19:57.2633648Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.2634024Z 2024-08-06T21:19:57.2634275Z Helper to avoid recomputing certain ops during activation checkpointing. 2024-08-06T21:19:57.2634627Z 2024-08-06T21:19:57.2634839Z Use this with `torch.utils.checkpoint.checkpoint` to control which 2024-08-06T21:19:57.2635330Z operations are recomputed during the backward pass. 2024-08-06T21:19:57.2635598Z 2024-08-06T21:19:57.2635696Z Args: 2024-08-06T21:19:57.2635919Z policy_fn_or_list (Callable or List): 2024-08-06T21:19:57.2636315Z - If a policy function is provided, it should accept a 2024-08-06T21:19:57.2636839Z :class:`SelectiveCheckpointContext`, the :class:`OpOverload`, args and 2024-08-06T21:19:57.2637398Z kwargs to the op, and return a :class:`CheckpointPolicy` enum value 2024-08-06T21:19:57.2637963Z indicating whether the execution of the op should be recomputed or not. 2024-08-06T21:19:57.2638527Z - If a list of operations is provided, it is equivalent to a policy 2024-08-06T21:19:57.2639018Z returning `CheckpointPolicy.MUST_SAVE` for the specified 2024-08-06T21:19:57.2639541Z operations and `CheckpointPolicy.PREFER_RECOMPUTE` for all other 2024-08-06T21:19:57.2639969Z operations. 2024-08-06T21:19:57.2640325Z allow_cache_entry_mutation (bool, optional): By default, an error is 2024-08-06T21:19:57.2640877Z raised if any tensors cached by selective activation checkpoint are 2024-08-06T21:19:57.2641418Z mutated in order to ensure correctness. If set to `True`, this check 2024-08-06T21:19:57.2641828Z is disabled. 2024-08-06T21:19:57.2642069Z Returns: 2024-08-06T21:19:57.2642301Z A tuple of two context managers. 2024-08-06T21:19:57.2642513Z 2024-08-06T21:19:57.2642600Z Example: 2024-08-06T21:19:57.2642826Z >>> # xdoctest: +REQUIRES(LINUX) 2024-08-06T21:19:57.2643130Z >>> import functools 2024-08-06T21:19:57.2643368Z >>> 2024-08-06T21:19:57.2643617Z >>> x = torch.rand(10, 10, requires_grad=True) 2024-08-06T21:19:57.2643976Z >>> y = torch.rand(10, 10, requires_grad=True) 2024-08-06T21:19:57.2644286Z >>> 2024-08-06T21:19:57.2644500Z >>> ops_to_save = [ 2024-08-06T21:19:57.2644776Z >>> torch.ops.aten.mm.default, 2024-08-06T21:19:57.2645065Z >>> ] 2024-08-06T21:19:57.2645270Z >>> 2024-08-06T21:19:57.2645511Z >>> def policy_fn(ctx, op, *args, **kwargs): 2024-08-06T21:19:57.2645836Z >>> if op in ops_to_save: 2024-08-06T21:19:57.2646154Z >>> return CheckpointPolicy.MUST_SAVE 2024-08-06T21:19:57.2646481Z >>> else: 2024-08-06T21:19:57.2646745Z >>> return CheckpointPolicy.PREFER_RECOMPUTE 2024-08-06T21:19:57.2647085Z >>> 2024-08-06T21:19:57.2647469Z >>> context_fn = functools.partial(create_selective_checkpoint_contexts, policy_fn) 2024-08-06T21:19:57.2648061Z >>> 2024-08-06T21:19:57.2648280Z >>> # or equivalently 2024-08-06T21:19:57.2648734Z >>> context_fn = functools.partial(create_selective_checkpoint_contexts, ops_to_save) 2024-08-06T21:19:57.2649200Z >>> 2024-08-06T21:19:57.2649413Z >>> def fn(x, y): 2024-08-06T21:19:57.2649768Z >>> return torch.sigmoid(torch.matmul(torch.matmul(x, y), y)) * y 2024-08-06T21:19:57.2650160Z >>> 2024-08-06T21:19:57.2650416Z >>> out = torch.utils.checkpoint.checkpoint( 2024-08-06T21:19:57.2650757Z >>> fn, x, y, 2024-08-06T21:19:57.2650997Z >>> use_reentrant=False, 2024-08-06T21:19:57.2651299Z >>> context_fn=context_fn, 2024-08-06T21:19:57.2651570Z >>> ) 2024-08-06T21:19:57.2651695Z 2024-08-06T21:19:57.2651946Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.2652322Z 2024-08-06T21:19:57.2810190Z msg = Cannot scrape callname=CppExtension in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=925. 2024-08-06T21:19:57.2811329Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.2811712Z 2024-08-06T21:19:57.2811858Z Create a :class:`setuptools.Extension` for C++. 2024-08-06T21:19:57.2812123Z 2024-08-06T21:19:57.2812363Z Convenience method that creates a :class:`setuptools.Extension` with the 2024-08-06T21:19:57.2812945Z bare minimum (but often sufficient) arguments to build a C++ extension. 2024-08-06T21:19:57.2813280Z 2024-08-06T21:19:57.2813497Z All arguments are forwarded to the :class:`setuptools.Extension` 2024-08-06T21:19:57.2813952Z constructor. Full list arguments can be found at 2024-08-06T21:19:57.2814548Z https://setuptools.pypa.io/en/latest/userguide/ext_modules.html#extension-api-reference 2024-08-06T21:19:57.2815040Z 2024-08-06T21:19:57.2815141Z Example: 2024-08-06T21:19:57.2815357Z >>> # xdoctest: +SKIP 2024-08-06T21:19:57.2815699Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:19:57.2816283Z >>> from setuptools import setup 2024-08-06T21:19:57.2816939Z >>> from torch.utils.cpp_extension import BuildExtension, CppExtension 2024-08-06T21:19:57.2817608Z >>> setup( 2024-08-06T21:19:57.2817925Z ... name='extension', 2024-08-06T21:19:57.2818197Z ... ext_modules=[ 2024-08-06T21:19:57.2818464Z ... CppExtension( 2024-08-06T21:19:57.2818751Z ... name='extension', 2024-08-06T21:19:57.2819108Z ... sources=['extension.cpp'], 2024-08-06T21:19:57.2819446Z ... extra_compile_args=['-g'], 2024-08-06T21:19:57.2819832Z ... extra_link_flags=['-Wl,--no-as-needed', '-lm']) 2024-08-06T21:19:57.2820197Z ... ], 2024-08-06T21:19:57.2820416Z ... cmdclass={ 2024-08-06T21:19:57.2820690Z ... 'build_ext': BuildExtension 2024-08-06T21:19:57.2821006Z ... }) 2024-08-06T21:19:57.2821134Z 2024-08-06T21:19:57.2821397Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.2821779Z 2024-08-06T21:19:57.2822332Z msg = Cannot scrape callname=CUDAExtension in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=976. 2024-08-06T21:19:57.2823249Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.2823626Z 2024-08-06T21:19:57.2823784Z Create a :class:`setuptools.Extension` for CUDA/C++. 2024-08-06T21:19:57.2824064Z 2024-08-06T21:19:57.2824304Z Convenience method that creates a :class:`setuptools.Extension` with the 2024-08-06T21:19:57.2824875Z bare minimum (but often sufficient) arguments to build a CUDA/C++ 2024-08-06T21:19:57.2825476Z extension. This includes the CUDA include path, library path and runtime 2024-08-06T21:19:57.2826150Z library. 2024-08-06T21:19:57.2826290Z 2024-08-06T21:19:57.2826558Z All arguments are forwarded to the :class:`setuptools.Extension` 2024-08-06T21:19:57.2827339Z constructor. Full list arguments can be found at 2024-08-06T21:19:57.2827922Z https://setuptools.pypa.io/en/latest/userguide/ext_modules.html#extension-api-reference 2024-08-06T21:19:57.2828379Z 2024-08-06T21:19:57.2828474Z Example: 2024-08-06T21:19:57.2828703Z >>> # xdoctest: +SKIP 2024-08-06T21:19:57.2829016Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:19:57.2829387Z >>> from setuptools import setup 2024-08-06T21:19:57.2829830Z >>> from torch.utils.cpp_extension import BuildExtension, CUDAExtension 2024-08-06T21:19:57.2830249Z >>> setup( 2024-08-06T21:19:57.2830487Z ... name='cuda_extension', 2024-08-06T21:19:57.2830787Z ... ext_modules=[ 2024-08-06T21:19:57.2831039Z ... CUDAExtension( 2024-08-06T21:19:57.2831343Z ... name='cuda_extension', 2024-08-06T21:19:57.2831732Z ... sources=['extension.cpp', 'extension_kernel.cu'], 2024-08-06T21:19:57.2832133Z ... extra_compile_args={'cxx': ['-g'], 2024-08-06T21:19:57.2832503Z ... 'nvcc': ['-O2']}, 2024-08-06T21:19:57.2832970Z ... extra_link_flags=['-Wl,--no-as-needed', '-lcuda']) 2024-08-06T21:19:57.2833327Z ... ], 2024-08-06T21:19:57.2833552Z ... cmdclass={ 2024-08-06T21:19:57.2833819Z ... 'build_ext': BuildExtension 2024-08-06T21:19:57.2834115Z ... }) 2024-08-06T21:19:57.2834253Z 2024-08-06T21:19:57.2834353Z Compute capabilities: 2024-08-06T21:19:57.2834508Z 2024-08-06T21:19:57.2834849Z By default the extension will be compiled to run on all archs of the cards visible during the 2024-08-06T21:19:57.2835889Z building process of the extension, plus PTX. If down the road a new card is installed the 2024-08-06T21:19:57.2836707Z extension may need to be recompiled. If a visible card has a compute capability (CC) that's 2024-08-06T21:19:57.2837470Z newer than the newest version for which your nvcc can build fully-compiled binaries, Pytorch 2024-08-06T21:19:57.2838275Z will make nvcc fall back to building kernels with the newest version of PTX your nvcc does 2024-08-06T21:19:57.2838805Z support (see below for details on PTX). 2024-08-06T21:19:57.2839034Z 2024-08-06T21:19:57.2839356Z You can override the default behavior using `TORCH_CUDA_ARCH_LIST` to explicitly specify which 2024-08-06T21:19:57.2839891Z CCs you want the extension to support: 2024-08-06T21:19:57.2840122Z 2024-08-06T21:19:57.2840310Z ``TORCH_CUDA_ARCH_LIST="6.1 8.6" python build_my_extension.py`` 2024-08-06T21:19:57.2840847Z ``TORCH_CUDA_ARCH_LIST="5.2 6.0 6.1 7.0 7.5 8.0 8.6+PTX" python build_my_extension.py`` 2024-08-06T21:19:57.2841201Z 2024-08-06T21:19:57.2841530Z The +PTX option causes extension kernel binaries to include PTX instructions for the specified 2024-08-06T21:19:57.2842273Z CC. PTX is an intermediate representation that allows kernels to runtime-compile for any CC >= 2024-08-06T21:19:57.2843013Z the specified CC (for example, 8.6+PTX generates PTX that can runtime-compile for any GPU with 2024-08-06T21:19:57.2843735Z CC >= 8.6). This improves your binary's forward compatibility. However, relying on older PTX to 2024-08-06T21:19:57.2844461Z provide forward compat by runtime-compiling for newer CCs can modestly reduce performance on 2024-08-06T21:19:57.2845184Z those newer CCs. If you know exact CC(s) of the GPUs you want to target, you're always better 2024-08-06T21:19:57.2845911Z off specifying them individually. For example, if you want your extension to run on 8.0 and 8.6, 2024-08-06T21:19:57.2846660Z "8.0+PTX" would work functionally because it includes PTX that can runtime-compile for 8.6, but 2024-08-06T21:19:57.2847194Z "8.0 8.6" would be better. 2024-08-06T21:19:57.2847374Z 2024-08-06T21:19:57.2847673Z Note that while it's possible to include all supported archs, the more archs get included the 2024-08-06T21:19:57.2848385Z slower the building process will be, as it will build a separate kernel image for each arch. 2024-08-06T21:19:57.2848790Z 2024-08-06T21:19:57.2849226Z Note that CUDA-11.5 nvcc will hit internal compiler error while parsing torch/extension.h on Windows. 2024-08-06T21:19:57.2849907Z To workaround the issue, move python binding logic to pure C++ file. 2024-08-06T21:19:57.2850231Z 2024-08-06T21:19:57.2850338Z Example use: 2024-08-06T21:19:57.2850563Z #include 2024-08-06T21:19:57.2850908Z at::Tensor SigmoidAlphaBlendForwardCuda(....) 2024-08-06T21:19:57.2851161Z 2024-08-06T21:19:57.2851263Z Instead of: 2024-08-06T21:19:57.2851486Z #include 2024-08-06T21:19:57.2851840Z torch::Tensor SigmoidAlphaBlendForwardCuda(...) 2024-08-06T21:19:57.2852099Z 2024-08-06T21:19:57.2852389Z Currently open issue for nvcc bug: https://github.com/pytorch/pytorch/issues/69460 2024-08-06T21:19:57.2853279Z Complete workaround code example: https://github.com/facebookresearch/pytorch3d/commit/cb170ac024a949f1f9614ffe6af1c38d972f7d48 2024-08-06T21:19:57.2853910Z 2024-08-06T21:19:57.2854020Z Relocatable device code linking: 2024-08-06T21:19:57.2854231Z 2024-08-06T21:19:57.2854512Z If you want to reference device symbols across compilation units (across object files), 2024-08-06T21:19:57.2855324Z the object files need to be built with `relocatable device code` (-rdc=true or -dc). 2024-08-06T21:19:57.2856059Z An exception to this rule is "dynamic parallelism" (nested kernel launches) which is not used a lot anymore. 2024-08-06T21:19:57.2856870Z `Relocatable device code` is less optimized so it needs to be used only on object files that need it. 2024-08-06T21:19:57.2857642Z Using `-dlto` (Device Link Time Optimization) at the device code compilation step and `dlink` step 2024-08-06T21:19:57.2858247Z help reduce the protentional perf degradation of `-rdc`. 2024-08-06T21:19:57.2858703Z Note that it needs to be used at both steps to be useful. 2024-08-06T21:19:57.2858977Z 2024-08-06T21:19:57.2859355Z If you have `rdc` objects you need to have an extra `-dlink` (device linking) step before the CPU symbol linking step. 2024-08-06T21:19:57.2860014Z There is also a case where `-dlink` is used without `-rdc`: 2024-08-06T21:19:57.2860545Z when an extension is linked against a static lib containing rdc-compiled objects 2024-08-06T21:19:57.2861138Z like the [NVSHMEM library](https://developer.nvidia.com/nvshmem). 2024-08-06T21:19:57.2861457Z 2024-08-06T21:19:57.2861669Z Note: Ninja is required to build a CUDA Extension with RDC linking. 2024-08-06T21:19:57.2861983Z 2024-08-06T21:19:57.2862069Z Example: 2024-08-06T21:19:57.2862290Z >>> # xdoctest: +SKIP 2024-08-06T21:19:57.2862607Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:19:57.2863141Z >>> CUDAExtension( 2024-08-06T21:19:57.2863409Z ... name='cuda_extension', 2024-08-06T21:19:57.2863780Z ... sources=['extension.cpp', 'extension_kernel.cu'], 2024-08-06T21:19:57.2864140Z ... dlink=True, 2024-08-06T21:19:57.2864435Z ... dlink_libraries=["dlink_lib"], 2024-08-06T21:19:57.2864790Z ... extra_compile_args={'cxx': ['-g'], 2024-08-06T21:19:57.2865144Z ... 'nvcc': ['-O2', '-rdc=true']}) 2024-08-06T21:19:57.2865475Z 2024-08-06T21:19:57.2865732Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.2866097Z 2024-08-06T21:19:57.2866652Z msg = Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=1234. 2024-08-06T21:19:57.2867530Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.2867904Z 2024-08-06T21:19:57.2868057Z Load a PyTorch C++ extension just-in-time (JIT). 2024-08-06T21:19:57.2868307Z 2024-08-06T21:19:57.2868532Z To load an extension, a Ninja build file is emitted, which is used to 2024-08-06T21:19:57.2869063Z compile the given sources into a dynamic library. This library is 2024-08-06T21:19:57.2869593Z subsequently loaded into the current Python process as a module and 2024-08-06T21:19:57.2870202Z returned from this function, ready for use. 2024-08-06T21:19:57.2870434Z 2024-08-06T21:19:57.2870657Z By default, the directory to which the build file is emitted and the 2024-08-06T21:19:57.2871215Z resulting library compiled to is ``/torch_extensions/``, where 2024-08-06T21:19:57.2871781Z ```` is the temporary folder on the current platform and ```` 2024-08-06T21:19:57.2872324Z the name of the extension. This location can be overridden in two ways. 2024-08-06T21:19:57.2872854Z First, if the ``TORCH_EXTENSIONS_DIR`` environment variable is set, it 2024-08-06T21:19:57.2873405Z replaces ``/torch_extensions`` and all extensions will be compiled 2024-08-06T21:19:57.2873970Z into subfolders of this directory. Second, if the ``build_directory`` 2024-08-06T21:19:57.2874528Z argument to this function is supplied, it overrides the entire path, i.e. 2024-08-06T21:19:57.2875045Z the library will be compiled into that folder directly. 2024-08-06T21:19:57.2875329Z 2024-08-06T21:19:57.2875547Z To compile the sources, the default system compiler (``c++``) is used, 2024-08-06T21:19:57.2876118Z which can be overridden by setting the ``CXX`` environment variable. To pass 2024-08-06T21:19:57.2876773Z additional arguments to the compilation process, ``extra_cflags`` or 2024-08-06T21:19:57.2877342Z ``extra_ldflags`` can be provided. For example, to compile your extension 2024-08-06T21:19:57.2877904Z with optimizations, pass ``extra_cflags=['-O3']``. You can also use 2024-08-06T21:19:57.2878381Z ``extra_cflags`` to pass further include directories. 2024-08-06T21:19:57.2878660Z 2024-08-06T21:19:57.2878895Z CUDA support with mixed compilation is provided. Simply pass CUDA source 2024-08-06T21:19:57.2879435Z files (``.cu`` or ``.cuh``) along with other sources. Such files will be 2024-08-06T21:19:57.2879968Z detected and compiled with nvcc rather than the C++ compiler. This includes 2024-08-06T21:19:57.2880547Z passing the CUDA lib64 directory as a library directory, and linking 2024-08-06T21:19:57.2881031Z ``cudart``. You can pass additional flags to nvcc via 2024-08-06T21:19:57.2881485Z ``extra_cuda_cflags``, just like with ``extra_cflags`` for C++. Various 2024-08-06T21:19:57.2882046Z heuristics for finding the CUDA install directory are used, which usually 2024-08-06T21:19:57.2882610Z work fine. If not, setting the ``CUDA_HOME`` environment variable is the 2024-08-06T21:19:57.2883021Z safest option. 2024-08-06T21:19:57.2883167Z 2024-08-06T21:19:57.2883249Z Args: 2024-08-06T21:19:57.2883575Z name: The name of the extension to build. This MUST be the same as the 2024-08-06T21:19:57.2884000Z name of the pybind11 module! 2024-08-06T21:19:57.2884413Z sources: A list of relative or absolute paths to C++ source files. 2024-08-06T21:19:57.2884961Z extra_cflags: optional list of compiler flags to forward to the build. 2024-08-06T21:19:57.2885526Z extra_cuda_cflags: optional list of compiler flags to forward to nvcc 2024-08-06T21:19:57.2885960Z when building CUDA sources. 2024-08-06T21:19:57.2886379Z extra_ldflags: optional list of linker flags to forward to the build. 2024-08-06T21:19:57.2886934Z extra_include_paths: optional list of include directories to forward 2024-08-06T21:19:57.2887358Z to the build. 2024-08-06T21:19:57.2887696Z build_directory: optional path to use as build workspace. 2024-08-06T21:19:57.2888176Z verbose: If ``True``, turns on verbose logging of load steps. 2024-08-06T21:19:57.2888682Z with_cuda: Determines whether CUDA headers and libraries are added to 2024-08-06T21:19:57.2889182Z the build. If set to ``None`` (default), this value is 2024-08-06T21:19:57.2889660Z automatically determined based on the existence of ``.cu`` or 2024-08-06T21:19:57.2890140Z ``.cuh`` in ``sources``. Set it to `True`` to force CUDA headers 2024-08-06T21:19:57.2890540Z and libraries to be included. 2024-08-06T21:19:57.2890954Z is_python_module: If ``True`` (default), imports the produced shared 2024-08-06T21:19:57.2891544Z library as a Python module. If ``False``, behavior depends on 2024-08-06T21:19:57.2891954Z ``is_standalone``. 2024-08-06T21:19:57.2892346Z is_standalone: If ``False`` (default) loads the constructed extension 2024-08-06T21:19:57.2892862Z into the process as a plain dynamic library. If ``True``, build a 2024-08-06T21:19:57.2893290Z standalone executable. 2024-08-06T21:19:57.2893474Z 2024-08-06T21:19:57.2893574Z Returns: 2024-08-06T21:19:57.2893794Z If ``is_python_module`` is ``True``: 2024-08-06T21:19:57.2894191Z Returns the loaded PyTorch extension as a Python module. 2024-08-06T21:19:57.2894477Z 2024-08-06T21:19:57.2894692Z If ``is_python_module`` is ``False`` and ``is_standalone`` is ``False``: 2024-08-06T21:19:57.2895310Z Returns nothing. (The shared library is loaded into the process as 2024-08-06T21:19:57.2895744Z a side effect.) 2024-08-06T21:19:57.2895897Z 2024-08-06T21:19:57.2896020Z If ``is_standalone`` is ``True``. 2024-08-06T21:19:57.2896429Z Return the path to the executable. (On Windows, TORCH_LIB_PATH is 2024-08-06T21:19:57.2896930Z added to the PATH environment variable as a side effect.) 2024-08-06T21:19:57.2897230Z 2024-08-06T21:19:57.2897380Z Example: 2024-08-06T21:19:57.2897588Z >>> # xdoctest: +SKIP 2024-08-06T21:19:57.2897896Z >>> from torch.utils.cpp_extension import load 2024-08-06T21:19:57.2898243Z >>> module = load( 2024-08-06T21:19:57.2898489Z ... name='extension', 2024-08-06T21:19:57.2898833Z ... sources=['extension.cpp', 'extension_kernel.cu'], 2024-08-06T21:19:57.2899209Z ... extra_cflags=['-O2'], 2024-08-06T21:19:57.2899487Z ... verbose=True) 2024-08-06T21:19:57.2899660Z 2024-08-06T21:19:57.2899912Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.2900287Z 2024-08-06T21:19:57.2900816Z msg = Cannot scrape callname=load_inline in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=1523. 2024-08-06T21:19:57.2901715Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.2902088Z 2024-08-06T21:19:57.2902299Z Load a PyTorch C++ extension just-in-time (JIT) from string sources. 2024-08-06T21:19:57.2902629Z 2024-08-06T21:19:57.2902862Z This function behaves exactly like :func:`load`, but takes its sources as 2024-08-06T21:19:57.2903435Z strings rather than filenames. These strings are stored to files in the 2024-08-06T21:19:57.2903979Z build directory, after which the behavior of :func:`load_inline` is 2024-08-06T21:19:57.2904406Z identical to :func:`load`. 2024-08-06T21:19:57.2904579Z 2024-08-06T21:19:57.2904676Z See `the 2024-08-06T21:19:57.2905113Z tests `_ 2024-08-06T21:19:57.2905677Z for good examples of using this function. 2024-08-06T21:19:57.2905913Z 2024-08-06T21:19:57.2906144Z Sources may omit two required parts of a typical non-inline C++ extension: 2024-08-06T21:19:57.2906744Z the necessary header includes, as well as the (pybind11) binding code. More 2024-08-06T21:19:57.2907336Z precisely, strings passed to ``cpp_sources`` are first concatenated into a 2024-08-06T21:19:57.2907885Z single ``.cpp`` file. This file is then prepended with ``#include 2024-08-06T21:19:57.2908292Z ``. 2024-08-06T21:19:57.2908448Z 2024-08-06T21:19:57.2908674Z Furthermore, if the ``functions`` argument is supplied, bindings will be 2024-08-06T21:19:57.2909260Z automatically generated for each function specified. ``functions`` can 2024-08-06T21:19:57.2909840Z either be a list of function names, or a dictionary mapping from function 2024-08-06T21:19:57.2910393Z names to docstrings. If a list is given, the name of each function is used 2024-08-06T21:19:57.2910832Z as its docstring. 2024-08-06T21:19:57.2910972Z 2024-08-06T21:19:57.2911197Z The sources in ``cuda_sources`` are concatenated into a separate ``.cu`` 2024-08-06T21:19:57.2911693Z file and prepended with ``torch/types.h``, ``cuda.h`` and 2024-08-06T21:19:57.2912257Z ``cuda_runtime.h`` includes. The ``.cpp`` and ``.cu`` files are compiled 2024-08-06T21:19:57.2912814Z separately, but ultimately linked into a single library. Note that no 2024-08-06T21:19:57.2913378Z bindings are generated for functions in ``cuda_sources`` per se. To bind 2024-08-06T21:19:57.2913955Z to a CUDA kernel, you must create a C++ function that calls it, and either 2024-08-06T21:19:57.2914510Z declare or define this C++ function in one of the ``cpp_sources`` (and 2024-08-06T21:19:57.2914940Z include its name in ``functions``). 2024-08-06T21:19:57.2915158Z 2024-08-06T21:19:57.2915339Z See :func:`load` for a description of arguments omitted below. 2024-08-06T21:19:57.2915645Z 2024-08-06T21:19:57.2915730Z Args: 2024-08-06T21:19:57.2916069Z cpp_sources: A string, or list of strings, containing C++ source code. 2024-08-06T21:19:57.2916620Z cuda_sources: A string, or list of strings, containing CUDA source code. 2024-08-06T21:19:57.2917176Z functions: A list of function names for which to generate function 2024-08-06T21:19:57.2917718Z bindings. If a dictionary is given, it should map function names to 2024-08-06T21:19:57.2918277Z docstrings (which are otherwise just the function names). 2024-08-06T21:19:57.2918803Z with_cuda: Determines whether CUDA headers and libraries are added to 2024-08-06T21:19:57.2919306Z the build. If set to ``None`` (default), this value is 2024-08-06T21:19:57.2919780Z automatically determined based on whether ``cuda_sources`` is 2024-08-06T21:19:57.2920267Z provided. Set it to ``True`` to force CUDA headers 2024-08-06T21:19:57.2920655Z and libraries to be included. 2024-08-06T21:19:57.2921066Z with_pytorch_error_handling: Determines whether pytorch error and 2024-08-06T21:19:57.2921600Z warning macros are handled by pytorch instead of pybind. To do 2024-08-06T21:19:57.2922138Z this, each function ``foo`` is called via an intermediary ``_safe_foo`` 2024-08-06T21:19:57.2922671Z function. This redirection might cause issues in obscure cases 2024-08-06T21:19:57.2923187Z of cpp. This flag should be set to ``False`` when this redirect 2024-08-06T21:19:57.2923593Z causes issues. 2024-08-06T21:19:57.2923747Z 2024-08-06T21:19:57.2923835Z Example: 2024-08-06T21:19:57.2924108Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:19:57.2924534Z >>> from torch.utils.cpp_extension import load_inline 2024-08-06T21:19:57.2924885Z >>> source = """ 2024-08-06T21:19:57.2925187Z at::Tensor sin_add(at::Tensor x, at::Tensor y) { 2024-08-06T21:19:57.2925539Z return x.sin() + y.sin(); 2024-08-06T21:19:57.2925795Z } 2024-08-06T21:19:57.2925994Z """ 2024-08-06T21:19:57.2926247Z >>> module = load_inline(name='inline_extension', 2024-08-06T21:19:57.2926603Z ... cpp_sources=[source], 2024-08-06T21:19:57.2926951Z ... functions=['sin_add']) 2024-08-06T21:19:57.2927181Z 2024-08-06T21:19:57.2927279Z .. note:: 2024-08-06T21:19:57.2927585Z By default, the Ninja backend uses #CPUS + 2 workers to build the 2024-08-06T21:19:57.2928115Z extension. This may use up too many resources on some systems. One 2024-08-06T21:19:57.2928775Z can control the number of workers by setting the `MAX_JOBS` environment 2024-08-06T21:19:57.2929222Z variable to a non-negative number. 2024-08-06T21:19:57.2929448Z 2024-08-06T21:19:57.2929701Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.2930077Z 2024-08-06T21:19:57.3009074Z msg = Cannot scrape callname=ThroughputBenchmark in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/throughput_benchmark.py line=61. 2024-08-06T21:19:57.3010083Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.3010459Z 2024-08-06T21:19:57.3010769Z This class is a wrapper around a c++ component throughput_benchmark::ThroughputBenchmark. 2024-08-06T21:19:57.3011314Z 2024-08-06T21:19:57.3011610Z This wrapper on the throughput_benchmark::ThroughputBenchmark component is responsible 2024-08-06T21:19:57.3012279Z for executing a PyTorch module (nn.Module or ScriptModule) under an inference 2024-08-06T21:19:57.3012884Z server like load. It can emulate multiple calling threads to a single module 2024-08-06T21:19:57.3013462Z provided. In the future we plan to enhance this component to support inter and 2024-08-06T21:19:57.3014068Z intra-op parallelism as well as multiple models running in a single process. 2024-08-06T21:19:57.3014426Z 2024-08-06T21:19:57.3014689Z Please note that even though nn.Module is supported, it might incur an overhead 2024-08-06T21:19:57.3015338Z from the need to hold GIL every time we execute Python code or pass around 2024-08-06T21:19:57.3015930Z inputs as Python objects. As soon as you have a ScriptModule version of your 2024-08-06T21:19:57.3016531Z model for inference deployment it is better to switch to using it in this 2024-08-06T21:19:57.3016990Z benchmark. 2024-08-06T21:19:57.3017113Z 2024-08-06T21:19:57.3017204Z Example:: 2024-08-06T21:19:57.3017335Z 2024-08-06T21:19:57.3017527Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:19:57.3017895Z >>> from torch.utils import ThroughputBenchmark 2024-08-06T21:19:57.3018264Z >>> bench = ThroughputBenchmark(my_module) 2024-08-06T21:19:57.3018670Z >>> # Pre-populate benchmark's data set with the inputs 2024-08-06T21:19:57.3019049Z >>> for input in inputs: 2024-08-06T21:19:57.3019448Z ... # Both args and kwargs work, same as any PyTorch Module / ScriptModule 2024-08-06T21:19:57.3019921Z ... bench.add_input(input[0], x2=input[1]) 2024-08-06T21:19:57.3020363Z >>> # Inputs supplied above are randomly used during the execution 2024-08-06T21:19:57.3020771Z >>> stats = bench.benchmark( 2024-08-06T21:19:57.3021069Z ... num_calling_threads=4, 2024-08-06T21:19:57.3021374Z ... num_warmup_iters = 100, 2024-08-06T21:19:57.3021664Z ... num_iters = 1000, 2024-08-06T21:19:57.3021934Z ... ) 2024-08-06T21:19:57.3022229Z >>> print("Avg latency (ms): {}".format(stats.latency_avg_ms)) 2024-08-06T21:19:57.3022690Z >>> print("Number of iterations: {}".format(stats.num_iters)) 2024-08-06T21:19:57.3022985Z 2024-08-06T21:19:57.3023234Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.3023595Z 2024-08-06T21:19:57.3821918Z msg = Cannot scrape callname=DistributedSampler in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/distributed.py line=17. 2024-08-06T21:19:57.3822889Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:19:57.3823457Z Sampler that restricts data loading to a subset of the dataset. 2024-08-06T21:19:57.3823776Z 2024-08-06T21:19:57.3823968Z It is especially useful in conjunction with 2024-08-06T21:19:57.3824494Z :class:`torch.nn.parallel.DistributedDataParallel`. In such a case, each 2024-08-06T21:19:57.3825124Z process can pass a :class:`~torch.utils.data.DistributedSampler` instance as a 2024-08-06T21:19:57.3825736Z :class:`~torch.utils.data.DataLoader` sampler, and load a subset of the 2024-08-06T21:19:57.3826213Z original dataset that is exclusive to it. 2024-08-06T21:19:57.3826448Z 2024-08-06T21:19:57.3826544Z .. note:: 2024-08-06T21:19:57.3826909Z Dataset is assumed to be of constant size and that any instance of it always 2024-08-06T21:19:57.3827403Z returns the same elements in the same order. 2024-08-06T21:19:57.3827646Z 2024-08-06T21:19:57.3827730Z Args: 2024-08-06T21:19:57.3827971Z dataset: Dataset used for sampling. 2024-08-06T21:19:57.3828414Z num_replicas (int, optional): Number of processes participating in 2024-08-06T21:19:57.3828986Z distributed training. By default, :attr:`world_size` is retrieved from the 2024-08-06T21:19:57.3829466Z current distributed group. 2024-08-06T21:19:57.3830084Z rank (int, optional): Rank of the current process within :attr:`num_replicas`. 2024-08-06T21:19:57.3830645Z By default, :attr:`rank` is retrieved from the current distributed 2024-08-06T21:19:57.3831058Z group. 2024-08-06T21:19:57.3831429Z shuffle (bool, optional): If ``True`` (default), sampler will shuffle the 2024-08-06T21:19:57.3831855Z indices. 2024-08-06T21:19:57.3832201Z seed (int, optional): random seed used to shuffle the sampler if 2024-08-06T21:19:57.3832728Z :attr:`shuffle=True`. This number should be identical across all 2024-08-06T21:19:57.3833209Z processes in the distributed group. Default: ``0``. 2024-08-06T21:19:57.3833694Z drop_last (bool, optional): if ``True``, then the sampler will drop the 2024-08-06T21:19:57.3834226Z tail of the data to make it evenly divisible across the number of 2024-08-06T21:19:57.3834748Z replicas. If ``False``, the sampler will add extra indices to make 2024-08-06T21:19:57.3835268Z the data evenly divisible across the replicas. Default: ``False``. 2024-08-06T21:19:57.3835617Z 2024-08-06T21:19:57.3835809Z .. warning:: 2024-08-06T21:19:57.3836150Z In distributed mode, calling the :meth:`set_epoch` method at 2024-08-06T21:19:57.3836699Z the beginning of each epoch **before** creating the :class:`DataLoader` iterator 2024-08-06T21:19:57.3837335Z is necessary to make shuffling work properly across multiple epochs. Otherwise, 2024-08-06T21:19:57.3837844Z the same ordering will be always used. 2024-08-06T21:19:57.3838074Z 2024-08-06T21:19:57.3838180Z Example:: 2024-08-06T21:19:57.3838308Z 2024-08-06T21:19:57.3838410Z >>> # xdoctest: +SKIP 2024-08-06T21:19:57.3838821Z >>> sampler = DistributedSampler(dataset) if is_distributed else None 2024-08-06T21:19:57.3839339Z >>> loader = DataLoader(dataset, shuffle=(sampler is None), 2024-08-06T21:19:57.3839739Z ... sampler=sampler) 2024-08-06T21:19:57.3840109Z >>> for epoch in range(start_epoch, n_epochs): 2024-08-06T21:19:57.3840468Z ... if is_distributed: 2024-08-06T21:19:57.3840774Z ... sampler.set_epoch(epoch) 2024-08-06T21:19:57.3841100Z ... train(loader) 2024-08-06T21:19:57.3841369Z 2024-08-06T21:19:57.3841730Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:19:57.3842109Z 2024-08-06T21:19:57.5620992Z gathering tests 2024-08-06T21:19:57.5633540Z running 694 test(s) 2024-08-06T21:19:57.5682099Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::typename:0, line 972 <- wrt source file 2024-08-06T21:19:57.5690092Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::typename:0 2024-08-06T21:19:57.5691225Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::is_tensor:0, line 1008 <- wrt source file 2024-08-06T21:19:57.5694699Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::is_tensor:0 2024-08-06T21:19:57.5696415Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::set_default_device:0, line 1077 <- wrt source file 2024-08-06T21:19:57.5698033Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::set_default_device:0 2024-08-06T21:19:57.5699598Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::set_default_tensor_type:0, line 1126 <- wrt source file 2024-08-06T21:19:57.5701673Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::set_default_tensor_type:0 2024-08-06T21:19:57.5702871Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::set_default_dtype:0, line 1163 <- wrt source file 2024-08-06T21:19:57.5704528Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::set_default_dtype:0 2024-08-06T21:19:57.5706224Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::use_deterministic_algorithms:0, line 1318 <- wrt source file 2024-08-06T21:19:57.5708486Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::use_deterministic_algorithms:0 2024-08-06T21:19:57.5710100Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::compile:0, line 2404 <- wrt source file 2024-08-06T21:19:57.5711200Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::compile:0 2024-08-06T21:19:57.5712401Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::_is_device_backend_autoload_enabled:0, line 2653 <- wrt source file 2024-08-06T21:19:57.5713756Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/__init__.py::_is_device_backend_autoload_enabled:0 2024-08-06T21:19:57.5715199Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_C.cpython-312-x86_64-linux-gnu.so::Generator:0, line 15 <- wrt source file 2024-08-06T21:19:57.5716547Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_C.cpython-312-x86_64-linux-gnu.so::Generator:0 2024-08-06T21:19:57.5717854Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_C.cpython-312-x86_64-linux-gnu.so::_LinAlgError:0, line 5 <- wrt source file 2024-08-06T21:19:57.5719213Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_C.cpython-312-x86_64-linux-gnu.so::_LinAlgError:0 2024-08-06T21:19:57.5720426Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_custom_ops.py::custom_op:0, line 55 <- wrt source file 2024-08-06T21:19:57.5721562Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_custom_ops.py::custom_op:0 2024-08-06T21:19:57.5722645Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_custom_ops.py::impl:0, line 137 <- wrt source file 2024-08-06T21:19:57.5723735Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_custom_ops.py::impl:0 2024-08-06T21:19:57.5724856Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_custom_ops.py::impl_abstract:0, line 206 <- wrt source file 2024-08-06T21:19:57.6003384Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_custom_ops.py::impl_abstract:0 2024-08-06T21:19:57.6004702Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_namedtensor_internals.py::update_names:0, line 118 <- wrt source file 2024-08-06T21:19:57.6006008Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_namedtensor_internals.py::update_names:0 2024-08-06T21:19:57.6007260Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.register_hook:0, line 546 <- wrt source file 2024-08-06T21:19:57.6020988Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.register_hook:0 2024-08-06T21:19:57.6022433Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.register_post_accumulate_grad_hook:0, line 603 <- wrt source file 2024-08-06T21:19:57.6039674Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.register_post_accumulate_grad_hook:0 2024-08-06T21:19:57.6041033Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.refine_names:0, line 1232 <- wrt source file 2024-08-06T21:19:57.6155754Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.refine_names:0 2024-08-06T21:19:57.6158941Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.align_to:0, line 1277 <- wrt source file 2024-08-06T21:19:57.6164658Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.align_to:0 2024-08-06T21:19:57.6165984Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.rename:0, line 1350 <- wrt source file 2024-08-06T21:19:57.6171705Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.rename:0 2024-08-06T21:19:57.6172874Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.to_sparse_coo:0, line 1380 <- wrt source file 2024-08-06T21:19:57.6177592Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.to_sparse_coo:0 2024-08-06T21:19:57.6179115Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.dim_order:0, line 1403 <- wrt source file 2024-08-06T21:19:57.6182025Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py::Tensor.dim_order:0 2024-08-06T21:19:57.6183198Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor_str.py::set_printoptions:0, line 53 <- wrt source file 2024-08-06T21:19:57.6202201Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor_str.py::set_printoptions:0 2024-08-06T21:19:57.6203421Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::broadcast_tensors:0, line 63 <- wrt source file 2024-08-06T21:19:57.6208728Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::broadcast_tensors:0 2024-08-06T21:19:57.6209948Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::broadcast_shapes:0, line 91 <- wrt source file 2024-08-06T21:19:57.6212130Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::broadcast_shapes:0 2024-08-06T21:19:57.6213280Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::split:0, line 178 <- wrt source file 2024-08-06T21:19:57.6223815Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::split:0 2024-08-06T21:19:57.6224917Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::einsum:0, line 287 <- wrt source file 2024-08-06T21:19:57.6273355Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::einsum:0 2024-08-06T21:19:57.6274566Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::_unique_consecutive_impl:0, line 1014 <- wrt source file 2024-08-06T21:19:57.6284737Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::_unique_consecutive_impl:0 2024-08-06T21:19:57.6285949Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::tensordot:0, line 1289 <- wrt source file 2024-08-06T21:19:57.6295173Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::tensordot:0 2024-08-06T21:19:57.6296345Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::cartesian_prod:0, line 1373 <- wrt source file 2024-08-06T21:19:57.6302449Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::cartesian_prod:0 2024-08-06T21:19:57.6303610Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::block_diag:0, line 1407 <- wrt source file 2024-08-06T21:19:57.6310947Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::block_diag:0 2024-08-06T21:19:57.6312077Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::cdist:0, line 1458 <- wrt source file 2024-08-06T21:19:57.6323960Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::cdist:0 2024-08-06T21:19:57.6325086Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::atleast_1d:0, line 1499 <- wrt source file 2024-08-06T21:19:57.6339518Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::atleast_1d:0 2024-08-06T21:19:57.6340666Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::atleast_2d:0, line 1535 <- wrt source file 2024-08-06T21:19:57.6355462Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::atleast_2d:0 2024-08-06T21:19:57.6356739Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::atleast_3d:0, line 1573 <- wrt source file 2024-08-06T21:19:57.6375833Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::atleast_3d:0 2024-08-06T21:19:57.6376955Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::norm:0, line 1746 <- wrt source file 2024-08-06T21:19:57.6406200Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::norm:0 2024-08-06T21:19:57.6407335Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::unravel_index:0, line 1913 <- wrt source file 2024-08-06T21:19:57.6431533Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::unravel_index:0 2024-08-06T21:19:57.6432891Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::chain_matmul:0, line 2013 <- wrt source file 2024-08-06T21:19:57.6434450Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::chain_matmul:0 2024-08-06T21:19:57.6435993Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::_lu_impl:0, line 2113 <- wrt source file 2024-08-06T21:19:57.6437142Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py::_lu_impl:0 2024-08-06T21:19:57.6438198Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py::list:0, line 468 <- wrt source file 2024-08-06T21:19:57.6439226Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py::list:0 2024-08-06T21:19:57.6440518Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py::help:0, line 528 <- wrt source file 2024-08-06T21:19:57.6441682Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py::help:0 2024-08-06T21:19:57.6442774Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py::_load_local:0, line 667 <- wrt source file 2024-08-06T21:19:57.6443968Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py::_load_local:0 2024-08-06T21:19:57.6445149Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::Library.define:0, line 129 <- wrt source file 2024-08-06T21:19:57.6446433Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::Library.define:0 2024-08-06T21:19:57.6447740Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::Library._impl_with_aoti_compile:0, line 217 <- wrt source file 2024-08-06T21:19:57.6498642Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::Library._impl_with_aoti_compile:0 2024-08-06T21:19:57.6499931Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::Library.impl:0, line 268 <- wrt source file 2024-08-06T21:19:57.6502858Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::Library.impl:0 2024-08-06T21:19:57.6503956Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::define:0, line 452 <- wrt source file 2024-08-06T21:19:57.6514244Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::define:0 2024-08-06T21:19:57.6515320Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::impl:0, line 519 <- wrt source file 2024-08-06T21:19:57.6523511Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::impl:0 2024-08-06T21:19:57.6524958Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::register_kernel:0, line 627 <- wrt source file 2024-08-06T21:19:57.6526168Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::register_kernel:0 2024-08-06T21:19:57.6527364Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::register_torch_dispatch:0, line 943 <- wrt source file 2024-08-06T21:19:57.6601640Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::register_torch_dispatch:0 2024-08-06T21:19:57.6602820Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::register_vmap:0, line 1032 <- wrt source file 2024-08-06T21:19:57.6717857Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py::register_vmap:0 2024-08-06T21:19:57.6719083Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::get_ignored_functions:0, line 111 <- wrt source file 2024-08-06T21:19:57.6723870Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::get_ignored_functions:0 2024-08-06T21:19:57.6725107Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::get_testing_overrides:0, line 418 <- wrt source file 2024-08-06T21:19:57.6756510Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::get_testing_overrides:0 2024-08-06T21:19:57.6757751Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::wrap_torch_function:0, line 1564 <- wrt source file 2024-08-06T21:19:57.6759984Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::wrap_torch_function:0 2024-08-06T21:19:57.6761226Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::handle_torch_function:0, line 1699 <- wrt source file 2024-08-06T21:19:57.6763298Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::handle_torch_function:0 2024-08-06T21:19:57.6764583Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::is_tensor_method_or_property:0, line 1947 <- wrt source file 2024-08-06T21:19:57.6789481Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::is_tensor_method_or_property:0 2024-08-06T21:19:57.6790706Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::is_tensor_like:0, line 1966 <- wrt source file 2024-08-06T21:19:57.6796190Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/overrides.py::is_tensor_like:0 2024-08-06T21:19:57.6797955Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/quasirandom.py::SobolEngine:0, line 39 <- wrt source file 2024-08-06T21:19:57.6799366Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/quasirandom.py::SobolEngine:0 2024-08-06T21:19:57.6800640Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::add_safe_globals:0, line 216 <- wrt source file 2024-08-06T21:19:57.6801882Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::add_safe_globals:0 2024-08-06T21:19:57.6803183Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::safe_globals:0, line 241 <- wrt source file 2024-08-06T21:19:57.6804779Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::safe_globals:0 2024-08-06T21:19:57.6806155Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::register_package:0, line 304 <- wrt source file 2024-08-06T21:19:57.6807598Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::register_package:0 2024-08-06T21:19:57.6808931Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::save:0, line 765 <- wrt source file 2024-08-06T21:19:57.6810072Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py::save:0 2024-08-06T21:19:57.6811372Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/torch_version.py::TorchVersion:0, line 18 <- wrt source file 2024-08-06T21:19:57.6812604Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/torch_version.py::TorchVersion:0 2024-08-06T21:19:57.6813816Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_inductor/__init__.py::list_mode_options:0, line 134 <- wrt source file 2024-08-06T21:19:57.6815234Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_inductor/__init__.py::list_mode_options:0 2024-08-06T21:19:57.6816834Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_inductor/__init__.py::list_options:0, line 164 <- wrt source file 2024-08-06T21:19:57.6818347Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_inductor/__init__.py::list_options:0 2024-08-06T21:19:57.6819798Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_prims_common/__init__.py::compute_required_storage_length:0, line 1747 <- wrt source file 2024-08-06T21:19:57.6821462Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_prims_common/__init__.py::compute_required_storage_length:0 2024-08-06T21:19:57.6822960Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::allow_in_graph:0, line 94 <- wrt source file 2024-08-06T21:19:57.6824406Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::allow_in_graph:0 2024-08-06T21:19:57.6826037Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::wrap_numpy:0, line 194 <- wrt source file 2024-08-06T21:19:57.6827662Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::wrap_numpy:0 2024-08-06T21:19:57.6829523Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::is_compiling:0, line 222 <- wrt source file 2024-08-06T21:19:57.6831436Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::is_compiling:0 2024-08-06T21:19:57.6832953Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::is_dynamo_compiling:0, line 242 <- wrt source file 2024-08-06T21:19:57.6834378Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/compiler/__init__.py::is_dynamo_compiling:0 2024-08-06T21:19:57.6835576Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/__init__.py::save:0, line 214 <- wrt source file 2024-08-06T21:19:57.6836709Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/__init__.py::save:0 2024-08-06T21:19:57.6837828Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/__init__.py::load:0, line 298 <- wrt source file 2024-08-06T21:19:57.6838939Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/__init__.py::load:0 2024-08-06T21:19:57.6840121Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/__init__.py::register_dataclass:0, line 396 <- wrt source file 2024-08-06T21:19:57.6841478Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/__init__.py::register_dataclass:0 2024-08-06T21:19:57.6842766Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py::Future.add_done_callback:0, line 196 <- wrt source file 2024-08-06T21:19:57.6844098Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py::Future.add_done_callback:0 2024-08-06T21:19:57.6845405Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py::Future.set_exception:0, line 258 <- wrt source file 2024-08-06T21:19:57.6846703Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py::Future.set_exception:0 2024-08-06T21:19:57.6847933Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py::collect_all:0, line 289 <- wrt source file 2024-08-06T21:19:57.6849127Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py::collect_all:0 2024-08-06T21:19:57.6850269Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/__init__.py::annotate:0, line 146 <- wrt source file 2024-08-06T21:19:57.6851400Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/__init__.py::annotate:0 2024-08-06T21:19:57.6852789Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/monitor/__init__.py::TensorboardEventHandler:0, line 22 <- wrt source file 2024-08-06T21:19:57.6854147Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/monitor/__init__.py::TensorboardEventHandler:0 2024-08-06T21:19:57.6855492Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::as_nested_tensor:0, line 56 <- wrt source file 2024-08-06T21:19:57.6872214Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::as_nested_tensor:0 2024-08-06T21:19:57.6874444Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::nested_tensor:0, line 215 <- wrt source file 2024-08-06T21:19:57.6876637Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::nested_tensor:0 2024-08-06T21:19:57.6878757Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::narrow:0, line 277 <- wrt source file 2024-08-06T21:19:57.6955308Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::narrow:0 2024-08-06T21:19:57.6957545Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::nested_tensor_from_jagged:0, line 361 <- wrt source file 2024-08-06T21:19:57.6975702Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py::nested_tensor_from_jagged:0 2024-08-06T21:19:57.6978176Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/__init__.py::check_sparse_tensor_invariants:0, line 454 <- wrt source file 2024-08-06T21:19:57.6984272Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/__init__.py::check_sparse_tensor_invariants:0 2024-08-06T21:19:57.6986657Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/__init__.py::as_sparse_gradcheck:0, line 540 <- wrt source file 2024-08-06T21:19:57.7040153Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/__init__.py::as_sparse_gradcheck:0 2024-08-06T21:19:57.7042649Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_dynamo/variables/base.py::VariableTracker.python_type:0, line 203 <- wrt source file 2024-08-06T21:19:57.7045504Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_dynamo/variables/base.py::VariableTracker.python_type:0 2024-08-06T21:19:57.7048035Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/aot_autograd.py::aot_function:0, line 796 <- wrt source file 2024-08-06T21:19:57.7738027Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/aot_autograd.py::aot_function:0 2024-08-06T21:19:57.7740217Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/apis.py::grad:0, line 324 <- wrt source file 2024-08-06T21:19:57.7742290Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/apis.py::grad:0 2024-08-06T21:19:57.7744626Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/benchmark_utils.py::benchmark_utilization:0, line 184 <- wrt source file 2024-08-06T21:19:57.7747259Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/benchmark_utils.py::benchmark_utilization:0 2024-08-06T21:19:57.7749633Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::vjp:0, line 271 <- wrt source file 2024-08-06T21:19:57.7779132Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::vjp:0 2024-08-06T21:19:57.7781411Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::jacrev:0, line 510 <- wrt source file 2024-08-06T21:19:57.7835463Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::jacrev:0 2024-08-06T21:19:57.7837759Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::jvp:0, line 1064 <- wrt source file 2024-08-06T21:19:57.8684970Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::jvp:0 2024-08-06T21:19:57.8687274Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::jacfwd:0, line 1219 <- wrt source file 2024-08-06T21:19:57.8745523Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::jacfwd:0 2024-08-06T21:19:57.8747816Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::hessian:0, line 1384 <- wrt source file 2024-08-06T21:19:57.8762898Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::hessian:0 2024-08-06T21:19:57.8765288Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::functionalize:0, line 1548 <- wrt source file 2024-08-06T21:19:57.8768355Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::functionalize:0 2024-08-06T21:19:57.8770744Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::linearize:0, line 1748 <- wrt source file 2024-08-06T21:19:57.9047546Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/eager_transforms.py::linearize:0 2024-08-06T21:19:57.9048882Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/functional_call.py::functional_call:0, line 36 <- wrt source file 2024-08-06T21:19:57.9051935Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/functional_call.py::functional_call:0 2024-08-06T21:19:57.9053900Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/fx_minifier.py::minifier:0, line 194 <- wrt source file 2024-08-06T21:19:57.9056077Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/fx_minifier.py::minifier:0 2024-08-06T21:19:57.9057811Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/_aot_autograd/runtime_wrappers.py::CompilerWrapper.post_compile:0, line 110 <- wrt source file 2024-08-06T21:19:57.9059462Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/_aot_autograd/runtime_wrappers.py::CompilerWrapper.post_compile:0 2024-08-06T21:19:57.9060970Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_higher_order_ops/associative_scan.py::associative_scan:0, line 67 <- wrt source file 2024-08-06T21:19:57.9062396Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_higher_order_ops/associative_scan.py::associative_scan:0 2024-08-06T21:19:57.9063903Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_higher_order_ops/cond.py::cond:0, line 81 <- wrt source file 2024-08-06T21:19:57.9065109Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_higher_order_ops/cond.py::cond:0 2024-08-06T21:19:57.9066357Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_higher_order_ops/while_loop.py::while_loop:0, line 93 <- wrt source file 2024-08-06T21:19:57.9067657Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_higher_order_ops/while_loop.py::while_loop:0 2024-08-06T21:19:57.9069058Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_inductor/cpp_builder.py::get_name_and_dir_from_output_file_path:0, line 1158 <- wrt source file 2024-08-06T21:19:57.9070560Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_inductor/cpp_builder.py::get_name_and_dir_from_output_file_path:0 2024-08-06T21:19:57.9071896Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::custom_op:0, line 83 <- wrt source file 2024-08-06T21:19:57.9300409Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::custom_op:0 2024-08-06T21:19:57.9301750Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.set_kernel_enabled:0, line 212 <- wrt source file 2024-08-06T21:19:57.9358788Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.set_kernel_enabled:0 2024-08-06T21:19:57.9360274Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_kernel:0, line 281 <- wrt source file 2024-08-06T21:19:57.9361867Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_kernel:0 2024-08-06T21:19:57.9363528Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_fake:0, line 400 <- wrt source file 2024-08-06T21:19:57.9413682Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_fake:0 2024-08-06T21:19:57.9415144Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_autograd:0, line 523 <- wrt source file 2024-08-06T21:19:57.9527628Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_autograd:0 2024-08-06T21:19:57.9529037Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_vmap:0, line 697 <- wrt source file 2024-08-06T21:19:57.9640814Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/custom_ops.py::CustomOpDef.register_vmap:0 2024-08-06T21:19:57.9642450Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/fake_class_registry.py::register_fake_class:0, line 184 <- wrt source file 2024-08-06T21:19:57.9643852Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/fake_class_registry.py::register_fake_class:0 2024-08-06T21:19:57.9645225Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/fake_impl.py::FakeImplCtx.new_dynamic_size:0, line 159 <- wrt source file 2024-08-06T21:19:57.9690439Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/fake_impl.py::FakeImplCtx.new_dynamic_size:0 2024-08-06T21:19:57.9691763Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/infer_schema.py::infer_schema:0, line 45 <- wrt source file 2024-08-06T21:19:57.9696237Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/infer_schema.py::infer_schema:0 2024-08-06T21:19:57.9697510Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_logging/_internal.py::set_logs:0, line 409 <- wrt source file 2024-08-06T21:19:57.9698778Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_logging/_internal.py::set_logs:0 2024-08-06T21:19:57.9699998Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_equal:0, line 170 <- wrt source file 2024-08-06T21:19:57.9748372Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_equal:0 2024-08-06T21:19:57.9749673Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::print_assert_equal:0, line 305 <- wrt source file 2024-08-06T21:19:57.9751021Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::print_assert_equal:0 2024-08-06T21:19:57.9752310Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_array_less:0, line 996 <- wrt source file 2024-08-06T21:19:57.9795101Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_array_less:0 2024-08-06T21:19:57.9796421Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_string_equal:0, line 1061 <- wrt source file 2024-08-06T21:19:57.9797762Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_string_equal:0 2024-08-06T21:19:57.9799061Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_allclose:0, line 1282 <- wrt source file 2024-08-06T21:19:57.9812939Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_allclose:0 2024-08-06T21:19:57.9814292Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_array_almost_equal_nulp:0, line 1348 <- wrt source file 2024-08-06T21:19:57.9817196Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_array_almost_equal_nulp:0 2024-08-06T21:19:57.9818580Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_array_max_ulp:0, line 1411 <- wrt source file 2024-08-06T21:19:57.9821864Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_array_max_ulp:0 2024-08-06T21:19:57.9823143Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::nulp_diff:0, line 1456 <- wrt source file 2024-08-06T21:19:57.9824518Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::nulp_diff:0 2024-08-06T21:19:57.9825767Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_warns:0, line 1566 <- wrt source file 2024-08-06T21:19:57.9827818Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py::assert_warns:0 2024-08-06T21:19:57.9829584Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_prims/context.py::TorchRefsMode:0, line 85 <- wrt source file 2024-08-06T21:19:57.9831223Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_prims/context.py::TorchRefsMode:0 2024-08-06T21:19:57.9832821Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/amp/grad_scaler.py::GradScaler:0, line 60 <- wrt source file 2024-08-06T21:19:57.9834099Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/amp/grad_scaler.py::GradScaler:0 2024-08-06T21:19:57.9835435Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/qat/modules/linear_relu.py::LinearReLU:0, line 23 <- wrt source file 2024-08-06T21:19:57.9836936Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/qat/modules/linear_relu.py::LinearReLU:0 2024-08-06T21:19:57.9838510Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/dynamic/modules/linear_relu.py::LinearReLU:0, line 22 <- wrt source file 2024-08-06T21:19:57.9840185Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/dynamic/modules/linear_relu.py::LinearReLU:0 2024-08-06T21:19:57.9841774Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/modules/linear_relu.py::LinearReLU:0, line 25 <- wrt source file 2024-08-06T21:19:57.9843354Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/modules/linear_relu.py::LinearReLU:0 2024-08-06T21:19:57.9844935Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/modules/linear_relu.py::LinearLeakyReLU:0, line 66 <- wrt source file 2024-08-06T21:19:57.9846571Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/modules/linear_relu.py::LinearLeakyReLU:0 2024-08-06T21:19:57.9848142Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/modules/linear_relu.py::LinearTanh:0, line 140 <- wrt source file 2024-08-06T21:19:57.9849841Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/intrinsic/quantized/modules/linear_relu.py::LinearTanh:0 2024-08-06T21:19:57.9851276Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantizable/modules/rnn.py::LSTMCell:0, line 25 <- wrt source file 2024-08-06T21:19:57.9853725Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantizable/modules/rnn.py::LSTMCell:0 2024-08-06T21:19:57.9855185Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantizable/modules/rnn.py::LSTM:0, line 318 <- wrt source file 2024-08-06T21:19:57.9883395Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantizable/modules/rnn.py::LSTM:0 2024-08-06T21:19:57.9885562Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/functional.py::conv1d:0, line 210 <- wrt source file 2024-08-06T21:19:57.9887517Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/functional.py::conv1d:0 2024-08-06T21:19:57.9888815Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/functional.py::conv2d:0, line 282 <- wrt source file 2024-08-06T21:19:57.9890132Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/functional.py::conv2d:0 2024-08-06T21:19:57.9891412Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/functional.py::conv3d:0, line 358 <- wrt source file 2024-08-06T21:19:57.9892861Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/functional.py::conv3d:0 2024-08-06T21:19:57.9894160Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/__init__.py::Quantize:0, line 95 <- wrt source file 2024-08-06T21:19:57.9895630Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/__init__.py::Quantize:0 2024-08-06T21:19:57.9897125Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/__init__.py::DeQuantize:0, line 145 <- wrt source file 2024-08-06T21:19:57.9899085Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/__init__.py::DeQuantize:0 2024-08-06T21:19:57.9900735Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::Conv1d:0, line 42 <- wrt source file 2024-08-06T21:19:57.9902774Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::Conv1d:0 2024-08-06T21:19:57.9904727Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::Conv2d:0, line 123 <- wrt source file 2024-08-06T21:19:57.9906683Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::Conv2d:0 2024-08-06T21:19:57.9908353Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::Conv3d:0, line 207 <- wrt source file 2024-08-06T21:19:57.9909765Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::Conv3d:0 2024-08-06T21:19:57.9911746Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::ConvTranspose1d:0, line 293 <- wrt source file 2024-08-06T21:19:57.9913610Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::ConvTranspose1d:0 2024-08-06T21:19:57.9915720Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::ConvTranspose2d:0, line 375 <- wrt source file 2024-08-06T21:19:57.9917348Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::ConvTranspose2d:0 2024-08-06T21:19:57.9918856Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::ConvTranspose3d:0, line 457 <- wrt source file 2024-08-06T21:19:57.9920929Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/conv.py::ConvTranspose3d:0 2024-08-06T21:19:57.9923594Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/linear.py::Linear:0, line 30 <- wrt source file 2024-08-06T21:19:57.9926234Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/linear.py::Linear:0 2024-08-06T21:19:57.9928879Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::LSTM:0, line 516 <- wrt source file 2024-08-06T21:19:57.9931459Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::LSTM:0 2024-08-06T21:19:57.9933935Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::GRU:0, line 801 <- wrt source file 2024-08-06T21:19:57.9936520Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::GRU:0 2024-08-06T21:19:57.9939511Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::RNNCell:0, line 1203 <- wrt source file 2024-08-06T21:19:57.9942533Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::RNNCell:0 2024-08-06T21:19:57.9945444Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::LSTMCell:0, line 1269 <- wrt source file 2024-08-06T21:19:57.9948480Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::LSTMCell:0 2024-08-06T21:19:57.9951448Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::GRUCell:0, line 1322 <- wrt source file 2024-08-06T21:19:57.9954462Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/dynamic/modules/rnn.py::GRUCell:0 2024-08-06T21:19:57.9957049Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/activation.py::ReLU6:0, line 36 <- wrt source file 2024-08-06T21:19:57.9959595Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/activation.py::ReLU6:0 2024-08-06T21:19:57.9962014Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::Conv2d:0, line 506 <- wrt source file 2024-08-06T21:19:57.9964585Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::Conv2d:0 2024-08-06T21:19:57.9966929Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::Conv3d:0, line 635 <- wrt source file 2024-08-06T21:19:57.9969406Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::Conv3d:0 2024-08-06T21:19:57.9971880Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::ConvTranspose1d:0, line 892 <- wrt source file 2024-08-06T21:19:57.9974641Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::ConvTranspose1d:0 2024-08-06T21:19:57.9977276Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::ConvTranspose2d:0, line 1014 <- wrt source file 2024-08-06T21:19:57.9980069Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::ConvTranspose2d:0 2024-08-06T21:19:57.9982653Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::ConvTranspose3d:0, line 1140 <- wrt source file 2024-08-06T21:19:57.9985293Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py::ConvTranspose3d:0 2024-08-06T21:19:57.9987895Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/embedding_ops.py::Embedding:0, line 112 <- wrt source file 2024-08-06T21:19:57.9990826Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/embedding_ops.py::Embedding:0 2024-08-06T21:19:57.9993518Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/embedding_ops.py::EmbeddingBag:0, line 276 <- wrt source file 2024-08-06T21:19:57.9996333Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/embedding_ops.py::EmbeddingBag:0 2024-08-06T21:19:57.9999196Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/functional_modules.py::FloatFunctional:0, line 24 <- wrt source file 2024-08-06T21:19:58.0002122Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/functional_modules.py::FloatFunctional:0 2024-08-06T21:19:58.0004959Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/functional_modules.py::QFunctional:0, line 177 <- wrt source file 2024-08-06T21:19:58.0007805Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/functional_modules.py::QFunctional:0 2024-08-06T21:19:58.0010375Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/linear.py::Linear:0, line 138 <- wrt source file 2024-08-06T21:19:58.0012818Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/linear.py::Linear:0 2024-08-06T21:19:58.0015922Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/_experimental/activation_sparsifier/activation_sparsifier.py::ActivationSparsifier:0, line 62 <- wrt source file 2024-08-06T21:19:58.0019451Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/_experimental/activation_sparsifier/activation_sparsifier.py::ActivationSparsifier:0 2024-08-06T21:19:58.0022908Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/_experimental/data_scheduler/base_data_scheduler.py::BaseDataScheduler.get_schedule_param:0, line 98 <- wrt source file 2024-08-06T21:19:58.0120221Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/_experimental/data_scheduler/base_data_scheduler.py::BaseDataScheduler.get_schedule_param:0 2024-08-06T21:19:58.0123592Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/_experimental/data_sparsifier/base_data_sparsifier.py::BaseDataSparsifier:0, line 55 <- wrt source file 2024-08-06T21:19:58.0126886Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/_experimental/data_sparsifier/base_data_sparsifier.py::BaseDataSparsifier:0 2024-08-06T21:19:58.0129956Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/scheduler/lambda_scheduler.py::LambdaSL:0, line 22 <- wrt source file 2024-08-06T21:19:58.0132606Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/scheduler/lambda_scheduler.py::LambdaSL:0 2024-08-06T21:19:58.0135342Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/sparsifier/base_sparsifier.py::BaseSparsifier:0, line 49 <- wrt source file 2024-08-06T21:19:58.0138120Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/sparsifier/base_sparsifier.py::BaseSparsifier:0 2024-08-06T21:19:58.0140710Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuse_modules.py::fuse_modules:0, line 178 <- wrt source file 2024-08-06T21:19:58.0143253Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuse_modules.py::fuse_modules:0 2024-08-06T21:19:58.0145879Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_conv_bn:0, line 31 <- wrt source file 2024-08-06T21:19:58.0148574Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_conv_bn:0 2024-08-06T21:19:58.0151245Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_conv_bn_relu:0, line 76 <- wrt source file 2024-08-06T21:19:58.0154018Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_conv_bn_relu:0 2024-08-06T21:19:58.0156710Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_linear_bn:0, line 130 <- wrt source file 2024-08-06T21:19:58.0159442Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_linear_bn:0 2024-08-06T21:19:58.0162202Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_convtranspose_bn:0, line 163 <- wrt source file 2024-08-06T21:19:58.0165224Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fuser_method_mappings.py::fuse_convtranspose_bn:0 2024-08-06T21:19:58.0167790Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/observer.py::_with_args:0, line 93 <- wrt source file 2024-08-06T21:19:58.0170187Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/observer.py::_with_args:0 2024-08-06T21:19:58.0172621Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/observer.py::_with_callable_args:0, line 115 <- wrt source file 2024-08-06T21:19:58.0175252Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/observer.py::_with_callable_args:0 2024-08-06T21:19:58.0177662Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::fuse_fx:0, line 218 <- wrt source file 2024-08-06T21:19:58.0180050Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::fuse_fx:0 2024-08-06T21:19:58.0182428Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::prepare_fx:0, line 286 <- wrt source file 2024-08-06T21:19:58.0184876Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::prepare_fx:0 2024-08-06T21:19:58.0187419Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::prepare_qat_fx:0, line 424 <- wrt source file 2024-08-06T21:19:58.0189950Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::prepare_qat_fx:0 2024-08-06T21:19:58.0192407Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::convert_fx:0, line 595 <- wrt source file 2024-08-06T21:19:58.0194867Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::convert_fx:0 2024-08-06T21:19:58.0197393Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::convert_to_reference_fx:0, line 654 <- wrt source file 2024-08-06T21:19:58.0200083Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::convert_to_reference_fx:0 2024-08-06T21:19:58.0202933Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::_convert_to_reference_decomposed_fx:0, line 706 <- wrt source file 2024-08-06T21:19:58.0205876Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_fx.py::_convert_to_reference_decomposed_fx:0 2024-08-06T21:19:58.0208571Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_pt2e.py::prepare_pt2e:0, line 49 <- wrt source file 2024-08-06T21:19:58.0211102Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_pt2e.py::prepare_pt2e:0 2024-08-06T21:19:58.0213634Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_pt2e.py::prepare_qat_pt2e:0, line 123 <- wrt source file 2024-08-06T21:19:58.0216316Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_pt2e.py::prepare_qat_pt2e:0 2024-08-06T21:19:58.0218845Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_pt2e.py::convert_pt2e:0, line 215 <- wrt source file 2024-08-06T21:19:58.0221387Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/quantize_pt2e.py::convert_pt2e:0 2024-08-06T21:19:58.0223852Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::get_combined_dict:0, line 147 <- wrt source file 2024-08-06T21:19:58.0226303Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::get_combined_dict:0 2024-08-06T21:19:58.0228710Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_path_of_module:0, line 514 <- wrt source file 2024-08-06T21:19:58.0231202Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_path_of_module:0 2024-08-06T21:19:58.0233681Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_signature_locals:0, line 536 <- wrt source file 2024-08-06T21:19:58.0236204Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_signature_locals:0 2024-08-06T21:19:58.0238657Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_default_kwargs:0, line 550 <- wrt source file 2024-08-06T21:19:58.0241134Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_default_kwargs:0 2024-08-06T21:19:58.0243575Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_normalize_kwargs:0, line 572 <- wrt source file 2024-08-06T21:19:58.0246157Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_normalize_kwargs:0 2024-08-06T21:19:58.0248537Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_num_pos_args:0, line 698 <- wrt source file 2024-08-06T21:19:58.0250956Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/utils.py::_get_num_pos_args:0 2024-08-06T21:19:58.0253611Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/backend_config/onednn.py::_fuse_linear_bn_leaky_relu:0, line 85 <- wrt source file 2024-08-06T21:19:58.0256610Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/backend_config/onednn.py::_fuse_linear_bn_leaky_relu:0 2024-08-06T21:19:58.0259418Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report.py::ModelReport:0, line 84 <- wrt source file 2024-08-06T21:19:58.0262313Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report.py::ModelReport:0 2024-08-06T21:19:58.0265215Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/pt2e/prepare.py::_get_edge_or_node_to_group_id:0, line 185 <- wrt source file 2024-08-06T21:19:58.0268061Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/pt2e/prepare.py::_get_edge_or_node_to_group_id:0 2024-08-06T21:19:58.0270930Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/pt2e/utils.py::_replace_literals_with_new_placeholders:0, line 430 <- wrt source file 2024-08-06T21:19:58.0273914Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/pt2e/utils.py::_replace_literals_with_new_placeholders:0 2024-08-06T21:19:58.0276549Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/anomaly_mode.py::detect_anomaly:0, line 27 <- wrt source file 2024-08-06T21:19:58.0278935Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/anomaly_mode.py::detect_anomaly:0 2024-08-06T21:19:58.0281197Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/forward_ad.py::make_dual:0, line 83 <- wrt source file 2024-08-06T21:19:58.0283425Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/forward_ad.py::make_dual:0 2024-08-06T21:19:58.0285639Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/forward_ad.py::unpack_dual:0, line 155 <- wrt source file 2024-08-06T21:19:58.0287922Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/forward_ad.py::unpack_dual:0 2024-08-06T21:19:58.0290154Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/forward_ad.py::dual_level:0, line 191 <- wrt source file 2024-08-06T21:19:58.0292408Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/forward_ad.py::dual_level:0 2024-08-06T21:19:58.0294870Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.save_for_backward:0, line 66 <- wrt source file 2024-08-06T21:19:58.0297471Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.save_for_backward:0 2024-08-06T21:19:58.0300053Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.save_for_forward:0, line 109 <- wrt source file 2024-08-06T21:19:58.0302765Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.save_for_forward:0 2024-08-06T21:19:58.0305274Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.mark_dirty:0, line 160 <- wrt source file 2024-08-06T21:19:58.0307754Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.mark_dirty:0 2024-08-06T21:19:58.0310344Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.mark_non_differentiable:0, line 207 <- wrt source file 2024-08-06T21:19:58.0313098Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.mark_non_differentiable:0 2024-08-06T21:19:58.0315774Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.set_materialize_grads:0, line 236 <- wrt source file 2024-08-06T21:19:58.0318563Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::FunctionCtx.set_materialize_grads:0 2024-08-06T21:19:58.0321430Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::Function:0, line 479 <- wrt source file 2024-08-06T21:19:58.0323630Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/function.py::Function:0 2024-08-06T21:19:58.0325774Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::vjp:0, line 294 <- wrt source file 2024-08-06T21:19:58.0327909Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::vjp:0 2024-08-06T21:19:58.0330031Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::jvp:0, line 396 <- wrt source file 2024-08-06T21:19:58.0332188Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::jvp:0 2024-08-06T21:19:58.0334366Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::jacobian:0, line 631 <- wrt source file 2024-08-06T21:19:58.0336688Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::jacobian:0 2024-08-06T21:19:58.0338880Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::hessian:0, line 885 <- wrt source file 2024-08-06T21:19:58.0341110Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::hessian:0 2024-08-06T21:19:58.0343257Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::vhp:0, line 1001 <- wrt source file 2024-08-06T21:19:58.0345421Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::vhp:0 2024-08-06T21:19:58.0347553Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::hvp:0, line 1100 <- wrt source file 2024-08-06T21:19:58.0349753Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/functional.py::hvp:0 2024-08-06T21:19:58.0351852Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::no_grad:0, line 50 <- wrt source file 2024-08-06T21:19:58.0353992Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::no_grad:0 2024-08-06T21:19:58.0356172Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::enable_grad:0, line 108 <- wrt source file 2024-08-06T21:19:58.0358425Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::enable_grad:0 2024-08-06T21:19:58.0371764Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::set_grad_enabled:0, line 166 <- wrt source file 2024-08-06T21:19:58.0374149Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::set_grad_enabled:0 2024-08-06T21:19:58.0376535Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::inference_mode:0, line 232 <- wrt source file 2024-08-06T21:19:58.0378845Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/grad_mode.py::inference_mode:0 2024-08-06T21:19:58.0381034Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::Node.name:0, line 62 <- wrt source file 2024-08-06T21:19:58.0383194Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::Node.name:0 2024-08-06T21:19:58.0385567Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::Node.register_hook:0, line 112 <- wrt source file 2024-08-06T21:19:58.0387897Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::Node.register_hook:0 2024-08-06T21:19:58.0390224Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::Node.register_prehook:0, line 149 <- wrt source file 2024-08-06T21:19:58.0392605Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::Node.register_prehook:0 2024-08-06T21:19:58.0394913Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::saved_tensors_hooks:0, line 267 <- wrt source file 2024-08-06T21:19:58.0397253Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::saved_tensors_hooks:0 2024-08-06T21:19:58.0399482Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::save_on_cpu:0, line 332 <- wrt source file 2024-08-06T21:19:58.0401650Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::save_on_cpu:0 2024-08-06T21:19:58.0403950Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::disable_saved_tensors_hooks:0, line 389 <- wrt source file 2024-08-06T21:19:58.0406440Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::disable_saved_tensors_hooks:0 2024-08-06T21:19:58.0408864Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::register_multi_grad_hook:0, line 466 <- wrt source file 2024-08-06T21:19:58.0411297Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::register_multi_grad_hook:0 2024-08-06T21:19:58.0413758Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::allow_mutation_on_saved_tensors:0, line 722 <- wrt source file 2024-08-06T21:19:58.0416393Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/graph.py::allow_mutation_on_saved_tensors:0 2024-08-06T21:19:58.0418738Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::profile:0, line 173 <- wrt source file 2024-08-06T21:19:58.0420934Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::profile:0 2024-08-06T21:19:58.0423154Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::record_function:0, line 653 <- wrt source file 2024-08-06T21:19:58.0425503Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::record_function:0 2024-08-06T21:19:58.0427858Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::emit_itt:0, line 787 <- wrt source file 2024-08-06T21:19:58.0430034Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::emit_itt:0 2024-08-06T21:19:58.0432209Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::emit_nvtx:0, line 860 <- wrt source file 2024-08-06T21:19:58.0434414Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/autograd/profiler.py::emit_nvtx:0 2024-08-06T21:19:58.0436590Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_jit_fn:0, line 114 <- wrt source file 2024-08-06T21:19:58.0438799Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_jit_fn:0 2024-08-06T21:19:58.0441059Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_jit_fn:1, line 125 <- wrt source file 2024-08-06T21:19:58.0443275Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_jit_fn:1 2024-08-06T21:19:58.0445453Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_jit_fn:2, line 138 <- wrt source file 2024-08-06T21:19:58.0447658Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_jit_fn:2 2024-08-06T21:19:58.0449982Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_multi_output_jit_fn:0, line 171 <- wrt source file 2024-08-06T21:19:58.0452470Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/jiterator.py::_create_multi_output_jit_fn:0 2024-08-06T21:19:58.0454723Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/profiler.py::profile:0, line 75 <- wrt source file 2024-08-06T21:19:58.0456849Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/profiler.py::profile:0 2024-08-06T21:19:58.0459053Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::DeviceMesh:0, line 212 <- wrt source file 2024-08-06T21:19:58.0461434Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::DeviceMesh:0 2024-08-06T21:19:58.0463997Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::DeviceMesh.__getitem__:0, line 433 <- wrt source file 2024-08-06T21:19:58.0466608Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::DeviceMesh.__getitem__:0 2024-08-06T21:19:58.0469207Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::DeviceMesh.get_local_rank:0, line 607 <- wrt source file 2024-08-06T21:19:58.0471868Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::DeviceMesh.get_local_rank:0 2024-08-06T21:19:58.0474373Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::init_device_mesh:0, line 669 <- wrt source file 2024-08-06T21:19:58.0476852Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/device_mesh.py::init_device_mesh:0 2024-08-06T21:19:58.0479401Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::_coalescing_manager:0, line 2226 <- wrt source file 2024-08-06T21:19:58.0482064Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::_coalescing_manager:0 2024-08-06T21:19:58.0484776Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::batch_isend_irecv:0, line 2318 <- wrt source file 2024-08-06T21:19:58.0487384Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::batch_isend_irecv:0 2024-08-06T21:19:58.0489892Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_reduce:0, line 2427 <- wrt source file 2024-08-06T21:19:58.0492376Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_reduce:0 2024-08-06T21:19:58.0495171Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather_object:0, line 2671 <- wrt source file 2024-08-06T21:19:58.0498203Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather_object:0 2024-08-06T21:19:58.0501252Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::send_object_list:0, line 2871 <- wrt source file 2024-08-06T21:19:58.0503841Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::send_object_list:0 2024-08-06T21:19:58.0506367Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::recv_object_list:0, line 2964 <- wrt source file 2024-08-06T21:19:58.0508945Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::recv_object_list:0 2024-08-06T21:19:58.0511558Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::broadcast_object_list:0, line 3066 <- wrt source file 2024-08-06T21:19:58.0514255Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::broadcast_object_list:0 2024-08-06T21:19:58.0516875Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::scatter_object_list:0, line 3175 <- wrt source file 2024-08-06T21:19:58.0519534Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::scatter_object_list:0 2024-08-06T21:19:58.0522067Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather:0, line 3270 <- wrt source file 2024-08-06T21:19:58.0524783Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather:0 2024-08-06T21:19:58.0527726Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather_into_tensor:0, line 3352 <- wrt source file 2024-08-06T21:19:58.0530858Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather_into_tensor:0 2024-08-06T21:19:58.0533513Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather_coalesced:0, line 3477 <- wrt source file 2024-08-06T21:19:58.0536255Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_gather_coalesced:0 2024-08-06T21:19:58.0538745Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::scatter:0, line 3630 <- wrt source file 2024-08-06T21:19:58.0541176Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::scatter:0 2024-08-06T21:19:58.0543794Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::reduce_scatter_tensor:0, line 3765 <- wrt source file 2024-08-06T21:19:58.0546499Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::reduce_scatter_tensor:0 2024-08-06T21:19:58.0549082Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_to_all_single:0, line 3892 <- wrt source file 2024-08-06T21:19:58.0551682Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_to_all_single:0 2024-08-06T21:19:58.0554184Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_to_all:0, line 4004 <- wrt source file 2024-08-06T21:19:58.0556647Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::all_to_all:0 2024-08-06T21:19:58.0559231Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::monitored_barrier:0, line 4178 <- wrt source file 2024-08-06T21:19:58.0561859Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::monitored_barrier:0 2024-08-06T21:19:58.0564530Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::new_subgroups:0, line 4727 <- wrt source file 2024-08-06T21:19:58.0567069Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::new_subgroups:0 2024-08-06T21:19:58.0569723Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::new_subgroups_by_enumeration:0, line 4836 <- wrt source file 2024-08-06T21:19:58.0572589Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py::new_subgroups_by_enumeration:0 2024-08-06T21:19:58.0575048Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/run.py::__doc__:0, line 87 <- wrt source file 2024-08-06T21:19:58.0577148Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/run.py::__doc__:0 2024-08-06T21:19:58.0579382Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/autograd/__init__.py::context:0, line 39 <- wrt source file 2024-08-06T21:19:58.0581795Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/autograd/__init__.py::context:0 2024-08-06T21:19:58.0584389Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_composable/checkpoint_activation.py::checkpoint:0, line 48 <- wrt source file 2024-08-06T21:19:58.0587206Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_composable/checkpoint_activation.py::checkpoint:0 2024-08-06T21:19:58.0589814Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_composable/contract.py::contract:0, line 46 <- wrt source file 2024-08-06T21:19:58.0592328Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_composable/contract.py::contract:0 2024-08-06T21:19:58.0594823Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_composable/replicate.py::replicate:0, line 187 <- wrt source file 2024-08-06T21:19:58.0597372Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_composable/replicate.py::replicate:0 2024-08-06T21:19:58.0600142Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_optim/__init__.py::named_params_with_sharded_tensor:0, line 30 <- wrt source file 2024-08-06T21:19:58.0603400Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_optim/__init__.py::named_params_with_sharded_tensor:0 2024-08-06T21:19:58.0606328Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/__init__.py::custom_sharded_op_impl:0, line 457 <- wrt source file 2024-08-06T21:19:58.0609221Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/__init__.py::custom_sharded_op_impl:0 2024-08-06T21:19:58.0612061Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/_ops/_common.py::_sharded_op_common:0, line 18 <- wrt source file 2024-08-06T21:19:58.0615012Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/_ops/_common.py::_sharded_op_common:0 2024-08-06T21:19:58.0618018Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/random.py::OffsetBasedRNGTracker._set_pre_op_offset:0, line 224 <- wrt source file 2024-08-06T21:19:58.0620971Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/random.py::OffsetBasedRNGTracker._set_pre_op_offset:0 2024-08-06T21:19:58.0623736Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/ops/_common_rules.py::pointwise_rule:0, line 234 <- wrt source file 2024-08-06T21:19:58.0626426Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/ops/_common_rules.py::pointwise_rule:0 2024-08-06T21:19:58.0629044Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tools/memory_tracker.py::MemoryTracker:0, line 54 <- wrt source file 2024-08-06T21:19:58.0631659Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tools/memory_tracker.py::MemoryTracker:0 2024-08-06T21:19:58.0634127Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/join.py::Join:0, line 143 <- wrt source file 2024-08-06T21:19:58.0636666Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/join.py::Join:0 2024-08-06T21:19:58.0639297Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/__init__.py::register_ddp_comm_hook:0, line 107 <- wrt source file 2024-08-06T21:19:58.0642387Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/__init__.py::register_ddp_comm_hook:0 2024-08-06T21:19:58.0645333Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/debugging_hooks.py::noop_hook:0, line 23 <- wrt source file 2024-08-06T21:19:58.0648356Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/debugging_hooks.py::noop_hook:0 2024-08-06T21:19:58.0651286Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::allreduce_hook:0, line 49 <- wrt source file 2024-08-06T21:19:58.0654373Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::allreduce_hook:0 2024-08-06T21:19:58.0657463Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::fp16_compress_hook:0, line 69 <- wrt source file 2024-08-06T21:19:58.0660648Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::fp16_compress_hook:0 2024-08-06T21:19:58.0663881Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::bf16_compress_hook:0, line 118 <- wrt source file 2024-08-06T21:19:58.0666975Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::bf16_compress_hook:0 2024-08-06T21:19:58.0670058Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::fp16_compress_wrapper:0, line 163 <- wrt source file 2024-08-06T21:19:58.0673200Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::fp16_compress_wrapper:0 2024-08-06T21:19:58.0676285Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::bf16_compress_wrapper:0, line 202 <- wrt source file 2024-08-06T21:19:58.0679525Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py::bf16_compress_wrapper:0 2024-08-06T21:19:58.0682612Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/powerSGD_hook.py::batched_powerSGD_hook:0, line 705 <- wrt source file 2024-08-06T21:19:58.0685829Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/powerSGD_hook.py::batched_powerSGD_hook:0 2024-08-06T21:19:58.0689039Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/quantization_hooks.py::quantization_pertensor_hook:0, line 64 <- wrt source file 2024-08-06T21:19:58.0692433Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/quantization_hooks.py::quantization_pertensor_hook:0 2024-08-06T21:19:58.0695838Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/quantization_hooks.py::quantization_perchannel_hook:0, line 145 <- wrt source file 2024-08-06T21:19:58.0699409Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/quantization_hooks.py::quantization_perchannel_hook:0 2024-08-06T21:19:58.0702384Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict.py::get_state_dict:0, line 1074 <- wrt source file 2024-08-06T21:19:58.0705117Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict.py::get_state_dict:0 2024-08-06T21:19:58.0707831Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict.py::_patch_model_state_dict:0, line 1315 <- wrt source file 2024-08-06T21:19:58.0710752Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict.py::_patch_model_state_dict:0 2024-08-06T21:19:58.0713583Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict.py::_patch_optimizer_state_dict:0, line 1374 <- wrt source file 2024-08-06T21:19:58.0716574Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict.py::_patch_optimizer_state_dict:0 2024-08-06T21:19:58.0719509Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/elastic/rendezvous/api.py::RendezvousHandler.shutdown:0, line 213 <- wrt source file 2024-08-06T21:19:58.0722696Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/elastic/rendezvous/api.py::RendezvousHandler.shutdown:0 2024-08-06T21:19:58.0725578Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/elastic/utils/distributed.py::get_free_port:0, line 136 <- wrt source file 2024-08-06T21:19:58.0728347Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/elastic/utils/distributed.py::get_free_port:0 2024-08-06T21:19:58.0730873Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/api.py::StateDictType:0, line 260 <- wrt source file 2024-08-06T21:19:58.0733253Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/api.py::StateDictType:0 2024-08-06T21:19:58.0735771Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/api.py::FullStateDictConfig:0, line 301 <- wrt source file 2024-08-06T21:19:58.0738371Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/api.py::FullStateDictConfig:0 2024-08-06T21:19:58.0741181Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel:0, line 140 <- wrt source file 2024-08-06T21:19:58.0744282Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel:0 2024-08-06T21:19:58.0747592Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel.shard_full_optim_state_dict:0, line 1486 <- wrt source file 2024-08-06T21:19:58.0751194Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel.shard_full_optim_state_dict:0 2024-08-06T21:19:58.0754785Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel.scatter_full_optim_state_dict:0, line 1606 <- wrt source file 2024-08-06T21:19:58.0758454Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel.scatter_full_optim_state_dict:0 2024-08-06T21:19:58.0761999Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel.rekey_optim_state_dict:0, line 1691 <- wrt source file 2024-08-06T21:19:58.0765633Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py::FullyShardedDataParallel.rekey_optim_state_dict:0 2024-08-06T21:19:58.0768732Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/sharded_grad_scaler.py::ShardedGradScaler:0, line 51 <- wrt source file 2024-08-06T21:19:58.0771522Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/sharded_grad_scaler.py::ShardedGradScaler:0 2024-08-06T21:19:58.0774060Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/wrap.py::CustomPolicy:0, line 236 <- wrt source file 2024-08-06T21:19:58.0776483Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/wrap.py::CustomPolicy:0 2024-08-06T21:19:58.0778885Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/functional.py::_all_gather_base:0, line 134 <- wrt source file 2024-08-06T21:19:58.0781404Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/functional.py::_all_gather_base:0 2024-08-06T21:19:58.0784306Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/apply_optimizer_in_backward.py::_apply_optimizer_in_backward:0, line 42 <- wrt source file 2024-08-06T21:19:58.0787433Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/apply_optimizer_in_backward.py::_apply_optimizer_in_backward:0 2024-08-06T21:19:58.0790503Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/apply_optimizer_in_backward.py::_get_in_backward_optimizers:0, line 113 <- wrt source file 2024-08-06T21:19:58.0793604Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/apply_optimizer_in_backward.py::_get_in_backward_optimizers:0 2024-08-06T21:19:58.0796464Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/named_optimizer.py::_NamedOptimizer:0, line 53 <- wrt source file 2024-08-06T21:19:58.0799220Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/named_optimizer.py::_NamedOptimizer:0 2024-08-06T21:19:58.0801870Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/utils.py::register_functional_optim:0, line 38 <- wrt source file 2024-08-06T21:19:58.0804543Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/utils.py::register_functional_optim:0 2024-08-06T21:19:58.0807048Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/_IR.py::pipe_split:0, line 335 <- wrt source file 2024-08-06T21:19:58.0809473Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/_IR.py::pipe_split:0 2024-08-06T21:19:58.0812150Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/microbatch.py::TensorChunkSpec.from_tuple:0, line 82 <- wrt source file 2024-08-06T21:19:58.0815180Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/microbatch.py::TensorChunkSpec.from_tuple:0 2024-08-06T21:19:58.0818092Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/microbatch.py::TensorChunkSpec.from_dict:0, line 101 <- wrt source file 2024-08-06T21:19:58.0821023Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/microbatch.py::TensorChunkSpec.from_dict:0 2024-08-06T21:19:58.0823542Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::_wait_all:0, line 175 <- wrt source file 2024-08-06T21:19:58.0825772Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::_wait_all:0 2024-08-06T21:19:58.0827996Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::shutdown:0, line 346 <- wrt source file 2024-08-06T21:19:58.0830243Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::shutdown:0 2024-08-06T21:19:58.0832409Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::remote:0, line 605 <- wrt source file 2024-08-06T21:19:58.0834589Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::remote:0 2024-08-06T21:19:58.0836770Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::rpc_sync:0, line 785 <- wrt source file 2024-08-06T21:19:58.0839007Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::rpc_sync:0 2024-08-06T21:19:58.0841265Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::rpc_async:0, line 877 <- wrt source file 2024-08-06T21:19:58.0843537Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/api.py::rpc_async:0 2024-08-06T21:19:58.0846238Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/server_process_global_profiler.py::_server_process_global_profile:0, line 61 <- wrt source file 2024-08-06T21:19:58.0849443Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/server_process_global_profiler.py::_server_process_global_profile:0 2024-08-06T21:19:58.0852364Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/api.py::parallelize_module:0, line 54 <- wrt source file 2024-08-06T21:19:58.0855139Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/api.py::parallelize_module:0 2024-08-06T21:19:58.0857964Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/ddp.py::_pre_dp_module_transform:0, line 82 <- wrt source file 2024-08-06T21:19:58.0860783Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/ddp.py::_pre_dp_module_transform:0 2024-08-06T21:19:58.0863650Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/loss.py::loss_parallel:0, line 54 <- wrt source file 2024-08-06T21:19:58.0866322Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/loss.py::loss_parallel:0 2024-08-06T21:19:58.0868984Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py::ColwiseParallel:0, line 62 <- wrt source file 2024-08-06T21:19:58.0871722Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py::ColwiseParallel:0 2024-08-06T21:19:58.0874420Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py::RowwiseParallel:0, line 180 <- wrt source file 2024-08-06T21:19:58.0877161Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py::RowwiseParallel:0 2024-08-06T21:19:58.0879864Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py::SequenceParallel:0, line 308 <- wrt source file 2024-08-06T21:19:58.0882645Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py::SequenceParallel:0 2024-08-06T21:19:58.0885146Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/bernoulli.py::Bernoulli:0, line 29 <- wrt source file 2024-08-06T21:19:58.0887514Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/bernoulli.py::Bernoulli:0 2024-08-06T21:19:58.0889714Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/beta.py::Beta:0, line 19 <- wrt source file 2024-08-06T21:19:58.0891842Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/beta.py::Beta:0 2024-08-06T21:19:58.0894024Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/binomial.py::Binomial:0, line 28 <- wrt source file 2024-08-06T21:19:58.0896375Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/binomial.py::Binomial:0 2024-08-06T21:19:58.0898719Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/categorical.py::Categorical:0, line 40 <- wrt source file 2024-08-06T21:19:58.0901311Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/categorical.py::Categorical:0 2024-08-06T21:19:58.0903587Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/cauchy.py::Cauchy:0, line 22 <- wrt source file 2024-08-06T21:19:58.0905811Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/cauchy.py::Cauchy:0 2024-08-06T21:19:58.0907951Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/chi2.py::Chi2:0, line 15 <- wrt source file 2024-08-06T21:19:58.0910067Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/chi2.py::Chi2:0 2024-08-06T21:19:58.0912345Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/constraints.py::is_dependent:0, line 160 <- wrt source file 2024-08-06T21:19:58.0914838Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/constraints.py::is_dependent:0 2024-08-06T21:19:58.0917444Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/constraints.py::_DependentProperty:0, line 181 <- wrt source file 2024-08-06T21:19:58.0920021Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/constraints.py::_DependentProperty:0 2024-08-06T21:19:58.0923341Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/continuous_bernoulli.py::ContinuousBernoulli:0, line 33 <- wrt source file 2024-08-06T21:19:58.0926735Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/continuous_bernoulli.py::ContinuousBernoulli:0 2024-08-06T21:19:58.0929586Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/dirichlet.py::Dirichlet:0, line 38 <- wrt source file 2024-08-06T21:19:58.0932017Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/dirichlet.py::Dirichlet:0 2024-08-06T21:19:58.0934480Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/exponential.py::Exponential:0, line 18 <- wrt source file 2024-08-06T21:19:58.0937129Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/exponential.py::Exponential:0 2024-08-06T21:19:58.0939721Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/fishersnedecor.py::FisherSnedecor:0, line 20 <- wrt source file 2024-08-06T21:19:58.0942414Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/fishersnedecor.py::FisherSnedecor:0 2024-08-06T21:19:58.0944830Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/gamma.py::Gamma:0, line 22 <- wrt source file 2024-08-06T21:19:58.0947106Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/gamma.py::Gamma:0 2024-08-06T21:19:58.0949430Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/geometric.py::Geometric:0, line 34 <- wrt source file 2024-08-06T21:19:58.0951867Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/geometric.py::Geometric:0 2024-08-06T21:19:58.0954113Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/gumbel.py::Gumbel:0, line 21 <- wrt source file 2024-08-06T21:19:58.0956346Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/gumbel.py::Gumbel:0 2024-08-06T21:19:58.0958606Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/half_cauchy.py::HalfCauchy:0, line 23 <- wrt source file 2024-08-06T21:19:58.0961163Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/half_cauchy.py::HalfCauchy:0 2024-08-06T21:19:58.0963670Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/half_normal.py::HalfNormal:0, line 23 <- wrt source file 2024-08-06T21:19:58.0966095Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/half_normal.py::HalfNormal:0 2024-08-06T21:19:58.0968493Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/independent.py::Independent:0, line 22 <- wrt source file 2024-08-06T21:19:58.0970966Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/independent.py::Independent:0 2024-08-06T21:19:58.0973394Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/inverse_gamma.py::InverseGamma:0, line 21 <- wrt source file 2024-08-06T21:19:58.0976067Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/inverse_gamma.py::InverseGamma:0 2024-08-06T21:19:58.0978518Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/kumaraswamy.py::Kumaraswamy:0, line 28 <- wrt source file 2024-08-06T21:19:58.0980983Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/kumaraswamy.py::Kumaraswamy:0 2024-08-06T21:19:58.0983294Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/laplace.py::Laplace:0, line 18 <- wrt source file 2024-08-06T21:19:58.0985562Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/laplace.py::Laplace:0 2024-08-06T21:19:58.0987876Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/lkj_cholesky.py::LKJCholesky:0, line 41 <- wrt source file 2024-08-06T21:19:58.0990331Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/lkj_cholesky.py::LKJCholesky:0 2024-08-06T21:19:58.0992679Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/log_normal.py::LogNormal:0, line 20 <- wrt source file 2024-08-06T21:19:58.0995044Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/log_normal.py::LogNormal:0 2024-08-06T21:19:58.0997477Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/logistic_normal.py::LogisticNormal:0, line 25 <- wrt source file 2024-08-06T21:19:58.1000074Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/logistic_normal.py::LogisticNormal:0 2024-08-06T21:19:58.1002879Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/lowrank_multivariate_normal.py::LowRankMultivariateNormal:0, line 60 <- wrt source file 2024-08-06T21:19:58.1005949Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/lowrank_multivariate_normal.py::LowRankMultivariateNormal:0 2024-08-06T21:19:58.1008652Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/multinomial.py::Multinomial:0, line 36 <- wrt source file 2024-08-06T21:19:58.1011108Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/multinomial.py::Multinomial:0 2024-08-06T21:19:58.1013700Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/multivariate_normal.py::MultivariateNormal:0, line 100 <- wrt source file 2024-08-06T21:19:58.1016531Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/multivariate_normal.py::MultivariateNormal:0 2024-08-06T21:19:58.1019065Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/normal.py::Normal:0, line 20 <- wrt source file 2024-08-06T21:19:58.1021284Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/normal.py::Normal:0 2024-08-06T21:19:58.1023719Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/one_hot_categorical.py::OneHotCategorical:0, line 30 <- wrt source file 2024-08-06T21:19:58.1026427Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/one_hot_categorical.py::OneHotCategorical:0 2024-08-06T21:19:58.1028859Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/pareto.py::Pareto:0, line 17 <- wrt source file 2024-08-06T21:19:58.1031087Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/pareto.py::Pareto:0 2024-08-06T21:19:58.1033371Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/poisson.py::Poisson:0, line 23 <- wrt source file 2024-08-06T21:19:58.1035646Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/poisson.py::Poisson:0 2024-08-06T21:19:58.1037894Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/studentT.py::StudentT:0, line 20 <- wrt source file 2024-08-06T21:19:58.1040201Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/studentT.py::StudentT:0 2024-08-06T21:19:58.1042568Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/transforms.py::CatTransform:0, line 1033 <- wrt source file 2024-08-06T21:19:58.1045031Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/transforms.py::CatTransform:0 2024-08-06T21:19:58.1047492Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/transforms.py::StackTransform:0, line 1139 <- wrt source file 2024-08-06T21:19:58.1050005Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/transforms.py::StackTransform:0 2024-08-06T21:19:58.1052710Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/transforms.py::CumulativeDistributionTransform:0, line 1213 <- wrt source file 2024-08-06T21:19:58.1055666Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/transforms.py::CumulativeDistributionTransform:0 2024-08-06T21:19:58.1058184Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/uniform.py::Uniform:0, line 20 <- wrt source file 2024-08-06T21:19:58.1060462Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/uniform.py::Uniform:0 2024-08-06T21:19:58.1062712Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/utils.py::clamp_probs:0, line 107 <- wrt source file 2024-08-06T21:19:58.1065157Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/utils.py::clamp_probs:0 2024-08-06T21:19:58.1067428Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/von_mises.py::VonMises:0, line 115 <- wrt source file 2024-08-06T21:19:58.1069741Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/von_mises.py::VonMises:0 2024-08-06T21:19:58.1071975Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/weibull.py::Weibull:0, line 19 <- wrt source file 2024-08-06T21:19:58.1074241Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/weibull.py::Weibull:0 2024-08-06T21:19:58.1076603Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/wishart.py::Wishart:0, line 39 <- wrt source file 2024-08-06T21:19:58.1078862Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/wishart.py::Wishart:0 2024-08-06T21:19:58.1081178Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/dynamic_shapes.py::ShapesCollection:0, line 655 <- wrt source file 2024-08-06T21:19:58.1083640Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/export/dynamic_shapes.py::ShapesCollection:0 2024-08-06T21:19:58.1085827Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/graph.py::_snake_case:0, line 84 <- wrt source file 2024-08-06T21:19:58.1087879Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/graph.py::_snake_case:0 2024-08-06T21:19:58.1090144Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/graph.py::Graph.eliminate_dead_code:0, line 1599 <- wrt source file 2024-08-06T21:19:58.1092493Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/graph.py::Graph.eliminate_dead_code:0 2024-08-06T21:19:58.1094760Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/graph.py::Graph.on_generate_code:0, line 1673 <- wrt source file 2024-08-06T21:19:58.1097048Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/graph.py::Graph.on_generate_code:0 2024-08-06T21:19:58.1099250Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/interpreter.py::Interpreter:0, line 41 <- wrt source file 2024-08-06T21:19:58.1101445Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/interpreter.py::Interpreter:0 2024-08-06T21:19:58.1103628Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/interpreter.py::Transformer:0, line 407 <- wrt source file 2024-08-06T21:19:58.1105817Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/interpreter.py::Transformer:0 2024-08-06T21:19:58.1108074Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/subgraph_rewriter.py::replace_pattern:0, line 114 <- wrt source file 2024-08-06T21:19:58.1110463Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/subgraph_rewriter.py::replace_pattern:0 2024-08-06T21:19:58.1112675Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/tensor_type.py::TensorType:0, line 12 <- wrt source file 2024-08-06T21:19:58.1114812Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/tensor_type.py::TensorType:0 2024-08-06T21:19:58.1116952Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/tensor_type.py::is_consistent:0, line 63 <- wrt source file 2024-08-06T21:19:58.1119145Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/tensor_type.py::is_consistent:0 2024-08-06T21:19:58.1121300Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/tensor_type.py::is_more_precise:0, line 89 <- wrt source file 2024-08-06T21:19:58.1123522Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/tensor_type.py::is_more_precise:0 2024-08-06T21:19:58.1125989Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/rewriter.py::AST_Rewriter.visit_AnnAssign:0, line 94 <- wrt source file 2024-08-06T21:19:58.1128736Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/rewriter.py::AST_Rewriter.visit_AnnAssign:0 2024-08-06T21:19:58.1131383Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/core.py::reify:0, line 43 <- wrt source file 2024-08-06T21:19:58.1133868Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/core.py::reify:0 2024-08-06T21:19:58.1136485Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/match.py::VarDispatcher:0, line 43 <- wrt source file 2024-08-06T21:19:58.1139174Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/match.py::VarDispatcher:0 2024-08-06T21:19:58.1141748Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/more.py::unifiable:0, line 11 <- wrt source file 2024-08-06T21:19:58.1144322Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/more.py::unifiable:0 2024-08-06T21:19:58.1146941Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/more.py::reify_object:0, line 37 <- wrt source file 2024-08-06T21:19:58.1149564Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/more.py::reify_object:0 2024-08-06T21:19:58.1152116Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/more.py::unify_object:0, line 92 <- wrt source file 2024-08-06T21:19:58.1154735Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/more.py::unify_object:0 2024-08-06T21:19:58.1157381Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::merge:0, line 22 <- wrt source file 2024-08-06T21:19:58.1160212Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::merge:0 2024-08-06T21:19:58.1163126Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::merge_with:0, line 49 <- wrt source file 2024-08-06T21:19:58.1166005Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::merge_with:0 2024-08-06T21:19:58.1168792Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::valmap:0, line 75 <- wrt source file 2024-08-06T21:19:58.1171595Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::valmap:0 2024-08-06T21:19:58.1174345Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::keymap:0, line 91 <- wrt source file 2024-08-06T21:19:58.1177192Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::keymap:0 2024-08-06T21:19:58.1179954Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::itemmap:0, line 107 <- wrt source file 2024-08-06T21:19:58.1182785Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::itemmap:0 2024-08-06T21:19:58.1185598Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::valfilter:0, line 123 <- wrt source file 2024-08-06T21:19:58.1188461Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::valfilter:0 2024-08-06T21:19:58.1191424Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::keyfilter:0, line 143 <- wrt source file 2024-08-06T21:19:58.1194302Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::keyfilter:0 2024-08-06T21:19:58.1197165Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::itemfilter:0, line 163 <- wrt source file 2024-08-06T21:19:58.1200054Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::itemfilter:0 2024-08-06T21:19:58.1202853Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::assoc:0, line 189 <- wrt source file 2024-08-06T21:19:58.1205649Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::assoc:0 2024-08-06T21:19:58.1208490Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::dissoc:0, line 206 <- wrt source file 2024-08-06T21:19:58.1211279Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::dissoc:0 2024-08-06T21:19:58.1214021Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::first:0, line 393 <- wrt source file 2024-08-06T21:19:58.1216862Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py::first:0 2024-08-06T21:19:58.1219553Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::transitive_get:0, line 13 <- wrt source file 2024-08-06T21:19:58.1222253Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::transitive_get:0 2024-08-06T21:19:58.1224858Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::_toposort:0, line 40 <- wrt source file 2024-08-06T21:19:58.1227454Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::_toposort:0 2024-08-06T21:19:58.1230031Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::reverse_dict:0, line 68 <- wrt source file 2024-08-06T21:19:58.1232678Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::reverse_dict:0 2024-08-06T21:19:58.1235215Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::freeze:0, line 93 <- wrt source file 2024-08-06T21:19:58.1237761Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/utils.py::freeze:0 2024-08-06T21:19:58.1240315Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/variable.py::variables:0, line 63 <- wrt source file 2024-08-06T21:19:58.1242979Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/variable.py::variables:0 2024-08-06T21:19:58.1245784Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/core.py::dispatch:0, line 19 <- wrt source file 2024-08-06T21:19:58.1248756Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/core.py::dispatch:0 2024-08-06T21:19:58.1251868Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher:0, line 99 <- wrt source file 2024-08-06T21:19:58.1255079Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher:0 2024-08-06T21:19:58.1258302Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher.register:0, line 123 <- wrt source file 2024-08-06T21:19:58.1261674Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher.register:0 2024-08-06T21:19:58.1265085Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher.add:0, line 175 <- wrt source file 2024-08-06T21:19:58.1268434Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher.add:0 2024-08-06T21:19:58.1271699Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher.dispatch:0, line 284 <- wrt source file 2024-08-06T21:19:58.1275074Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::Dispatcher.dispatch:0 2024-08-06T21:19:58.1278314Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::str_signature:0, line 411 <- wrt source file 2024-08-06T21:19:58.1281531Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/dispatcher.py::str_signature:0 2024-08-06T21:19:58.1284642Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::expand_tuples:0, line 16 <- wrt source file 2024-08-06T21:19:58.1287732Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::expand_tuples:0 2024-08-06T21:19:58.1290711Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::_toposort:0, line 39 <- wrt source file 2024-08-06T21:19:58.1293702Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::_toposort:0 2024-08-06T21:19:58.1296732Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::reverse_dict:0, line 67 <- wrt source file 2024-08-06T21:19:58.1299810Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::reverse_dict:0 2024-08-06T21:19:58.1302783Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::groupby:0, line 86 <- wrt source file 2024-08-06T21:19:58.1305765Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::groupby:0 2024-08-06T21:19:58.1308676Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::typename:0, line 116 <- wrt source file 2024-08-06T21:19:58.1311675Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/utils.py::typename:0 2024-08-06T21:19:58.1314805Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/variadic.py::isvariadic:0, line 46 <- wrt source file 2024-08-06T21:19:58.1317904Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/variadic.py::isvariadic:0 2024-08-06T21:19:58.1320908Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/variadic.py::Variadic:0, line 79 <- wrt source file 2024-08-06T21:19:58.1323990Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/multipledispatch/variadic.py::Variadic:0 2024-08-06T21:19:58.1326771Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/graph_drawer.py::FxGraphDrawer.get_dot_graph:0, line 116 <- wrt source file 2024-08-06T21:19:58.1329438Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/graph_drawer.py::FxGraphDrawer.get_dot_graph:0 2024-08-06T21:19:58.1331914Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/shape_prop.py::ShapeProp:0, line 81 <- wrt source file 2024-08-06T21:19:58.1334255Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/shape_prop.py::ShapeProp:0 2024-08-06T21:19:58.1336579Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/split_module.py::split_module:0, line 76 <- wrt source file 2024-08-06T21:19:58.1338931Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/split_module.py::split_module:0 2024-08-06T21:19:58.1341745Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/utils/matcher_with_name_node_map_utils.py::SubgraphMatcherWithNameNodeMap:0, line 53 <- wrt source file 2024-08-06T21:19:58.1345023Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/passes/utils/matcher_with_name_node_map_utils.py::SubgraphMatcherWithNameNodeMap:0 2024-08-06T21:19:58.1347854Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/_check.py::AttributeTypeIsSupportedChecker:0, line 36 <- wrt source file 2024-08-06T21:19:58.1350381Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/_check.py::AttributeTypeIsSupportedChecker:0 2024-08-06T21:19:58.1352847Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/mobile/__init__.py::_load_for_lite_interpreter:0, line 22 <- wrt source file 2024-08-06T21:19:58.1355355Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/mobile/__init__.py::_load_for_lite_interpreter:0 2024-08-06T21:19:58.1357926Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/mobile/__init__.py::_get_mobile_model_contained_types:0, line 122 <- wrt source file 2024-08-06T21:19:58.1360570Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/mobile/__init__.py::_get_mobile_model_contained_types:0 2024-08-06T21:19:58.1363195Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/mobile/__init__.py::_get_model_ops_and_info:0, line 214 <- wrt source file 2024-08-06T21:19:58.1365648Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/jit/mobile/__init__.py::_get_model_ops_and_info:0 2024-08-06T21:19:58.1367901Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/masked/_ops.py::logaddexp:0, line 1511 <- wrt source file 2024-08-06T21:19:58.1369957Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/masked/_ops.py::logaddexp:0 2024-08-06T21:19:58.1372211Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/masked/maskedtensor/core.py::is_masked_tensor:0, line 25 <- wrt source file 2024-08-06T21:19:58.1374889Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/masked/maskedtensor/core.py::is_masked_tensor:0 2024-08-06T21:19:58.1377418Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::fractional_max_pool2d_with_indices:0, line 467 <- wrt source file 2024-08-06T21:19:58.1380009Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::fractional_max_pool2d_with_indices:0 2024-08-06T21:19:58.1382571Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::fractional_max_pool3d_with_indices:0, line 586 <- wrt source file 2024-08-06T21:19:58.2174649Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::fractional_max_pool3d_with_indices:0 2024-08-06T21:19:58.2196404Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::gumbel_softmax:0, line 2181 <- wrt source file 2024-08-06T21:19:58.2205218Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::gumbel_softmax:0 2024-08-06T21:19:58.2207725Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::embedding:0, line 2487 <- wrt source file 2024-08-06T21:19:58.2214616Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::embedding:0 2024-08-06T21:19:58.2216866Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::embedding_bag:0, line 2627 <- wrt source file 2024-08-06T21:19:58.2223787Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::embedding_bag:0 2024-08-06T21:19:58.2226174Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::ctc_loss:0, line 3049 <- wrt source file 2024-08-06T21:19:58.2240601Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::ctc_loss:0 2024-08-06T21:19:58.2242685Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::nll_loss:0, line 3126 <- wrt source file 2024-08-06T21:19:58.2247304Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::nll_loss:0 2024-08-06T21:19:58.2249784Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::cross_entropy:0, line 3451 <- wrt source file 2024-08-06T21:19:58.2258494Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::cross_entropy:0 2024-08-06T21:19:58.2261107Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::binary_cross_entropy:0, line 3523 <- wrt source file 2024-08-06T21:19:58.2265071Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::binary_cross_entropy:0 2024-08-06T21:19:58.2267517Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::binary_cross_entropy_with_logits:0, line 3600 <- wrt source file 2024-08-06T21:19:58.2272081Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::binary_cross_entropy_with_logits:0 2024-08-06T21:19:58.2274778Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::pad:0, line 5065 <- wrt source file 2024-08-06T21:19:58.2281126Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/functional.py::pad:0 2024-08-06T21:19:58.2283119Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv1d_input:0, line 32 <- wrt source file 2024-08-06T21:19:58.2288943Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv1d_input:0 2024-08-06T21:19:58.2290965Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv1d_weight:0, line 79 <- wrt source file 2024-08-06T21:19:58.2294025Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv1d_weight:0 2024-08-06T21:19:58.2296089Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv2d_input:0, line 130 <- wrt source file 2024-08-06T21:19:58.2301528Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv2d_input:0 2024-08-06T21:19:58.2303550Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv2d_weight:0, line 177 <- wrt source file 2024-08-06T21:19:58.2306632Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv2d_weight:0 2024-08-06T21:19:58.2308785Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv3d_input:0, line 228 <- wrt source file 2024-08-06T21:19:58.2339215Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv3d_input:0 2024-08-06T21:19:58.2341914Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv3d_weight:0, line 275 <- wrt source file 2024-08-06T21:19:58.2358628Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/grad.py::conv3d_weight:0 2024-08-06T21:19:58.2360994Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::calculate_gain:0, line 102 <- wrt source file 2024-08-06T21:19:58.2363518Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::calculate_gain:0 2024-08-06T21:19:58.2365746Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::uniform_:0, line 159 <- wrt source file 2024-08-06T21:19:58.2367710Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::uniform_:0 2024-08-06T21:19:58.2369638Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::normal_:0, line 186 <- wrt source file 2024-08-06T21:19:58.2371588Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::normal_:0 2024-08-06T21:19:58.2373553Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::trunc_normal_:0, line 221 <- wrt source file 2024-08-06T21:19:58.2375620Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::trunc_normal_:0 2024-08-06T21:19:58.2377601Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::constant_:0, line 235 <- wrt source file 2024-08-06T21:19:58.2379620Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::constant_:0 2024-08-06T21:19:58.2381519Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::ones_:0, line 252 <- wrt source file 2024-08-06T21:19:58.2383416Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::ones_:0 2024-08-06T21:19:58.2385297Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::zeros_:0, line 265 <- wrt source file 2024-08-06T21:19:58.2387222Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::zeros_:0 2024-08-06T21:19:58.2389091Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::eye_:0, line 281 <- wrt source file 2024-08-06T21:19:58.2391161Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::eye_:0 2024-08-06T21:19:58.2393044Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::dirac_:0, line 303 <- wrt source file 2024-08-06T21:19:58.2395436Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::dirac_:0 2024-08-06T21:19:58.2397525Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::xavier_uniform_:0, line 389 <- wrt source file 2024-08-06T21:19:58.2399725Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::xavier_uniform_:0 2024-08-06T21:19:58.2401709Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::xavier_normal_:0, line 429 <- wrt source file 2024-08-06T21:19:58.2403923Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::xavier_normal_:0 2024-08-06T21:19:58.2406217Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::kaiming_uniform_:0, line 488 <- wrt source file 2024-08-06T21:19:58.2408457Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::kaiming_uniform_:0 2024-08-06T21:19:58.2410457Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::kaiming_normal_:0, line 553 <- wrt source file 2024-08-06T21:19:58.2412616Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::kaiming_normal_:0 2024-08-06T21:19:58.2414723Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::orthogonal_:0, line 592 <- wrt source file 2024-08-06T21:19:58.2416866Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::orthogonal_:0 2024-08-06T21:19:58.2418870Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::sparse_:0, line 645 <- wrt source file 2024-08-06T21:19:58.2420968Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/init.py::sparse_:0 2024-08-06T21:19:58.2423180Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/attention/__init__.py::sdpa_kernel:0, line 81 <- wrt source file 2024-08-06T21:19:58.2425520Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/attention/__init__.py::sdpa_kernel:0 2024-08-06T21:19:58.2427668Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/attention/bias.py::CausalBias:0, line 94 <- wrt source file 2024-08-06T21:19:58.2430062Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/attention/bias.py::CausalBias:0 2024-08-06T21:19:58.2432303Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Threshold:0, line 70 <- wrt source file 2024-08-06T21:19:58.2434633Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Threshold:0 2024-08-06T21:19:58.2437013Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::ReLU:0, line 112 <- wrt source file 2024-08-06T21:19:58.2439221Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::ReLU:0 2024-08-06T21:19:58.2441402Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::RReLU:0, line 171 <- wrt source file 2024-08-06T21:19:58.2443809Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::RReLU:0 2024-08-06T21:19:58.2445938Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardtanh:0, line 227 <- wrt source file 2024-08-06T21:19:58.2448591Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardtanh:0 2024-08-06T21:19:58.2450747Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::ReLU6:0, line 292 <- wrt source file 2024-08-06T21:19:58.2453143Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::ReLU6:0 2024-08-06T21:19:58.2455592Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Sigmoid:0, line 320 <- wrt source file 2024-08-06T21:19:58.2458383Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Sigmoid:0 2024-08-06T21:19:58.2460889Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardsigmoid:0, line 352 <- wrt source file 2024-08-06T21:19:58.2463800Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardsigmoid:0 2024-08-06T21:19:58.2466286Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Tanh:0, line 385 <- wrt source file 2024-08-06T21:19:58.2469032Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Tanh:0 2024-08-06T21:19:58.2471426Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::SiLU:0, line 418 <- wrt source file 2024-08-06T21:19:58.2474107Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::SiLU:0 2024-08-06T21:19:58.2476496Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Mish:0, line 457 <- wrt source file 2024-08-06T21:19:58.2478884Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Mish:0 2024-08-06T21:19:58.2481277Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardswish:0, line 502 <- wrt source file 2024-08-06T21:19:58.2483893Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardswish:0 2024-08-06T21:19:58.2486088Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::ELU:0, line 545 <- wrt source file 2024-08-06T21:19:58.2488599Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::ELU:0 2024-08-06T21:19:58.2490739Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::CELU:0, line 587 <- wrt source file 2024-08-06T21:19:58.2493217Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::CELU:0 2024-08-06T21:19:58.2495421Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::SELU:0, line 640 <- wrt source file 2024-08-06T21:19:58.2497948Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::SELU:0 2024-08-06T21:19:58.2500172Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::GLU:0, line 678 <- wrt source file 2024-08-06T21:19:58.2502982Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::GLU:0 2024-08-06T21:19:58.2505120Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::GELU:0, line 720 <- wrt source file 2024-08-06T21:19:58.2510621Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::GELU:0 2024-08-06T21:19:58.2513054Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardshrink:0, line 763 <- wrt source file 2024-08-06T21:19:58.2515385Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Hardshrink:0 2024-08-06T21:19:58.2517653Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::LeakyReLU:0, line 812 <- wrt source file 2024-08-06T21:19:58.2519935Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::LeakyReLU:0 2024-08-06T21:19:58.2522186Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::LogSigmoid:0, line 848 <- wrt source file 2024-08-06T21:19:58.2524499Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::LogSigmoid:0 2024-08-06T21:19:58.2526829Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softplus:0, line 881 <- wrt source file 2024-08-06T21:19:58.2529093Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softplus:0 2024-08-06T21:19:58.2531355Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softshrink:0, line 924 <- wrt source file 2024-08-06T21:19:58.2534641Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softshrink:0 2024-08-06T21:19:58.2537184Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::MultiheadAttention:0, line 1026 <- wrt source file 2024-08-06T21:19:58.2539559Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::MultiheadAttention:0 2024-08-06T21:19:58.2542008Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::PReLU:0, line 1489 <- wrt source file 2024-08-06T21:19:58.2544127Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::PReLU:0 2024-08-06T21:19:58.2546440Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softsign:0, line 1531 <- wrt source file 2024-08-06T21:19:58.2548773Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softsign:0 2024-08-06T21:19:58.2551491Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Tanhshrink:0, line 1554 <- wrt source file 2024-08-06T21:19:58.2554187Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Tanhshrink:0 2024-08-06T21:19:58.2556873Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softmin:0, line 1589 <- wrt source file 2024-08-06T21:19:58.2559592Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softmin:0 2024-08-06T21:19:58.2562107Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softmax:0, line 1647 <- wrt source file 2024-08-06T21:19:58.2565090Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softmax:0 2024-08-06T21:19:58.2567590Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softmax2d:0, line 1688 <- wrt source file 2024-08-06T21:19:58.2570410Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::Softmax2d:0 2024-08-06T21:19:58.2573213Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::LogSoftmax:0, line 1724 <- wrt source file 2024-08-06T21:19:58.2576168Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/activation.py::LogSoftmax:0 2024-08-06T21:19:58.2578851Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py::BatchNorm1d:0, line 330 <- wrt source file 2024-08-06T21:19:58.2584902Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py::BatchNorm1d:0 2024-08-06T21:19:58.2587636Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py::BatchNorm2d:0, line 441 <- wrt source file 2024-08-06T21:19:58.2821837Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py::BatchNorm2d:0 2024-08-06T21:19:58.2824634Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py::BatchNorm3d:0, line 552 <- wrt source file 2024-08-06T21:19:58.5451677Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py::BatchNorm3d:0 2024-08-06T21:19:58.5617604Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/channelshuffle.py::ChannelShuffle:0, line 21 <- wrt source file 2024-08-06T21:19:58.5638424Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/channelshuffle.py::ChannelShuffle:0 2024-08-06T21:19:58.5640828Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::Sequential:0, line 86 <- wrt source file 2024-08-06T21:19:58.5643121Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::Sequential:0 2024-08-06T21:19:58.5645396Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ModuleList:0, line 292 <- wrt source file 2024-08-06T21:19:58.5647709Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ModuleList:0 2024-08-06T21:19:58.5649966Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ModuleDict:0, line 466 <- wrt source file 2024-08-06T21:19:58.5652257Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ModuleDict:0 2024-08-06T21:19:58.5654539Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ParameterList:0, line 598 <- wrt source file 2024-08-06T21:19:58.5656972Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ParameterList:0 2024-08-06T21:19:58.5659308Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ParameterDict:0, line 750 <- wrt source file 2024-08-06T21:19:58.5661687Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/container.py::ParameterDict:0 2024-08-06T21:19:58.5664247Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/distance.py::PairwiseDistance:0, line 38 <- wrt source file 2024-08-06T21:19:58.5666670Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/distance.py::PairwiseDistance:0 2024-08-06T21:19:58.5669044Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/distance.py::CosineSimilarity:0, line 77 <- wrt source file 2024-08-06T21:19:58.5671448Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/distance.py::CosineSimilarity:0 2024-08-06T21:19:58.5673941Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout:0, line 60 <- wrt source file 2024-08-06T21:19:58.5676140Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout:0 2024-08-06T21:19:58.5678306Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout1d:0, line 105 <- wrt source file 2024-08-06T21:19:58.5680539Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout1d:0 2024-08-06T21:19:58.5682711Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout2d:0, line 157 <- wrt source file 2024-08-06T21:19:58.5702289Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout2d:0 2024-08-06T21:19:58.5704498Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout3d:0, line 202 <- wrt source file 2024-08-06T21:19:58.5780341Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::Dropout3d:0 2024-08-06T21:19:58.5783015Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::AlphaDropout:0, line 245 <- wrt source file 2024-08-06T21:19:58.5786376Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::AlphaDropout:0 2024-08-06T21:19:58.5789262Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::FeatureAlphaDropout:0, line 294 <- wrt source file 2024-08-06T21:19:58.5864044Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/dropout.py::FeatureAlphaDropout:0 2024-08-06T21:19:58.5867022Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/flatten.py::Flatten:0, line 30 <- wrt source file 2024-08-06T21:19:58.5869842Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/flatten.py::Flatten:0 2024-08-06T21:19:58.5871923Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/fold.py::Fold:0, line 111 <- wrt source file 2024-08-06T21:19:58.5875850Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/fold.py::Fold:0 2024-08-06T21:19:58.5877895Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/fold.py::Unfold:0, line 261 <- wrt source file 2024-08-06T21:19:58.5890435Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/fold.py::Unfold:0 2024-08-06T21:19:58.5892708Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/instancenorm.py::InstanceNorm1d:0, line 187 <- wrt source file 2024-08-06T21:19:58.5904846Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/instancenorm.py::InstanceNorm1d:0 2024-08-06T21:19:58.5907283Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/instancenorm.py::InstanceNorm2d:0, line 303 <- wrt source file 2024-08-06T21:19:58.6097551Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/instancenorm.py::InstanceNorm2d:0 2024-08-06T21:19:58.6100432Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/instancenorm.py::InstanceNorm3d:0, line 419 <- wrt source file 2024-08-06T21:19:58.8666277Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/instancenorm.py::InstanceNorm3d:0 2024-08-06T21:19:58.8829221Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/lazy.py::LazyModuleMixin:0, line 87 <- wrt source file 2024-08-06T21:19:58.8831926Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/lazy.py::LazyModuleMixin:0 2024-08-06T21:19:58.8834120Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/linear.py::Identity:0, line 34 <- wrt source file 2024-08-06T21:19:58.8839627Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/linear.py::Identity:0 2024-08-06T21:19:58.8841986Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/linear.py::Linear:0, line 80 <- wrt source file 2024-08-06T21:19:58.8849400Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/linear.py::Linear:0 2024-08-06T21:19:58.8851962Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/linear.py::Bilinear:0, line 179 <- wrt source file 2024-08-06T21:19:58.8872113Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/linear.py::Bilinear:0 2024-08-06T21:19:58.8874692Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::L1Loss:0, line 115 <- wrt source file 2024-08-06T21:19:58.8881299Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::L1Loss:0 2024-08-06T21:19:58.8883846Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::NLLLoss:0, line 211 <- wrt source file 2024-08-06T21:19:58.8909356Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::NLLLoss:0 2024-08-06T21:19:58.8912022Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::PoissonNLLLoss:0, line 321 <- wrt source file 2024-08-06T21:19:58.8918317Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::PoissonNLLLoss:0 2024-08-06T21:19:58.8921038Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::GaussianNLLLoss:0, line 406 <- wrt source file 2024-08-06T21:19:58.8934125Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::GaussianNLLLoss:0 2024-08-06T21:19:58.8936383Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::KLDivLoss:0, line 517 <- wrt source file 2024-08-06T21:19:58.8943323Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::KLDivLoss:0 2024-08-06T21:19:58.8945767Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MSELoss:0, line 595 <- wrt source file 2024-08-06T21:19:58.8949576Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MSELoss:0 2024-08-06T21:19:58.8951655Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::BCELoss:0, line 677 <- wrt source file 2024-08-06T21:19:58.8956261Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::BCELoss:0 2024-08-06T21:19:58.8958486Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::BCEWithLogitsLoss:0, line 748 <- wrt source file 2024-08-06T21:19:58.8968596Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::BCEWithLogitsLoss:0 2024-08-06T21:19:58.8970915Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MultiLabelMarginLoss:0, line 941 <- wrt source file 2024-08-06T21:19:58.8977904Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MultiLabelMarginLoss:0 2024-08-06T21:19:58.8980488Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::CrossEntropyLoss:0, line 1261 <- wrt source file 2024-08-06T21:19:58.8986852Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::CrossEntropyLoss:0 2024-08-06T21:19:58.8989210Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::CosineEmbeddingLoss:0, line 1401 <- wrt source file 2024-08-06T21:19:58.8995898Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::CosineEmbeddingLoss:0 2024-08-06T21:19:58.8998246Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MarginRankingLoss:0, line 1466 <- wrt source file 2024-08-06T21:19:58.9003004Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MarginRankingLoss:0 2024-08-06T21:19:58.9005583Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MultiMarginLoss:0, line 1545 <- wrt source file 2024-08-06T21:19:58.9011064Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::MultiMarginLoss:0 2024-08-06T21:19:58.9013367Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::TripletMarginLoss:0, line 1645 <- wrt source file 2024-08-06T21:19:58.9022508Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::TripletMarginLoss:0 2024-08-06T21:19:58.9024703Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::CTCLoss:0, line 1886 <- wrt source file 2024-08-06T21:19:58.9054944Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py::CTCLoss:0 2024-08-06T21:19:58.9057269Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.register_buffer:0, line 545 <- wrt source file 2024-08-06T21:19:58.9059744Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.register_buffer:0 2024-08-06T21:19:58.9062081Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.apply:0, line 1005 <- wrt source file 2024-08-06T21:19:58.9069261Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.apply:0 2024-08-06T21:19:58.9071485Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.to:0, line 1259 <- wrt source file 2024-08-06T21:19:58.9076928Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.to:0 2024-08-06T21:19:58.9079706Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.state_dict:0, line 2167 <- wrt source file 2024-08-06T21:19:58.9082081Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.state_dict:0 2024-08-06T21:19:58.9084425Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.parameters:0, line 2609 <- wrt source file 2024-08-06T21:19:58.9086819Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.parameters:0 2024-08-06T21:19:58.9089218Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_parameters:0, line 2637 <- wrt source file 2024-08-06T21:19:58.9091698Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_parameters:0 2024-08-06T21:19:58.9094253Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.buffers:0, line 2664 <- wrt source file 2024-08-06T21:19:58.9096652Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.buffers:0 2024-08-06T21:19:58.9098984Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_buffers:0, line 2691 <- wrt source file 2024-08-06T21:19:58.9101401Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_buffers:0 2024-08-06T21:19:58.9103793Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_children:0, line 2722 <- wrt source file 2024-08-06T21:19:58.9106232Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_children:0 2024-08-06T21:19:58.9108670Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.modules:0, line 2746 <- wrt source file 2024-08-06T21:19:58.9110923Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.modules:0 2024-08-06T21:19:58.9113130Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_modules:0, line 2784 <- wrt source file 2024-08-06T21:19:58.9115976Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/module.py::Module.named_modules:0 2024-08-06T21:19:58.9118805Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::LocalResponseNorm:0, line 38 <- wrt source file 2024-08-06T21:19:58.9131556Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::LocalResponseNorm:0 2024-08-06T21:19:58.9134976Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::LayerNorm:0, line 151 <- wrt source file 2024-08-06T21:19:58.9143308Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::LayerNorm:0 2024-08-06T21:19:58.9146080Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::GroupNorm:0, line 262 <- wrt source file 2024-08-06T21:19:58.9153716Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::GroupNorm:0 2024-08-06T21:19:58.9156131Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::RMSNorm:0, line 355 <- wrt source file 2024-08-06T21:19:58.9159277Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/normalization.py::RMSNorm:0 2024-08-06T21:19:58.9161547Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::CircularPad1d:0, line 69 <- wrt source file 2024-08-06T21:19:58.9166395Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::CircularPad1d:0 2024-08-06T21:19:58.9168707Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::CircularPad2d:0, line 120 <- wrt source file 2024-08-06T21:19:58.9185671Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::CircularPad2d:0 2024-08-06T21:19:58.9187945Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::CircularPad3d:0, line 184 <- wrt source file 2024-08-06T21:19:59.5668543Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::CircularPad3d:0 2024-08-06T21:19:59.5967730Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ConstantPad1d:0, line 238 <- wrt source file 2024-08-06T21:19:59.5978061Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ConstantPad1d:0 2024-08-06T21:19:59.5980264Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ConstantPad2d:0, line 291 <- wrt source file 2024-08-06T21:19:59.5985960Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ConstantPad2d:0 2024-08-06T21:19:59.5988242Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ConstantPad3d:0, line 347 <- wrt source file 2024-08-06T21:19:59.6011635Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ConstantPad3d:0 2024-08-06T21:19:59.6014375Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReflectionPad1d:0, line 391 <- wrt source file 2024-08-06T21:19:59.6018197Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReflectionPad1d:0 2024-08-06T21:19:59.6020541Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReflectionPad2d:0, line 435 <- wrt source file 2024-08-06T21:19:59.6024081Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReflectionPad2d:0 2024-08-06T21:19:59.6026431Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReflectionPad3d:0, line 492 <- wrt source file 2024-08-06T21:19:59.6028799Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReflectionPad3d:0 2024-08-06T21:19:59.6031115Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReplicationPad1d:0, line 550 <- wrt source file 2024-08-06T21:19:59.6034553Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReplicationPad1d:0 2024-08-06T21:19:59.6036917Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReplicationPad2d:0, line 593 <- wrt source file 2024-08-06T21:19:59.6040550Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReplicationPad2d:0 2024-08-06T21:19:59.6042915Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReplicationPad3d:0, line 650 <- wrt source file 2024-08-06T21:20:00.1477599Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ReplicationPad3d:0 2024-08-06T21:20:00.1768816Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ZeroPad1d:0, line 684 <- wrt source file 2024-08-06T21:20:00.1779048Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ZeroPad1d:0 2024-08-06T21:20:00.1781281Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ZeroPad2d:0, line 739 <- wrt source file 2024-08-06T21:20:00.1785507Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ZeroPad2d:0 2024-08-06T21:20:00.1787740Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ZeroPad3d:0, line 798 <- wrt source file 2024-08-06T21:20:00.1809569Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/padding.py::ZeroPad3d:0 2024-08-06T21:20:00.1812243Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pixelshuffle.py::PixelShuffle:0, line 40 <- wrt source file 2024-08-06T21:20:00.1815438Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pixelshuffle.py::PixelShuffle:0 2024-08-06T21:20:00.1817843Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pixelshuffle.py::PixelUnshuffle:0, line 93 <- wrt source file 2024-08-06T21:20:00.1821478Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pixelshuffle.py::PixelUnshuffle:0 2024-08-06T21:20:00.1823771Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxPool1d:0, line 118 <- wrt source file 2024-08-06T21:20:00.1828109Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxPool1d:0 2024-08-06T21:20:00.1830504Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxPool2d:0, line 195 <- wrt source file 2024-08-06T21:20:00.1882875Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxPool2d:0 2024-08-06T21:20:00.1885158Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxPool3d:0, line 278 <- wrt source file 2024-08-06T21:20:00.4179419Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxPool3d:0 2024-08-06T21:20:00.4241317Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxUnpool1d:0, line 352 <- wrt source file 2024-08-06T21:20:00.4253456Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxUnpool1d:0 2024-08-06T21:20:00.4255829Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxUnpool3d:0, line 534 <- wrt source file 2024-08-06T21:20:00.5003744Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::MaxUnpool3d:0 2024-08-06T21:20:00.5048907Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AvgPool1d:0, line 622 <- wrt source file 2024-08-06T21:20:00.5059670Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AvgPool1d:0 2024-08-06T21:20:00.5061889Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AvgPool2d:0, line 714 <- wrt source file 2024-08-06T21:20:00.5101527Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AvgPool2d:0 2024-08-06T21:20:00.5103779Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AvgPool3d:0, line 827 <- wrt source file 2024-08-06T21:20:00.6810950Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AvgPool3d:0 2024-08-06T21:20:00.6870293Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::FractionalMaxPool2d:0, line 917 <- wrt source file 2024-08-06T21:20:00.6919963Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::FractionalMaxPool2d:0 2024-08-06T21:20:00.6922421Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::FractionalMaxPool3d:0, line 1003 <- wrt source file 2024-08-06T21:20:00.7794657Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::FractionalMaxPool3d:0 2024-08-06T21:20:00.7797366Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::LPPool1d:0, line 1117 <- wrt source file 2024-08-06T21:20:00.7804180Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::LPPool1d:0 2024-08-06T21:20:00.7806800Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::LPPool2d:0, line 1168 <- wrt source file 2024-08-06T21:20:00.7859003Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::LPPool2d:0 2024-08-06T21:20:00.7861939Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::LPPool3d:0, line 1227 <- wrt source file 2024-08-06T21:20:01.0105045Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::LPPool3d:0 2024-08-06T21:20:01.0228943Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveMaxPool1d:0, line 1282 <- wrt source file 2024-08-06T21:20:01.0235250Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveMaxPool1d:0 2024-08-06T21:20:01.0237674Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveMaxPool2d:0, line 1316 <- wrt source file 2024-08-06T21:20:01.0245168Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveMaxPool2d:0 2024-08-06T21:20:01.0247574Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveMaxPool3d:0, line 1359 <- wrt source file 2024-08-06T21:20:01.0278047Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveMaxPool3d:0 2024-08-06T21:20:01.0280471Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveAvgPool1d:0, line 1406 <- wrt source file 2024-08-06T21:20:01.0282922Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveAvgPool1d:0 2024-08-06T21:20:01.0285316Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveAvgPool2d:0, line 1437 <- wrt source file 2024-08-06T21:20:01.0291410Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveAvgPool2d:0 2024-08-06T21:20:01.0293799Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveAvgPool3d:0, line 1476 <- wrt source file 2024-08-06T21:20:01.0315221Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py::AdaptiveAvgPool3d:0 2024-08-06T21:20:01.0317415Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::RNN:0, line 589 <- wrt source file 2024-08-06T21:20:01.0326979Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::RNN:0 2024-08-06T21:20:01.0328982Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::LSTM:0, line 946 <- wrt source file 2024-08-06T21:20:01.0639165Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::LSTM:0 2024-08-06T21:20:01.0641284Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::GRU:0, line 1284 <- wrt source file 2024-08-06T21:20:01.0658208Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::GRU:0 2024-08-06T21:20:01.0660264Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::RNNCell:0, line 1535 <- wrt source file 2024-08-06T21:20:01.0670932Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::RNNCell:0 2024-08-06T21:20:01.0673048Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::LSTMCell:0, line 1657 <- wrt source file 2024-08-06T21:20:01.0682052Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::LSTMCell:0 2024-08-06T21:20:01.0684128Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::GRUCell:0, line 1771 <- wrt source file 2024-08-06T21:20:01.0696036Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/rnn.py::GRUCell:0 2024-08-06T21:20:01.0698185Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py::Embedding:0, line 69 <- wrt source file 2024-08-06T21:20:01.0709071Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py::Embedding:0 2024-08-06T21:20:01.0711664Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py::Embedding.from_pretrained:0, line 241 <- wrt source file 2024-08-06T21:20:01.0714393Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py::Embedding.from_pretrained:0 2024-08-06T21:20:01.0716921Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py::EmbeddingBag.from_pretrained:0, line 519 <- wrt source file 2024-08-06T21:20:01.0721270Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py::EmbeddingBag.from_pretrained:0 2024-08-06T21:20:01.0723713Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::Transformer:0, line 90 <- wrt source file 2024-08-06T21:20:01.9255055Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::Transformer:0 2024-08-06T21:20:01.9269727Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::Transformer.forward:0, line 258 <- wrt source file 2024-08-06T21:20:01.9272143Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::Transformer.forward:0 2024-08-06T21:20:01.9274454Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerEncoder:0, line 323 <- wrt source file 2024-08-06T21:20:02.0380253Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerEncoder:0 2024-08-06T21:20:02.0419528Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerDecoder:0, line 536 <- wrt source file 2024-08-06T21:20:02.2830246Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerDecoder:0 2024-08-06T21:20:02.2839157Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerEncoderLayer:0, line 657 <- wrt source file 2024-08-06T21:20:02.3130755Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerEncoderLayer:0 2024-08-06T21:20:02.3133718Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerDecoderLayer:0, line 961 <- wrt source file 2024-08-06T21:20:02.3684102Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py::TransformerDecoderLayer:0 2024-08-06T21:20:02.3686992Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/upsampling.py::Upsample:0, line 77 <- wrt source file 2024-08-06T21:20:02.3706929Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/upsampling.py::Upsample:0 2024-08-06T21:20:02.3709329Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/upsampling.py::UpsamplingNearest2d:0, line 223 <- wrt source file 2024-08-06T21:20:02.3719263Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/upsampling.py::UpsamplingNearest2d:0 2024-08-06T21:20:02.3721802Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/upsampling.py::UpsamplingBilinear2d:0, line 273 <- wrt source file 2024-08-06T21:20:02.3728761Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/upsampling.py::UpsamplingBilinear2d:0 2024-08-06T21:20:02.3731506Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/data_parallel.py::DataParallel:0, line 126 <- wrt source file 2024-08-06T21:20:02.3733968Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/data_parallel.py::DataParallel:0 2024-08-06T21:20:02.3736599Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel:0, line 619 <- wrt source file 2024-08-06T21:20:02.3739288Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel:0 2024-08-06T21:20:02.3742007Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel.no_sync:0, line 1415 <- wrt source file 2024-08-06T21:20:02.3744857Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel.no_sync:0 2024-08-06T21:20:02.3747798Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel.register_comm_hook:0, line 1978 <- wrt source file 2024-08-06T21:20:02.3750856Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel.register_comm_hook:0 2024-08-06T21:20:02.3753864Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel.register_comm_hook:1, line 1988 <- wrt source file 2024-08-06T21:20:02.3756931Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel.register_comm_hook:1 2024-08-06T21:20:02.3760033Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel._register_builtin_comm_hook:0, line 2023 <- wrt source file 2024-08-06T21:20:02.3763396Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py::DistributedDataParallel._register_builtin_comm_hook:0 2024-08-06T21:20:02.3766217Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/_per_sample_grad.py::call_for_per_sample_grads:0, line 35 <- wrt source file 2024-08-06T21:20:02.3768795Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/_per_sample_grad.py::call_for_per_sample_grads:0 2024-08-06T21:20:02.3771099Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/init.py::skip_init:0, line 33 <- wrt source file 2024-08-06T21:20:02.3773204Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/init.py::skip_init:0 2024-08-06T21:20:02.3775887Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrizations.py::orthogonal:0, line 265 <- wrt source file 2024-08-06T21:20:02.3778316Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrizations.py::orthogonal:0 2024-08-06T21:20:02.3780721Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrizations.py::weight_norm:0, line 360 <- wrt source file 2024-08-06T21:20:02.3783159Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrizations.py::weight_norm:0 2024-08-06T21:20:02.3785572Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrizations.py::spectral_norm:0, line 591 <- wrt source file 2024-08-06T21:20:02.3788076Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrizations.py::spectral_norm:0 2024-08-06T21:20:02.3790605Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrize.py::register_parametrization:0, line 506 <- wrt source file 2024-08-06T21:20:02.3793322Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/parametrize.py::register_parametrization:0 2024-08-06T21:20:02.3795624Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::identity:0, line 846 <- wrt source file 2024-08-06T21:20:02.3797739Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::identity:0 2024-08-06T21:20:02.3799952Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::random_unstructured:0, line 882 <- wrt source file 2024-08-06T21:20:02.3802294Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::random_unstructured:0 2024-08-06T21:20:02.3804541Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::l1_unstructured:0, line 925 <- wrt source file 2024-08-06T21:20:02.3806791Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::l1_unstructured:0 2024-08-06T21:20:02.3808921Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::remove:0, line 1192 <- wrt source file 2024-08-06T21:20:02.3811019Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::remove:0 2024-08-06T21:20:02.3813086Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::is_pruned:0, line 1220 <- wrt source file 2024-08-06T21:20:02.3815275Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py::is_pruned:0 2024-08-06T21:20:02.3817414Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::pad_packed_sequence:0, line 357 <- wrt source file 2024-08-06T21:20:02.3819695Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::pad_packed_sequence:0 2024-08-06T21:20:02.3821850Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::pad_sequence:0, line 434 <- wrt source file 2024-08-06T21:20:02.3823991Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::pad_sequence:0 2024-08-06T21:20:02.3826117Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::unpad_sequence:0, line 488 <- wrt source file 2024-08-06T21:20:02.3828299Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::unpad_sequence:0 2024-08-06T21:20:02.3830405Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::pack_sequence:0, line 544 <- wrt source file 2024-08-06T21:20:02.3841371Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::pack_sequence:0 2024-08-06T21:20:02.3843564Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::unpack_sequence:0, line 572 <- wrt source file 2024-08-06T21:20:02.3848040Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/rnn.py::unpack_sequence:0 2024-08-06T21:20:02.3850404Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/spectral_norm.py::spectral_norm:0, line 313 <- wrt source file 2024-08-06T21:20:02.3855181Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/spectral_norm.py::spectral_norm:0 2024-08-06T21:20:02.3857608Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/spectral_norm.py::remove_spectral_norm:0, line 345 <- wrt source file 2024-08-06T21:20:02.3862876Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/spectral_norm.py::remove_spectral_norm:0 2024-08-06T21:20:02.3865291Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/stateless.py::functional_call:0, line 214 <- wrt source file 2024-08-06T21:20:02.3867659Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/stateless.py::functional_call:0 2024-08-06T21:20:02.3869926Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/weight_norm.py::weight_norm:0, line 133 <- wrt source file 2024-08-06T21:20:02.3873475Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/weight_norm.py::weight_norm:0 2024-08-06T21:20:02.3875804Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/weight_norm.py::remove_weight_norm:0, line 155 <- wrt source file 2024-08-06T21:20:02.3878597Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/weight_norm.py::remove_weight_norm:0 2024-08-06T21:20:02.3881058Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/_expanded_weights/conv_utils.py::unfold3d:0, line 317 <- wrt source file 2024-08-06T21:20:02.3883636Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/_expanded_weights/conv_utils.py::unfold3d:0 2024-08-06T21:20:02.3886600Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/_expanded_weights/expanded_weights_utils.py::sum_over_all_but_batch_and_last_n:0, line 178 <- wrt source file 2024-08-06T21:20:02.3945561Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/_expanded_weights/expanded_weights_utils.py::sum_over_all_but_batch_and_last_n:0 2024-08-06T21:20:02.3948954Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::LambdaLR:0, line 308 <- wrt source file 2024-08-06T21:20:02.3951566Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::LambdaLR:0 2024-08-06T21:20:02.3954367Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::MultiplicativeLR:0, line 410 <- wrt source file 2024-08-06T21:20:02.3957270Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::MultiplicativeLR:0 2024-08-06T21:20:02.3959907Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::StepLR:0, line 510 <- wrt source file 2024-08-06T21:20:02.3962571Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::StepLR:0 2024-08-06T21:20:02.3965651Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::MultiStepLR:0, line 570 <- wrt source file 2024-08-06T21:20:02.3968431Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::MultiStepLR:0 2024-08-06T21:20:02.3970870Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::ConstantLR:0, line 635 <- wrt source file 2024-08-06T21:20:02.3973111Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::ConstantLR:0 2024-08-06T21:20:02.3975441Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::LinearLR:0, line 713 <- wrt source file 2024-08-06T21:20:02.3977655Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::LinearLR:0 2024-08-06T21:20:02.3979946Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::SequentialLR:0, line 842 <- wrt source file 2024-08-06T21:20:02.3982368Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::SequentialLR:0 2024-08-06T21:20:02.3984618Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::PolynomialLR:0, line 979 <- wrt source file 2024-08-06T21:20:02.3986895Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::PolynomialLR:0 2024-08-06T21:20:02.3989194Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::ChainedScheduler:0, line 1135 <- wrt source file 2024-08-06T21:20:02.3991660Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::ChainedScheduler:0 2024-08-06T21:20:02.3994023Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::ReduceLROnPlateau:0, line 1278 <- wrt source file 2024-08-06T21:20:02.3996431Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::ReduceLROnPlateau:0 2024-08-06T21:20:02.3998697Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::CyclicLR:0, line 1510 <- wrt source file 2024-08-06T21:20:02.4000895Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::CyclicLR:0 2024-08-06T21:20:02.4003346Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::CosineAnnealingWarmRestarts.step:0, line 1780 <- wrt source file 2024-08-06T21:20:02.4006086Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::CosineAnnealingWarmRestarts.step:0 2024-08-06T21:20:02.4008802Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::CosineAnnealingWarmRestarts.step:1, line 1796 <- wrt source file 2024-08-06T21:20:02.4011541Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::CosineAnnealingWarmRestarts.step:1 2024-08-06T21:20:02.4013951Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::OneCycleLR:0, line 1941 <- wrt source file 2024-08-06T21:20:02.4016251Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/lr_scheduler.py::OneCycleLR:0 2024-08-06T21:20:02.4018405Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/swa_utils.py::update_bn:0, line 319 <- wrt source file 2024-08-06T21:20:02.4020547Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/swa_utils.py::update_bn:0 2024-08-06T21:20:02.4022802Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/package/glob_group.py::GlobGroup:0, line 21 <- wrt source file 2024-08-06T21:20:02.4025046Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/package/glob_group.py::GlobGroup:0 2024-08-06T21:20:02.4027292Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/profiler/profiler.py::profile:0, line 514 <- wrt source file 2024-08-06T21:20:02.4029470Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/profiler/profiler.py::profile:0 2024-08-06T21:20:02.4031889Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/semi_structured.py::to_sparse_semi_structured:0, line 337 <- wrt source file 2024-08-06T21:20:02.4034509Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/semi_structured.py::to_sparse_semi_structured:0 2024-08-06T21:20:02.4036884Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_creation.py::make_tensor:0, line 113 <- wrt source file 2024-08-06T21:20:02.4039284Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_creation.py::make_tensor:0 2024-08-06T21:20:02.4041616Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::parametrize:0, line 591 <- wrt source file 2024-08-06T21:20:02.4044125Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::parametrize:0 2024-08-06T21:20:02.4046578Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::decorateIf:0, line 746 <- wrt source file 2024-08-06T21:20:02.4049069Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::decorateIf:0 2024-08-06T21:20:02.4051683Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::random_symmetric_psd_matrix:0, line 4346 <- wrt source file 2024-08-06T21:20:02.4054503Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::random_symmetric_psd_matrix:0 2024-08-06T21:20:02.4057257Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::random_hermitian_psd_matrix:0, line 4360 <- wrt source file 2024-08-06T21:20:02.4060045Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::random_hermitian_psd_matrix:0 2024-08-06T21:20:02.4062882Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::random_hermitian_pd_matrix:0, line 4390 <- wrt source file 2024-08-06T21:20:02.4065657Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/common_utils.py::random_hermitian_pd_matrix:0 2024-08-06T21:20:02.4068271Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/logging_utils.py::logs_to_string:0, line 192 <- wrt source file 2024-08-06T21:20:02.4070825Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/logging_utils.py::logs_to_string:0 2024-08-06T21:20:02.4073602Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/distributed/_tensor/common_dtensor.py::skip_unless_torch_gpu:0, line 288 <- wrt source file 2024-08-06T21:20:02.4076700Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/distributed/_tensor/common_dtensor.py::skip_unless_torch_gpu:0 2024-08-06T21:20:02.4079910Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/optests/autograd_registration.py::autograd_registration_check:0, line 29 <- wrt source file 2024-08-06T21:20:02.4083093Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_internal/optests/autograd_registration.py::autograd_registration_check:0 2024-08-06T21:20:02.4085697Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_flatten:0, line 257 <- wrt source file 2024-08-06T21:20:02.4087918Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_flatten:0 2024-08-06T21:20:02.4090119Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_unflatten:0, line 299 <- wrt source file 2024-08-06T21:20:02.4092388Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_unflatten:0 2024-08-06T21:20:02.4094594Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_iter:0, line 329 <- wrt source file 2024-08-06T21:20:02.4096855Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_iter:0 2024-08-06T21:20:02.4099009Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_leaves:0, line 364 <- wrt source file 2024-08-06T21:20:02.4101209Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_leaves:0 2024-08-06T21:20:02.4103394Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_structure:0, line 399 <- wrt source file 2024-08-06T21:20:02.4105668Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_structure:0 2024-08-06T21:20:02.4107836Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_map:0, line 436 <- wrt source file 2024-08-06T21:20:02.4109971Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::tree_map:0 2024-08-06T21:20:02.4112170Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::broadcast_prefix:0, line 812 <- wrt source file 2024-08-06T21:20:02.4114503Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py::broadcast_prefix:0 2024-08-06T21:20:02.4116666Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_pytree.py::tree_map:0, line 933 <- wrt source file 2024-08-06T21:20:02.4118720Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_pytree.py::tree_map:0 2024-08-06T21:20:02.4121122Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/backend_registration.py::rename_privateuse1_backend:0, line 69 <- wrt source file 2024-08-06T21:20:02.4123854Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/backend_registration.py::rename_privateuse1_backend:0 2024-08-06T21:20:02.4126685Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/backend_registration.py::generate_methods_for_privateuse1_backend:0, line 322 <- wrt source file 2024-08-06T21:20:02.4129641Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/backend_registration.py::generate_methods_for_privateuse1_backend:0 2024-08-06T21:20:02.4132357Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/backend_registration.py::_get_custom_mod_func:0, line 354 <- wrt source file 2024-08-06T21:20:02.4135003Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/backend_registration.py::_get_custom_mod_func:0 2024-08-06T21:20:02.4137605Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py::checkpoint_sequential:0, line 546 <- wrt source file 2024-08-06T21:20:02.4140055Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py::checkpoint_sequential:0 2024-08-06T21:20:02.4142501Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py::set_checkpoint_early_stop:0, line 748 <- wrt source file 2024-08-06T21:20:02.4145018Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py::set_checkpoint_early_stop:0 2024-08-06T21:20:02.4147296Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/dlpack.py::from_dlpack:0, line 72 <- wrt source file 2024-08-06T21:20:02.4149415Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/dlpack.py::from_dlpack:0 2024-08-06T21:20:02.4151717Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/dataset.py::IterableDataset:0, line 98 <- wrt source file 2024-08-06T21:20:02.4154088Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/dataset.py::IterableDataset:0 2024-08-06T21:20:02.4156405Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/dataset.py::StackDataset:0, line 223 <- wrt source file 2024-08-06T21:20:02.4158719Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/dataset.py::StackDataset:0 2024-08-06T21:20:02.4160976Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/dataset.py::random_split:0, line 445 <- wrt source file 2024-08-06T21:20:02.4163375Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/dataset.py::random_split:0 2024-08-06T21:20:02.4165586Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/sampler.py::Sampler:0, line 42 <- wrt source file 2024-08-06T21:20:02.4167775Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/sampler.py::Sampler:0 2024-08-06T21:20:02.4170114Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/sampler.py::WeightedRandomSampler:0, line 240 <- wrt source file 2024-08-06T21:20:02.4172647Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/sampler.py::WeightedRandomSampler:0 2024-08-06T21:20:02.4175059Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/sampler.py::BatchSampler:0, line 303 <- wrt source file 2024-08-06T21:20:02.4177350Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/sampler.py::BatchSampler:0 2024-08-06T21:20:02.4179691Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/_utils/collate.py::default_convert:0, line 39 <- wrt source file 2024-08-06T21:20:02.4182156Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/_utils/collate.py::default_convert:0 2024-08-06T21:20:02.4184498Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/_utils/collate.py::collate:0, line 137 <- wrt source file 2024-08-06T21:20:02.4186810Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/_utils/collate.py::collate:0 2024-08-06T21:20:02.4189159Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/_utils/collate.py::default_collate:0, line 364 <- wrt source file 2024-08-06T21:20:02.4191634Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/_utils/collate.py::default_collate:0 2024-08-06T21:20:02.4194255Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/datapipe.py::IterDataPipe:0, line 96 <- wrt source file 2024-08-06T21:20:02.4196834Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/datapipe.py::IterDataPipe:0 2024-08-06T21:20:02.4199363Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/datapipe.py::MapDataPipe:0, line 264 <- wrt source file 2024-08-06T21:20:02.4201921Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/datapipe.py::MapDataPipe:0 2024-08-06T21:20:02.4204559Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/callable.py::MapperIterDataPipe:0, line 51 <- wrt source file 2024-08-06T21:20:02.4207398Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/callable.py::MapperIterDataPipe:0 2024-08-06T21:20:02.4210304Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/callable.py::CollatorIterDataPipe:0, line 197 <- wrt source file 2024-08-06T21:20:02.4213179Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/callable.py::CollatorIterDataPipe:0 2024-08-06T21:20:02.4216111Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combinatorics.py::ShufflerIterDataPipe:0, line 87 <- wrt source file 2024-08-06T21:20:02.4219119Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combinatorics.py::ShufflerIterDataPipe:0 2024-08-06T21:20:02.4222021Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::ConcaterIterDataPipe:0, line 48 <- wrt source file 2024-08-06T21:20:02.4224947Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::ConcaterIterDataPipe:0 2024-08-06T21:20:02.4227784Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::ForkerIterDataPipe:0, line 98 <- wrt source file 2024-08-06T21:20:02.4230616Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::ForkerIterDataPipe:0 2024-08-06T21:20:02.4233374Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::_ChildDataPipe:0, line 317 <- wrt source file 2024-08-06T21:20:02.4236130Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::_ChildDataPipe:0 2024-08-06T21:20:02.4238999Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::DemultiplexerIterDataPipe:0, line 403 <- wrt source file 2024-08-06T21:20:02.4242017Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::DemultiplexerIterDataPipe:0 2024-08-06T21:20:02.4244962Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::MultiplexerIterDataPipe:0, line 613 <- wrt source file 2024-08-06T21:20:02.4247950Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::MultiplexerIterDataPipe:0 2024-08-06T21:20:02.4250823Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::ZipperIterDataPipe:0, line 681 <- wrt source file 2024-08-06T21:20:02.4253771Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/combining.py::ZipperIterDataPipe:0 2024-08-06T21:20:02.4256699Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/filelister.py::FileListerIterDataPipe:0, line 30 <- wrt source file 2024-08-06T21:20:02.4259679Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/filelister.py::FileListerIterDataPipe:0 2024-08-06T21:20:02.4262610Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/fileopener.py::FileOpenerIterDataPipe:0, line 34 <- wrt source file 2024-08-06T21:20:02.4265733Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/fileopener.py::FileOpenerIterDataPipe:0 2024-08-06T21:20:02.4268599Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/grouping.py::BatcherIterDataPipe:0, line 62 <- wrt source file 2024-08-06T21:20:02.4271562Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/grouping.py::BatcherIterDataPipe:0 2024-08-06T21:20:02.4274415Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/grouping.py::UnBatcherIterDataPipe:0, line 122 <- wrt source file 2024-08-06T21:20:02.4277320Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/grouping.py::UnBatcherIterDataPipe:0 2024-08-06T21:20:02.4280158Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/grouping.py::GrouperIterDataPipe:0, line 189 <- wrt source file 2024-08-06T21:20:02.4283034Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/grouping.py::GrouperIterDataPipe:0 2024-08-06T21:20:02.4285844Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/selecting.py::FilterIterDataPipe:0, line 36 <- wrt source file 2024-08-06T21:20:02.4288688Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/selecting.py::FilterIterDataPipe:0 2024-08-06T21:20:02.4291618Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/streamreader.py::StreamReaderIterDataPipe:0, line 24 <- wrt source file 2024-08-06T21:20:02.4294732Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/streamreader.py::StreamReaderIterDataPipe:0 2024-08-06T21:20:02.4297707Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/utils.py::IterableWrapperIterDataPipe:0, line 26 <- wrt source file 2024-08-06T21:20:02.4300664Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/iter/utils.py::IterableWrapperIterDataPipe:0 2024-08-06T21:20:02.4303489Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/callable.py::MapperMapDataPipe:0, line 35 <- wrt source file 2024-08-06T21:20:02.4306276Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/callable.py::MapperMapDataPipe:0 2024-08-06T21:20:02.4309131Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/combinatorics.py::ShufflerIterDataPipe:0, line 33 <- wrt source file 2024-08-06T21:20:02.4312102Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/combinatorics.py::ShufflerIterDataPipe:0 2024-08-06T21:20:02.4315053Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/combining.py::ConcaterMapDataPipe:0, line 28 <- wrt source file 2024-08-06T21:20:02.4317912Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/combining.py::ConcaterMapDataPipe:0 2024-08-06T21:20:02.4320694Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/combining.py::ZipperMapDataPipe:0, line 72 <- wrt source file 2024-08-06T21:20:02.4323501Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/combining.py::ZipperMapDataPipe:0 2024-08-06T21:20:02.4326265Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/grouping.py::BatcherMapDataPipe:0, line 28 <- wrt source file 2024-08-06T21:20:02.4329067Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/grouping.py::BatcherMapDataPipe:0 2024-08-06T21:20:02.4331958Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/utils.py::SequenceWrapperMapDataPipe:0, line 26 <- wrt source file 2024-08-06T21:20:02.4334904Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/map/utils.py::SequenceWrapperMapDataPipe:0 2024-08-06T21:20:02.4337687Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/utils/common.py::validate_input_col:0, line 36 <- wrt source file 2024-08-06T21:20:02.4340463Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/utils/common.py::validate_input_col:0 2024-08-06T21:20:02.4343170Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/utils/decoder.py::basichandlers:0, line 47 <- wrt source file 2024-08-06T21:20:02.4345870Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/datapipes/utils/decoder.py::basichandlers:0 2024-08-06T21:20:02.4348463Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/hipify/hipify_python.py::find_closure_group:0, line 433 <- wrt source file 2024-08-06T21:20:02.7574001Z * SUCCESS: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/hipify/hipify_python.py::find_closure_group:0 2024-08-06T21:20:02.7576240Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/hipify/hipify_python.py::replace_extern_shared:0, line 529 <- wrt source file 2024-08-06T21:20:02.7578366Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/hipify/hipify_python.py::replace_extern_shared:0 2024-08-06T21:20:02.7580287Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.__init__:0, line 216 <- wrt source file 2024-08-06T21:20:02.7582272Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.__init__:0 2024-08-06T21:20:02.7584367Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_hparams:0, line 314 <- wrt source file 2024-08-06T21:20:02.7586432Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_hparams:0 2024-08-06T21:20:02.7588498Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_scalar:0, line 362 <- wrt source file 2024-08-06T21:20:02.7590660Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_scalar:0 2024-08-06T21:20:02.7592661Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_scalars:0, line 394 <- wrt source file 2024-08-06T21:20:02.7594384Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_scalars:0 2024-08-06T21:20:02.7595850Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_tensor:0, line 441 <- wrt source file 2024-08-06T21:20:02.7597320Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_tensor:0 2024-08-06T21:20:02.7598794Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_histogram:0, line 480 <- wrt source file 2024-08-06T21:20:02.7600284Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_histogram:0 2024-08-06T21:20:02.7601922Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_histogram_raw:0, line 533 <- wrt source file 2024-08-06T21:20:02.7603481Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_histogram_raw:0 2024-08-06T21:20:02.7605761Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_image:0, line 599 <- wrt source file 2024-08-06T21:20:02.7608182Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_image:0 2024-08-06T21:20:02.7610607Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_images:0, line 648 <- wrt source file 2024-08-06T21:20:02.7613083Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_images:0 2024-08-06T21:20:02.7615683Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_text:0, line 811 <- wrt source file 2024-08-06T21:20:02.7618134Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_text:0 2024-08-06T21:20:02.7620535Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_embedding:0, line 878 <- wrt source file 2024-08-06T21:20:02.7623128Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_embedding:0 2024-08-06T21:20:02.7625481Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_pr_curve:0, line 989 <- wrt source file 2024-08-06T21:20:02.7628020Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_pr_curve:0 2024-08-06T21:20:02.7630729Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_custom_scalars_multilinechart:0, line 1063 <- wrt source file 2024-08-06T21:20:02.7633345Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_custom_scalars_multilinechart:0 2024-08-06T21:20:02.7635989Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_custom_scalars_marginchart:0, line 1084 <- wrt source file 2024-08-06T21:20:02.7639071Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_custom_scalars_marginchart:0 2024-08-06T21:20:02.7641726Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_custom_scalars:0, line 1108 <- wrt source file 2024-08-06T21:20:02.7644465Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_custom_scalars:0 2024-08-06T21:20:02.7647089Z * DOCTEST : /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_mesh:0, line 1154 <- wrt source file 2024-08-06T21:20:02.7649685Z * SKIPPED: /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/tensorboard/writer.py::SummaryWriter.add_mesh:0 2024-08-06T21:20:02.7650984Z ============ 2024-08-06T21:20:02.7651488Z Finished doctests 2024-08-06T21:20:02.7651855Z 334 / 694 passed 2024-08-06T21:20:02.7652232Z  2024-08-06T21:20:02.7653792Z === Found 100 parse-time warnings === 2024-08-06T21:20:02.7654510Z --- Parse Warning: 1 / 100 --- 2024-08-06T21:20:02.7656397Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=meshgrid in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py line=426. 2024-08-06T21:20:02.7658342Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7659367Z Creates grids of coordinates specified by the 1D inputs in `attr`:tensors. 2024-08-06T21:20:02.7660145Z 2024-08-06T21:20:02.7660568Z This is helpful when you want to visualize data over some 2024-08-06T21:20:02.7661254Z range of inputs. See below for a plotting example. 2024-08-06T21:20:02.7661813Z 2024-08-06T21:20:02.7662213Z Given :math:`N` 1D tensors :math:`T_0 \ldots T_{N-1}` as 2024-08-06T21:20:02.7663191Z inputs with corresponding sizes :math:`S_0 \ldots S_{N-1}`, 2024-08-06T21:20:02.7663941Z this creates :math:`N` N-dimensional tensors :math:`G_0 \ldots 2024-08-06T21:20:02.7664657Z G_{N-1}`, each with shape :math:`(S_0, ..., S_{N-1})` where 2024-08-06T21:20:02.7665370Z the output :math:`G_i` is constructed by expanding :math:`T_i` 2024-08-06T21:20:02.7666262Z to the result shape. 2024-08-06T21:20:02.7666691Z 2024-08-06T21:20:02.7666998Z .. note:: 2024-08-06T21:20:02.7667477Z 0D inputs are treated equivalently to 1D inputs of a 2024-08-06T21:20:02.7668089Z single element. 2024-08-06T21:20:02.7668501Z 2024-08-06T21:20:02.7668788Z .. warning:: 2024-08-06T21:20:02.7669300Z `torch.meshgrid(*tensors)` currently has the same behavior 2024-08-06T21:20:02.7670003Z as calling `numpy.meshgrid(*arrays, indexing='ij')`. 2024-08-06T21:20:02.7670557Z 2024-08-06T21:20:02.7670960Z In the future `torch.meshgrid` will transition to 2024-08-06T21:20:02.7671552Z `indexing='xy'` as the default. 2024-08-06T21:20:02.7672026Z 2024-08-06T21:20:02.7672481Z https://github.com/pytorch/pytorch/issues/50276 tracks 2024-08-06T21:20:02.7673226Z this issue with the goal of migrating to NumPy's behavior. 2024-08-06T21:20:02.7673763Z 2024-08-06T21:20:02.7674089Z .. seealso:: 2024-08-06T21:20:02.7674452Z 2024-08-06T21:20:02.7674856Z :func:`torch.cartesian_prod` has the same effect but it 2024-08-06T21:20:02.7675501Z collects the data in a tensor of vectors. 2024-08-06T21:20:02.7675997Z 2024-08-06T21:20:02.7676284Z Args: 2024-08-06T21:20:02.7676890Z tensors (list of Tensor): list of scalars or 1 dimensional tensors. Scalars will be 2024-08-06T21:20:02.7677720Z treated as tensors of size :math:`(1,)` automatically 2024-08-06T21:20:02.7678472Z 2024-08-06T21:20:02.7678914Z indexing: (str, optional): the indexing mode, either "xy" 2024-08-06T21:20:02.7679621Z or "ij", defaults to "ij". See warning for future changes. 2024-08-06T21:20:02.7680161Z 2024-08-06T21:20:02.7680599Z If "xy" is selected, the first dimension corresponds 2024-08-06T21:20:02.7681387Z to the cardinality of the second input and the second 2024-08-06T21:20:02.7682105Z dimension corresponds to the cardinality of the first 2024-08-06T21:20:02.7682672Z input. 2024-08-06T21:20:02.7682980Z 2024-08-06T21:20:02.7683364Z If "ij" is selected, the dimensions are in the same 2024-08-06T21:20:02.7683978Z order as the cardinality of the inputs. 2024-08-06T21:20:02.7684428Z 2024-08-06T21:20:02.7684733Z Returns: 2024-08-06T21:20:02.7685243Z seq (sequence of Tensors): If the input has :math:`N` 2024-08-06T21:20:02.7685915Z tensors of size :math:`S_0 \ldots S_{N-1}``, then the 2024-08-06T21:20:02.7686827Z output will also have :math:`N` tensors, where each tensor 2024-08-06T21:20:02.7687526Z is of shape :math:`(S_0, ..., S_{N-1})`. 2024-08-06T21:20:02.7688028Z 2024-08-06T21:20:02.7688343Z Example:: 2024-08-06T21:20:02.7688692Z 2024-08-06T21:20:02.7689072Z >>> x = torch.tensor([1, 2, 3]) 2024-08-06T21:20:02.7689648Z >>> y = torch.tensor([4, 5, 6]) 2024-08-06T21:20:02.7690184Z 2024-08-06T21:20:02.7690697Z Observe the element-wise pairings across the grid, (1, 4), 2024-08-06T21:20:02.7691478Z (1, 5), ..., (3, 6). This is the same thing as the 2024-08-06T21:20:02.7692040Z cartesian product. 2024-08-06T21:20:02.7692610Z >>> grid_x, grid_y = torch.meshgrid(x, y, indexing='ij') 2024-08-06T21:20:02.7693187Z >>> grid_x 2024-08-06T21:20:02.7693625Z tensor([[1, 1, 1], 2024-08-06T21:20:02.7694073Z [2, 2, 2], 2024-08-06T21:20:02.7694574Z [3, 3, 3]]) 2024-08-06T21:20:02.7695042Z >>> grid_y 2024-08-06T21:20:02.7695464Z tensor([[4, 5, 6], 2024-08-06T21:20:02.7695909Z [4, 5, 6], 2024-08-06T21:20:02.7696390Z [4, 5, 6]]) 2024-08-06T21:20:02.7696868Z 2024-08-06T21:20:02.7697331Z This correspondence can be seen when these grids are 2024-08-06T21:20:02.7697960Z stacked properly. 2024-08-06T21:20:02.7698581Z >>> torch.equal(torch.cat(tuple(torch.dstack([grid_x, grid_y]))), 2024-08-06T21:20:02.7699346Z ... torch.cartesian_prod(x, y)) 2024-08-06T21:20:02.7699971Z True 2024-08-06T21:20:02.7700330Z 2024-08-06T21:20:02.7700764Z `torch.meshgrid` is commonly used to produce a grid for 2024-08-06T21:20:02.7701353Z plotting. 2024-08-06T21:20:02.7701800Z >>> # xdoctest: +REQUIRES(module:matplotlib) 2024-08-06T21:20:02.7702361Z >>> # xdoctest: +REQUIRES(env:DOCTEST_SHOW) 2024-08-06T21:20:02.7702957Z >>> import matplotlib.pyplot as plt 2024-08-06T21:20:02.7703598Z >>> xs = torch.linspace(-5, 5, steps=100) 2024-08-06T21:20:02.7704157Z >>> ys = torch.linspace(-5, 5, steps=100) 2024-08-06T21:20:02.7704665Z >>> x, y = torch.meshgrid(xs, ys, indexing='xy') 2024-08-06T21:20:02.7705223Z >>> z = torch.sin(torch.sqrt(x * x + y * y)) 2024-08-06T21:20:02.7705787Z >>> ax = plt.axes(projection='3d') 2024-08-06T21:20:02.7706423Z >>> ax.plot_surface(x.numpy(), y.numpy(), z.numpy()) 2024-08-06T21:20:02.7706942Z >>> plt.show() 2024-08-06T21:20:02.7707313Z 2024-08-06T21:20:02.7707666Z .. image:: ../_static/img/meshgrid.png 2024-08-06T21:20:02.7708313Z :width: 512 2024-08-06T21:20:02.7708703Z 2024-08-06T21:20:02.7709011Z 2024-08-06T21:20:02.7709631Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.7710333Z 2024-08-06T21:20:02.7710655Z warnings.warn(msg) 2024-08-06T21:20:02.7711022Z 2024-08-06T21:20:02.7711398Z --- Parse Warning: 2 / 100 --- 2024-08-06T21:20:02.7712504Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=_unique_impl in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/functional.py line=815. 2024-08-06T21:20:02.7714175Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7715205Z unique(input, sorted=True, return_inverse=False, return_counts=False, dim=None) -> Tuple[Tensor, Tensor, Tensor] 2024-08-06T21:20:02.7715970Z 2024-08-06T21:20:02.7716259Z Returns the unique elements of the input tensor. 2024-08-06T21:20:02.7716688Z 2024-08-06T21:20:02.7717269Z .. note:: This function is different from :func:`torch.unique_consecutive` in the sense that 2024-08-06T21:20:02.7717909Z this function also eliminates non-consecutive duplicate values. 2024-08-06T21:20:02.7718455Z 2024-08-06T21:20:02.7718913Z .. note:: Currently in the CUDA implementation and the CPU implementation, 2024-08-06T21:20:02.7719723Z `torch.unique` always sort the tensor at the beginning regardless of the `sort` argument. 2024-08-06T21:20:02.7720669Z Sorting could be slow, so if your input tensor is already sorted, it is recommended to use 2024-08-06T21:20:02.7721301Z :func:`torch.unique_consecutive` which avoids the sorting. 2024-08-06T21:20:02.7721683Z 2024-08-06T21:20:02.7721873Z Args: 2024-08-06T21:20:02.7722122Z input (Tensor): the input tensor 2024-08-06T21:20:02.7722575Z sorted (bool): Whether to sort the unique elements in ascending order 2024-08-06T21:20:02.7723015Z before returning as output. 2024-08-06T21:20:02.7723458Z return_inverse (bool): Whether to also return the indices for where 2024-08-06T21:20:02.7724014Z elements in the original input ended up in the returned unique list. 2024-08-06T21:20:02.7724572Z return_counts (bool): Whether to also return the counts for each unique 2024-08-06T21:20:02.7725013Z element. 2024-08-06T21:20:02.7725386Z dim (int, optional): the dimension to operate upon. If ``None``, the 2024-08-06T21:20:02.7725906Z unique of the flattened input is returned. Otherwise, each of the 2024-08-06T21:20:02.7726434Z tensors indexed by the given dimension is treated as one of the 2024-08-06T21:20:02.7726972Z elements to apply the unique operation upon. See examples for more 2024-08-06T21:20:02.7727404Z details. Default: ``None`` 2024-08-06T21:20:02.7727710Z 2024-08-06T21:20:02.7727914Z Returns: 2024-08-06T21:20:02.7728334Z (Tensor, Tensor (optional), Tensor (optional)): A tensor or a tuple of tensors containing 2024-08-06T21:20:02.7728823Z 2024-08-06T21:20:02.7729137Z - **output** (*Tensor*): the output list of unique scalar elements. 2024-08-06T21:20:02.7729583Z - **inverse_indices** (*Tensor*): (optional) if 2024-08-06T21:20:02.7730023Z :attr:`return_inverse` is True, there will be an additional 2024-08-06T21:20:02.7730530Z returned tensor (same shape as input) representing the indices 2024-08-06T21:20:02.7731044Z for where elements in the original input map to in the output; 2024-08-06T21:20:02.7731551Z otherwise, this function will only return a single tensor. 2024-08-06T21:20:02.7731981Z - **counts** (*Tensor*): (optional) if 2024-08-06T21:20:02.7732486Z :attr:`return_counts` is True, there will be an additional 2024-08-06T21:20:02.7732975Z returned tensor (same shape as output or output.size(dim), 2024-08-06T21:20:02.7733483Z if dim was specified) representing the number of occurrences 2024-08-06T21:20:02.7733915Z for each unique value or tensor. 2024-08-06T21:20:02.7734223Z 2024-08-06T21:20:02.7734513Z Example:: 2024-08-06T21:20:02.7734727Z 2024-08-06T21:20:02.7735061Z >>> output = torch.unique(torch.tensor([1, 3, 2, 3], dtype=torch.long)) 2024-08-06T21:20:02.7735490Z >>> output 2024-08-06T21:20:02.7735730Z tensor([1, 2, 3]) 2024-08-06T21:20:02.7735995Z 2024-08-06T21:20:02.7736243Z >>> output, inverse_indices = torch.unique( 2024-08-06T21:20:02.7736712Z ... torch.tensor([1, 3, 2, 3], dtype=torch.long), sorted=True, return_inverse=True) 2024-08-06T21:20:02.7737159Z >>> output 2024-08-06T21:20:02.7737412Z tensor([1, 2, 3]) 2024-08-06T21:20:02.7737682Z >>> inverse_indices 2024-08-06T21:20:02.7737968Z tensor([0, 2, 1, 2]) 2024-08-06T21:20:02.7738244Z 2024-08-06T21:20:02.7738542Z >>> output, inverse_indices = torch.unique( 2024-08-06T21:20:02.7739028Z ... torch.tensor([[1, 3], [2, 3]], dtype=torch.long), sorted=True, return_inverse=True) 2024-08-06T21:20:02.7739473Z >>> output 2024-08-06T21:20:02.7739712Z tensor([1, 2, 3]) 2024-08-06T21:20:02.7739991Z >>> inverse_indices 2024-08-06T21:20:02.7740270Z tensor([[0, 2], 2024-08-06T21:20:02.7740520Z [1, 2]]) 2024-08-06T21:20:02.7740774Z 2024-08-06T21:20:02.7740989Z >>> a = torch.tensor([ 2024-08-06T21:20:02.7741264Z ... [ 2024-08-06T21:20:02.7741512Z ... [1, 1, 0, 0], 2024-08-06T21:20:02.7741810Z ... [1, 1, 0, 0], 2024-08-06T21:20:02.7742093Z ... [0, 0, 1, 1], 2024-08-06T21:20:02.7742379Z ... ], 2024-08-06T21:20:02.7742622Z ... [ 2024-08-06T21:20:02.7742853Z ... [0, 0, 1, 1], 2024-08-06T21:20:02.7743153Z ... [0, 0, 1, 1], 2024-08-06T21:20:02.7743448Z ... [1, 1, 1, 1], 2024-08-06T21:20:02.7743720Z ... ], 2024-08-06T21:20:02.7743969Z ... [ 2024-08-06T21:20:02.7744214Z ... [1, 1, 0, 0], 2024-08-06T21:20:02.7744498Z ... [1, 1, 0, 0], 2024-08-06T21:20:02.7744793Z ... [0, 0, 1, 1], 2024-08-06T21:20:02.7745067Z ... ], 2024-08-06T21:20:02.7745311Z ... ]) 2024-08-06T21:20:02.7745536Z 2024-08-06T21:20:02.7745862Z >>> # If we call `torch.unique(a, dim=0)`, each of the tensors `a[idx, :, :]` 2024-08-06T21:20:02.7746414Z >>> # will be compared. We can see that `a[0, :, :]` and `a[2, :, :]` match 2024-08-06T21:20:02.7746883Z >>> # each other, so one of them will be removed. 2024-08-06T21:20:02.7747230Z >>> (a[0, :, :] == a[2, :, :]).all() 2024-08-06T21:20:02.7747546Z tensor(True) 2024-08-06T21:20:02.7747835Z >>> a_unique_dim0 = torch.unique(a, dim=0) 2024-08-06T21:20:02.7748159Z >>> a_unique_dim0 2024-08-06T21:20:02.7748443Z tensor([[[0, 0, 1, 1], 2024-08-06T21:20:02.7748733Z [0, 0, 1, 1], 2024-08-06T21:20:02.7749001Z [1, 1, 1, 1]], 2024-08-06T21:20:02.7749285Z [[1, 1, 0, 0], 2024-08-06T21:20:02.7749563Z [1, 1, 0, 0], 2024-08-06T21:20:02.7749830Z [0, 0, 1, 1]]]) 2024-08-06T21:20:02.7750106Z 2024-08-06T21:20:02.7750436Z >>> # Notice which sub-tensors from `a` match with the sub-tensors from 2024-08-06T21:20:02.7750859Z >>> # `a_unique_dim0`: 2024-08-06T21:20:02.7751179Z >>> (a_unique_dim0[0, :, :] == a[1, :, :]).all() 2024-08-06T21:20:02.7751589Z tensor(True) 2024-08-06T21:20:02.7751868Z >>> (a_unique_dim0[1, :, :] == a[0, :, :]).all() 2024-08-06T21:20:02.7752206Z tensor(True) 2024-08-06T21:20:02.7752457Z 2024-08-06T21:20:02.7752767Z >>> # For `torch.unique(a, dim=1)`, each of the tensors `a[:, idx, :]` are 2024-08-06T21:20:02.7753283Z >>> # compared. `a[:, 0, :]` and `a[:, 1, :]` match each other, so one of 2024-08-06T21:20:02.7753697Z >>> # them will be removed. 2024-08-06T21:20:02.7754001Z >>> (a[:, 0, :] == a[:, 1, :]).all() 2024-08-06T21:20:02.7754315Z tensor(True) 2024-08-06T21:20:02.7754582Z >>> torch.unique(a, dim=1) 2024-08-06T21:20:02.7754880Z tensor([[[0, 0, 1, 1], 2024-08-06T21:20:02.7755168Z [1, 1, 0, 0]], 2024-08-06T21:20:02.7755453Z [[1, 1, 1, 1], 2024-08-06T21:20:02.7755723Z [0, 0, 1, 1]], 2024-08-06T21:20:02.7756011Z [[0, 0, 1, 1], 2024-08-06T21:20:02.7756296Z [1, 1, 0, 0]]]) 2024-08-06T21:20:02.7756562Z 2024-08-06T21:20:02.7756948Z >>> # For `torch.unique(a, dim=2)`, the tensors `a[:, :, idx]` are compared. 2024-08-06T21:20:02.7757448Z >>> # `a[:, :, 0]` and `a[:, :, 1]` match each other. Also, `a[:, :, 2]` and 2024-08-06T21:20:02.7757889Z >>> # `a[:, :, 3]` match each other as well. So in this case, two of the 2024-08-06T21:20:02.7758374Z >>> # sub-tensors will be removed. 2024-08-06T21:20:02.7758710Z >>> (a[:, :, 0] == a[:, :, 1]).all() 2024-08-06T21:20:02.7759069Z tensor(True) 2024-08-06T21:20:02.7759335Z >>> (a[:, :, 2] == a[:, :, 3]).all() 2024-08-06T21:20:02.7759647Z tensor(True) 2024-08-06T21:20:02.7759906Z >>> torch.unique(a, dim=2) 2024-08-06T21:20:02.7760211Z tensor([[[0, 1], 2024-08-06T21:20:02.7760481Z [0, 1], 2024-08-06T21:20:02.7760739Z [1, 0]], 2024-08-06T21:20:02.7761004Z [[1, 0], 2024-08-06T21:20:02.7761265Z [1, 0], 2024-08-06T21:20:02.7761516Z [1, 1]], 2024-08-06T21:20:02.7761782Z [[0, 1], 2024-08-06T21:20:02.7762042Z [0, 1], 2024-08-06T21:20:02.7762289Z [1, 0]]]) 2024-08-06T21:20:02.7762551Z 2024-08-06T21:20:02.7763091Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.7763541Z 2024-08-06T21:20:02.7763757Z warnings.warn(msg) 2024-08-06T21:20:02.7763995Z 2024-08-06T21:20:02.7764363Z --- Parse Warning: 3 / 100 --- 2024-08-06T21:20:02.7765406Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py line=560. 2024-08-06T21:20:02.7766777Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7767233Z 2024-08-06T21:20:02.7767515Z Load a model from a github repo or a local directory. 2024-08-06T21:20:02.7767885Z 2024-08-06T21:20:02.7768219Z Note: Loading a model is the typical use case, but this can also be used to 2024-08-06T21:20:02.7768784Z for loading other objects such as tokenizers, loss functions, etc. 2024-08-06T21:20:02.7769199Z 2024-08-06T21:20:02.7769471Z If ``source`` is 'github', ``repo_or_dir`` is expected to be 2024-08-06T21:20:02.7769931Z of the form ``repo_owner/repo_name[:ref]`` with an optional 2024-08-06T21:20:02.7770326Z ref (a tag or a branch). 2024-08-06T21:20:02.7770580Z 2024-08-06T21:20:02.7770868Z If ``source`` is 'local', ``repo_or_dir`` is expected to be a 2024-08-06T21:20:02.7771267Z path to a local directory. 2024-08-06T21:20:02.7771528Z 2024-08-06T21:20:02.7771728Z Args: 2024-08-06T21:20:02.7771974Z repo_or_dir (str): If ``source`` is 'github', 2024-08-06T21:20:02.7772662Z this should correspond to a github repo with format ``repo_owner/repo_name[:ref]`` with 2024-08-06T21:20:02.7773378Z an optional ref (tag or branch), for example 'pytorch/vision:0.10'. If ``ref`` is not specified, 2024-08-06T21:20:02.7774066Z the default branch is assumed to be ``main`` if it exists, and otherwise ``master``. 2024-08-06T21:20:02.7774704Z If ``source`` is 'local' then it should be a path to a local directory. 2024-08-06T21:20:02.7775242Z model (str): the name of a callable (entrypoint) defined in the 2024-08-06T21:20:02.7775676Z repo/dir's ``hubconf.py``. 2024-08-06T21:20:02.7776082Z *args (optional): the corresponding args for callable ``model``. 2024-08-06T21:20:02.7776583Z source (str, optional): 'github' or 'local'. Specifies how 2024-08-06T21:20:02.7777056Z ``repo_or_dir`` is to be interpreted. Default is 'github'. 2024-08-06T21:20:02.7777561Z trust_repo (bool, str or None): ``"check"``, ``True``, ``False`` or ``None``. 2024-08-06T21:20:02.7778223Z This parameter was introduced in v1.12 and helps ensuring that users 2024-08-06T21:20:02.7778712Z only run code from repos that they trust. 2024-08-06T21:20:02.7779032Z 2024-08-06T21:20:02.7779349Z - If ``False``, a prompt will ask the user whether the repo should 2024-08-06T21:20:02.7779763Z be trusted. 2024-08-06T21:20:02.7780115Z - If ``True``, the repo will be added to the trusted list and loaded 2024-08-06T21:20:02.7780570Z without requiring explicit confirmation. 2024-08-06T21:20:02.7780995Z - If ``"check"``, the repo will be checked against the list of 2024-08-06T21:20:02.7781490Z trusted repos in the cache. If it is not present in that list, the 2024-08-06T21:20:02.7782023Z behaviour will fall back onto the ``trust_repo=False`` option. 2024-08-06T21:20:02.7782536Z - If ``None``: this will raise a warning, inviting the user to set 2024-08-06T21:20:02.7783023Z ``trust_repo`` to either ``False``, ``True`` or ``"check"``. This 2024-08-06T21:20:02.7783551Z is only present for backward compatibility and will be removed in 2024-08-06T21:20:02.7783973Z v2.0. 2024-08-06T21:20:02.7784186Z 2024-08-06T21:20:02.7784513Z Default is ``None`` and will eventually change to ``"check"`` in v2.0. 2024-08-06T21:20:02.7785057Z force_reload (bool, optional): whether to force a fresh download of 2024-08-06T21:20:02.7785586Z the github repo unconditionally. Does not have any effect if 2024-08-06T21:20:02.7786011Z ``source = 'local'``. Default is ``False``. 2024-08-06T21:20:02.7786459Z verbose (bool, optional): If ``False``, mute messages about hitting 2024-08-06T21:20:02.7786993Z local caches. Note that the message about first download cannot be 2024-08-06T21:20:02.7787481Z muted. Does not have any effect if ``source = 'local'``. 2024-08-06T21:20:02.7787869Z Default is ``True``. 2024-08-06T21:20:02.7788358Z skip_validation (bool, optional): if ``False``, torchhub will check that the branch or commit 2024-08-06T21:20:02.7789048Z specified by the ``github`` argument properly belongs to the repo owner. This will make 2024-08-06T21:20:02.7789723Z requests to the GitHub API; you can specify a non-default GitHub token by setting the 2024-08-06T21:20:02.7790294Z ``GITHUB_TOKEN`` environment variable. Default is ``False``. 2024-08-06T21:20:02.7790801Z **kwargs (optional): the corresponding kwargs for callable ``model``. 2024-08-06T21:20:02.7791223Z 2024-08-06T21:20:02.7791428Z Returns: 2024-08-06T21:20:02.7791740Z The output of the ``model`` callable when called with the given 2024-08-06T21:20:02.7792148Z ``*args`` and ``**kwargs``. 2024-08-06T21:20:02.7792516Z 2024-08-06T21:20:02.7792705Z Example: 2024-08-06T21:20:02.7792973Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_HUB) 2024-08-06T21:20:02.7793323Z >>> # from a github repo 2024-08-06T21:20:02.7793611Z >>> repo = "pytorch/vision" 2024-08-06T21:20:02.7793922Z >>> model = torch.hub.load( 2024-08-06T21:20:02.7794312Z ... repo, "resnet50", weights="ResNet50_Weights.IMAGENET1K_V1" 2024-08-06T21:20:02.7794694Z ... ) 2024-08-06T21:20:02.7794928Z >>> # from a local directory 2024-08-06T21:20:02.7795264Z >>> path = "/some/local/path/pytorch/vision" 2024-08-06T21:20:02.7795597Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.7796024Z >>> model = torch.hub.load(path, "resnet50", weights="ResNet50_Weights.DEFAULT") 2024-08-06T21:20:02.7796475Z 2024-08-06T21:20:02.7796836Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.7797290Z 2024-08-06T21:20:02.7797507Z warnings.warn(msg) 2024-08-06T21:20:02.7797751Z 2024-08-06T21:20:02.7798087Z --- Parse Warning: 4 / 100 --- 2024-08-06T21:20:02.7799249Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=download_url_to_file in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py line=687. 2024-08-06T21:20:02.7800463Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7801001Z Download object at the given URL to a local path. 2024-08-06T21:20:02.7801347Z 2024-08-06T21:20:02.7801537Z Args: 2024-08-06T21:20:02.7801801Z url (str): URL of the object to download 2024-08-06T21:20:02.7802281Z dst (str): Full path where object will be saved, e.g. ``/tmp/temporary_file`` 2024-08-06T21:20:02.7802961Z hash_prefix (str, optional): If not None, the SHA256 downloaded file should start with ``hash_prefix``. 2024-08-06T21:20:02.7803514Z Default: None 2024-08-06T21:20:02.7803956Z progress (bool, optional): whether or not to display a progress bar to stderr 2024-08-06T21:20:02.7804416Z Default: True 2024-08-06T21:20:02.7804688Z 2024-08-06T21:20:02.7804892Z Example: 2024-08-06T21:20:02.7805157Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_HUB) 2024-08-06T21:20:02.7805527Z >>> # xdoctest: +REQUIRES(POSIX) 2024-08-06T21:20:02.7805878Z >>> torch.hub.download_url_to_file( 2024-08-06T21:20:02.7806331Z ... "https://s3.amazonaws.com/pytorch/models/resnet18-5c106cde.pth", 2024-08-06T21:20:02.7806784Z ... "/tmp/temporary_file", 2024-08-06T21:20:02.7807091Z ... ) 2024-08-06T21:20:02.7807298Z 2024-08-06T21:20:02.7807496Z 2024-08-06T21:20:02.7807868Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.7808310Z 2024-08-06T21:20:02.7808523Z warnings.warn(msg) 2024-08-06T21:20:02.7808777Z 2024-08-06T21:20:02.7809069Z --- Parse Warning: 5 / 100 --- 2024-08-06T21:20:02.7810177Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=load_state_dict_from_url in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/hub.py line=812. 2024-08-06T21:20:02.7811439Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7811965Z Loads the Torch serialized object at the given URL. 2024-08-06T21:20:02.7812319Z 2024-08-06T21:20:02.7812621Z If downloaded file is a zip file, it will be automatically 2024-08-06T21:20:02.7813007Z decompressed. 2024-08-06T21:20:02.7813269Z 2024-08-06T21:20:02.7813672Z If the object is already present in `model_dir`, it's deserialized and 2024-08-06T21:20:02.7814087Z returned. 2024-08-06T21:20:02.7814515Z The default value of ``model_dir`` is ``/checkpoints`` where 2024-08-06T21:20:02.7815142Z ``hub_dir`` is the directory returned by :func:`~torch.hub.get_dir`. 2024-08-06T21:20:02.7815530Z 2024-08-06T21:20:02.7815736Z Args: 2024-08-06T21:20:02.7816006Z url (str): URL of the object to download 2024-08-06T21:20:02.7816439Z model_dir (str, optional): directory in which to save the object 2024-08-06T21:20:02.7817115Z map_location (optional): a function or a dict specifying how to remap storage locations (see torch.load) 2024-08-06T21:20:02.7817853Z progress (bool, optional): whether or not to display a progress bar to stderr. 2024-08-06T21:20:02.7818321Z Default: True 2024-08-06T21:20:02.7818838Z check_hash(bool, optional): If True, the filename part of the URL should follow the naming convention 2024-08-06T21:20:02.7819509Z ``filename-.ext`` where ```` is the first eight or more 2024-08-06T21:20:02.7820086Z digits of the SHA256 hash of the contents of the file. The hash is used to 2024-08-06T21:20:02.7820627Z ensure unique names and to verify the contents of the file. 2024-08-06T21:20:02.7821095Z Default: False 2024-08-06T21:20:02.7821623Z file_name (str, optional): name for the downloaded file. Filename from ``url`` will be used if not set. 2024-08-06T21:20:02.7822399Z weights_only(bool, optional): If True, only weights will be loaded and no complex pickled objects. 2024-08-06T21:20:02.7823114Z Recommended for untrusted sources. See :func:`~torch.load` for more details. 2024-08-06T21:20:02.7823585Z 2024-08-06T21:20:02.7823781Z Example: 2024-08-06T21:20:02.7824068Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_HUB) 2024-08-06T21:20:02.7824478Z >>> state_dict = torch.hub.load_state_dict_from_url( 2024-08-06T21:20:02.7824957Z ... "https://s3.amazonaws.com/pytorch/models/resnet18-5c106cde.pth" 2024-08-06T21:20:02.7825389Z ... ) 2024-08-06T21:20:02.7825615Z 2024-08-06T21:20:02.7825802Z 2024-08-06T21:20:02.7826183Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.7826641Z 2024-08-06T21:20:02.7826842Z warnings.warn(msg) 2024-08-06T21:20:02.7827100Z 2024-08-06T21:20:02.7827428Z --- Parse Warning: 6 / 100 --- 2024-08-06T21:20:02.7828525Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=Library.fallback in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=334. 2024-08-06T21:20:02.7829741Z Caused by: DoctestParseError('Failed to parse doctest in _package_groups') 2024-08-06T21:20:02.7830349Z Registers the function implementation as the fallback for the given key. 2024-08-06T21:20:02.7830783Z 2024-08-06T21:20:02.7831117Z This function only works for a library with global namespace ("_"). 2024-08-06T21:20:02.7831543Z 2024-08-06T21:20:02.7831731Z Args: 2024-08-06T21:20:02.7832153Z fn: function used as fallback for the given dispatch key or :func:`~fallthrough_kernel` 2024-08-06T21:20:02.7832675Z to register a fallthrough. 2024-08-06T21:20:02.7833220Z dispatch_key: dispatch key that the input function should be registered for. By default, it uses 2024-08-06T21:20:02.7833831Z the dispatch key that the library was created with. 2024-08-06T21:20:02.7834495Z with_keyset: flag controlling if the current dispatcher call keyset should be passed as the first argument 2024-08-06T21:20:02.7835320Z to :attr:`fn` when calling. This should be used to create the appropriate keyset for redispatch calls. 2024-08-06T21:20:02.7835839Z 2024-08-06T21:20:02.7836056Z Example:: 2024-08-06T21:20:02.7836324Z >>> my_lib = Library("_", "IMPL") 2024-08-06T21:20:02.7836739Z >>> def fallback_kernel(op, *args, **kwargs): 2024-08-06T21:20:02.7837121Z >>> # Handle all autocast ops generically 2024-08-06T21:20:02.7837468Z >>> # ... 2024-08-06T21:20:02.7837778Z >>> my_lib.fallback(fallback_kernel, "Autocast") 2024-08-06T21:20:02.7838129Z 2024-08-06T21:20:02.7838892Z Original Error: IndentationError('expected an indented block after function definition on line 2', ('', 5, 1, 'my_lib.fallback(fallback_kernel, "Autocast")\n', 5, 7)) 2024-08-06T21:20:02.7839702Z 2024-08-06T21:20:02.7839952Z my_lib.fallback(fallback_kernel, "Autocast") 2024-08-06T21:20:02.7840286Z ^ 2024-08-06T21:20:02.7840490Z warnings.warn(msg) 2024-08-06T21:20:02.7840747Z 2024-08-06T21:20:02.7841052Z --- Parse Warning: 7 / 100 --- 2024-08-06T21:20:02.7842124Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=register_fake in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=677. 2024-08-06T21:20:02.7843377Z Caused by: DoctestParseError('Failed to parse doctest in _package_groups') 2024-08-06T21:20:02.7843980Z Register a FakeTensor implementation ("fake impl") for this operator. 2024-08-06T21:20:02.7844400Z 2024-08-06T21:20:02.7844695Z Also sometimes known as a "meta kernel", "abstract impl". 2024-08-06T21:20:02.7845072Z 2024-08-06T21:20:02.7845425Z An "FakeTensor implementation" specifies the behavior of this operator on 2024-08-06T21:20:02.7846020Z Tensors that carry no data ("FakeTensor"). Given some input Tensors with 2024-08-06T21:20:02.7846602Z certain properties (sizes/strides/storage_offset/device), it specifies 2024-08-06T21:20:02.7847093Z what the properties of the output Tensors are. 2024-08-06T21:20:02.7847435Z 2024-08-06T21:20:02.7847784Z The FakeTensor implementation has the same signature as the operator. 2024-08-06T21:20:02.7848340Z It is run for both FakeTensors and meta tensors. To write a FakeTensor 2024-08-06T21:20:02.7848893Z implementation, assume that all Tensor inputs to the operator are 2024-08-06T21:20:02.7849439Z regular CPU/CUDA/Meta tensors, but they do not have storage, and 2024-08-06T21:20:02.7849960Z you are trying to return regular CPU/CUDA/Meta tensor(s) as output. 2024-08-06T21:20:02.7850520Z The FakeTensor implementation must consist of only PyTorch operations 2024-08-06T21:20:02.7851067Z (and may not directly access the storage or data of any input or 2024-08-06T21:20:02.7851467Z intermediate Tensors). 2024-08-06T21:20:02.7851739Z 2024-08-06T21:20:02.7852005Z This API may be used as a decorator (see examples). 2024-08-06T21:20:02.7852345Z 2024-08-06T21:20:02.7852598Z For a detailed guide on custom ops, please see 2024-08-06T21:20:02.7853094Z https://pytorch.org/tutorials/advanced/custom_ops_landing_page.html 2024-08-06T21:20:02.7853520Z 2024-08-06T21:20:02.7853725Z Examples: 2024-08-06T21:20:02.7853963Z >>> import torch 2024-08-06T21:20:02.7854238Z >>> import numpy as np 2024-08-06T21:20:02.7854641Z >>> from torch import Tensor 2024-08-06T21:20:02.7854948Z >>> 2024-08-06T21:20:02.7855269Z >>> # Example 1: an operator without data-dependent output shape 2024-08-06T21:20:02.7855805Z >>> @torch.library.custom_op("mylib::custom_linear", mutates_args=()) 2024-08-06T21:20:02.7856367Z >>> def custom_linear(x: Tensor, weight: Tensor, bias: Tensor) -> Tensor: 2024-08-06T21:20:02.7856878Z >>> raise NotImplementedError("Implementation goes here") 2024-08-06T21:20:02.7857267Z >>> 2024-08-06T21:20:02.7857574Z >>> @torch.library.register_fake("mylib::custom_linear") 2024-08-06T21:20:02.7857952Z >>> def _(x, weight, bias): 2024-08-06T21:20:02.7858340Z >>> assert x.dim() == 2 2024-08-06T21:20:02.7858664Z >>> assert weight.dim() == 2 2024-08-06T21:20:02.7858982Z >>> assert bias.dim() == 1 2024-08-06T21:20:02.7859336Z >>> assert x.shape[1] == weight.shape[1] 2024-08-06T21:20:02.7859714Z >>> assert weight.shape[0] == bias.shape[0] 2024-08-06T21:20:02.7860092Z >>> assert x.device == weight.device 2024-08-06T21:20:02.7860416Z >>> 2024-08-06T21:20:02.7860671Z >>> return (x @ weight.t()) + bias 2024-08-06T21:20:02.7860976Z >>> 2024-08-06T21:20:02.7861283Z >>> with torch._subclasses.fake_tensor.FakeTensorMode(): 2024-08-06T21:20:02.7861683Z >>> x = torch.randn(2, 3) 2024-08-06T21:20:02.7861997Z >>> w = torch.randn(3, 3) 2024-08-06T21:20:02.7862320Z >>> b = torch.randn(3) 2024-08-06T21:20:02.7862671Z >>> y = torch.ops.mylib.custom_linear(x, w, b) 2024-08-06T21:20:02.7863168Z >>> 2024-08-06T21:20:02.7863416Z >>> assert y.shape == (2, 3) 2024-08-06T21:20:02.7863720Z >>> 2024-08-06T21:20:02.7864127Z >>> # Example 2: an operator with data-dependent output shape 2024-08-06T21:20:02.7864652Z >>> @torch.library.custom_op("mylib::custom_nonzero", mutates_args=()) 2024-08-06T21:20:02.7865130Z >>> def custom_nonzero(x: Tensor) -> Tensor: 2024-08-06T21:20:02.7865483Z >>> x_np = x.numpy(force=True) 2024-08-06T21:20:02.7866032Z >>> res = np.stack(np.nonzero(x_np), axis=1) 2024-08-06T21:20:02.7866426Z >>> return torch.tensor(res, device=x.device) 2024-08-06T21:20:02.7866754Z >>> 2024-08-06T21:20:02.7867072Z >>> @torch.library.register_fake("mylib::custom_nonzero") 2024-08-06T21:20:02.7867460Z >>> def _(x): 2024-08-06T21:20:02.7867770Z >>> # Number of nonzero-elements is data-dependent. 2024-08-06T21:20:02.7868200Z >>> # Since we cannot peek at the data in an fake impl, 2024-08-06T21:20:02.7868639Z >>> # we use the ctx object to construct a new symint that 2024-08-06T21:20:02.7869036Z >>> # represents the data-dependent size. 2024-08-06T21:20:02.7869406Z >>> ctx = torch.library.get_ctx() 2024-08-06T21:20:02.7869752Z >>> nnz = ctx.new_dynamic_size() 2024-08-06T21:20:02.7870075Z >>> shape = [nnz, x.dim()] 2024-08-06T21:20:02.7870439Z >>> result = x.new_empty(shape, dtype=torch.int64) 2024-08-06T21:20:02.7870805Z >>> return result 2024-08-06T21:20:02.7871069Z >>> 2024-08-06T21:20:02.7871385Z >>> from torch.fx.experimental.proxy_tensor import make_fx 2024-08-06T21:20:02.7871770Z >>> 2024-08-06T21:20:02.7872008Z >>> x = torch.tensor([0, 1, 2, 3, 4, 0]) 2024-08-06T21:20:02.7872486Z >>> trace = make_fx(torch.ops.mylib.custom_nonzero, tracing_mode="symbolic")(x) 2024-08-06T21:20:02.7872967Z >>> trace.print_readable() 2024-08-06T21:20:02.7873256Z >>> 2024-08-06T21:20:02.7873618Z >>> assert torch.allclose(trace(x), torch.ops.mylib.custom_nonzero(x)) 2024-08-06T21:20:02.7874051Z 2024-08-06T21:20:02.7874242Z 2024-08-06T21:20:02.7874894Z Original Error: IndentationError('expected an indented block after function definition on line 37', ('', 38, 1, '_._ = None\n', 38, 2)) 2024-08-06T21:20:02.7875617Z 2024-08-06T21:20:02.7875805Z _._ = None 2024-08-06T21:20:02.7876022Z ^ 2024-08-06T21:20:02.7876235Z warnings.warn(msg) 2024-08-06T21:20:02.7876476Z 2024-08-06T21:20:02.7876810Z --- Parse Warning: 8 / 100 --- 2024-08-06T21:20:02.7877921Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=register_autograd in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=798. 2024-08-06T21:20:02.7879323Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7879846Z Register a backward formula for this custom op. 2024-08-06T21:20:02.7880201Z 2024-08-06T21:20:02.7880530Z In order for an operator to work with autograd, you need to register 2024-08-06T21:20:02.7880947Z a backward formula: 2024-08-06T21:20:02.7881334Z 1. You must tell us how to compute gradients during the backward pass 2024-08-06T21:20:02.7881780Z by providing us a "backward" function. 2024-08-06T21:20:02.7882219Z 2. If you need any values from the forward to compute gradients, you can 2024-08-06T21:20:02.7882696Z use `setup_context` to save values for backward. 2024-08-06T21:20:02.7883035Z 2024-08-06T21:20:02.7883364Z ``backward`` runs during the backward pass. It accepts ``(ctx, *grads)``: 2024-08-06T21:20:02.7883910Z - ``grads`` is one or more gradients. The number of gradients matches 2024-08-06T21:20:02.7884352Z the number of outputs of the operator. 2024-08-06T21:20:02.7884796Z The ``ctx`` object is `the same ctx object `_ used by 2024-08-06T21:20:02.7885434Z :class:`torch.autograd.Function`. The semantics of ``backward_fn`` are the 2024-08-06T21:20:02.7885960Z same as :meth:`torch.autograd.Function.backward`. 2024-08-06T21:20:02.7886303Z 2024-08-06T21:20:02.7886634Z ``setup_context(ctx, inputs, output)`` runs during the forward pass. 2024-08-06T21:20:02.7887202Z Please save quantities needed for backward onto the ``ctx`` object via 2024-08-06T21:20:02.7887777Z either :meth:`torch.autograd.function.FunctionCtx.save_for_backward` 2024-08-06T21:20:02.7888337Z or assigning them as attributes of ``ctx``. If your custom op has 2024-08-06T21:20:02.7888873Z kwarg-only arguments, we expect the signature of ``setup_context`` 2024-08-06T21:20:02.7889390Z to be ``setup_context(ctx, inputs, keyword_only_inputs, output)``. 2024-08-06T21:20:02.7889792Z 2024-08-06T21:20:02.7890126Z Both ``setup_context_fn`` and ``backward_fn`` must be traceable. That is, 2024-08-06T21:20:02.7890686Z they may not directly access :meth:`torch.Tensor.data_ptr` and they must 2024-08-06T21:20:02.7891267Z not depend on or mutate global state. If you need a non-traceable backward, 2024-08-06T21:20:02.7891853Z you can make it a separate custom_op that you call inside ``backward_fn``. 2024-08-06T21:20:02.7892270Z 2024-08-06T21:20:02.7892474Z Examples: 2024-08-06T21:20:02.7892714Z >>> import torch 2024-08-06T21:20:02.7892990Z >>> import numpy as np 2024-08-06T21:20:02.7893300Z >>> from torch import Tensor 2024-08-06T21:20:02.7893608Z >>> 2024-08-06T21:20:02.7893940Z >>> @torch.library.custom_op("mylib::numpy_sin", mutates_args=()) 2024-08-06T21:20:02.7894541Z >>> def numpy_sin(x: Tensor) -> Tensor: 2024-08-06T21:20:02.7894898Z >>> x_np = x.cpu().numpy() 2024-08-06T21:20:02.7895207Z >>> y_np = np.sin(x_np) 2024-08-06T21:20:02.7895582Z >>> return torch.from_numpy(y_np).to(device=x.device) 2024-08-06T21:20:02.7895946Z >>> 2024-08-06T21:20:02.7896225Z >>> def setup_context(ctx, inputs, output) -> Tensor: 2024-08-06T21:20:02.7896587Z >>> x, = inputs 2024-08-06T21:20:02.7896881Z >>> ctx.save_for_backward(x) 2024-08-06T21:20:02.7897175Z >>> 2024-08-06T21:20:02.7897415Z >>> def backward(ctx, grad): 2024-08-06T21:20:02.7918798Z >>> x, = ctx.saved_tensors 2024-08-06T21:20:02.7919225Z >>> return grad * x.cos() 2024-08-06T21:20:02.7919517Z >>> 2024-08-06T21:20:02.7919768Z >>> torch.library.register_autograd( 2024-08-06T21:20:02.7920204Z ... "mylib::numpy_sin", backward, setup_context=setup_context 2024-08-06T21:20:02.7920716Z ... ) 2024-08-06T21:20:02.7920942Z >>> 2024-08-06T21:20:02.7921198Z >>> x = torch.randn(3, requires_grad=True) 2024-08-06T21:20:02.7921548Z >>> y = numpy_sin(x) 2024-08-06T21:20:02.7921924Z >>> (grad_x,) = torch.autograd.grad(y, x, torch.ones_like(y)) 2024-08-06T21:20:02.7922349Z >>> assert torch.allclose(grad_x, x.cos()) 2024-08-06T21:20:02.7922668Z >>> 2024-08-06T21:20:02.7922922Z >>> # Example with a keyword-only arg 2024-08-06T21:20:02.7923371Z >>> @torch.library.custom_op("mylib::numpy_mul", mutates_args=()) 2024-08-06T21:20:02.7923856Z >>> def numpy_mul(x: Tensor, *, val: float) -> Tensor: 2024-08-06T21:20:02.7924234Z >>> x_np = x.cpu().numpy() 2024-08-06T21:20:02.7924556Z >>> y_np = x_np * val 2024-08-06T21:20:02.7924919Z >>> return torch.from_numpy(y_np).to(device=x.device) 2024-08-06T21:20:02.7925269Z >>> 2024-08-06T21:20:02.7925636Z >>> def setup_context(ctx, inputs, keyword_only_inputs, output) -> Tensor: 2024-08-06T21:20:02.7926115Z >>> ctx.val = keyword_only_inputs["val"] 2024-08-06T21:20:02.7926490Z >>> 2024-08-06T21:20:02.7926734Z >>> def backward(ctx, grad): 2024-08-06T21:20:02.7927059Z >>> return grad * ctx.val 2024-08-06T21:20:02.7927339Z >>> 2024-08-06T21:20:02.7927603Z >>> torch.library.register_autograd( 2024-08-06T21:20:02.7928024Z ... "mylib::numpy_mul", backward, setup_context=setup_context 2024-08-06T21:20:02.7928398Z ... ) 2024-08-06T21:20:02.7928622Z >>> 2024-08-06T21:20:02.7928874Z >>> x = torch.randn(3, requires_grad=True) 2024-08-06T21:20:02.7929210Z >>> y = numpy_mul(x, val=3.14) 2024-08-06T21:20:02.7929602Z >>> (grad_x,) = torch.autograd.grad(y, x, torch.ones_like(y)) 2024-08-06T21:20:02.7930071Z >>> assert torch.allclose(grad_x, torch.full_like(x, 3.14)) 2024-08-06T21:20:02.7930438Z 2024-08-06T21:20:02.7930642Z 2024-08-06T21:20:02.7931019Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.7931467Z 2024-08-06T21:20:02.7931689Z warnings.warn(msg) 2024-08-06T21:20:02.7931943Z 2024-08-06T21:20:02.7932295Z --- Parse Warning: 9 / 100 --- 2024-08-06T21:20:02.7933379Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=opcheck in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py line=1206. 2024-08-06T21:20:02.7934702Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7935301Z Given an operator and some sample arguments, tests if the operator is 2024-08-06T21:20:02.7935747Z registered correctly. 2024-08-06T21:20:02.7936021Z 2024-08-06T21:20:02.7936337Z That is, when you use the torch.library/TORCH_LIBRARY APIs to create a 2024-08-06T21:20:02.7936927Z custom op, you specified metadata (e.g. mutability info) about the custom op 2024-08-06T21:20:02.7937531Z and these APIs require that the functions you pass them satisfy certain 2024-08-06T21:20:02.7938100Z properties (e.g. no data pointer access in the fake/meta/abstract kernel) 2024-08-06T21:20:02.7938598Z ``opcheck`` tests these metadata and properties. 2024-08-06T21:20:02.7938943Z 2024-08-06T21:20:02.7939168Z Concretely, we test the following: 2024-08-06T21:20:02.7939554Z - test_schema: if the operator's schema is correct. 2024-08-06T21:20:02.7940045Z - test_autograd_registration: if autograd was registered correctly. 2024-08-06T21:20:02.7940569Z - test_faketensor: If the operator has a FakeTensor kernel 2024-08-06T21:20:02.7941030Z (and if it is correct). The FakeTensor kernel is necessary ( 2024-08-06T21:20:02.7941544Z but not sufficient) for the operator to work with PyTorch compilation 2024-08-06T21:20:02.7942089Z APIs (torch.compile/export/FX). 2024-08-06T21:20:02.7942507Z - test_aot_dispatch_dynamic: If the operator has correct behavior 2024-08-06T21:20:02.7943016Z with PyTorch compilation APIs (torch.compile/export/FX). 2024-08-06T21:20:02.7943529Z This checks that the outputs (and gradients, if applicable) are the 2024-08-06T21:20:02.7944002Z same under eager-mode PyTorch and torch.compile. 2024-08-06T21:20:02.7944410Z This test is a superset of ``test_faketensor``. 2024-08-06T21:20:02.7944747Z 2024-08-06T21:20:02.7945050Z For best results, please call ``opcheck`` multiple times with a 2024-08-06T21:20:02.7945550Z representative set of inputs. If your operator supports 2024-08-06T21:20:02.7946083Z autograd, please use ``opcheck`` with inputs with ``requires_grad = True``; 2024-08-06T21:20:02.7946653Z if your operator supports multiple devices (e.g. CPU and CUDA), please 2024-08-06T21:20:02.7947162Z use ``opcheck`` with inputs on all supported devices. 2024-08-06T21:20:02.7947521Z 2024-08-06T21:20:02.7947712Z Args: 2024-08-06T21:20:02.7948079Z op: The operator. Must either be a function decorated with 2024-08-06T21:20:02.7948591Z :func:`torch.library.custom_op` or an OpOverload/OpOverloadPacket 2024-08-06T21:20:02.7949129Z found in torch.ops.* (e.g. torch.ops.aten.sin, torch.ops.mylib.foo) 2024-08-06T21:20:02.7949579Z args: The args to the operator 2024-08-06T21:20:02.7949922Z kwargs: The kwargs to the operator 2024-08-06T21:20:02.7950324Z test_utils: Tests that we should run. Default: all of them. 2024-08-06T21:20:02.7950765Z Example: ("test_schema", "test_faketensor") 2024-08-06T21:20:02.7951205Z raise_exception: If we should raise an exception on the first 2024-08-06T21:20:02.7951677Z error. If False, we will return a dict with information 2024-08-06T21:20:02.7952085Z on if each test passed or not. 2024-08-06T21:20:02.7952400Z 2024-08-06T21:20:02.7952600Z .. warning:: 2024-08-06T21:20:02.7952837Z 2024-08-06T21:20:02.7953177Z opcheck and :func:`torch.autograd.gradcheck` test different things; 2024-08-06T21:20:02.7953713Z opcheck tests if your usage of torch.library APIs is correct while 2024-08-06T21:20:02.7954260Z :func:`torch.autograd.gradcheck` tests if your autograd formula is 2024-08-06T21:20:02.7954820Z mathematically correct. Use both to test custom ops that support 2024-08-06T21:20:02.7955257Z gradient computation. 2024-08-06T21:20:02.7955547Z 2024-08-06T21:20:02.7955757Z Example: 2024-08-06T21:20:02.7955967Z 2024-08-06T21:20:02.7956219Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:20:02.7956677Z >>> @torch.library.custom_op("mylib::numpy_mul", mutates_args=()) 2024-08-06T21:20:02.7957134Z >>> def numpy_add(x: Tensor, y: float) -> Tensor: 2024-08-06T21:20:02.7957508Z >>> x_np = x.numpy(force=True) 2024-08-06T21:20:02.7957840Z >>> z_np = x_np + y 2024-08-06T21:20:02.7958168Z >>> return torch.from_numpy(z_np).to(x.device) 2024-08-06T21:20:02.7958511Z >>> 2024-08-06T21:20:02.7958761Z >>> @numpy_sin.register_fake 2024-08-06T21:20:02.7959067Z >>> def _(x, y): 2024-08-06T21:20:02.7959363Z >>> return torch.empty_like(x) 2024-08-06T21:20:02.7959767Z >>> 2024-08-06T21:20:02.7960022Z >>> def setup_context(ctx, inputs, output): 2024-08-06T21:20:02.7960356Z >>> y, = inputs 2024-08-06T21:20:02.7960636Z >>> ctx.y = y 2024-08-06T21:20:02.7960891Z >>> 2024-08-06T21:20:02.7961135Z >>> def backward(ctx, grad): 2024-08-06T21:20:02.7961467Z >>> return grad * ctx.y, None 2024-08-06T21:20:02.7961834Z >>> 2024-08-06T21:20:02.7962195Z >>> numpy_sin.register_autograd(backward, setup_context=setup_context) 2024-08-06T21:20:02.7962630Z >>> 2024-08-06T21:20:02.7963086Z >>> sample_inputs = [ 2024-08-06T21:20:02.7963397Z >>> (torch.randn(3), 3.14), 2024-08-06T21:20:02.7963749Z >>> (torch.randn(2, 3, device='cuda'), 2.718), 2024-08-06T21:20:02.7964133Z >>> (torch.randn(1, 10, requires_grad=True), 1.234), 2024-08-06T21:20:02.7964595Z >>> (torch.randn(64, 64, device='cuda', requires_grad=True), 90.18), 2024-08-06T21:20:02.7964996Z >>> ] 2024-08-06T21:20:02.7965204Z >>> 2024-08-06T21:20:02.7965452Z >>> for args in sample_inputs: 2024-08-06T21:20:02.7966007Z >>> torch.library.opcheck(foo, args) 2024-08-06T21:20:02.7966323Z 2024-08-06T21:20:02.7966527Z 2024-08-06T21:20:02.7966901Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.7967342Z 2024-08-06T21:20:02.7967558Z warnings.warn(msg) 2024-08-06T21:20:02.7967796Z 2024-08-06T21:20:02.7968280Z --- Parse Warning: 10 / 100 --- 2024-08-06T21:20:02.7969376Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/serialization.py line=1042. 2024-08-06T21:20:02.7970587Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.7971297Z load(f, map_location=None, pickle_module=pickle, *, weights_only=False, mmap=None, **pickle_load_args) 2024-08-06T21:20:02.7971838Z 2024-08-06T21:20:02.7972139Z Loads an object saved with :func:`torch.save` from a file. 2024-08-06T21:20:02.7972507Z 2024-08-06T21:20:02.7972861Z :func:`torch.load` uses Python's unpickling facilities but treats storages, 2024-08-06T21:20:02.7973457Z which underlie tensors, specially. They are first deserialized on the 2024-08-06T21:20:02.7974012Z CPU and are then moved to the device they were saved from. If this fails 2024-08-06T21:20:02.7974663Z (e.g. because the run time system doesn't have certain devices), an exception 2024-08-06T21:20:02.7975258Z is raised. However, storages can be dynamically remapped to an alternative 2024-08-06T21:20:02.7975773Z set of devices using the :attr:`map_location` argument. 2024-08-06T21:20:02.7976139Z 2024-08-06T21:20:02.7976501Z If :attr:`map_location` is a callable, it will be called once for each serialized 2024-08-06T21:20:02.7977078Z storage with two arguments: storage and location. The storage argument 2024-08-06T21:20:02.7977655Z will be the initial deserialization of the storage, residing on the CPU. 2024-08-06T21:20:02.7978227Z Each serialized storage has a location tag associated with it which 2024-08-06T21:20:02.7978768Z identifies the device it was saved from, and this tag is the second 2024-08-06T21:20:02.7979356Z argument passed to :attr:`map_location`. The builtin location tags are ``'cpu'`` 2024-08-06T21:20:02.7979962Z for CPU tensors and ``'cuda:device_id'`` (e.g. ``'cuda:2'``) for CUDA tensors. 2024-08-06T21:20:02.7980515Z :attr:`map_location` should return either ``None`` or a storage. If 2024-08-06T21:20:02.7981086Z :attr:`map_location` returns a storage, it will be used as the final deserialized 2024-08-06T21:20:02.7981713Z object, already moved to the right device. Otherwise, :func:`torch.load` will 2024-08-06T21:20:02.7982329Z fall back to the default behavior, as if :attr:`map_location` wasn't specified. 2024-08-06T21:20:02.7982771Z 2024-08-06T21:20:02.7983122Z If :attr:`map_location` is a :class:`torch.device` object or a string containing 2024-08-06T21:20:02.7983712Z a device tag, it indicates the location where all tensors should be loaded. 2024-08-06T21:20:02.7984223Z 2024-08-06T21:20:02.7984608Z Otherwise, if :attr:`map_location` is a dict, it will be used to remap location tags 2024-08-06T21:20:02.7985211Z appearing in the file (keys), to ones that specify where to put the 2024-08-06T21:20:02.7985631Z storages (values). 2024-08-06T21:20:02.7985897Z 2024-08-06T21:20:02.7986237Z User extensions can register their own location tags and tagging and 2024-08-06T21:20:02.7986833Z deserialization methods using :func:`torch.serialization.register_package`. 2024-08-06T21:20:02.7987298Z 2024-08-06T21:20:02.7987498Z Args: 2024-08-06T21:20:02.7987944Z f: a file-like object (has to implement :meth:`read`, :meth:`readline`, :meth:`tell`, and :meth:`seek`), 2024-08-06T21:20:02.7988562Z or a string or os.PathLike object containing a file name 2024-08-06T21:20:02.7989179Z map_location: a function, :class:`torch.device`, string or a dict specifying how to remap storage 2024-08-06T21:20:02.7989706Z locations 2024-08-06T21:20:02.7990106Z pickle_module: module used for unpickling metadata and objects (has to 2024-08-06T21:20:02.7990678Z match the :attr:`pickle_module` used to serialize file) 2024-08-06T21:20:02.7991174Z weights_only: Indicates whether unpickler should be restricted to 2024-08-06T21:20:02.7991670Z loading only tensors, primitive types, dictionaries 2024-08-06T21:20:02.7992168Z and any types added via :func:`torch.serialization.add_safe_globals`. 2024-08-06T21:20:02.7992843Z mmap: Indicates whether the file should be mmaped rather than loading all the storages into memory. 2024-08-06T21:20:02.7993623Z Typically, tensor storages in the file will first be moved from disk to CPU memory, after which they 2024-08-06T21:20:02.7994428Z are moved to the location that they were tagged with when saving, or specified by ``map_location``. This 2024-08-06T21:20:02.7995227Z second step is a no-op if the final location is CPU. When the ``mmap`` flag is set, instead of copying the 2024-08-06T21:20:02.7995909Z tensor storages from disk to CPU memory in the first step, ``f`` is mmaped. 2024-08-06T21:20:02.7996517Z pickle_load_args: (Python 3 only) optional keyword arguments passed over to 2024-08-06T21:20:02.7997109Z :func:`pickle_module.load` and :func:`pickle_module.Unpickler`, e.g., 2024-08-06T21:20:02.7997546Z :attr:`errors=...`. 2024-08-06T21:20:02.7997836Z 2024-08-06T21:20:02.7998056Z .. warning:: 2024-08-06T21:20:02.7998411Z :func:`torch.load()` unless `weights_only` parameter is set to `True`, 2024-08-06T21:20:02.7998939Z uses ``pickle`` module implicitly, which is known to be insecure. 2024-08-06T21:20:02.7999537Z It is possible to construct malicious pickle data which will execute arbitrary code 2024-08-06T21:20:02.8000165Z during unpickling. Never load data that could have come from an untrusted 2024-08-06T21:20:02.8000829Z source in an unsafe mode, or that could have been tampered with. **Only load data you trust**. 2024-08-06T21:20:02.8001321Z 2024-08-06T21:20:02.8001525Z .. note:: 2024-08-06T21:20:02.8001916Z When you call :func:`torch.load()` on a file which contains GPU tensors, those tensors 2024-08-06T21:20:02.8002559Z will be loaded to GPU by default. You can call ``torch.load(.., map_location='cpu')`` 2024-08-06T21:20:02.8003204Z and then :meth:`load_state_dict` to avoid GPU RAM surge when loading a model checkpoint. 2024-08-06T21:20:02.8003676Z 2024-08-06T21:20:02.8003867Z .. note:: 2024-08-06T21:20:02.8004253Z By default, we decode byte strings as ``utf-8``. This is to avoid a common error 2024-08-06T21:20:02.8004833Z case ``UnicodeDecodeError: 'ascii' codec can't decode byte 0x...`` 2024-08-06T21:20:02.8005420Z when loading files saved by Python 2 in Python 3. If this default 2024-08-06T21:20:02.8006003Z is incorrect, you may use an extra :attr:`encoding` keyword argument to specify how 2024-08-06T21:20:02.8006614Z these objects should be loaded, e.g., :attr:`encoding='latin1'` decodes them 2024-08-06T21:20:02.8007206Z to strings using ``latin1`` encoding, and :attr:`encoding='bytes'` keeps them 2024-08-06T21:20:02.8007776Z as byte arrays which can be decoded later with ``byte_array.decode(...)``. 2024-08-06T21:20:02.8008200Z 2024-08-06T21:20:02.8008399Z Example: 2024-08-06T21:20:02.8008658Z >>> # xdoctest: +SKIP("undefined filepaths") 2024-08-06T21:20:02.8009044Z >>> torch.load("tensors.pt", weights_only=True) 2024-08-06T21:20:02.8009414Z # Load all tensors onto the CPU 2024-08-06T21:20:02.8009872Z >>> torch.load("tensors.pt", map_location=torch.device("cpu"), weights_only=True) 2024-08-06T21:20:02.8010382Z # Load all tensors onto the CPU, using a function 2024-08-06T21:20:02.8010738Z >>> torch.load( 2024-08-06T21:20:02.8011192Z ... "tensors.pt", map_location=lambda storage, loc: storage, weights_only=True 2024-08-06T21:20:02.8011637Z ... ) 2024-08-06T21:20:02.8011882Z # Load all tensors onto GPU 1 2024-08-06T21:20:02.8012182Z >>> torch.load( 2024-08-06T21:20:02.8012449Z ... "tensors.pt", 2024-08-06T21:20:02.8012800Z ... map_location=lambda storage, loc: storage.cuda(1), 2024-08-06T21:20:02.8013170Z ... weights_only=True, 2024-08-06T21:20:02.8013489Z ... ) # type: ignore[attr-defined] 2024-08-06T21:20:02.8013829Z # Map tensors from GPU 1 to GPU 0 2024-08-06T21:20:02.8014289Z >>> torch.load("tensors.pt", map_location={"cuda:1": "cuda:0"}, weights_only=True) 2024-08-06T21:20:02.8014846Z # Load tensor from io.BytesIO object 2024-08-06T21:20:02.8015333Z # Loading from a buffer setting weights_only=False, warning this can be unsafe 2024-08-06T21:20:02.8015813Z >>> with open("tensor.pt", "rb") as f: 2024-08-06T21:20:02.8016169Z ... buffer = io.BytesIO(f.read()) 2024-08-06T21:20:02.8016522Z >>> torch.load(buffer, weights_only=False) 2024-08-06T21:20:02.8016904Z # Load a module with 'ascii' encoding for unpickling 2024-08-06T21:20:02.8017412Z # Loading from a module setting weights_only=False, warning this can be unsafe 2024-08-06T21:20:02.8017969Z >>> torch.load("module.pt", encoding="ascii", weights_only=False) 2024-08-06T21:20:02.8018350Z 2024-08-06T21:20:02.8018718Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8019158Z 2024-08-06T21:20:02.8019354Z warnings.warn(msg) 2024-08-06T21:20:02.8019590Z 2024-08-06T21:20:02.8019911Z --- Parse Warning: 11 / 100 --- 2024-08-06T21:20:02.8020991Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=cudart in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/cuda/__init__.py line=343. 2024-08-06T21:20:02.8022182Z Caused by: DoctestParseError('Failed to parse doctest in _package_groups') 2024-08-06T21:20:02.8022665Z Retrieves the CUDA runtime API module. 2024-08-06T21:20:02.8022964Z 2024-08-06T21:20:02.8023154Z 2024-08-06T21:20:02.8023514Z This function initializes the CUDA runtime environment if it is not already 2024-08-06T21:20:02.8024106Z initialized and returns the CUDA runtime API module (_cudart). The CUDA 2024-08-06T21:20:02.8024673Z runtime API module provides access to various CUDA runtime functions. 2024-08-06T21:20:02.8025094Z 2024-08-06T21:20:02.8025278Z Args: 2024-08-06T21:20:02.8025489Z ``None`` 2024-08-06T21:20:02.8025713Z 2024-08-06T21:20:02.8025960Z Returns: 2024-08-06T21:20:02.8026234Z module: The CUDA runtime API module (_cudart). 2024-08-06T21:20:02.8026573Z 2024-08-06T21:20:02.8026760Z Raises: 2024-08-06T21:20:02.8027132Z RuntimeError: If CUDA cannot be re-initialized in a forked subprocess. 2024-08-06T21:20:02.8027837Z AssertionError: If PyTorch is not compiled with CUDA support or if libcudart functions are unavailable. 2024-08-06T21:20:02.8028377Z 2024-08-06T21:20:02.8028621Z Example of CUDA operations with profiling: 2024-08-06T21:20:02.8028959Z >>> import torch 2024-08-06T21:20:02.8029261Z >>> from torch.cuda import cudart, check_error 2024-08-06T21:20:02.8029600Z >>> import os 2024-08-06T21:20:02.8029846Z >>> 2024-08-06T21:20:02.8030087Z >>> os.environ['CUDA_PROFILE'] = '1' 2024-08-06T21:20:02.8030396Z >>> 2024-08-06T21:20:02.8030664Z >>> def perform_cuda_operations_with_streams(): 2024-08-06T21:20:02.8031025Z >>> stream = torch.cuda.Stream() 2024-08-06T21:20:02.8031373Z >>> with torch.cuda.stream(stream): 2024-08-06T21:20:02.8031780Z >>> x = torch.randn(100, 100, device='cuda') 2024-08-06T21:20:02.8032134Z >>> y = torch.randn(100, 100, device='cuda') 2024-08-06T21:20:02.8032469Z >>> z = torch.mul(x, y) 2024-08-06T21:20:02.8032768Z >>> return z 2024-08-06T21:20:02.8033009Z >>> 2024-08-06T21:20:02.8033250Z >>> torch.cuda.synchronize() 2024-08-06T21:20:02.8033596Z >>> print("====== Start nsys profiling ======") 2024-08-06T21:20:02.8033962Z >>> check_error(cudart().cudaProfilerStart()) 2024-08-06T21:20:02.8034343Z >>> with torch.autograd.profiler.emit_nvtx(): 2024-08-06T21:20:02.8034744Z >>> result = perform_cuda_operations_with_streams() 2024-08-06T21:20:02.8035126Z >>> print("CUDA operations completed.") 2024-08-06T21:20:02.8035530Z >>> check_error(torch.cuda.cudart().cudaProfilerStop()) 2024-08-06T21:20:02.8035933Z >>> print("====== End nsys profiling ======") 2024-08-06T21:20:02.8036251Z 2024-08-06T21:20:02.8036553Z To run this example and save the profiling information, execute: 2024-08-06T21:20:02.8037220Z >>> $ nvprof --profile-from-start off --csv --print-summary -o trace_name.prof -f -- python cudart_test.py 2024-08-06T21:20:02.8037764Z 2024-08-06T21:20:02.8038115Z This command profiles the CUDA operations in the provided script and saves 2024-08-06T21:20:02.8038666Z the profiling information to a file named `trace_name.prof`. 2024-08-06T21:20:02.8039193Z The `--profile-from-start off` option ensures that profiling starts only 2024-08-06T21:20:02.8039682Z after the `cudaProfilerStart` call in the script. 2024-08-06T21:20:02.8040168Z The `--csv` and `--print-summary` options format the profiling output as a 2024-08-06T21:20:02.8040628Z CSV file and print a summary, respectively. 2024-08-06T21:20:02.8041113Z The `-o` option specifies the output file name, and the `-f` option forces the 2024-08-06T21:20:02.8041628Z overwrite of the output file if it already exists. 2024-08-06T21:20:02.8041967Z 2024-08-06T21:20:02.8042740Z Original Error: SyntaxError('invalid syntax', ('', 1, 1, '$ nvprof --profile-from-start off --csv --print-summary -o trace_name.prof -f -- python cudart_test.py\n', 1, 2)) 2024-08-06T21:20:02.8043571Z 2024-08-06T21:20:02.8044017Z $ nvprof --profile-from-start off --csv --print-summary -o trace_name.prof -f -- python cudart_test.py 2024-08-06T21:20:02.8044569Z ^ 2024-08-06T21:20:02.8044777Z warnings.warn(msg) 2024-08-06T21:20:02.8045017Z 2024-08-06T21:20:02.8045322Z --- Parse Warning: 12 / 100 --- 2024-08-06T21:20:02.8046440Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=Future.then in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py line=101. 2024-08-06T21:20:02.8047776Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8048229Z 2024-08-06T21:20:02.8048569Z Append the given callback function to this ``Future``, which will be run 2024-08-06T21:20:02.8049121Z when the ``Future`` is completed. Multiple callbacks can be added to 2024-08-06T21:20:02.8049640Z the same ``Future``, but the order in which they will be executed cannot 2024-08-06T21:20:02.8050149Z be guaranteed (to enforce a certain order consider chaining: 2024-08-06T21:20:02.8050647Z ``fut.then(cb1).then(cb2)``). The callback must take one argument, which 2024-08-06T21:20:02.8051162Z is the reference to this ``Future``. The callback function can use the 2024-08-06T21:20:02.8051697Z :meth:`value` method to get the value. Note that if this ``Future`` is 2024-08-06T21:20:02.8052248Z already completed, the given callback will be run immediately inline. 2024-08-06T21:20:02.8052663Z 2024-08-06T21:20:02.8053013Z If the ``Future``'s value contains tensors that reside on GPUs, the 2024-08-06T21:20:02.8053541Z callback might be invoked while the async kernels that are populating 2024-08-06T21:20:02.8054090Z those tensors haven't yet finished executing on the device. However, the 2024-08-06T21:20:02.8054714Z callback will be invoked with some dedicated streams set as current 2024-08-06T21:20:02.8055240Z (fetched from a global pool) which will be synchronized with those 2024-08-06T21:20:02.8055772Z kernels. Hence any operation performed by the callback on these tensors 2024-08-06T21:20:02.8056321Z will be scheduled on the device after the kernels complete. In other 2024-08-06T21:20:02.8056838Z words, as long as the callback doesn't switch streams, it can safely 2024-08-06T21:20:02.8057372Z manipulate the result without any additional synchronization. This is 2024-08-06T21:20:02.8057881Z similar to the non-blocking behavior of :meth:`wait`. 2024-08-06T21:20:02.8058232Z 2024-08-06T21:20:02.8058546Z Similarly, if the callback returns a value that contains tensors that 2024-08-06T21:20:02.8059064Z reside on a GPU, it can do so even if the kernels that are producing 2024-08-06T21:20:02.8059584Z these tensors are still running on the device, as long as the callback 2024-08-06T21:20:02.8060115Z didn't change streams during its execution. If one wants to change 2024-08-06T21:20:02.8060635Z streams, one must be careful to re-synchronize them with the original 2024-08-06T21:20:02.8061178Z streams, that is, those that were current when the callback was invoked. 2024-08-06T21:20:02.8061586Z 2024-08-06T21:20:02.8061770Z Args: 2024-08-06T21:20:02.8062084Z callback(``Callable``): a ``Callable`` that takes this ``Future`` as 2024-08-06T21:20:02.8062512Z the only argument. 2024-08-06T21:20:02.8062984Z 2024-08-06T21:20:02.8063176Z Returns: 2024-08-06T21:20:02.8063461Z A new ``Future`` object that holds the return value of the 2024-08-06T21:20:02.8063919Z ``callback`` and will be marked as completed when the given 2024-08-06T21:20:02.8064311Z ``callback`` finishes. 2024-08-06T21:20:02.8064568Z 2024-08-06T21:20:02.8064853Z .. note:: Note that if the callback function throws, either 2024-08-06T21:20:02.8065344Z through the original future being completed with an exception and 2024-08-06T21:20:02.8066048Z calling ``fut.wait()``, or through other code in the callback, the 2024-08-06T21:20:02.8066560Z future returned by ``then`` will be marked appropriately with the 2024-08-06T21:20:02.8067078Z encountered error. However, if this callback later completes 2024-08-06T21:20:02.8067607Z additional futures, those futures are not marked as completed with 2024-08-06T21:20:02.8068135Z an error and the user is responsible for handling completion/waiting 2024-08-06T21:20:02.8068692Z on those futures independently. 2024-08-06T21:20:02.8068994Z 2024-08-06T21:20:02.8069190Z Example:: 2024-08-06T21:20:02.8069470Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_FUTURES) 2024-08-06T21:20:02.8069826Z >>> def callback(fut): 2024-08-06T21:20:02.8070139Z ... print(f"RPC return value is {fut.wait()}.") 2024-08-06T21:20:02.8070505Z >>> fut = torch.futures.Future() 2024-08-06T21:20:02.8070890Z >>> # The inserted callback will print the return value when 2024-08-06T21:20:02.8071285Z >>> # receiving the response from "worker1" 2024-08-06T21:20:02.8071627Z >>> cb_fut = fut.then(callback) 2024-08-06T21:20:02.8071933Z >>> chain_cb_fut = cb_fut.then( 2024-08-06T21:20:02.8072278Z ... lambda x : print(f"Chained cb done. {x.wait()}") 2024-08-06T21:20:02.8072621Z ... ) 2024-08-06T21:20:02.8072842Z >>> fut.set_result(5) 2024-08-06T21:20:02.8073116Z RPC return value is 5. 2024-08-06T21:20:02.8073394Z Chained cb done. None 2024-08-06T21:20:02.8073639Z 2024-08-06T21:20:02.8074071Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8074522Z 2024-08-06T21:20:02.8074719Z warnings.warn(msg) 2024-08-06T21:20:02.8074968Z 2024-08-06T21:20:02.8075301Z --- Parse Warning: 13 / 100 --- 2024-08-06T21:20:02.8076425Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=Future.set_result in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/futures/__init__.py line=209. 2024-08-06T21:20:02.8077698Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8078157Z 2024-08-06T21:20:02.8078473Z Set the result for this ``Future``, which will mark this ``Future`` as 2024-08-06T21:20:02.8079002Z completed and trigger all attached callbacks. Note that a ``Future`` 2024-08-06T21:20:02.8079455Z cannot be marked completed twice. 2024-08-06T21:20:02.8079745Z 2024-08-06T21:20:02.8080067Z If the result contains tensors that reside on GPUs, this method can be 2024-08-06T21:20:02.8080608Z called even if the asynchronous kernels that are populating those 2024-08-06T21:20:02.8081146Z tensors haven't yet completed running on the device, provided that the 2024-08-06T21:20:02.8081699Z streams on which those kernels were enqueued are set as the current ones 2024-08-06T21:20:02.8082247Z when this method is called. Put simply, it's safe to call this method 2024-08-06T21:20:02.8082784Z immediately after launching those kernels, without any additional 2024-08-06T21:20:02.8083325Z synchronization, as long as one doesn't change streams in between. This 2024-08-06T21:20:02.8083876Z method will record events on all the relevant current streams and will 2024-08-06T21:20:02.8084409Z use them to ensure proper scheduling for all the consumers of this 2024-08-06T21:20:02.8084804Z ``Future``. 2024-08-06T21:20:02.8085017Z 2024-08-06T21:20:02.8085210Z Args: 2024-08-06T21:20:02.8085479Z result (object): the result object of this ``Future``. 2024-08-06T21:20:02.8085841Z 2024-08-06T21:20:02.8086038Z Example:: 2024-08-06T21:20:02.8086298Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_FUTURES) 2024-08-06T21:20:02.8086646Z >>> import threading 2024-08-06T21:20:02.8086906Z >>> import time 2024-08-06T21:20:02.8087169Z >>> def slow_set_future(fut, value): 2024-08-06T21:20:02.8087488Z ... time.sleep(0.5) 2024-08-06T21:20:02.8087773Z ... fut.set_result(value) 2024-08-06T21:20:02.8088071Z >>> fut = torch.futures.Future() 2024-08-06T21:20:02.8088377Z >>> t = threading.Thread( 2024-08-06T21:20:02.8088669Z ... target=slow_set_future, 2024-08-06T21:20:02.8088979Z ... args=(fut, torch.ones(2) * 3) 2024-08-06T21:20:02.8089337Z ... ) 2024-08-06T21:20:02.8089533Z >>> t.start() 2024-08-06T21:20:02.8089782Z >>> print(fut.wait()) 2024-08-06T21:20:02.8090055Z tensor([3., 3.]) 2024-08-06T21:20:02.8090299Z >>> t.join() 2024-08-06T21:20:02.8090514Z 2024-08-06T21:20:02.8090873Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8091308Z 2024-08-06T21:20:02.8091509Z warnings.warn(msg) 2024-08-06T21:20:02.8091749Z 2024-08-06T21:20:02.8092040Z --- Parse Warning: 14 / 100 --- 2024-08-06T21:20:02.8093106Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=sum in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/sparse/__init__.py line=201. 2024-08-06T21:20:02.8094381Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8094916Z Return the sum of each row of the given sparse tensor. 2024-08-06T21:20:02.8095278Z 2024-08-06T21:20:02.8095623Z Returns the sum of each row of the sparse tensor :attr:`input` in the given 2024-08-06T21:20:02.8096209Z dimensions :attr:`dim`. If :attr:`dim` is a list of dimensions, 2024-08-06T21:20:02.8096738Z reduce over all of them. When sum over all ``sparse_dim``, this method 2024-08-06T21:20:02.8097210Z returns a dense tensor instead of a sparse tensor. 2024-08-06T21:20:02.8097542Z 2024-08-06T21:20:02.8097916Z All summed :attr:`dim` are squeezed (see :func:`torch.squeeze`), resulting an output 2024-08-06T21:20:02.8098493Z tensor having :attr:`dim` fewer dimensions than :attr:`input`. 2024-08-06T21:20:02.8098884Z 2024-08-06T21:20:02.8099205Z During backward, only gradients at ``nnz`` locations of :attr:`input` 2024-08-06T21:20:02.8099782Z will propagate back. Note that the gradients of :attr:`input` is coalesced. 2024-08-06T21:20:02.8100222Z 2024-08-06T21:20:02.8100411Z Args: 2024-08-06T21:20:02.8100663Z input (Tensor): the input sparse tensor 2024-08-06T21:20:02.8101180Z dim (int or tuple of ints): a dimension or a list of dimensions to reduce. Default: reduce 2024-08-06T21:20:02.8101659Z over all dims. 2024-08-06T21:20:02.8102096Z dtype (:class:`torch.dtype`, optional): the desired data type of returned Tensor. 2024-08-06T21:20:02.8102583Z Default: dtype of :attr:`input`. 2024-08-06T21:20:02.8102882Z 2024-08-06T21:20:02.8103086Z Example:: 2024-08-06T21:20:02.8103295Z 2024-08-06T21:20:02.8103493Z >>> nnz = 3 2024-08-06T21:20:02.8103742Z >>> dims = [5, 5, 2, 3] 2024-08-06T21:20:02.8104085Z >>> I = torch.cat([torch.randint(0, dims[0], size=(nnz,)), 2024-08-06T21:20:02.8104548Z torch.randint(0, dims[1], size=(nnz,))], 0).reshape(2, nnz) 2024-08-06T21:20:02.8104979Z >>> V = torch.randn(nnz, dims[2], dims[3]) 2024-08-06T21:20:02.8105312Z >>> size = torch.Size(dims) 2024-08-06T21:20:02.8105662Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:20:02.8106047Z >>> S = torch.sparse_coo_tensor(I, V, size) 2024-08-06T21:20:02.8106133Z >>> S 2024-08-06T21:20:02.8106255Z tensor(indices=tensor([[2, 0, 3], 2024-08-06T21:20:02.8106355Z [2, 4, 1]]), 2024-08-06T21:20:02.8106479Z values=tensor([[[-0.6438, -1.6467, 1.4004], 2024-08-06T21:20:02.8106603Z [ 0.3411, 0.0918, -0.2312]], 2024-08-06T21:20:02.8106683Z 2024-08-06T21:20:02.8106793Z [[ 0.5348, 0.0634, -2.0494], 2024-08-06T21:20:02.8106912Z [-0.7125, -1.0646, 2.1844]], 2024-08-06T21:20:02.8106993Z 2024-08-06T21:20:02.8107097Z [[ 0.1276, 0.1874, -0.6334], 2024-08-06T21:20:02.8107276Z [-1.9682, -0.5340, 0.7483]]]), 2024-08-06T21:20:02.8107416Z size=(5, 5, 2, 3), nnz=3, layout=torch.sparse_coo) 2024-08-06T21:20:02.8107493Z 2024-08-06T21:20:02.8107697Z # when sum over only part of sparse_dims, return a sparse tensor 2024-08-06T21:20:02.8107808Z >>> torch.sparse.sum(S, [1, 3]) 2024-08-06T21:20:02.8107920Z tensor(indices=tensor([[0, 2, 3]]), 2024-08-06T21:20:02.8108051Z values=tensor([[-1.4512, 0.4073], 2024-08-06T21:20:02.8108151Z [-0.8901, 0.2017], 2024-08-06T21:20:02.8108255Z [-0.3183, -1.7539]]), 2024-08-06T21:20:02.8108403Z size=(5, 2), nnz=3, layout=torch.sparse_coo) 2024-08-06T21:20:02.8108485Z 2024-08-06T21:20:02.8108646Z # when sum over all sparse dim, return a dense tensor 2024-08-06T21:20:02.8108749Z # with summed dims squeezed 2024-08-06T21:20:02.8108863Z >>> torch.sparse.sum(S, [0, 1, 3]) 2024-08-06T21:20:02.8108972Z tensor([-2.6596, -1.1450]) 2024-08-06T21:20:02.8109055Z 2024-08-06T21:20:02.8109355Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8109448Z 2024-08-06T21:20:02.8109546Z warnings.warn(msg) 2024-08-06T21:20:02.8109624Z 2024-08-06T21:20:02.8109835Z --- Parse Warning: 15 / 100 --- 2024-08-06T21:20:02.8110671Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=vmap in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_functorch/apis.py line=40. 2024-08-06T21:20:02.8110930Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8111022Z 2024-08-06T21:20:02.8111239Z vmap is the vectorizing map; ``vmap(func)`` returns a new function that 2024-08-06T21:20:02.8111434Z maps ``func`` over some dimension of the inputs. Semantically, vmap 2024-08-06T21:20:02.8111667Z pushes the map into PyTorch operations called by ``func``, effectively 2024-08-06T21:20:02.8111775Z vectorizing those operations. 2024-08-06T21:20:02.8111857Z 2024-08-06T21:20:02.8112078Z vmap is useful for handling batch dimensions: one can write a function 2024-08-06T21:20:02.8112278Z ``func`` that runs on examples and then lift it to a function that can 2024-08-06T21:20:02.8112499Z take batches of examples with ``vmap(func)``. vmap can also be used to 2024-08-06T21:20:02.8112669Z compute batched gradients when composed with autograd. 2024-08-06T21:20:02.8112751Z 2024-08-06T21:20:02.8112849Z .. note:: 2024-08-06T21:20:02.8113031Z :func:`torch.vmap` is aliased to :func:`torch.func.vmap` for 2024-08-06T21:20:02.8113160Z convenience. Use whichever one you'd like. 2024-08-06T21:20:02.8113249Z 2024-08-06T21:20:02.8113332Z Args: 2024-08-06T21:20:02.8113541Z func (function): A Python function that takes one or more arguments. 2024-08-06T21:20:02.8113670Z Must return one or more Tensors. 2024-08-06T21:20:02.8113873Z in_dims (int or nested structure): Specifies which dimension of the 2024-08-06T21:20:02.8114048Z inputs should be mapped over. ``in_dims`` should have a 2024-08-06T21:20:02.8114247Z structure like the inputs. If the ``in_dim`` for a particular 2024-08-06T21:20:02.8114428Z input is None, then that indicates there is no map dimension. 2024-08-06T21:20:02.8114518Z Default: 0. 2024-08-06T21:20:02.8114719Z out_dims (int or Tuple[int]): Specifies where the mapped dimension 2024-08-06T21:20:02.8114911Z should appear in the outputs. If ``out_dims`` is a Tuple, then 2024-08-06T21:20:02.8115074Z it should have one element per output. Default: 0. 2024-08-06T21:20:02.8115256Z randomness (str): Specifies whether the randomness in this 2024-08-06T21:20:02.8115465Z vmap should be the same or different across batches. If 'different', 2024-08-06T21:20:02.8115747Z the randomness for each batch will be different. If 'same', the 2024-08-06T21:20:02.8115962Z randomness will be the same across batches. If 'error', any calls to 2024-08-06T21:20:02.8116172Z random functions will error. Default: 'error'. WARNING: this flag 2024-08-06T21:20:02.8116383Z only applies to random PyTorch operations and does not apply to 2024-08-06T21:20:02.8116513Z Python's random module or numpy randomness. 2024-08-06T21:20:02.8116740Z chunk_size (None or int): If None (default), apply a single vmap over inputs. 2024-08-06T21:20:02.8116969Z If not None, then compute the vmap :attr:`chunk_size` samples at a time. 2024-08-06T21:20:02.8117225Z Note that :attr:`chunk_size=1` is equivalent to computing the vmap with a for-loop. 2024-08-06T21:20:02.8117503Z If you run into memory issues computing the vmap, please try a non-None chunk_size. 2024-08-06T21:20:02.8117587Z 2024-08-06T21:20:02.8117672Z Returns: 2024-08-06T21:20:02.8117871Z Returns a new "batched" function. It takes the same inputs as 2024-08-06T21:20:02.8118103Z ``func``, except each input has an extra dimension at the index 2024-08-06T21:20:02.8118294Z specified by ``in_dims``. It takes returns the same outputs as 2024-08-06T21:20:02.8118488Z ``func``, except each output has an extra dimension at the index 2024-08-06T21:20:02.8118592Z specified by ``out_dims``. 2024-08-06T21:20:02.8118670Z 2024-08-06T21:20:02.8118767Z .. warning: 2024-08-06T21:20:02.8118965Z :func:`vmap` works best with functional-style code. Please do not 2024-08-06T21:20:02.8119150Z perform any side-effects in ``func``, with the exception of 2024-08-06T21:20:02.8119397Z in-place PyTorch operations. Examples of side-effects include mutating 2024-08-06T21:20:02.8119623Z Python data structures and assigning values to variables not captured 2024-08-06T21:20:02.8119711Z in ``func``. 2024-08-06T21:20:02.8119805Z 2024-08-06T21:20:02.8120045Z One example of using :func:`vmap` is to compute batched dot products. PyTorch 2024-08-06T21:20:02.8120272Z doesn't provide a batched ``torch.dot`` API; instead of unsuccessfully 2024-08-06T21:20:02.8120496Z rummaging through docs, use :func:`vmap` to construct a new function. 2024-08-06T21:20:02.8120577Z 2024-08-06T21:20:02.8120729Z >>> torch.dot # [D], [D] -> [] 2024-08-06T21:20:02.8120929Z >>> batched_dot = torch.func.vmap(torch.dot) # [N, D], [N, D] -> [N] 2024-08-06T21:20:02.8121058Z >>> x, y = torch.randn(2, 5), torch.randn(2, 5) 2024-08-06T21:20:02.8121163Z >>> batched_dot(x, y) 2024-08-06T21:20:02.8121246Z 2024-08-06T21:20:02.8121474Z :func:`vmap` can be helpful in hiding batch dimensions, leading to a simpler 2024-08-06T21:20:02.8121588Z model authoring experience. 2024-08-06T21:20:02.8121675Z 2024-08-06T21:20:02.8121787Z >>> batch_size, feature_size = 3, 5 2024-08-06T21:20:02.8121967Z >>> weights = torch.randn(feature_size, requires_grad=True) 2024-08-06T21:20:02.8122055Z >>> 2024-08-06T21:20:02.8122159Z >>> def model(feature_vec): 2024-08-06T21:20:02.8122303Z >>> # Very simple linear model with activation 2024-08-06T21:20:02.8122432Z >>> return feature_vec.dot(weights).relu() 2024-08-06T21:20:02.8122516Z >>> 2024-08-06T21:20:02.8122673Z >>> examples = torch.randn(batch_size, feature_size) 2024-08-06T21:20:02.8122794Z >>> result = torch.vmap(model)(examples) 2024-08-06T21:20:02.8122876Z 2024-08-06T21:20:02.8123137Z :func:`vmap` can also help vectorize computations that were previously difficult 2024-08-06T21:20:02.8123369Z or impossible to batch. One example is higher-order gradient computation. 2024-08-06T21:20:02.8123613Z The PyTorch autograd engine computes vjps (vector-Jacobian products). 2024-08-06T21:20:02.8123891Z Computing a full Jacobian matrix for some function f: R^N -> R^N usually 2024-08-06T21:20:02.8124147Z requires N calls to ``autograd.grad``, one per Jacobian row. Using :func:`vmap`, 2024-08-06T21:20:02.8124391Z we can vectorize the whole computation, computing the Jacobian in a single 2024-08-06T21:20:02.8124496Z call to ``autograd.grad``. 2024-08-06T21:20:02.8124578Z 2024-08-06T21:20:02.8124676Z >>> # Setup 2024-08-06T21:20:02.8124762Z >>> N = 5 2024-08-06T21:20:02.8124860Z >>> f = lambda x: x ** 2 2024-08-06T21:20:02.8124991Z >>> x = torch.randn(N, requires_grad=True) 2024-08-06T21:20:02.8125074Z >>> y = f(x) 2024-08-06T21:20:02.8125168Z >>> I_N = torch.eye(N) 2024-08-06T21:20:02.8125259Z >>> 2024-08-06T21:20:02.8125357Z >>> # Sequential approach 2024-08-06T21:20:02.8125570Z >>> jacobian_rows = [torch.autograd.grad(y, x, v, retain_graph=True)[0] 2024-08-06T21:20:02.8125696Z >>> for v in I_N.unbind()] 2024-08-06T21:20:02.8125814Z >>> jacobian = torch.stack(jacobian_rows) 2024-08-06T21:20:02.8125895Z >>> 2024-08-06T21:20:02.8126070Z >>> # vectorized gradient computation 2024-08-06T21:20:02.8126167Z >>> def get_vjp(v): 2024-08-06T21:20:02.8126291Z >>> return torch.autograd.grad(y, x, v) 2024-08-06T21:20:02.8126421Z >>> jacobian = torch.vmap(get_vjp)(I_N) 2024-08-06T21:20:02.8126499Z 2024-08-06T21:20:02.8126761Z :func:`vmap` can also be nested, producing an output with multiple batched dimensions 2024-08-06T21:20:02.8126853Z 2024-08-06T21:20:02.8126993Z >>> torch.dot # [D], [D] -> [] 2024-08-06T21:20:02.8127275Z >>> batched_dot = torch.vmap(torch.vmap(torch.dot)) # [N1, N0, D], [N1, N0, D] -> [N1, N0] 2024-08-06T21:20:02.8127411Z >>> x, y = torch.randn(2, 3, 5), torch.randn(2, 3, 5) 2024-08-06T21:20:02.8127534Z >>> batched_dot(x, y) # tensor of size [2, 3] 2024-08-06T21:20:02.8127630Z 2024-08-06T21:20:02.8127865Z If the inputs are not batched along the first dimension, ``in_dims`` specifies 2024-08-06T21:20:02.8128017Z the dimension that each inputs are batched along as 2024-08-06T21:20:02.8128108Z 2024-08-06T21:20:02.8128248Z >>> torch.dot # [N], [N] -> [] 2024-08-06T21:20:02.8128465Z >>> batched_dot = torch.vmap(torch.dot, in_dims=1) # [N, D], [N, D] -> [D] 2024-08-06T21:20:02.8128601Z >>> x, y = torch.randn(2, 5), torch.randn(2, 5) 2024-08-06T21:20:02.8128840Z >>> batched_dot(x, y) # output is [5] instead of [2] if batched along the 0th dimension 2024-08-06T21:20:02.8128919Z 2024-08-06T21:20:02.8129186Z If there are multiple inputs each of which is batched along different dimensions, 2024-08-06T21:20:02.8129386Z ``in_dims`` must be a tuple with the batch dimension for each input as 2024-08-06T21:20:02.8129464Z 2024-08-06T21:20:02.8129616Z >>> torch.dot # [D], [D] -> [] 2024-08-06T21:20:02.8129845Z >>> batched_dot = torch.vmap(torch.dot, in_dims=(0, None)) # [N, D], [D] -> [N] 2024-08-06T21:20:02.8129981Z >>> x, y = torch.randn(2, 5), torch.randn(5) 2024-08-06T21:20:02.8130222Z >>> batched_dot(x, y) # second arg doesn't have a batch dim because in_dim[1] was None 2024-08-06T21:20:02.8130303Z 2024-08-06T21:20:02.8130544Z If the input is a Python struct, ``in_dims`` must be a tuple containing a struct 2024-08-06T21:20:02.8130652Z matching the shape of the input: 2024-08-06T21:20:02.8130732Z 2024-08-06T21:20:02.8130878Z >>> f = lambda dict: torch.dot(dict['x'], dict['y']) 2024-08-06T21:20:02.8130999Z >>> x, y = torch.randn(2, 5), torch.randn(5) 2024-08-06T21:20:02.8131097Z >>> input = {'x': x, 'y': y} 2024-08-06T21:20:02.8131281Z >>> batched_dot = torch.vmap(f, in_dims=({'x': 0, 'y': None},)) 2024-08-06T21:20:02.8131432Z >>> batched_dot(input) 2024-08-06T21:20:02.8131510Z 2024-08-06T21:20:02.8131790Z By default, the output is batched along the first dimension. However, it can be batched 2024-08-06T21:20:02.8131917Z along any dimension by using ``out_dims`` 2024-08-06T21:20:02.8131999Z 2024-08-06T21:20:02.8132106Z >>> f = lambda x: x ** 2 2024-08-06T21:20:02.8132205Z >>> x = torch.randn(2, 5) 2024-08-06T21:20:02.8132328Z >>> batched_pow = torch.vmap(f, out_dims=1) 2024-08-06T21:20:02.8132435Z >>> batched_pow(x) # [5, 2] 2024-08-06T21:20:02.8132517Z 2024-08-06T21:20:02.8132809Z For any function that uses kwargs, the returned function will not batch the kwargs but will 2024-08-06T21:20:02.8132908Z accept kwargs 2024-08-06T21:20:02.8132988Z 2024-08-06T21:20:02.8133096Z >>> x = torch.randn([2, 5]) 2024-08-06T21:20:02.8133190Z >>> def fn(x, scale=4.): 2024-08-06T21:20:02.8133287Z >>> return x * scale 2024-08-06T21:20:02.8133384Z >>> 2024-08-06T21:20:02.8133493Z >>> batched_pow = torch.vmap(fn) 2024-08-06T21:20:02.8133633Z >>> assert torch.allclose(batched_pow(x), x * 4) 2024-08-06T21:20:02.8133904Z >>> batched_pow(x, scale=x) # scale is not batched, output has shape [2, 2, 5] 2024-08-06T21:20:02.8133987Z 2024-08-06T21:20:02.8134074Z .. note:: 2024-08-06T21:20:02.8134414Z vmap does not provide general autobatching or handle variable-length 2024-08-06T21:20:02.8134525Z sequences out of the box. 2024-08-06T21:20:02.8134605Z 2024-08-06T21:20:02.8134870Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8134951Z 2024-08-06T21:20:02.8135048Z warnings.warn(msg) 2024-08-06T21:20:02.8135140Z 2024-08-06T21:20:02.8135347Z --- Parse Warning: 16 / 100 --- 2024-08-06T21:20:02.8136207Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=triton_op in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/triton.py line=14. 2024-08-06T21:20:02.8136489Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8136743Z Create a custom operator whose implementation is backed by 1+ triton kernels. 2024-08-06T21:20:02.8136837Z 2024-08-06T21:20:02.8137072Z Use this instead of :func:`torch.library.custom_op` when the implementation 2024-08-06T21:20:02.8137290Z consists of 1+ triton kernels. :func:`torch.library.custom_op` treats 2024-08-06T21:20:02.8137472Z custom operators as opaque (:func:`torch.compile` and 2024-08-06T21:20:02.8137704Z :func:`torch.export.export` will never trace into them), but ``triton_op`` 2024-08-06T21:20:02.8137926Z makes the implementation visible to these subsystems, allowing them 2024-08-06T21:20:02.8138048Z to optimize the triton kernel(s). 2024-08-06T21:20:02.8138126Z 2024-08-06T21:20:02.8138317Z Note that ``fn`` must only consist of calls to PyTorch-understood 2024-08-06T21:20:02.8138554Z operators and triton kernels. Any triton kernels called inside ``fn`` 2024-08-06T21:20:02.8138762Z must be wrapped in a call to :func:`torch._library.capture_triton``. 2024-08-06T21:20:02.8138842Z 2024-08-06T21:20:02.8138935Z Args: 2024-08-06T21:20:02.8139158Z name (str): A name for the custom op that looks like "{namespace}::{name}", 2024-08-06T21:20:02.8139383Z e.g. "mylib::my_linear". The name is used as the op's stable identifier 2024-08-06T21:20:02.8139548Z in PyTorch subsystems (e.g. torch.export, FX graphs). 2024-08-06T21:20:02.8139781Z To avoid name collisions, please use your project name as the namespace; 2024-08-06T21:20:02.8139995Z e.g. all custom ops in pytorch/fbgemm use "fbgemm" as the namespace. 2024-08-06T21:20:02.8140268Z mutates_args (Iterable[str] or "unknown"): The names of args that the function mutates. 2024-08-06T21:20:02.8140561Z This MUST be accurate, otherwise, the behavior is undefined. If "unknown", 2024-08-06T21:20:02.8140840Z it pessimistically assumes that all inputs to the operator are being mutated. 2024-08-06T21:20:02.8141025Z schema (None | str): A schema string for the operator. If None 2024-08-06T21:20:02.8141232Z (recommended) we'll infer a schema for the operator from its type 2024-08-06T21:20:02.8141446Z annotations. We recommend letting us infer a schema unless you 2024-08-06T21:20:02.8141560Z have a specific reason not to. 2024-08-06T21:20:02.8141715Z Example: "(Tensor x, int y) -> (Tensor, Tensor)". 2024-08-06T21:20:02.8141794Z 2024-08-06T21:20:02.8141882Z Example:: 2024-08-06T21:20:02.8141973Z 2024-08-06T21:20:02.8142109Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:20:02.8142203Z >>> import torch 2024-08-06T21:20:02.8142380Z >>> from torch._library import triton_op, capture_triton 2024-08-06T21:20:02.8142464Z >>> 2024-08-06T21:20:02.8142560Z >>> import triton 2024-08-06T21:20:02.8142746Z >>> from triton import language as tl 2024-08-06T21:20:02.8142829Z >>> 2024-08-06T21:20:02.8142919Z >>> @triton.jit 2024-08-06T21:20:02.8143017Z >>> def add_kernel( 2024-08-06T21:20:02.8143109Z >>> in_ptr0, 2024-08-06T21:20:02.8143197Z >>> in_ptr1, 2024-08-06T21:20:02.8143295Z >>> out_ptr, 2024-08-06T21:20:02.8143391Z >>> n_elements, 2024-08-06T21:20:02.8143505Z >>> BLOCK_SIZE: "tl.constexpr", 2024-08-06T21:20:02.8143593Z >>> ): 2024-08-06T21:20:02.8143707Z >>> pid = tl.program_id(axis=0) 2024-08-06T21:20:02.8143822Z >>> block_start = pid * BLOCK_SIZE 2024-08-06T21:20:02.8143978Z >>> offsets = block_start + tl.arange(0, BLOCK_SIZE) 2024-08-06T21:20:02.8144093Z >>> mask = offsets < n_elements 2024-08-06T21:20:02.8144219Z >>> x = tl.load(in_ptr0 + offsets, mask=mask) 2024-08-06T21:20:02.8144357Z >>> y = tl.load(in_ptr1 + offsets, mask=mask) 2024-08-06T21:20:02.8144453Z >>> output = x + y 2024-08-06T21:20:02.8144605Z >>> tl.store(out_ptr + offsets, output, mask=mask) 2024-08-06T21:20:02.8144689Z >>> 2024-08-06T21:20:02.8144819Z >>> @triton_op("mylib::add", mutates_args={}) 2024-08-06T21:20:02.8145008Z >>> def add(x: torch.Tensor, y: torch.Tensor) -> torch.Tensor: 2024-08-06T21:20:02.8145119Z >>> output = torch.empty_like(x) 2024-08-06T21:20:02.8145233Z >>> n_elements = output.numel() 2024-08-06T21:20:02.8145325Z >>> 2024-08-06T21:20:02.8145420Z >>> def grid(meta): 2024-08-06T21:20:02.8145590Z >>> return (triton.cdiv(n_elements, meta["BLOCK_SIZE"]),) 2024-08-06T21:20:02.8145684Z >>> 2024-08-06T21:20:02.8145871Z >>> # NB: we need to wrap the triton kernel in a call to capture_triton 2024-08-06T21:20:02.8146074Z >>> capture_triton(add_kernel)[grid](x, y, output, n_elements, 16) 2024-08-06T21:20:02.8146176Z >>> return output 2024-08-06T21:20:02.8146255Z >>> 2024-08-06T21:20:02.8146350Z >>> @torch.compile 2024-08-06T21:20:02.8146449Z >>> def f(x, y): 2024-08-06T21:20:02.8146544Z >>> return add(x, y) 2024-08-06T21:20:02.8146625Z >>> 2024-08-06T21:20:02.8146749Z >>> x = torch.randn(3, device="cuda") 2024-08-06T21:20:02.8146870Z >>> y = torch.randn(3, device="cuda") 2024-08-06T21:20:02.8146954Z >>> 2024-08-06T21:20:02.8147057Z >>> z = f(x, y) 2024-08-06T21:20:02.8147173Z >>> assert torch.allclose(z, x + y) 2024-08-06T21:20:02.8147303Z 2024-08-06T21:20:02.8147394Z 2024-08-06T21:20:02.8147650Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8147742Z 2024-08-06T21:20:02.8147845Z warnings.warn(msg) 2024-08-06T21:20:02.8147929Z 2024-08-06T21:20:02.8148130Z --- Parse Warning: 17 / 100 --- 2024-08-06T21:20:02.8149017Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=capture_triton in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_library/triton.py line=124. 2024-08-06T21:20:02.8149280Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8149480Z Allows capture of a triton kernel into a graph via make_fx or 2024-08-06T21:20:02.8149593Z non-strict export (coming soon). 2024-08-06T21:20:02.8149674Z 2024-08-06T21:20:02.8149868Z These technologies perform Dispatcher-based tracing (via 2024-08-06T21:20:02.8150067Z ``__torch_dispatch__``) and cannot see calls to raw triton kernels. 2024-08-06T21:20:02.8150267Z The ``capture_triton`` API returns a new callable that can actually 2024-08-06T21:20:02.8150452Z be traced into a graph. 2024-08-06T21:20:02.8150532Z 2024-08-06T21:20:02.8150621Z Examples: 2024-08-06T21:20:02.8150717Z 2024-08-06T21:20:02.8150815Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8150908Z >>> import torch 2024-08-06T21:20:02.8151014Z >>> import triton 2024-08-06T21:20:02.8151131Z >>> from triton import language as tl 2024-08-06T21:20:02.8151312Z >>> from torch.fx.experimental.proxy_tensor import make_fx 2024-08-06T21:20:02.8151549Z >>> from torch._higher_order_ops.triton_kernel_wrap import capture_triton 2024-08-06T21:20:02.8151629Z >>> 2024-08-06T21:20:02.8151732Z >>> @triton.jit 2024-08-06T21:20:02.8151825Z >>> def add_kernel( 2024-08-06T21:20:02.8151921Z >>> in_ptr0, 2024-08-06T21:20:02.8152021Z >>> in_ptr1, 2024-08-06T21:20:02.8152111Z >>> out_ptr, 2024-08-06T21:20:02.8152210Z >>> n_elements, 2024-08-06T21:20:02.8152339Z >>> BLOCK_SIZE: "tl.constexpr", 2024-08-06T21:20:02.8152426Z >>> ): 2024-08-06T21:20:02.8152541Z >>> pid = tl.program_id(axis=0) 2024-08-06T21:20:02.8152664Z >>> block_start = pid * BLOCK_SIZE 2024-08-06T21:20:02.8152816Z >>> offsets = block_start + tl.arange(0, BLOCK_SIZE) 2024-08-06T21:20:02.8152924Z >>> mask = offsets < n_elements 2024-08-06T21:20:02.8153067Z >>> x = tl.load(in_ptr0 + offsets, mask=mask) 2024-08-06T21:20:02.8153192Z >>> y = tl.load(in_ptr1 + offsets, mask=mask) 2024-08-06T21:20:02.8153288Z >>> output = x + y 2024-08-06T21:20:02.8153441Z >>> tl.store(out_ptr + offsets, output, mask=mask) 2024-08-06T21:20:02.8153529Z >>> 2024-08-06T21:20:02.8153621Z >>> def add(x, y): 2024-08-06T21:20:02.8153741Z >>> output = torch.empty_like(x) 2024-08-06T21:20:02.8153851Z >>> n_elements = output.numel() 2024-08-06T21:20:02.8153930Z >>> 2024-08-06T21:20:02.8154039Z >>> def grid_fn(meta): 2024-08-06T21:20:02.8154203Z >>> return (triton.cdiv(n_elements, meta["BLOCK_SIZE"]),) 2024-08-06T21:20:02.8154289Z >>> 2024-08-06T21:20:02.8154497Z >>> capture_triton(add_kernel)[grid_fn](x, y, output, n_elements, 16) 2024-08-06T21:20:02.8154588Z >>> return output 2024-08-06T21:20:02.8154670Z >>> 2024-08-06T21:20:02.8154779Z >>> x = torch.randn(3, device="cuda") 2024-08-06T21:20:02.8154888Z >>> y = torch.randn(3, device="cuda") 2024-08-06T21:20:02.8154993Z >>> gm = make_fx(add)(x, y) 2024-08-06T21:20:02.8155082Z >>> print(gm.code) 2024-08-06T21:20:02.8155234Z >>> # def forward(self, x_1, y_1): 2024-08-06T21:20:02.8155472Z >>> # empty_like = torch.ops.aten.empty_like.default(x_1, pin_memory = False) 2024-08-06T21:20:02.8155717Z >>> # triton_kernel_wrapper_mutation_proxy = triton_kernel_wrapper_mutation( 2024-08-06T21:20:02.8155845Z >>> # kernel_idx = 0, constant_args_idx = 0, 2024-08-06T21:20:02.8155960Z >>> # grid = [(1, 1, 1)], kwargs = { 2024-08-06T21:20:02.8156107Z >>> # 'in_ptr0': x_1, 'in_ptr1': y_1, 'out_ptr': empty_like, 2024-08-06T21:20:02.8156226Z >>> # 'n_elements': 3, 'BLOCK_SIZE': 16 2024-08-06T21:20:02.8156323Z >>> # }) 2024-08-06T21:20:02.8156421Z >>> # return empty_like 2024-08-06T21:20:02.8156499Z 2024-08-06T21:20:02.8156586Z 2024-08-06T21:20:02.8156840Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8156928Z 2024-08-06T21:20:02.8157020Z warnings.warn(msg) 2024-08-06T21:20:02.8157096Z 2024-08-06T21:20:02.8157281Z --- Parse Warning: 18 / 100 --- 2024-08-06T21:20:02.8158251Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=assert_almost_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=330. 2024-08-06T21:20:02.8158511Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8158596Z 2024-08-06T21:20:02.8158798Z Raises an AssertionError if two items are not equal up to desired 2024-08-06T21:20:02.8158883Z precision. 2024-08-06T21:20:02.8158966Z 2024-08-06T21:20:02.8159137Z .. note:: It is recommended to use one of `assert_allclose`, 2024-08-06T21:20:02.8159313Z `assert_array_almost_equal_nulp` or `assert_array_max_ulp` 2024-08-06T21:20:02.8159503Z instead of this function for more consistent floating point 2024-08-06T21:20:02.8159597Z comparisons. 2024-08-06T21:20:02.8159671Z 2024-08-06T21:20:02.8159894Z The test verifies that the elements of `actual` and `desired` satisfy. 2024-08-06T21:20:02.8159972Z 2024-08-06T21:20:02.8160128Z ``abs(desired-actual) < float64(1.5 * 10**(-decimal))`` 2024-08-06T21:20:02.8160210Z 2024-08-06T21:20:02.8160435Z That is a looser test than originally documented, but agrees with what the 2024-08-06T21:20:02.8160669Z actual implementation in `assert_array_almost_equal` did up to rounding 2024-08-06T21:20:02.8160902Z vagaries. An exception is raised at conflicting values. For ndarrays this 2024-08-06T21:20:02.8161016Z delegates to assert_array_almost_equal 2024-08-06T21:20:02.8161100Z 2024-08-06T21:20:02.8161185Z Parameters 2024-08-06T21:20:02.8161269Z ---------- 2024-08-06T21:20:02.8161365Z actual : array_like 2024-08-06T21:20:02.8161460Z The object to check. 2024-08-06T21:20:02.8161552Z desired : array_like 2024-08-06T21:20:02.8161654Z The expected object. 2024-08-06T21:20:02.8161745Z decimal : int, optional 2024-08-06T21:20:02.8161858Z Desired precision, default is 7. 2024-08-06T21:20:02.8161961Z err_msg : str, optional 2024-08-06T21:20:02.8162114Z The error message to be printed in case of failure. 2024-08-06T21:20:02.8162211Z verbose : bool, optional 2024-08-06T21:20:02.8162414Z If True, the conflicting values are appended to the error message. 2024-08-06T21:20:02.8162488Z 2024-08-06T21:20:02.8162566Z Raises 2024-08-06T21:20:02.8162654Z ------ 2024-08-06T21:20:02.8162942Z AssertionError 2024-08-06T21:20:02.8163150Z If actual and desired are not equal up to specified precision. 2024-08-06T21:20:02.8163235Z 2024-08-06T21:20:02.8163317Z See Also 2024-08-06T21:20:02.8163397Z -------- 2024-08-06T21:20:02.8163641Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:20:02.8163866Z relative and/or absolute precision. 2024-08-06T21:20:02.8164078Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:20:02.8164160Z 2024-08-06T21:20:02.8164241Z Examples 2024-08-06T21:20:02.8164321Z -------- 2024-08-06T21:20:02.8164491Z >>> from torch._numpy.testing import assert_almost_equal 2024-08-06T21:20:02.8164618Z >>> assert_almost_equal(2.3333333333333, 2.33333334) 2024-08-06T21:20:02.8164792Z >>> assert_almost_equal(2.3333333333333, 2.33333334, decimal=10) 2024-08-06T21:20:02.8164898Z Traceback (most recent call last): 2024-08-06T21:20:02.8164978Z ... 2024-08-06T21:20:02.8165077Z AssertionError: 2024-08-06T21:20:02.8165194Z Arrays are not almost equal to 10 decimals 2024-08-06T21:20:02.8165286Z ACTUAL: 2.3333333333333 2024-08-06T21:20:02.8165382Z DESIRED: 2.33333334 2024-08-06T21:20:02.8165459Z 2024-08-06T21:20:02.8165779Z >>> assert_almost_equal(np.array([1.0,2.3333333333333]), 2024-08-06T21:20:02.8165911Z ... np.array([1.0,2.33333334]), decimal=9) 2024-08-06T21:20:02.8166091Z Traceback (most recent call last): 2024-08-06T21:20:02.8166171Z ... 2024-08-06T21:20:02.8166273Z AssertionError: 2024-08-06T21:20:02.8166392Z Arrays are not almost equal to 9 decimals 2024-08-06T21:20:02.8166474Z 2024-08-06T21:20:02.8166585Z Mismatched elements: 1 / 2 (50%) 2024-08-06T21:20:02.8166711Z Max absolute difference: 6.666699636781459e-09 2024-08-06T21:20:02.8166839Z Max relative difference: 2.8571569790287484e-09 2024-08-06T21:20:02.8166986Z x: torch.ndarray([1.0000, 2.3333], dtype=float64) 2024-08-06T21:20:02.8167116Z y: torch.ndarray([1.0000, 2.3333], dtype=float64) 2024-08-06T21:20:02.8167194Z 2024-08-06T21:20:02.8167286Z 2024-08-06T21:20:02.8167541Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8167622Z 2024-08-06T21:20:02.8167723Z warnings.warn(msg) 2024-08-06T21:20:02.8167798Z 2024-08-06T21:20:02.8168012Z --- Parse Warning: 19 / 100 --- 2024-08-06T21:20:02.8168953Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=assert_approx_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=455. 2024-08-06T21:20:02.8169216Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8169301Z 2024-08-06T21:20:02.8169517Z Raises an AssertionError if two items are not equal up to significant 2024-08-06T21:20:02.8169594Z digits. 2024-08-06T21:20:02.8169674Z 2024-08-06T21:20:02.8169845Z .. note:: It is recommended to use one of `assert_allclose`, 2024-08-06T21:20:02.8170022Z `assert_array_almost_equal_nulp` or `assert_array_max_ulp` 2024-08-06T21:20:02.8170211Z instead of this function for more consistent floating point 2024-08-06T21:20:02.8170307Z comparisons. 2024-08-06T21:20:02.8170383Z 2024-08-06T21:20:02.8170578Z Given two numbers, check that they are approximately equal. 2024-08-06T21:20:02.8170792Z Approximately equal is defined as the number of significant digits 2024-08-06T21:20:02.8170873Z that agree. 2024-08-06T21:20:02.8170958Z 2024-08-06T21:20:02.8171039Z Parameters 2024-08-06T21:20:02.8171120Z ---------- 2024-08-06T21:20:02.8171212Z actual : scalar 2024-08-06T21:20:02.8171307Z The object to check. 2024-08-06T21:20:02.8171396Z desired : scalar 2024-08-06T21:20:02.8171500Z The expected object. 2024-08-06T21:20:02.8171598Z significant : int, optional 2024-08-06T21:20:02.8171711Z Desired precision, default is 7. 2024-08-06T21:20:02.8171814Z err_msg : str, optional 2024-08-06T21:20:02.8171967Z The error message to be printed in case of failure. 2024-08-06T21:20:02.8172117Z verbose : bool, optional 2024-08-06T21:20:02.8172327Z If True, the conflicting values are appended to the error message. 2024-08-06T21:20:02.8172402Z 2024-08-06T21:20:02.8172482Z Raises 2024-08-06T21:20:02.8172575Z ------ 2024-08-06T21:20:02.8172663Z AssertionError 2024-08-06T21:20:02.8172852Z If actual and desired are not equal up to specified precision. 2024-08-06T21:20:02.8172937Z 2024-08-06T21:20:02.8173021Z See Also 2024-08-06T21:20:02.8173104Z -------- 2024-08-06T21:20:02.8173348Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:20:02.8173470Z relative and/or absolute precision. 2024-08-06T21:20:02.8173679Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:20:02.8173757Z 2024-08-06T21:20:02.8173836Z Examples 2024-08-06T21:20:02.8173926Z -------- 2024-08-06T21:20:02.8174200Z >>> np.testing.assert_approx_equal(0.12345677777777e-20, 0.1234567e-20) # doctest: +SKIP 2024-08-06T21:20:02.8174514Z >>> np.testing.assert_approx_equal(0.12345670e-20, 0.12345671e-20, # doctest: +SKIP 2024-08-06T21:20:02.8174705Z ... significant=8) 2024-08-06T21:20:02.8174954Z >>> np.testing.assert_approx_equal(0.12345670e-20, 0.12345672e-20, # doctest: +SKIP 2024-08-06T21:20:02.8175071Z ... significant=8) 2024-08-06T21:20:02.8175190Z Traceback (most recent call last): 2024-08-06T21:20:02.8175269Z ... 2024-08-06T21:20:02.8175356Z AssertionError: 2024-08-06T21:20:02.8175493Z Items are not equal to 8 significant digits: 2024-08-06T21:20:02.8175587Z ACTUAL: 1.234567e-21 2024-08-06T21:20:02.8175683Z DESIRED: 1.2345672e-21 2024-08-06T21:20:02.8175773Z 2024-08-06T21:20:02.8175933Z the evaluated condition that raises the exception is 2024-08-06T21:20:02.8176015Z 2024-08-06T21:20:02.8176200Z >>> abs(0.12345670e-20/1e-21 - 0.12345672e-20/1e-21) >= 10**-(8-1) 2024-08-06T21:20:02.8176286Z True 2024-08-06T21:20:02.8176362Z 2024-08-06T21:20:02.8176450Z 2024-08-06T21:20:02.8176698Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8176778Z 2024-08-06T21:20:02.8176879Z warnings.warn(msg) 2024-08-06T21:20:02.8176958Z 2024-08-06T21:20:02.8177151Z --- Parse Warning: 20 / 100 --- 2024-08-06T21:20:02.8178089Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=assert_array_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=734. 2024-08-06T21:20:02.8178353Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8178446Z 2024-08-06T21:20:02.8178655Z Raises an AssertionError if two array_like objects are not equal. 2024-08-06T21:20:02.8178736Z 2024-08-06T21:20:02.8178957Z Given two array_like objects, check that the shape is equal and all 2024-08-06T21:20:02.8179181Z elements of these objects are equal (but see the Notes for the special 2024-08-06T21:20:02.8179388Z handling of a scalar). An exception is raised at shape mismatch or 2024-08-06T21:20:02.8179611Z conflicting values. In contrast to the standard usage in numpy, NaNs 2024-08-06T21:20:02.8179824Z are compared like numbers, no assertion is raised if both objects have 2024-08-06T21:20:02.8179927Z NaNs in the same positions. 2024-08-06T21:20:02.8180017Z 2024-08-06T21:20:02.8180238Z The usual caution for verifying equality with floating point numbers is 2024-08-06T21:20:02.8180319Z advised. 2024-08-06T21:20:02.8180404Z 2024-08-06T21:20:02.8180491Z Parameters 2024-08-06T21:20:02.8180573Z ---------- 2024-08-06T21:20:02.8180671Z x : array_like 2024-08-06T21:20:02.8180774Z The actual object to check. 2024-08-06T21:20:02.8180868Z y : array_like 2024-08-06T21:20:02.8180983Z The desired, expected object. 2024-08-06T21:20:02.8181124Z err_msg : str, optional 2024-08-06T21:20:02.8181284Z The error message to be printed in case of failure. 2024-08-06T21:20:02.8181382Z verbose : bool, optional 2024-08-06T21:20:02.8181590Z If True, the conflicting values are appended to the error message. 2024-08-06T21:20:02.8181691Z strict : bool, optional 2024-08-06T21:20:02.8181886Z If True, raise an AssertionError when either the shape or the data 2024-08-06T21:20:02.8182060Z type of the array_like objects does not match. The special 2024-08-06T21:20:02.8182270Z handling for scalars mentioned in the Notes section is disabled. 2024-08-06T21:20:02.8182346Z 2024-08-06T21:20:02.8182425Z Raises 2024-08-06T21:20:02.8182516Z ------ 2024-08-06T21:20:02.8182605Z AssertionError 2024-08-06T21:20:02.8182738Z If actual and desired objects are not equal. 2024-08-06T21:20:02.8182828Z 2024-08-06T21:20:02.8182909Z See Also 2024-08-06T21:20:02.8182995Z -------- 2024-08-06T21:20:02.8183237Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:20:02.8183361Z relative and/or absolute precision. 2024-08-06T21:20:02.8183615Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:20:02.8183702Z 2024-08-06T21:20:02.8183782Z Notes 2024-08-06T21:20:02.8183865Z ----- 2024-08-06T21:20:02.8184056Z When one of `x` and `y` is a scalar and the other is array_like, the 2024-08-06T21:20:02.8184274Z function checks that each element of the array_like object is equal to 2024-08-06T21:20:02.8184493Z the scalar. This behaviour can be disabled with the `strict` parameter. 2024-08-06T21:20:02.8184584Z 2024-08-06T21:20:02.8184666Z Examples 2024-08-06T21:20:02.8184745Z -------- 2024-08-06T21:20:02.8184880Z The first assert does not raise an exception: 2024-08-06T21:20:02.8184958Z 2024-08-06T21:20:02.8185113Z >>> np.testing.assert_array_equal([1.0,2.33333,np.nan], 2024-08-06T21:20:02.8185245Z ... [np.exp(0),2.33333, np.nan]) 2024-08-06T21:20:02.8185323Z 2024-08-06T21:20:02.8185560Z Use `assert_allclose` or one of the nulp (number of floating point values) 2024-08-06T21:20:02.8185668Z functions for these cases instead: 2024-08-06T21:20:02.8185742Z 2024-08-06T21:20:02.8185890Z >>> np.testing.assert_allclose([1.0,np.pi,np.nan], 2024-08-06T21:20:02.8186016Z ... [1, np.sqrt(np.pi)**2, np.nan], 2024-08-06T21:20:02.8186127Z ... rtol=1e-10, atol=0) 2024-08-06T21:20:02.8186210Z 2024-08-06T21:20:02.8186413Z As mentioned in the Notes section, `assert_array_equal` has special 2024-08-06T21:20:02.8186638Z handling for scalars. Here the test checks that each value in `x` is 3: 2024-08-06T21:20:02.8186729Z 2024-08-06T21:20:02.8186833Z >>> x = np.full((2, 5), fill_value=3) 2024-08-06T21:20:02.8186945Z >>> np.testing.assert_array_equal(x, 3) 2024-08-06T21:20:02.8187032Z 2024-08-06T21:20:02.8187241Z Use `strict` to raise an AssertionError when comparing a scalar with an 2024-08-06T21:20:02.8187322Z array: 2024-08-06T21:20:02.8187409Z 2024-08-06T21:20:02.8187557Z >>> np.testing.assert_array_equal(x, 3, strict=True) 2024-08-06T21:20:02.8187667Z Traceback (most recent call last): 2024-08-06T21:20:02.8187764Z ... 2024-08-06T21:20:02.8187857Z AssertionError: 2024-08-06T21:20:02.8187952Z Arrays are not equal 2024-08-06T21:20:02.8188042Z 2024-08-06T21:20:02.8188139Z (shapes (2, 5), () mismatch) 2024-08-06T21:20:02.8188242Z x: torch.ndarray([[3, 3, 3, 3, 3], 2024-08-06T21:20:02.8188340Z [3, 3, 3, 3, 3]]) 2024-08-06T21:20:02.8188433Z y: torch.ndarray(3) 2024-08-06T21:20:02.8188509Z 2024-08-06T21:20:02.8188723Z The `strict` parameter also ensures that the array data types match: 2024-08-06T21:20:02.8188797Z 2024-08-06T21:20:02.8188938Z >>> x = np.array([2, 2, 2]) 2024-08-06T21:20:02.8189064Z >>> y = np.array([2., 2., 2.], dtype=np.float32) 2024-08-06T21:20:02.8189206Z >>> np.testing.assert_array_equal(x, y, strict=True) 2024-08-06T21:20:02.8189326Z Traceback (most recent call last): 2024-08-06T21:20:02.8189409Z ... 2024-08-06T21:20:02.8189497Z AssertionError: 2024-08-06T21:20:02.8189597Z Arrays are not equal 2024-08-06T21:20:02.8189679Z 2024-08-06T21:20:02.8189818Z (dtypes dtype("int64"), dtype("float32") mismatch) 2024-08-06T21:20:02.8189924Z x: torch.ndarray([2, 2, 2]) 2024-08-06T21:20:02.8190026Z y: torch.ndarray([2., 2., 2.]) 2024-08-06T21:20:02.8190107Z 2024-08-06T21:20:02.8190363Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8190441Z 2024-08-06T21:20:02.8190532Z warnings.warn(msg) 2024-08-06T21:20:02.8190624Z 2024-08-06T21:20:02.8190815Z --- Parse Warning: 21 / 100 --- 2024-08-06T21:20:02.8191826Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=assert_array_almost_equal in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=840. 2024-08-06T21:20:02.8192099Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8192177Z 2024-08-06T21:20:02.8192391Z Raises an AssertionError if two objects are not equal up to desired 2024-08-06T21:20:02.8192485Z precision. 2024-08-06T21:20:02.8192564Z 2024-08-06T21:20:02.8192738Z .. note:: It is recommended to use one of `assert_allclose`, 2024-08-06T21:20:02.8192925Z `assert_array_almost_equal_nulp` or `assert_array_max_ulp` 2024-08-06T21:20:02.8193108Z instead of this function for more consistent floating point 2024-08-06T21:20:02.8193209Z comparisons. 2024-08-06T21:20:02.8193286Z 2024-08-06T21:20:02.8193522Z The test verifies identical shapes and that the elements of ``actual`` and 2024-08-06T21:20:02.8193622Z ``desired`` satisfy. 2024-08-06T21:20:02.8193698Z 2024-08-06T21:20:02.8193831Z ``abs(desired-actual) < 1.5 * 10**(-decimal)`` 2024-08-06T21:20:02.8193920Z 2024-08-06T21:20:02.8194145Z That is a looser test than originally documented, but agrees with what the 2024-08-06T21:20:02.8194380Z actual implementation did up to rounding vagaries. An exception is raised 2024-08-06T21:20:02.8194619Z at shape mismatch or conflicting values. In contrast to the standard usage 2024-08-06T21:20:02.8194837Z in numpy, NaNs are compared like numbers, no assertion is raised if both 2024-08-06T21:20:02.8194957Z objects have NaNs in the same positions. 2024-08-06T21:20:02.8195042Z 2024-08-06T21:20:02.8195123Z Parameters 2024-08-06T21:20:02.8195207Z ---------- 2024-08-06T21:20:02.8195297Z x : array_like 2024-08-06T21:20:02.8195402Z The actual object to check. 2024-08-06T21:20:02.8195490Z y : array_like 2024-08-06T21:20:02.8195602Z The desired, expected object. 2024-08-06T21:20:02.8195698Z decimal : int, optional 2024-08-06T21:20:02.8195812Z Desired precision, default is 6. 2024-08-06T21:20:02.8195916Z err_msg : str, optional 2024-08-06T21:20:02.8196065Z The error message to be printed in case of failure. 2024-08-06T21:20:02.8196163Z verbose : bool, optional 2024-08-06T21:20:02.8196372Z If True, the conflicting values are appended to the error message. 2024-08-06T21:20:02.8196449Z 2024-08-06T21:20:02.8196529Z Raises 2024-08-06T21:20:02.8196617Z ------ 2024-08-06T21:20:02.8196705Z AssertionError 2024-08-06T21:20:02.8196897Z If actual and desired are not equal up to specified precision. 2024-08-06T21:20:02.8196981Z 2024-08-06T21:20:02.8197063Z See Also 2024-08-06T21:20:02.8197154Z -------- 2024-08-06T21:20:02.8197389Z assert_allclose: Compare two array_like objects for equality with desired 2024-08-06T21:20:02.8197564Z relative and/or absolute precision. 2024-08-06T21:20:02.8197779Z assert_array_almost_equal_nulp, assert_array_max_ulp, assert_equal 2024-08-06T21:20:02.8197859Z 2024-08-06T21:20:02.8197949Z Examples 2024-08-06T21:20:02.8198044Z -------- 2024-08-06T21:20:02.8198171Z the first assert does not raise an exception 2024-08-06T21:20:02.8198249Z 2024-08-06T21:20:02.8198427Z >>> np.testing.assert_array_almost_equal([1.0,2.333,np.nan], 2024-08-06T21:20:02.8198537Z ... [1.0,2.333,np.nan]) 2024-08-06T21:20:02.8198613Z 2024-08-06T21:20:02.8198791Z >>> np.testing.assert_array_almost_equal([1.0,2.33333,np.nan], 2024-08-06T21:20:02.8198913Z ... [1.0,2.33339,np.nan], decimal=5) 2024-08-06T21:20:02.8199021Z Traceback (most recent call last): 2024-08-06T21:20:02.8199108Z ... 2024-08-06T21:20:02.8199200Z AssertionError: 2024-08-06T21:20:02.8199324Z Arrays are not almost equal to 5 decimals 2024-08-06T21:20:02.8199421Z 2024-08-06T21:20:02.8199525Z Mismatched elements: 1 / 3 (33.3%) 2024-08-06T21:20:02.8199704Z Max absolute difference: 5.999999999994898e-05 2024-08-06T21:20:02.8199838Z Max relative difference: 2.5713661239633743e-05 2024-08-06T21:20:02.8200010Z x: torch.ndarray([1.0000, 2.3333, nan], dtype=float64) 2024-08-06T21:20:02.8200168Z y: torch.ndarray([1.0000, 2.3334, nan], dtype=float64) 2024-08-06T21:20:02.8200258Z 2024-08-06T21:20:02.8200438Z >>> np.testing.assert_array_almost_equal([1.0,2.33333,np.nan], 2024-08-06T21:20:02.8200568Z ... [1.0,2.33333, 5], decimal=5) 2024-08-06T21:20:02.8200680Z Traceback (most recent call last): 2024-08-06T21:20:02.8200763Z ... 2024-08-06T21:20:02.8200861Z AssertionError: 2024-08-06T21:20:02.8200979Z Arrays are not almost equal to 5 decimals 2024-08-06T21:20:02.8201067Z 2024-08-06T21:20:02.8201183Z x and y nan location mismatch: 2024-08-06T21:20:02.8201342Z x: torch.ndarray([1.0000, 2.3333, nan], dtype=float64) 2024-08-06T21:20:02.8201503Z y: torch.ndarray([1.0000, 2.3333, 5.0000], dtype=float64) 2024-08-06T21:20:02.8201593Z 2024-08-06T21:20:02.8201674Z 2024-08-06T21:20:02.8201928Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8202017Z 2024-08-06T21:20:02.8202110Z warnings.warn(msg) 2024-08-06T21:20:02.8202190Z 2024-08-06T21:20:02.8202384Z --- Parse Warning: 22 / 100 --- 2024-08-06T21:20:02.8203340Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=clear_and_catch_warnings in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_numpy/testing/utils.py line=1790. 2024-08-06T21:20:02.8203599Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8203825Z Context manager that resets warning registry for catching warnings 2024-08-06T21:20:02.8203906Z 2024-08-06T21:20:02.8204150Z Warnings can be slippery, because, whenever a warning is triggered, Python 2024-08-06T21:20:02.8204386Z adds a ``__warningregistry__`` member to the *calling* module. This makes 2024-08-06T21:20:02.8204622Z it impossible to retrigger the warning in this module, whatever you put in 2024-08-06T21:20:02.8204876Z the warnings filters. This context manager accepts a sequence of `modules` 2024-08-06T21:20:02.8205011Z as a keyword argument to its constructor and: 2024-08-06T21:20:02.8205092Z 2024-08-06T21:20:02.8205328Z * stores and removes any ``__warningregistry__`` entries in given `modules` 2024-08-06T21:20:02.8205413Z on entry; 2024-08-06T21:20:02.8205598Z * resets ``__warningregistry__`` to its previous state on exit. 2024-08-06T21:20:02.8205690Z 2024-08-06T21:20:02.8205910Z This makes it possible to trigger any warning afresh inside the context 2024-08-06T21:20:02.8206151Z manager without disturbing the state of warnings outside. 2024-08-06T21:20:02.8206237Z 2024-08-06T21:20:02.8206476Z For compatibility with Python 3.0, please consider all arguments to be 2024-08-06T21:20:02.8206572Z keyword-only. 2024-08-06T21:20:02.8206665Z 2024-08-06T21:20:02.8206749Z Parameters 2024-08-06T21:20:02.8206830Z ---------- 2024-08-06T21:20:02.8206935Z record : bool, optional 2024-08-06T21:20:02.8207120Z Specifies whether warnings should be captured by a custom 2024-08-06T21:20:02.8207354Z implementation of ``warnings.showwarning()`` and be appended to a list 2024-08-06T21:20:02.8207567Z returned by the context manager. Otherwise None is returned by the 2024-08-06T21:20:02.8207791Z context manager. The objects appended to the list are arguments whose 2024-08-06T21:20:02.8207971Z attributes mirror the arguments to ``showwarning()``. 2024-08-06T21:20:02.8208076Z modules : sequence, optional 2024-08-06T21:20:02.8208291Z Sequence of modules for which to reset warnings registry on entry and 2024-08-06T21:20:02.8208539Z restore on exit. To work correctly, all 'ignore' filters should 2024-08-06T21:20:02.8208650Z filter by one of these modules. 2024-08-06T21:20:02.8208727Z 2024-08-06T21:20:02.8208826Z Examples 2024-08-06T21:20:02.8208909Z -------- 2024-08-06T21:20:02.8209002Z >>> import warnings 2024-08-06T21:20:02.8209197Z >>> with np.testing.clear_and_catch_warnings( # doctest: +SKIP 2024-08-06T21:20:02.8209317Z ... modules=[np.core.fromnumeric]): 2024-08-06T21:20:02.8209437Z ... warnings.simplefilter('always') 2024-08-06T21:20:02.8209668Z ... warnings.filterwarnings('ignore', module='np.core.fromnumeric') 2024-08-06T21:20:02.8209834Z ... # do something that raises a warning but ignore those in 2024-08-06T21:20:02.8209939Z ... # np.core.fromnumeric 2024-08-06T21:20:02.8210030Z 2024-08-06T21:20:02.8210282Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8210374Z 2024-08-06T21:20:02.8210471Z warnings.warn(msg) 2024-08-06T21:20:02.8210547Z 2024-08-06T21:20:02.8210739Z --- Parse Warning: 23 / 100 --- 2024-08-06T21:20:02.8211659Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=Conv1d in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/conv.py line=355. 2024-08-06T21:20:02.8211917Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8212137Z Applies a 1D convolution over a quantized input signal composed of 2024-08-06T21:20:02.8212247Z several quantized input planes. 2024-08-06T21:20:02.8212325Z 2024-08-06T21:20:02.8212546Z For details on input arguments, parameters, and implementation see 2024-08-06T21:20:02.8212649Z :class:`~torch.nn.Conv1d`. 2024-08-06T21:20:02.8212727Z 2024-08-06T21:20:02.8212827Z .. note:: 2024-08-06T21:20:02.8213023Z Only `zeros` is supported for the :attr:`padding_mode` argument. 2024-08-06T21:20:02.8213101Z 2024-08-06T21:20:02.8213195Z .. note:: 2024-08-06T21:20:02.8213370Z Only `torch.quint8` is supported for the input data type. 2024-08-06T21:20:02.8213446Z 2024-08-06T21:20:02.8213536Z 2024-08-06T21:20:02.8213625Z Attributes: 2024-08-06T21:20:02.8213830Z weight (Tensor): packed tensor derived from the learnable weight 2024-08-06T21:20:02.8213941Z parameter. 2024-08-06T21:20:02.8214085Z scale (Tensor): scalar for the output scale 2024-08-06T21:20:02.8214255Z zero_point (Tensor): scalar for the output zero point 2024-08-06T21:20:02.8214483Z 2024-08-06T21:20:02.8214635Z See :class:`~torch.nn.Conv1d` for other attributes. 2024-08-06T21:20:02.8214725Z 2024-08-06T21:20:02.8214815Z Examples:: 2024-08-06T21:20:02.8214898Z 2024-08-06T21:20:02.8215052Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_QENGINE) 2024-08-06T21:20:02.8215186Z >>> m = nn.quantized.Conv1d(16, 33, 3, stride=2) 2024-08-06T21:20:02.8215298Z >>> input = torch.randn(20, 16, 100) 2024-08-06T21:20:02.8215416Z >>> # quantize input to quint8 2024-08-06T21:20:02.8215515Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8215728Z >>> q_input = torch.quantize_per_tensor(input, scale=1.0, zero_point=0, 2024-08-06T21:20:02.8215865Z ... dtype=torch.quint8) 2024-08-06T21:20:02.8215968Z >>> output = m(q_input) 2024-08-06T21:20:02.8216048Z 2024-08-06T21:20:02.8216138Z 2024-08-06T21:20:02.8216389Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8216473Z 2024-08-06T21:20:02.8216578Z warnings.warn(msg) 2024-08-06T21:20:02.8216658Z 2024-08-06T21:20:02.8216897Z --- Parse Warning: 24 / 100 --- 2024-08-06T21:20:02.8217804Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=LSTM in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/nn/quantized/modules/rnn.py line=11. 2024-08-06T21:20:02.8218066Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8218199Z A quantized long short-term memory (LSTM). 2024-08-06T21:20:02.8218279Z 2024-08-06T21:20:02.8218558Z For the description and the argument types, please, refer to :class:`~torch.nn.LSTM` 2024-08-06T21:20:02.8218644Z 2024-08-06T21:20:02.8218732Z Attributes: 2024-08-06T21:20:02.8218853Z layers : instances of the `_LSTMLayer` 2024-08-06T21:20:02.8218947Z 2024-08-06T21:20:02.8219033Z .. note:: 2024-08-06T21:20:02.8219244Z To access the weights and biases, you need to access them per layer. 2024-08-06T21:20:02.8219430Z See examples in :class:`~torch.ao.nn.quantizable.LSTM` 2024-08-06T21:20:02.8219509Z 2024-08-06T21:20:02.8219597Z Examples:: 2024-08-06T21:20:02.8219705Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8219811Z >>> custom_module_config = { 2024-08-06T21:20:02.8219948Z ... 'float_to_observed_custom_module_class': { 2024-08-06T21:20:02.8220078Z ... nn.LSTM: nn.quantizable.LSTM, 2024-08-06T21:20:02.8220162Z ... }, 2024-08-06T21:20:02.8220308Z ... 'observed_to_quantized_custom_module_class': { 2024-08-06T21:20:02.8220456Z ... nn.quantizable.LSTM: nn.quantized.LSTM, 2024-08-06T21:20:02.8220542Z ... } 2024-08-06T21:20:02.8220625Z ... } 2024-08-06T21:20:02.8220852Z >>> tq.prepare(model, prepare_custom_module_class=custom_module_config) 2024-08-06T21:20:02.8221059Z >>> tq.convert(model, convert_custom_module_class=custom_module_config) 2024-08-06T21:20:02.8221154Z 2024-08-06T21:20:02.8221404Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8221483Z 2024-08-06T21:20:02.8221591Z warnings.warn(msg) 2024-08-06T21:20:02.8221669Z 2024-08-06T21:20:02.8221849Z --- Parse Warning: 25 / 100 --- 2024-08-06T21:20:02.8222925Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=BaseSparsifier.squash_mask in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/pruning/sparsifier/base_sparsifier.py line=229. 2024-08-06T21:20:02.8223188Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8223357Z Squashes the sparse masks into the appropriate tensors. 2024-08-06T21:20:02.8223503Z 2024-08-06T21:20:02.8223705Z If either the `params_to_keep` or `params_to_keep_per_layer` is set, 2024-08-06T21:20:02.8223893Z the module will have a `sparse_params` dict attached to it. 2024-08-06T21:20:02.8223980Z 2024-08-06T21:20:02.8224065Z Args: 2024-08-06T21:20:02.8224247Z params_to_keep: List of keys to save in the module or a dict 2024-08-06T21:20:02.8224413Z representing the modules and keys that will have 2024-08-06T21:20:02.8224535Z sparsity parameters saved 2024-08-06T21:20:02.8224759Z params_to_keep_per_layer: Dict to specify the params that should be 2024-08-06T21:20:02.8224911Z saved for specific layers. The keys in the dict 2024-08-06T21:20:02.8225062Z should be the module fqn, while the values should 2024-08-06T21:20:02.8225237Z be a list of strings with the names of the variables 2024-08-06T21:20:02.8225361Z to save in the `sparse_params` 2024-08-06T21:20:02.8225440Z 2024-08-06T21:20:02.8225586Z Examples: 2024-08-06T21:20:02.8225716Z >>> # xdoctest: +SKIP("locals are undefined") 2024-08-06T21:20:02.8225831Z >>> # Don't save any sparse params 2024-08-06T21:20:02.8225955Z >>> sparsifier.squash_mask() 2024-08-06T21:20:02.8226092Z >>> hasattr(model.submodule1, 'sparse_params') 2024-08-06T21:20:02.8226173Z False 2024-08-06T21:20:02.8226264Z 2024-08-06T21:20:02.8226381Z >>> # Keep sparse params per layer 2024-08-06T21:20:02.8226488Z >>> sparsifier.squash_mask( 2024-08-06T21:20:02.8226611Z ... params_to_keep_per_layer={ 2024-08-06T21:20:02.8226740Z ... 'submodule1.linear1': ('foo', 'bar'), 2024-08-06T21:20:02.8226876Z ... 'submodule2.linear42': ('baz',) 2024-08-06T21:20:02.8226964Z ... }) 2024-08-06T21:20:02.8227121Z >>> print(model.submodule1.linear1.sparse_params) 2024-08-06T21:20:02.8227230Z {'foo': 42, 'bar': 24} 2024-08-06T21:20:02.8227384Z >>> print(model.submodule2.linear42.sparse_params) 2024-08-06T21:20:02.8227475Z {'baz': 0.1} 2024-08-06T21:20:02.8227562Z 2024-08-06T21:20:02.8227684Z >>> # Keep sparse params for all layers 2024-08-06T21:20:02.8227853Z >>> sparsifier.squash_mask(params_to_keep=('foo', 'bar')) 2024-08-06T21:20:02.8228011Z >>> print(model.submodule1.linear1.sparse_params) 2024-08-06T21:20:02.8228108Z {'foo': 42, 'bar': 24} 2024-08-06T21:20:02.8246151Z >>> print(model.submodule2.linear42.sparse_params) 2024-08-06T21:20:02.8246364Z {'foo': 42, 'bar': 24} 2024-08-06T21:20:02.8246454Z 2024-08-06T21:20:02.8246665Z >>> # Keep some sparse params for all layers, and specific ones for 2024-08-06T21:20:02.8246776Z >>> # some other layers 2024-08-06T21:20:02.8246897Z >>> sparsifier.squash_mask( 2024-08-06T21:20:02.8247017Z ... params_to_keep=('foo', 'bar'), 2024-08-06T21:20:02.8247139Z ... params_to_keep_per_layer={ 2024-08-06T21:20:02.8247263Z ... 'submodule2.linear42': ('baz',) 2024-08-06T21:20:02.8247350Z ... }) 2024-08-06T21:20:02.8247512Z >>> print(model.submodule1.linear1.sparse_params) 2024-08-06T21:20:02.8247608Z {'foo': 42, 'bar': 24} 2024-08-06T21:20:02.8247766Z >>> print(model.submodule2.linear42.sparse_params) 2024-08-06T21:20:02.8247884Z {'foo': 42, 'bar': 24, 'baz': 0.1} 2024-08-06T21:20:02.8247965Z 2024-08-06T21:20:02.8248229Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8248426Z 2024-08-06T21:20:02.8248523Z warnings.warn(msg) 2024-08-06T21:20:02.8248615Z 2024-08-06T21:20:02.8248857Z --- Parse Warning: 26 / 100 --- 2024-08-06T21:20:02.8249902Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=DTypeConfig in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/backend_config/backend_config.py line=181. 2024-08-06T21:20:02.8250175Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8250250Z 2024-08-06T21:20:02.8250507Z Config object that specifies the supported data types passed as arguments to 2024-08-06T21:20:02.8250742Z quantize ops in the reference model spec, for input and output activations, 2024-08-06T21:20:02.8250847Z weights, and biases. 2024-08-06T21:20:02.8250926Z 2024-08-06T21:20:02.8251080Z For example, consider the following reference model: 2024-08-06T21:20:02.8251174Z 2024-08-06T21:20:02.8251330Z quant1 - [dequant1 - fp32_linear - quant2] - dequant2 2024-08-06T21:20:02.8251406Z 2024-08-06T21:20:02.8251697Z The pattern in the square brackets refers to the reference pattern of 2024-08-06T21:20:02.8251931Z statically quantized linear. Setting the input dtype as `torch.quint8` 2024-08-06T21:20:02.8252157Z in the DTypeConfig means we pass in `torch.quint8` as the dtype argument 2024-08-06T21:20:02.8252387Z to the first quantize op (quant1). Similarly, setting the output dtype as 2024-08-06T21:20:02.8252601Z `torch.quint8` means we pass in `torch.quint8` as the dtype argument to 2024-08-06T21:20:02.8252708Z the second quantize op (quant2). 2024-08-06T21:20:02.8252805Z 2024-08-06T21:20:02.8253015Z Note that the dtype here does not refer to the interface dtypes of the 2024-08-06T21:20:02.8253227Z op. For example, the "input dtype" here is not the dtype of the input 2024-08-06T21:20:02.8253441Z tensor passed to the quantized linear op. Though it can still be the 2024-08-06T21:20:02.8253633Z same as the interface dtype, this is not always the case, e.g. the 2024-08-06T21:20:02.8253865Z interface dtype is fp32 in dynamic quantization but the "input dtype" 2024-08-06T21:20:02.8254074Z specified in the DTypeConfig would still be quint8. The semantics of 2024-08-06T21:20:02.8254280Z dtypes here are the same as the semantics of the dtypes specified in 2024-08-06T21:20:02.8254458Z the observers. 2024-08-06T21:20:02.8254540Z 2024-08-06T21:20:02.8254743Z These dtypes are matched against the ones specified in the user's 2024-08-06T21:20:02.8254965Z QConfig. If there is a match, and the QConfig satisfies the constraints 2024-08-06T21:20:02.8255182Z specified in the DTypeConfig (if any), then we will quantize the given 2024-08-06T21:20:02.8255404Z pattern using this DTypeConfig. Otherwise, the QConfig is ignored and 2024-08-06T21:20:02.8255526Z the pattern will not be quantized. 2024-08-06T21:20:02.8255604Z 2024-08-06T21:20:02.8255701Z Example usage:: 2024-08-06T21:20:02.8255790Z 2024-08-06T21:20:02.8255897Z >>> # xdoctest: +SKIP(failing) 2024-08-06T21:20:02.8256004Z >>> dtype_config1 = DTypeConfig( 2024-08-06T21:20:02.8256119Z ... input_dtype=torch.quint8, 2024-08-06T21:20:02.8256228Z ... output_dtype=torch.quint8, 2024-08-06T21:20:02.8256339Z ... weight_dtype=torch.qint8, 2024-08-06T21:20:02.8256440Z ... bias_dtype=torch.float) 2024-08-06T21:20:02.8256519Z 2024-08-06T21:20:02.8256633Z >>> dtype_config2 = DTypeConfig( 2024-08-06T21:20:02.8256758Z ... input_dtype=DTypeWithConstraints( 2024-08-06T21:20:02.8256857Z ... dtype=torch.quint8, 2024-08-06T21:20:02.8256972Z ... quant_min_lower_bound=0, 2024-08-06T21:20:02.8257080Z ... quant_max_upper_bound=255, 2024-08-06T21:20:02.8257166Z ... ), 2024-08-06T21:20:02.8257373Z ... output_dtype=DTypeWithConstraints( 2024-08-06T21:20:02.8257472Z ... dtype=torch.quint8, 2024-08-06T21:20:02.8257580Z ... quant_min_lower_bound=0, 2024-08-06T21:20:02.8257700Z ... quant_max_upper_bound=255, 2024-08-06T21:20:02.8257781Z ... ), 2024-08-06T21:20:02.8257908Z ... weight_dtype=DTypeWithConstraints( 2024-08-06T21:20:02.8258014Z ... dtype=torch.qint8, 2024-08-06T21:20:02.8258124Z ... quant_min_lower_bound=-128, 2024-08-06T21:20:02.8258231Z ... quant_max_upper_bound=127, 2024-08-06T21:20:02.8258324Z ... ), 2024-08-06T21:20:02.8258424Z ... bias_dtype=torch.float) 2024-08-06T21:20:02.8258503Z 2024-08-06T21:20:02.8258615Z >>> dtype_config1.input_dtype 2024-08-06T21:20:02.8258704Z torch.quint8 2024-08-06T21:20:02.8258783Z 2024-08-06T21:20:02.8258896Z >>> dtype_config2.input_dtype 2024-08-06T21:20:02.8258987Z torch.quint8 2024-08-06T21:20:02.8259065Z 2024-08-06T21:20:02.8259204Z >>> dtype_config2.input_dtype_with_constraints 2024-08-06T21:20:02.8259787Z DTypeWithConstraints(dtype=torch.quint8, quant_min_lower_bound=0, quant_max_upper_bound=255, scale_min_lower_bound=None, scale_max_upper_bound=None) 2024-08-06T21:20:02.8259872Z 2024-08-06T21:20:02.8260119Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8260196Z 2024-08-06T21:20:02.8260297Z warnings.warn(msg) 2024-08-06T21:20:02.8260374Z 2024-08-06T21:20:02.8260571Z --- Parse Warning: 27 / 100 --- 2024-08-06T21:20:02.8261834Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ModelReportVisualizer.generate_filtered_tables in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=301. 2024-08-06T21:20:02.8262097Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8262178Z 2024-08-06T21:20:02.8262459Z Takes in optional filter values and generates two tables with desired information. 2024-08-06T21:20:02.8262538Z 2024-08-06T21:20:02.8262928Z The generated tables are presented in both a list-of-lists format 2024-08-06T21:20:02.8263025Z 2024-08-06T21:20:02.8263231Z The reason for the two tables are that they handle different things: 2024-08-06T21:20:02.8263393Z 1.) the first table handles all tensor level information 2024-08-06T21:20:02.8263618Z 2.) the second table handles and displays all channel based information 2024-08-06T21:20:02.8263698Z 2024-08-06T21:20:02.8264033Z The reasoning for this is that having all the info in one table can make it ambiguous which collected 2024-08-06T21:20:02.8264360Z statistics are global, and which are actually per-channel, so it's better to split it up into two 2024-08-06T21:20:02.8264717Z tables. This also makes the information much easier to digest given the plethora of statistics collected 2024-08-06T21:20:02.8264812Z 2024-08-06T21:20:02.8264912Z Tensor table columns: 2024-08-06T21:20:02.8265101Z idx layer_fqn feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:20:02.8265265Z ---- --------- --------- --------- --------- --------- 2024-08-06T21:20:02.8265342Z 2024-08-06T21:20:02.8265445Z Per-Channel table columns: 2024-08-06T21:20:02.8265868Z idx layer_fqn channel feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:20:02.8266035Z ---- --------- ------- --------- --------- --------- --------- 2024-08-06T21:20:02.8266114Z 2024-08-06T21:20:02.8266210Z Args: 2024-08-06T21:20:02.8266469Z feature_filter (str, optional): Filters the features presented to only those that 2024-08-06T21:20:02.8266578Z contain this filter substring 2024-08-06T21:20:02.8266862Z Default = "", results in all the features being printed 2024-08-06T21:20:02.8267125Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:20:02.8267379Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:20:02.8267459Z 2024-08-06T21:20:02.8267569Z Returns a dictionary with two keys: 2024-08-06T21:20:02.8267756Z (Dict[str, Tuple[List, List]]) A dict containing two keys: 2024-08-06T21:20:02.8267882Z "tensor_level_info", "channel_level_info" 2024-08-06T21:20:02.8267992Z Each key maps to a tuple with: 2024-08-06T21:20:02.8268119Z A list of the headers of each table 2024-08-06T21:20:02.8268300Z A list of lists containing the table information row by row 2024-08-06T21:20:02.8268467Z The 0th index row will contain the headers of the columns 2024-08-06T21:20:02.8268602Z The rest of the rows will contain data 2024-08-06T21:20:02.8268681Z 2024-08-06T21:20:02.8268767Z Example Use: 2024-08-06T21:20:02.8268971Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8269121Z >>> mod_report_visualizer.generate_filtered_tables( 2024-08-06T21:20:02.8269239Z ... feature_filter = "per_channel_min", 2024-08-06T21:20:02.8269357Z ... module_fqn_filter = "block1" 2024-08-06T21:20:02.8269631Z ... ) # generates table with per_channel_min info for all modules in block 1 of the model 2024-08-06T21:20:02.8269718Z 2024-08-06T21:20:02.8269969Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8270052Z 2024-08-06T21:20:02.8270160Z warnings.warn(msg) 2024-08-06T21:20:02.8270238Z 2024-08-06T21:20:02.8270447Z --- Parse Warning: 28 / 100 --- 2024-08-06T21:20:02.8271734Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ModelReportVisualizer.generate_table_visualization in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=400. 2024-08-06T21:20:02.8271997Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8272074Z 2024-08-06T21:20:02.8272352Z Takes in optional filter values and prints out formatted tables of the information. 2024-08-06T21:20:02.8272431Z 2024-08-06T21:20:02.8272769Z The reason for the two tables printed out instead of one large one are that they handle different things: 2024-08-06T21:20:02.8272938Z 1.) the first table handles all tensor level information 2024-08-06T21:20:02.8273153Z 2.) the second table handles and displays all channel based information 2024-08-06T21:20:02.8273241Z 2024-08-06T21:20:02.8273559Z The reasoning for this is that having all the info in one table can make it ambiguous which collected 2024-08-06T21:20:02.8273889Z statistics are global, and which are actually per-channel, so it's better to split it up into two 2024-08-06T21:20:02.8274253Z tables. This also makes the information much easier to digest given the plethora of statistics collected 2024-08-06T21:20:02.8274335Z 2024-08-06T21:20:02.8274431Z Tensor table columns: 2024-08-06T21:20:02.8274628Z idx layer_fqn feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:20:02.8274778Z ---- --------- --------- --------- --------- --------- 2024-08-06T21:20:02.8274858Z 2024-08-06T21:20:02.8274970Z Per-Channel table columns: 2024-08-06T21:20:02.8275048Z 2024-08-06T21:20:02.8275270Z idx layer_fqn channel feature_1 feature_2 feature_3 .... feature_n 2024-08-06T21:20:02.8275436Z ---- --------- ------- --------- --------- --------- --------- 2024-08-06T21:20:02.8275514Z 2024-08-06T21:20:02.8275597Z Args: 2024-08-06T21:20:02.8275925Z feature_filter (str, optional): Filters the features presented to only those that 2024-08-06T21:20:02.8276035Z contain this filter substring 2024-08-06T21:20:02.8276198Z Default = "", results in all the features being printed 2024-08-06T21:20:02.8276466Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:20:02.8276711Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:20:02.8276799Z 2024-08-06T21:20:02.8276886Z Example Use: 2024-08-06T21:20:02.8277011Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8277182Z >>> mod_report_visualizer.generate_table_visualization( 2024-08-06T21:20:02.8277302Z ... feature_filter = "per_channel_min", 2024-08-06T21:20:02.8277409Z ... module_fqn_filter = "block1" 2024-08-06T21:20:02.8277502Z ... ) 2024-08-06T21:20:02.8277689Z >>> # prints out neatly formatted table with per_channel_min info 2024-08-06T21:20:02.8277815Z >>> # for all modules in block 1 of the model 2024-08-06T21:20:02.8277905Z 2024-08-06T21:20:02.8278201Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8278282Z 2024-08-06T21:20:02.8278385Z warnings.warn(msg) 2024-08-06T21:20:02.8278462Z 2024-08-06T21:20:02.8278643Z --- Parse Warning: 29 / 100 --- 2024-08-06T21:20:02.8279924Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ModelReportVisualizer.generate_plot_visualization in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=565. 2024-08-06T21:20:02.8280185Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8280274Z 2024-08-06T21:20:02.8280508Z Takes in a feature and optional module_filter and plots of the desired data. 2024-08-06T21:20:02.8280592Z 2024-08-06T21:20:02.8280872Z For per channel features, it averages the value across the channels and plots a point 2024-08-06T21:20:02.8281131Z per module. The reason for this is that for models with hundreds of channels, it can 2024-08-06T21:20:02.8281404Z be hard to differentiate one channel line from another, and so the point of generating 2024-08-06T21:20:02.8281682Z a single average point per module is to give a sense of general trends that encourage 2024-08-06T21:20:02.8281778Z further deep dives. 2024-08-06T21:20:02.8281858Z 2024-08-06T21:20:02.8281954Z Note: 2024-08-06T21:20:02.8282218Z Only features in the report that have tensor value data are plottable by this class 2024-08-06T21:20:02.8282379Z When the tensor information is plotted, it will plot: 2024-08-06T21:20:02.8282523Z idx as the x val, feature value as the y_val 2024-08-06T21:20:02.8282687Z When the channel information is plotted, it will plot: 2024-08-06T21:20:02.8282960Z the first idx of each module as the x val, feature value as the y_val [for each channel] 2024-08-06T21:20:02.8283191Z The reason for this is that we want to be able to compare values across the 2024-08-06T21:20:02.8283422Z channels for same layer, and it will be hard if values are staggered by idx 2024-08-06T21:20:02.8283598Z This means each module is represented by only 1 x value 2024-08-06T21:20:02.8283683Z Args: 2024-08-06T21:20:02.8283907Z feature_filter (str): Filters the features presented to only those that 2024-08-06T21:20:02.8284024Z contain this filter substring 2024-08-06T21:20:02.8284282Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:20:02.8284527Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:20:02.8284614Z 2024-08-06T21:20:02.8284756Z Example Use: 2024-08-06T21:20:02.8284882Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8285049Z >>> mod_report_visualizer.generate_plot_visualization( 2024-08-06T21:20:02.8285173Z ... feature_filter = "per_channel_min", 2024-08-06T21:20:02.8285294Z ... module_fqn_filter = "block1" 2024-08-06T21:20:02.8285372Z ... ) 2024-08-06T21:20:02.8285552Z >>> # outputs line plot of per_channel_min information for all 2024-08-06T21:20:02.8285745Z >>> # modules in block1 of model each channel gets it's own line, 2024-08-06T21:20:02.8285914Z >>> # and it's plotted across the in-order modules on the x-axis 2024-08-06T21:20:02.8285995Z 2024-08-06T21:20:02.8286251Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8286329Z 2024-08-06T21:20:02.8286424Z warnings.warn(msg) 2024-08-06T21:20:02.8286514Z 2024-08-06T21:20:02.8286696Z --- Parse Warning: 30 / 100 --- 2024-08-06T21:20:02.8288056Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ModelReportVisualizer.generate_histogram_visualization in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/ao/quantization/fx/_model_report/model_report_visualizer.py line=645. 2024-08-06T21:20:02.8288324Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8288404Z 2024-08-06T21:20:02.8288680Z Takes in a feature and optional module_filter and plots the histogram of desired data. 2024-08-06T21:20:02.8288767Z 2024-08-06T21:20:02.8288850Z Note: 2024-08-06T21:20:02.8289129Z Only features in the report that have tensor value data can be viewed as a histogram 2024-08-06T21:20:02.8289386Z If you want to plot a histogram from all the channel values of a specific feature for 2024-08-06T21:20:02.8289632Z a specific model, make sure to specify both the model and the feature properly 2024-08-06T21:20:02.8289889Z in the filters and you should be able to see a distribution of the channel data 2024-08-06T21:20:02.8289967Z 2024-08-06T21:20:02.8290049Z Args: 2024-08-06T21:20:02.8290316Z feature_filter (str, optional): Filters the features presented to only those that 2024-08-06T21:20:02.8290425Z contain this filter substring 2024-08-06T21:20:02.8290585Z Default = "", results in all the features being printed 2024-08-06T21:20:02.8290850Z module_fqn_filter (str, optional): Only includes modules that contains this string 2024-08-06T21:20:02.8291092Z Default = "", results in all the modules in the reports to be visible in the table 2024-08-06T21:20:02.8291310Z num_bins (int, optional): The number of bins to create the histogram with 2024-08-06T21:20:02.8291510Z Default = 10, the values will be split into 10 equal sized bins 2024-08-06T21:20:02.8291586Z 2024-08-06T21:20:02.8291683Z Example Use: 2024-08-06T21:20:02.8291779Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8292071Z >>> mod_report_visualizer.generategenerate_histogram_visualization_plot_visualization( 2024-08-06T21:20:02.8292211Z ... feature_filter = "per_channel_min", 2024-08-06T21:20:02.8292319Z ... module_fqn_filter = "block1" 2024-08-06T21:20:02.8292398Z ... ) 2024-08-06T21:20:02.8292685Z # outputs histogram of per_channel_min information for all modules in block1 of model 2024-08-06T21:20:02.8292940Z information is gathered across all channels for all modules in block 1 for the 2024-08-06T21:20:02.8293152Z per_channel_min and is displayed in a histogram of equally sized bins 2024-08-06T21:20:02.8293241Z 2024-08-06T21:20:02.8293491Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8293567Z 2024-08-06T21:20:02.8293676Z warnings.warn(msg) 2024-08-06T21:20:02.8293805Z 2024-08-06T21:20:02.8293981Z --- Parse Warning: 31 / 100 --- 2024-08-06T21:20:02.8295046Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=gather_object in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/distributed_c10d.py line=2720. 2024-08-06T21:20:02.8295309Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8295395Z 2024-08-06T21:20:02.8295617Z Gathers picklable objects from the whole group in a single process. 2024-08-06T21:20:02.8295693Z 2024-08-06T21:20:02.8295928Z Similar to :func:`gather`, but Python objects can be passed in. Note that the 2024-08-06T21:20:02.8296072Z object must be picklable in order to be gathered. 2024-08-06T21:20:02.8296151Z 2024-08-06T21:20:02.8296240Z Args: 2024-08-06T21:20:02.8296366Z obj (Any): Input object. Must be picklable. 2024-08-06T21:20:02.8296570Z object_gather_list (list[Any]): Output list. On the ``dst`` rank, it 2024-08-06T21:20:02.8296763Z should be correctly sized as the size of the group for this 2024-08-06T21:20:02.8297033Z collective and will contain the output. Must be ``None`` on non-dst 2024-08-06T21:20:02.8297139Z ranks. (default is ``None``) 2024-08-06T21:20:02.8297527Z dst (int, optional): Destination rank on global process group (regardless of ``group`` argument). (default is 0) 2024-08-06T21:20:02.8297757Z group: (ProcessGroup, optional): The process group to work on. If None, 2024-08-06T21:20:02.8297951Z the default process group will be used. Default is ``None``. 2024-08-06T21:20:02.8298029Z 2024-08-06T21:20:02.8298114Z Returns: 2024-08-06T21:20:02.8298299Z None. On the ``dst`` rank, ``object_gather_list`` will contain the 2024-08-06T21:20:02.8298404Z output of the collective. 2024-08-06T21:20:02.8298483Z 2024-08-06T21:20:02.8298702Z .. note:: Note that this API differs slightly from the gather collective 2024-08-06T21:20:02.8298923Z since it does not provide an async_op handle and thus will be a blocking 2024-08-06T21:20:02.8299009Z call. 2024-08-06T21:20:02.8299094Z 2024-08-06T21:20:02.8299323Z .. note:: For NCCL-based processed groups, internal tensor representations 2024-08-06T21:20:02.8299534Z of objects must be moved to the GPU device before communication takes 2024-08-06T21:20:02.8299683Z place. In this case, the device used is given by 2024-08-06T21:20:02.8299900Z ``torch.cuda.current_device()`` and it is the user's responsiblity to 2024-08-06T21:20:02.8300104Z ensure that this is set so that each rank has an individual GPU, via 2024-08-06T21:20:02.8300214Z ``torch.cuda.set_device()``. 2024-08-06T21:20:02.8300293Z 2024-08-06T21:20:02.8300379Z .. warning:: 2024-08-06T21:20:02.8300580Z :func:`gather_object` uses ``pickle`` module implicitly, which is 2024-08-06T21:20:02.8300800Z known to be insecure. It is possible to construct malicious pickle data 2024-08-06T21:20:02.8301022Z which will execute arbitrary code during unpickling. Only call this 2024-08-06T21:20:02.8301131Z function with data you trust. 2024-08-06T21:20:02.8301209Z 2024-08-06T21:20:02.8301305Z .. warning:: 2024-08-06T21:20:02.8301514Z Calling :func:`gather_object` with GPU tensors is not well supported 2024-08-06T21:20:02.8301734Z and inefficient as it incurs GPU -> CPU transfer since tensors would be 2024-08-06T21:20:02.8301908Z pickled. Please consider using :func:`gather` instead. 2024-08-06T21:20:02.8301986Z 2024-08-06T21:20:02.8302074Z Example:: 2024-08-06T21:20:02.8302211Z >>> # xdoctest: +SKIP("need process group init") 2024-08-06T21:20:02.8302388Z >>> # Note: Process group initialization omitted on each rank. 2024-08-06T21:20:02.8302503Z >>> import torch.distributed as dist 2024-08-06T21:20:02.8302700Z >>> # Assumes world_size of 3. 2024-08-06T21:20:02.8302872Z >>> gather_objects = ["foo", 12, {1: 2}] # any picklable object 2024-08-06T21:20:02.8302993Z >>> output = [None for _ in gather_objects] 2024-08-06T21:20:02.8303104Z >>> dist.gather_object( 2024-08-06T21:20:02.8303221Z ... gather_objects[dist.get_rank()], 2024-08-06T21:20:02.8303350Z ... output if dist.get_rank() == 0 else None, 2024-08-06T21:20:02.8303445Z ... dst=0 2024-08-06T21:20:02.8303526Z ... ) 2024-08-06T21:20:02.8303613Z >>> # On rank 0 2024-08-06T21:20:02.8303706Z >>> output 2024-08-06T21:20:02.8303794Z ['foo', 12, {1: 2}] 2024-08-06T21:20:02.8303871Z 2024-08-06T21:20:02.8304130Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8304209Z 2024-08-06T21:20:02.8304317Z warnings.warn(msg) 2024-08-06T21:20:02.8304393Z 2024-08-06T21:20:02.8304584Z --- Parse Warning: 32 / 100 --- 2024-08-06T21:20:02.8305493Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=__doc__ in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/launch.py line=2. 2024-08-06T21:20:02.8305751Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8305832Z 2024-08-06T21:20:02.8305960Z Module ``torch.distributed.launch``. 2024-08-06T21:20:02.8306036Z 2024-08-06T21:20:02.8306283Z ``torch.distributed.launch`` is a module that spawns up multiple distributed 2024-08-06T21:20:02.8306440Z training processes on each of the training nodes. 2024-08-06T21:20:02.8306520Z 2024-08-06T21:20:02.8306607Z .. warning:: 2024-08-06T21:20:02.8306692Z 2024-08-06T21:20:02.8306944Z This module is going to be deprecated in favor of :ref:`torchrun `. 2024-08-06T21:20:02.8307023Z 2024-08-06T21:20:02.8307270Z The utility can be used for single-node distributed training, in which one or 2024-08-06T21:20:02.8307508Z more processes per node will be spawned. The utility can be used for either 2024-08-06T21:20:02.8307725Z CPU training or GPU training. If the utility is used for GPU training, 2024-08-06T21:20:02.8307978Z each distributed process will be operating on a single GPU. This can achieve 2024-08-06T21:20:02.8308211Z well-improved single-node training performance. It can also be used in 2024-08-06T21:20:02.8308485Z multi-node distributed training, by spawning up multiple processes on each node 2024-08-06T21:20:02.8308710Z for well-improved multi-node distributed training performance as well. 2024-08-06T21:20:02.8308941Z This will especially be beneficial for systems with multiple Infiniband 2024-08-06T21:20:02.8309206Z interfaces that have direct-GPU support, since all of them can be utilized for 2024-08-06T21:20:02.8309318Z aggregated communication bandwidth. 2024-08-06T21:20:02.8309404Z 2024-08-06T21:20:02.8309647Z In both cases of single-node distributed training or multi-node distributed 2024-08-06T21:20:02.8309884Z training, this utility will launch the given number of processes per node 2024-08-06T21:20:02.8310111Z (``--nproc-per-node``). If used for GPU training, this number needs to be less 2024-08-06T21:20:02.8310339Z or equal to the number of GPUs on the current system (``nproc_per_node``), 2024-08-06T21:20:02.8310538Z and each process will be operating on a single GPU from *GPU 0 to 2024-08-06T21:20:02.8310653Z GPU (nproc_per_node - 1)*. 2024-08-06T21:20:02.8310732Z 2024-08-06T21:20:02.8310828Z **How to use this module:** 2024-08-06T21:20:02.8310918Z 2024-08-06T21:20:02.8311065Z 1. Single-Node multi-process distributed training 2024-08-06T21:20:02.8311141Z 2024-08-06T21:20:02.8311241Z :: 2024-08-06T21:20:02.8311318Z 2024-08-06T21:20:02.8311546Z python -m torch.distributed.launch --nproc-per-node=NUM_GPUS_YOU_HAVE 2024-08-06T21:20:02.8311796Z YOUR_TRAINING_SCRIPT.py (--arg1 --arg2 --arg3 and all other 2024-08-06T21:20:02.8311913Z arguments of your training script) 2024-08-06T21:20:02.8311996Z 2024-08-06T21:20:02.8312213Z 2. Multi-Node multi-process distributed training: (e.g. two nodes) 2024-08-06T21:20:02.8312289Z 2024-08-06T21:20:02.8312366Z 2024-08-06T21:20:02.8312519Z Node 1: *(IP: 192.168.1.1, and has a free port: 1234)* 2024-08-06T21:20:02.8312596Z 2024-08-06T21:20:02.8312677Z :: 2024-08-06T21:20:02.8312762Z 2024-08-06T21:20:02.8312998Z python -m torch.distributed.launch --nproc-per-node=NUM_GPUS_YOU_HAVE 2024-08-06T21:20:02.8313160Z --nnodes=2 --node-rank=0 --master-addr="192.168.1.1" 2024-08-06T21:20:02.8313365Z --master-port=1234 YOUR_TRAINING_SCRIPT.py (--arg1 --arg2 --arg3 2024-08-06T21:20:02.8313520Z and all other arguments of your training script) 2024-08-06T21:20:02.8313601Z 2024-08-06T21:20:02.8313680Z Node 2: 2024-08-06T21:20:02.8313766Z 2024-08-06T21:20:02.8313844Z :: 2024-08-06T21:20:02.8313919Z 2024-08-06T21:20:02.8314204Z python -m torch.distributed.launch --nproc-per-node=NUM_GPUS_YOU_HAVE 2024-08-06T21:20:02.8314355Z --nnodes=2 --node-rank=1 --master-addr="192.168.1.1" 2024-08-06T21:20:02.8314556Z --master-port=1234 YOUR_TRAINING_SCRIPT.py (--arg1 --arg2 --arg3 2024-08-06T21:20:02.8314709Z and all other arguments of your training script) 2024-08-06T21:20:02.8314785Z 2024-08-06T21:20:02.8314938Z 3. To look up what optional arguments this module offers: 2024-08-06T21:20:02.8315025Z 2024-08-06T21:20:02.8315103Z :: 2024-08-06T21:20:02.8315179Z 2024-08-06T21:20:02.8315319Z python -m torch.distributed.launch --help 2024-08-06T21:20:02.8315393Z 2024-08-06T21:20:02.8315469Z 2024-08-06T21:20:02.8315573Z **Important Notices:** 2024-08-06T21:20:02.8315652Z 2024-08-06T21:20:02.8315835Z 1. This utility and multi-process distributed (single-node or 2024-08-06T21:20:02.8316095Z multi-node) GPU training currently only achieves the best performance using 2024-08-06T21:20:02.8316343Z the NCCL distributed backend. Thus NCCL backend is the recommended backend to 2024-08-06T21:20:02.8316434Z use for GPU training. 2024-08-06T21:20:02.8316520Z 2024-08-06T21:20:02.8316730Z 2. In your training program, you must parse the command-line argument: 2024-08-06T21:20:02.8316956Z ``--local-rank=LOCAL_PROCESS_RANK``, which will be provided by this module. 2024-08-06T21:20:02.8317188Z If your training program uses GPUs, you should ensure that your code only 2024-08-06T21:20:02.8317378Z runs on the GPU device of LOCAL_PROCESS_RANK. This can be done by: 2024-08-06T21:20:02.8317466Z 2024-08-06T21:20:02.8317568Z Parsing the local_rank argument 2024-08-06T21:20:02.8317644Z 2024-08-06T21:20:02.8317733Z :: 2024-08-06T21:20:02.8317810Z 2024-08-06T21:20:02.8317905Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8318004Z >>> import argparse 2024-08-06T21:20:02.8318128Z >>> parser = argparse.ArgumentParser() 2024-08-06T21:20:02.8318318Z >>> parser.add_argument("--local-rank", "--local_rank", type=int) 2024-08-06T21:20:02.8318432Z >>> args = parser.parse_args() 2024-08-06T21:20:02.8318507Z 2024-08-06T21:20:02.8318629Z Set your device to local rank using either 2024-08-06T21:20:02.8318714Z 2024-08-06T21:20:02.8318792Z :: 2024-08-06T21:20:02.8318870Z 2024-08-06T21:20:02.8319074Z >>> torch.cuda.set_device(args.local_rank) # before your code runs 2024-08-06T21:20:02.8319150Z 2024-08-06T21:20:02.8319224Z or 2024-08-06T21:20:02.8319305Z 2024-08-06T21:20:02.8319382Z :: 2024-08-06T21:20:02.8319455Z 2024-08-06T21:20:02.8319586Z >>> with torch.cuda.device(args.local_rank): 2024-08-06T21:20:02.8319677Z >>> # your code to run 2024-08-06T21:20:02.8319806Z >>> ... 2024-08-06T21:20:02.8319888Z 2024-08-06T21:20:02.8319985Z .. versionchanged:: 2.0.0 2024-08-06T21:20:02.8320059Z 2024-08-06T21:20:02.8320309Z The launcher will passes the ``--local-rank=`` argument to your script. 2024-08-06T21:20:02.8320541Z From PyTorch 2.0.0 onwards, the dashed ``--local-rank`` is preferred over the 2024-08-06T21:20:02.8320677Z previously used underscored ``--local_rank``. 2024-08-06T21:20:02.8320756Z 2024-08-06T21:20:02.8320988Z For backward compatibility, it may be necessary for users to handle both 2024-08-06T21:20:02.8321250Z cases in their argument parsing code. This means including both ``"--local-rank"`` 2024-08-06T21:20:02.8321464Z and ``"--local_rank"`` in the argument parser. If only ``"--local_rank"`` is 2024-08-06T21:20:02.8321708Z provided, the launcher will trigger an error: "error: unrecognized arguments: 2024-08-06T21:20:02.8321937Z --local-rank=". For training code that only supports PyTorch 2.0.0+, 2024-08-06T21:20:02.8322084Z including ``"--local-rank"`` should be sufficient. 2024-08-06T21:20:02.8322161Z 2024-08-06T21:20:02.8322454Z 3. In your training program, you are supposed to call the following function 2024-08-06T21:20:02.8322693Z at the beginning to start the distributed backend. It is strongly recommended 2024-08-06T21:20:02.8322907Z that ``init_method=env://``. Other init methods (e.g. ``tcp://``) may work, 2024-08-06T21:20:02.8323099Z but ``env://`` is the one that is officially supported by this module. 2024-08-06T21:20:02.8323173Z 2024-08-06T21:20:02.8323252Z :: 2024-08-06T21:20:02.8323334Z 2024-08-06T21:20:02.8323528Z >>> torch.distributed.init_process_group(backend='YOUR BACKEND', 2024-08-06T21:20:02.8323658Z >>> init_method='env://') 2024-08-06T21:20:02.8323738Z 2024-08-06T21:20:02.8323970Z 4. In your training program, you can either use regular distributed functions 2024-08-06T21:20:02.8324207Z or use :func:`torch.nn.parallel.DistributedDataParallel` module. If your 2024-08-06T21:20:02.8324413Z training program uses GPUs for training and you would like to use 2024-08-06T21:20:02.8324593Z :func:`torch.nn.parallel.DistributedDataParallel` module, 2024-08-06T21:20:02.8324697Z here is how to configure it. 2024-08-06T21:20:02.8324772Z 2024-08-06T21:20:02.8324851Z :: 2024-08-06T21:20:02.8324930Z 2024-08-06T21:20:02.8325116Z >>> model = torch.nn.parallel.DistributedDataParallel(model, 2024-08-06T21:20:02.8325248Z >>> device_ids=[args.local_rank], 2024-08-06T21:20:02.8325387Z >>> output_device=args.local_rank) 2024-08-06T21:20:02.8325462Z 2024-08-06T21:20:02.8325701Z Please ensure that ``device_ids`` argument is set to be the only GPU device id 2024-08-06T21:20:02.8325938Z that your code will be operating on. This is generally the local rank of the 2024-08-06T21:20:02.8326169Z process. In other words, the ``device_ids`` needs to be ``[args.local_rank]``, 2024-08-06T21:20:02.8326384Z and ``output_device`` needs to be ``args.local_rank`` in order to use this 2024-08-06T21:20:02.8326471Z utility 2024-08-06T21:20:02.8326545Z 2024-08-06T21:20:02.8326782Z 5. Another way to pass ``local_rank`` to the subprocesses via environment variable 2024-08-06T21:20:02.8326995Z ``LOCAL_RANK``. This behavior is enabled when you launch the script with 2024-08-06T21:20:02.8327209Z ``--use-env=True``. You must adjust the subprocess example above to replace 2024-08-06T21:20:02.8327405Z ``args.local_rank`` with ``os.environ['LOCAL_RANK']``; the launcher 2024-08-06T21:20:02.8327570Z will not pass ``--local-rank`` when you specify this flag. 2024-08-06T21:20:02.8327645Z 2024-08-06T21:20:02.8327740Z .. warning:: 2024-08-06T21:20:02.8327866Z 2024-08-06T21:20:02.8328062Z ``local_rank`` is NOT globally unique: it is only unique per process 2024-08-06T21:20:02.8328250Z on a machine. Thus, don't use it to decide if you should, e.g., 2024-08-06T21:20:02.8328365Z write to a networked filesystem. See 2024-08-06T21:20:02.8328579Z https://github.com/pytorch/pytorch/issues/12042 for an example of 2024-08-06T21:20:02.8328742Z how things can go wrong if you don't do this correctly. 2024-08-06T21:20:02.8328816Z 2024-08-06T21:20:02.8328889Z 2024-08-06T21:20:02.8328971Z 2024-08-06T21:20:02.8329046Z 2024-08-06T21:20:02.8329293Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8329372Z 2024-08-06T21:20:02.8329464Z warnings.warn(msg) 2024-08-06T21:20:02.8329538Z 2024-08-06T21:20:02.8329738Z --- Parse Warning: 33 / 100 --- 2024-08-06T21:20:02.8330778Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=init_from_local_shards in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/__init__.py line=361. 2024-08-06T21:20:02.8331099Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8331177Z 2024-08-06T21:20:02.8331412Z Creates an :class:`ShardedTensor` from local shards and the global metadata. 2024-08-06T21:20:02.8331564Z Needs to be called on all ranks in an SPMD fashion. 2024-08-06T21:20:02.8331637Z 2024-08-06T21:20:02.8331715Z Args: 2024-08-06T21:20:02.8331992Z local_shards (List[:class `torch.distributed._shard.sharded_tensor.Shard`]): A list 2024-08-06T21:20:02.8332152Z of shards that represent the local shards on this rank. 2024-08-06T21:20:02.8332370Z global_size (int...): a list, tuple, or `torch.Size` of integers defining the 2024-08-06T21:20:02.8332490Z shape of the overall sharded tensor. 2024-08-06T21:20:02.8332567Z 2024-08-06T21:20:02.8332652Z Keyword args: 2024-08-06T21:20:02.8332915Z process_group (ProcessGroup, optional): The process group to work on. If None, 2024-08-06T21:20:02.8333039Z the default process group will be used. 2024-08-06T21:20:02.8333206Z init_rrefs (bool, optional): Whether or not to initialize 2024-08-06T21:20:02.8333419Z :class:`torch.distributed.rpc.RRef`s pointing to remote shards. 2024-08-06T21:20:02.8333604Z Need to initialize the RPC Framework if specified as ``True``. 2024-08-06T21:20:02.8333704Z Default: ``False``. 2024-08-06T21:20:02.8333779Z 2024-08-06T21:20:02.8333857Z Returns: 2024-08-06T21:20:02.8334014Z A :class:`ShardedTensor` object handle on this rank 2024-08-06T21:20:02.8334091Z 2024-08-06T21:20:02.8334164Z 2024-08-06T21:20:02.8334255Z Examples: 2024-08-06T21:20:02.8334597Z Suppose we want construct a sharded tensor on two ranks, global size = (10, 5), 2024-08-06T21:20:02.8334780Z each shard have a (5, 5) local tensor, we can do it like below: 2024-08-06T21:20:02.8334864Z 2024-08-06T21:20:02.8334944Z on rank 0: 2024-08-06T21:20:02.8335062Z >>> # xdoctest: +SKIP("not distributed") 2024-08-06T21:20:02.8335189Z >>> local_shard_metadata = ShardMetadata( 2024-08-06T21:20:02.8335285Z >>> shard_offsets=[0, 0], 2024-08-06T21:20:02.8335382Z >>> shard_lengths=[5, 5], 2024-08-06T21:20:02.8335495Z >>> placement="rank:0/cuda:0" 2024-08-06T21:20:02.8335571Z >>> ) 2024-08-06T21:20:02.8335758Z >>> local_shards = [Shard(torch.randn(5, 5), local_shard_metadata)] 2024-08-06T21:20:02.8335952Z >>> sharded_tensor = init_from_local_shards(local_shards, [10, 5]) 2024-08-06T21:20:02.8336025Z 2024-08-06T21:20:02.8336107Z on rank 1: 2024-08-06T21:20:02.8336233Z >>> # xdoctest: +SKIP("not distributed") 2024-08-06T21:20:02.8336346Z >>> local_shard_metadata = ShardMetadata( 2024-08-06T21:20:02.8336494Z >>> shard_offsets=[5, 0], 2024-08-06T21:20:02.8336601Z >>> shard_lengths=[5, 5], 2024-08-06T21:20:02.8336703Z >>> placement="rank:1/cuda:1" 2024-08-06T21:20:02.8336782Z >>> ) 2024-08-06T21:20:02.8336977Z >>> local_shards = [Shard(torch.randn(5, 5), local_shard_metadata)] 2024-08-06T21:20:02.8337161Z >>> sharded_tensor = init_from_local_shards(local_shards, [10, 5]) 2024-08-06T21:20:02.8337243Z 2024-08-06T21:20:02.8337491Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8337566Z 2024-08-06T21:20:02.8337666Z warnings.warn(msg) 2024-08-06T21:20:02.8337740Z 2024-08-06T21:20:02.8337928Z --- Parse Warning: 34 / 100 --- 2024-08-06T21:20:02.8339020Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ShardedTensor._init_from_local_tensor in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/api.py line=784. 2024-08-06T21:20:02.8339281Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8339404Z 2024-08-06T21:20:02.8339669Z Initialize a ShardedTensor given only one local tensor, global sharded tensor 2024-08-06T21:20:02.8339775Z size and sharding spec on each rank. 2024-08-06T21:20:02.8339849Z 2024-08-06T21:20:02.8339934Z Args: 2024-08-06T21:20:02.8340154Z local_tensor (Tensor): Single tensor of local shard stored in each rank. 2024-08-06T21:20:02.8340407Z sharding_spec (:class:`torch.distributed._shard.sharding_spec.ShardingSpec`): 2024-08-06T21:20:02.8340578Z The specification describing how to shard the Tensor. 2024-08-06T21:20:02.8340739Z global_size (Sequence[int]): Size of the sharded tensor. 2024-08-06T21:20:02.8340993Z process_group (ProcessGroup, optional): The process group to aggregate on. 2024-08-06T21:20:02.8341086Z Default: None 2024-08-06T21:20:02.8341250Z init_rrefs (bool, optional): Whether or not to initialize 2024-08-06T21:20:02.8341466Z :class:`torch.distributed.rpc.RRef`s pointing to remote shards. 2024-08-06T21:20:02.8341653Z Need to initialize the RPC Framework if specified as ``True``. 2024-08-06T21:20:02.8341744Z Default: ``False``. 2024-08-06T21:20:02.8341823Z 2024-08-06T21:20:02.8341903Z Returns: 2024-08-06T21:20:02.8342137Z A :class:`ShardedTensor` sharded based on the given sharding_spec with local 2024-08-06T21:20:02.8342255Z tensor stored in the current rank. 2024-08-06T21:20:02.8342329Z 2024-08-06T21:20:02.8342410Z Examples: 2024-08-06T21:20:02.8342514Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8342642Z >>> # All tensors below are of torch.int64 type. 2024-08-06T21:20:02.8342752Z >>> # We have 2 process groups, 2 ranks. 2024-08-06T21:20:02.8342927Z >>> tensor = torch.arange(2, dtype=torch.int64) + 1 + 2 * rank 2024-08-06T21:20:02.8343126Z >>> local_tensor = torch.unsqueeze(torch.cat([tensor, tensor + 2])) 2024-08-06T21:20:02.8343215Z >>> local_tensor 2024-08-06T21:20:02.8343317Z tensor([[1, 2, 3, 4]]) # Rank 0 2024-08-06T21:20:02.8343410Z tensor([[3, 4, 5, 6]]) # Rank 1 2024-08-06T21:20:02.8343500Z >>> sharding_dim = 0 2024-08-06T21:20:02.8343626Z >>> sharding_spec = ChunkShardingSpec( 2024-08-06T21:20:02.8343720Z dim=sharding_dim, 2024-08-06T21:20:02.8343818Z placements=[ 2024-08-06T21:20:02.8343910Z "rank:0/cuda:0", 2024-08-06T21:20:02.8344000Z "rank:1/cuda:1", 2024-08-06T21:20:02.8344085Z ], 2024-08-06T21:20:02.8344162Z ) 2024-08-06T21:20:02.8344414Z >>> st = ShardedTensor._init_from_local_tensor(local_tensor, sharding_spec, [2, 4]) 2024-08-06T21:20:02.8344502Z >>> st 2024-08-06T21:20:02.8344644Z ShardedTensor( 2024-08-06T21:20:02.8344744Z ShardedTensorMetadata( 2024-08-06T21:20:02.8344843Z shards_metadata=[ 2024-08-06T21:20:02.8345111Z ShardMetadata(shard_offsets=[0, 0], shard_sizes=[1, 4], placement=rank:0/cuda:0), 2024-08-06T21:20:02.8345368Z ShardMetadata(shard_offsets=[1, 0], shard_sizes=[1, 4], placement=rank:1/cuda:1), 2024-08-06T21:20:02.8345455Z ], 2024-08-06T21:20:02.8345556Z size=torch.Size([2, 4]) 2024-08-06T21:20:02.8345634Z ) 2024-08-06T21:20:02.8345736Z >>> st.local_tensor() 2024-08-06T21:20:02.8345827Z tensor([1, 2, 3, 4]) # Rank 0 2024-08-06T21:20:02.8345918Z tensor([3, 4, 5, 6]) # Rank 1 2024-08-06T21:20:02.8346000Z 2024-08-06T21:20:02.8346264Z Warning: This API is experimental and subject to change. It lacks of a fully across 2024-08-06T21:20:02.8346499Z rank validations, and we only validate the local shard on the current rank. 2024-08-06T21:20:02.8346718Z We fully rely on the user to ensure local tensor is sharded based on the 2024-08-06T21:20:02.8346807Z sharding spec. 2024-08-06T21:20:02.8346937Z 2024-08-06T21:20:02.8347188Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8347262Z 2024-08-06T21:20:02.8347360Z warnings.warn(msg) 2024-08-06T21:20:02.8347438Z 2024-08-06T21:20:02.8347616Z --- Parse Warning: 35 / 100 --- 2024-08-06T21:20:02.8348666Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ShardedTensor.reshard in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharded_tensor/api.py line=1023. 2024-08-06T21:20:02.8348923Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8348997Z 2024-08-06T21:20:02.8349254Z Reshard a sharded tensor given the ``resharding_spec``. For now, we only support 2024-08-06T21:20:02.8349350Z single local shard. 2024-08-06T21:20:02.8349424Z 2024-08-06T21:20:02.8349649Z If ``resharding_spec`` is same as the original one, this becomes a no-op. 2024-08-06T21:20:02.8349886Z If only ``resharding_spec`` shares the same sharding dim with the original one, 2024-08-06T21:20:02.8349987Z we swap local shards directly. 2024-08-06T21:20:02.8350251Z For more generic cases, we merge different shards across different ranks and split 2024-08-06T21:20:02.8350496Z the local shards based on the ``resharding_spec`` via `all_to_all` collective API. 2024-08-06T21:20:02.8350577Z 2024-08-06T21:20:02.8350658Z Args: 2024-08-06T21:20:02.8350946Z resharding_spec (:class:`torch.distributed._shard.sharding_spec.ShardingSpec`): The 2024-08-06T21:20:02.8351107Z specification describing how the tensor is sharded. 2024-08-06T21:20:02.8351182Z 2024-08-06T21:20:02.8351263Z Returns: 2024-08-06T21:20:02.8351470Z A :class:`ShardedTensor` object whose local shards are resharded. 2024-08-06T21:20:02.8351550Z 2024-08-06T21:20:02.8351632Z Examples: 2024-08-06T21:20:02.8351732Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8351848Z >>> # We have 2 process groups, 2 ranks. 2024-08-06T21:20:02.8352017Z >>> tensor = torch.arange(4, dtype=torch.int64) + 1 + 2 * rank 2024-08-06T21:20:02.8352142Z >>> tensor = torch.stack([tensor, tensor]) 2024-08-06T21:20:02.8352225Z >>> tensor 2024-08-06T21:20:02.8352340Z tensor([[1, 2, 3, 4], [1, 2, 3, 4]]) # Rank 0 2024-08-06T21:20:02.8352459Z tensor([[3, 4, 5, 6], [3, 4, 5, 6]]) # Rank 1 2024-08-06T21:20:02.8352569Z tensor([[5, 6, 7, 8], [5, 6, 7, 8]]) # Rank 2 2024-08-06T21:20:02.8352682Z tensor([[7, 8, 9, 10], [7, 8, 9, 10]]) # Rank 3 2024-08-06T21:20:02.8352782Z >>> sharding_dim = 0 2024-08-06T21:20:02.8352887Z >>> spec = ChunkShardingSpec( 2024-08-06T21:20:02.8353044Z dim=sharding_dim, 2024-08-06T21:20:02.8353139Z placements=[ 2024-08-06T21:20:02.8353230Z "rank:0/cuda:0", 2024-08-06T21:20:02.8353321Z "rank:1/cuda:1", 2024-08-06T21:20:02.8353417Z "rank:2/cuda:2", 2024-08-06T21:20:02.8353504Z "rank:3/cuda:3", 2024-08-06T21:20:02.8353589Z ], 2024-08-06T21:20:02.8353669Z ) 2024-08-06T21:20:02.8353767Z >>> current_offsets = [0] * 2 2024-08-06T21:20:02.8353873Z >>> current_offsets[0] = rank * 2 2024-08-06T21:20:02.8353985Z >>> shard_metadata = ShardMetadata( 2024-08-06T21:20:02.8354129Z shard_offsets=copy.deepcopy(current_offsets), 2024-08-06T21:20:02.8354238Z shard_sizes=tensor.size(), 2024-08-06T21:20:02.8354355Z placement=spec.placements[rank], 2024-08-06T21:20:02.8354433Z ) 2024-08-06T21:20:02.8354527Z >>> local_shards = [ 2024-08-06T21:20:02.8354613Z Shard( 2024-08-06T21:20:02.8354704Z tensor=tensor, 2024-08-06T21:20:02.8354815Z metadata=shard_metadata, 2024-08-06T21:20:02.8354896Z ) 2024-08-06T21:20:02.8355047Z ] 2024-08-06T21:20:02.8355287Z >>> st = ShardedTensor._init_from_local_shards(local_shards, tensor.size()) 2024-08-06T21:20:02.8355381Z >>> sharding_dim = 1 2024-08-06T21:20:02.8355498Z >>> resharding_spec = ChunkShardingSpec( 2024-08-06T21:20:02.8355596Z dim=sharding_dim, 2024-08-06T21:20:02.8355687Z placements=[ 2024-08-06T21:20:02.8355779Z "rank:0/cuda:0", 2024-08-06T21:20:02.8355876Z "rank:1/cuda:1", 2024-08-06T21:20:02.8355965Z "rank:2/cuda:2", 2024-08-06T21:20:02.8356051Z "rank:3/cuda:3", 2024-08-06T21:20:02.8356142Z ], 2024-08-06T21:20:02.8356219Z ) 2024-08-06T21:20:02.8356320Z >>> st.reshard(resharding_spec) 2024-08-06T21:20:02.8356443Z >>> tensor = st.local_shards()[0].tensor 2024-08-06T21:20:02.8356523Z >>> tensor 2024-08-06T21:20:02.8356663Z tensor([[1], [1], [3], [3], [5], [5], [7], [7]]) # Rank 0 2024-08-06T21:20:02.8356801Z tensor([[2], [2], [4], [4], [6], [6], [8], [8]]) # Rank 1 2024-08-06T21:20:02.8356935Z tensor([[3], [3], [5], [5], [7], [7], [9], [9]]) # Rank 2 2024-08-06T21:20:02.8357073Z tensor([[4], [4], [6], [6], [8], [8], [10], [10]]) # Rank 3 2024-08-06T21:20:02.8357147Z 2024-08-06T21:20:02.8357394Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8357476Z 2024-08-06T21:20:02.8357572Z warnings.warn(msg) 2024-08-06T21:20:02.8357647Z 2024-08-06T21:20:02.8357836Z --- Parse Warning: 36 / 100 --- 2024-08-06T21:20:02.8358822Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ShardingPlan in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_shard/sharding_plan/api.py line=12. 2024-08-06T21:20:02.8359088Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8359166Z 2024-08-06T21:20:02.8359378Z Representation of a sharding plan, describes how to shard a module 2024-08-06T21:20:02.8359646Z across hosts. `plan` is used to shard module parameters according to the spec provided, 2024-08-06T21:20:02.8359932Z `output_plan` and `return_local_tensor` are optional, they are used to specify the output 2024-08-06T21:20:02.8360175Z layout of a module with a spec, and when to convert back to data parallel fashion. 2024-08-06T21:20:02.8360255Z 2024-08-06T21:20:02.8360335Z Args: 2024-08-06T21:20:02.8360600Z plan (Dict[str, Union[:class:`torch.distributed._shard.sharding_spec.ShardingSpec`, 2024-08-06T21:20:02.8360767Z :class:`torch.distributed._shard.sharder.Sharder`]): 2024-08-06T21:20:02.8361089Z a dict describes how to shard a module, there're currently two ways to shard a module: 2024-08-06T21:20:02.8361341Z 1. directly shard a module parameter by a `ShardingSpec`, keyed by the name of 2024-08-06T21:20:02.8361465Z a parameter to a `ShardingSpec`. 2024-08-06T21:20:02.8361719Z 2. shard a submodule by applying a `Sharder` on it, keyed by the name of a module 2024-08-06T21:20:02.8361820Z to a `Sharder` object. 2024-08-06T21:20:02.8362151Z output_plan (Dict[str, :class:`torch.distributed._shard.sharding_spec.ShardingSpec`), optional): 2024-08-06T21:20:02.8362405Z a dict specifies the layout of a module's output which produces a ShardedTensor, 2024-08-06T21:20:02.8362641Z keyed by the name of module to ShardingSpec("" in key means the root module). 2024-08-06T21:20:02.8362924Z Default: `None` 2024-08-06T21:20:02.8363201Z return_local_tensor (List[str], optional): a list of string, each element enables 2024-08-06T21:20:02.8363453Z a module's sharded output to be returned as a Tensor from its local shards to 2024-08-06T21:20:02.8363793Z ensure further processing in a data parallel fashion. ("" in list means the 2024-08-06T21:20:02.8363883Z root module). 2024-08-06T21:20:02.8363978Z Default: None 2024-08-06T21:20:02.8364059Z Example: 2024-08-06T21:20:02.8364341Z Suppose we want to shard a module with two linear layers and then run it with DDP, we also 2024-08-06T21:20:02.8364626Z want to convert the output of the second linear layer back to DDP, we can do it as follows: 2024-08-06T21:20:02.8364703Z 2024-08-06T21:20:02.8364869Z >>> # xdoctest: +REQUIRES(module:torch._C._distributed_c10d) 2024-08-06T21:20:02.8364975Z >>> class MyModule(nn.Module): 2024-08-06T21:20:02.8365079Z >>> def __init__(self) -> None: 2024-08-06T21:20:02.8365176Z >>> super().__init__() 2024-08-06T21:20:02.8365286Z >>> self.fc1 = nn.Linear() 2024-08-06T21:20:02.8365385Z >>> self.gelu = nn.GELU() 2024-08-06T21:20:02.8365491Z >>> self.fc2 = nn.Linear() 2024-08-06T21:20:02.8365769Z >>> self.relu = nn.Linear() 2024-08-06T21:20:02.8365849Z >>> 2024-08-06T21:20:02.8365960Z >>> def forward(self, input): 2024-08-06T21:20:02.8366125Z >>> return self.relu(self.fc2(self.gelu(self.fc1(input)))) 2024-08-06T21:20:02.8366200Z 2024-08-06T21:20:02.8366283Z 2024-08-06T21:20:02.8366405Z >>> # xdoctest: +SKIP("Undefined spec1, spec2) 2024-08-06T21:20:02.8366513Z >>> sharding_plan = ShardingPlan( 2024-08-06T21:20:02.8366603Z >>> plan={ 2024-08-06T21:20:02.8366698Z >>> "fc1.weight": spec1, 2024-08-06T21:20:02.8366793Z >>> "fc2.weight": spec2 2024-08-06T21:20:02.8366878Z >>> }, 2024-08-06T21:20:02.8366969Z >>> output_plan={ 2024-08-06T21:20:02.8367070Z >>> "fc2": output_spec 2024-08-06T21:20:02.8367158Z >>> }, 2024-08-06T21:20:02.8367260Z >>> return_local_tensor=["fc2"] 2024-08-06T21:20:02.8367341Z >>> ) 2024-08-06T21:20:02.8367423Z 2024-08-06T21:20:02.8367672Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8367748Z 2024-08-06T21:20:02.8367849Z warnings.warn(msg) 2024-08-06T21:20:02.8367922Z 2024-08-06T21:20:02.8368133Z --- Parse Warning: 37 / 100 --- 2024-08-06T21:20:02.8369132Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=local_map in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/experimental/local_map.py line=30. 2024-08-06T21:20:02.8369389Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8369474Z 2024-08-06T21:20:02.8369817Z ``local_map`` is an experimental API that allows users to apply on :class:`DTensors` 2024-08-06T21:20:02.8370026Z a function that is written to be applied on :class:`~torch.Tensors`. 2024-08-06T21:20:02.8370116Z 2024-08-06T21:20:02.8370199Z Args: 2024-08-06T21:20:02.8370406Z func (Callable): the function to be applied on each local shard of 2024-08-06T21:20:02.8370512Z :class:`DTensor`s. 2024-08-06T21:20:02.8370735Z out_placements (Union[`PlacementType`, Tuple[`PlacementType`, ...]]): 2024-08-06T21:20:02.8370981Z the desired placements of the :class:`DTensor`s in `func`'s flattened output. 2024-08-06T21:20:02.8371218Z If the flattened `output` is a single value, the `out_placements` should be 2024-08-06T21:20:02.8371451Z of type `PlacementType`. Otherwise if the flattened `output` has multiple 2024-08-06T21:20:02.8371691Z values, the `out_placements` should be a tuple of `PlacementType` values 1:1 2024-08-06T21:20:02.8371819Z mapping to the flattened `output`. 2024-08-06T21:20:02.8372017Z Besides, for :class:`Tensor` output, we use `PlacementType` as its 2024-08-06T21:20:02.8372300Z placements (a `Tuple[Placement]` value). For non-:class:`Tensor` output, 2024-08-06T21:20:02.8372420Z the `PlacementType` should be `None`. 2024-08-06T21:20:02.8372651Z Note that the only exception is when no :class:`DTensor` argument is passed 2024-08-06T21:20:02.8372877Z in. In this case, even if `out_placements` is not `None`, the result function 2024-08-06T21:20:02.8373102Z should ignore the desired placements because the application is not on 2024-08-06T21:20:02.8373198Z :class:`DTensors`. 2024-08-06T21:20:02.8373370Z in_placements (Tuple[`PlacementType`, ...], optional): 2024-08-06T21:20:02.8373612Z the required placements of the :class:`DTensor`s in `func`'s flattened input. 2024-08-06T21:20:02.8373823Z If `in_placements` is specified, `local_map` would examine whether the 2024-08-06T21:20:02.8374063Z placements of each :class:`DTensor` argument is the same as the required 2024-08-06T21:20:02.8374244Z placements or not. If the placements are not the same and 2024-08-06T21:20:02.8374538Z `redistribute_inputs` is `False`, an exception will be raised. Otherwise if 2024-08-06T21:20:02.8374784Z `redistribute_inputs` is `True`, the argument will be first redistributed to 2024-08-06T21:20:02.8375030Z the required sharding placements before passing its local tensor to `func`. 2024-08-06T21:20:02.8375258Z The only exception is when required placements are not `None` and the 2024-08-06T21:20:02.8375499Z argument is a :class:`torch.Tensor`. In this case, the placements examination 2024-08-06T21:20:02.8375703Z will be skipped and the argument will be directly passed to `func`. 2024-08-06T21:20:02.8375926Z If `in_placements` is `None`, no placements examination will be performed. 2024-08-06T21:20:02.8376019Z Default: `None` 2024-08-06T21:20:02.8376151Z device_mesh (:class:`DeviceMesh`, optional): 2024-08-06T21:20:02.8376369Z the device mesh that all the :class:`DTensor`s are placed on. If not 2024-08-06T21:20:02.8376599Z specified, this will be inferred from the input :class:`DTensor`s' device 2024-08-06T21:20:02.8376830Z mesh. `local_map` requires every :class:`DTensor`s to be placed on the same 2024-08-06T21:20:02.8376948Z device mesh. Default: `None`. 2024-08-06T21:20:02.8377068Z redistribute_inputs (bool, optional): 2024-08-06T21:20:02.8377324Z the bool value indicating whether to reshard the input :class:`DTensor`s when 2024-08-06T21:20:02.8377570Z their placements are different from the required input placements. If this 2024-08-06T21:20:02.8377794Z value is `False` and some :class:`DTensor` input has a different placement, 2024-08-06T21:20:02.8377989Z an exception will be raised. Default: `False`. 2024-08-06T21:20:02.8378069Z 2024-08-06T21:20:02.8378150Z Returns: 2024-08-06T21:20:02.8378409Z A `Callable` that applies `func` to each local shard of the input :class:`DTensor` 2024-08-06T21:20:02.8378639Z and returns a :class:`DTensor` constructed from the return value of `func`. 2024-08-06T21:20:02.8378718Z 2024-08-06T21:20:02.8378803Z Raises: 2024-08-06T21:20:02.8379052Z AssertionError: If the input :class:`DTensor`s are not placed on the same device 2024-08-06T21:20:02.8379277Z mesh, or if they are placed on a different device mesh than the `device_mesh` 2024-08-06T21:20:02.8379378Z argument passed in. 2024-08-06T21:20:02.8379455Z 2024-08-06T21:20:02.8379715Z AssertionError: For any non-:class:`DTensor` output, we require its corresponding 2024-08-06T21:20:02.8379972Z output placement in `out_placements` be `None`. An AssertionError will be raised 2024-08-06T21:20:02.8380073Z if this is not the case. 2024-08-06T21:20:02.8380157Z 2024-08-06T21:20:02.8380457Z ValueError: If `redistribute_inputs=False` but the input :class:`DTensor` needs 2024-08-06T21:20:02.8380600Z a redistribution according to `in_placements`. 2024-08-06T21:20:02.8380685Z 2024-08-06T21:20:02.8380770Z Example: 2024-08-06T21:20:02.8380880Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8381023Z >>> def mm_allreduce_forward(device_mesh, W, X): 2024-08-06T21:20:02.8381140Z >>> partial_sum_tensor = torch.mm(W, X) 2024-08-06T21:20:02.8381378Z >>> reduced_tensor = funcol.all_reduce(partial_sum_tensor, "sum", device_mesh) 2024-08-06T21:20:02.8381486Z >>> return reduced_tensor 2024-08-06T21:20:02.8381566Z >>> 2024-08-06T21:20:02.8381688Z >>> W = torch.randn(12, 8, requires_grad=False) 2024-08-06T21:20:02.8381815Z >>> X = torch.randn(8, 16, requires_grad=False) 2024-08-06T21:20:02.8381911Z >>> Y = torch.mm(W, X) 2024-08-06T21:20:02.8382095Z >>> row_wise = [Shard(0)] # row-wise sharding placements on 1-d mesh 2024-08-06T21:20:02.8382284Z >>> col_wise = [Shard(1)] # col-wise sharding placements on 1-d mesh 2024-08-06T21:20:02.8382363Z >>> 2024-08-06T21:20:02.8382631Z >>> # local_mm_allreduce_forward is the function wrapped with DTensor/Tensor convertion 2024-08-06T21:20:02.8382762Z >>> local_mm_allreduce_forward = local_map( 2024-08-06T21:20:02.8382863Z >>> mm_allreduce_forward, 2024-08-06T21:20:02.8382983Z >>> out_placements=[Replicate()], 2024-08-06T21:20:02.8383097Z >>> in_placements=[col_wise, row_wise], 2024-08-06T21:20:02.8383197Z >>> device_mesh=device_mesh, 2024-08-06T21:20:02.8383284Z >>> ) 2024-08-06T21:20:02.8383361Z >>> 2024-08-06T21:20:02.8383616Z >>> W_dt = distribute_tensor(W, device_mesh, (col_wise)) # col-wisely sharded W tensor 2024-08-06T21:20:02.8383877Z >>> X_dt = distribute_tensor(X, device_mesh, (row_wise)) # row-wisely sharded X tensor 2024-08-06T21:20:02.8384204Z >>> Y_dt = local_mm_allreduce_forward(device_mesh, W_dt, X_dt) # apply local_mm_allreduce_forward to DTensors 2024-08-06T21:20:02.8384282Z 2024-08-06T21:20:02.8384477Z NOTE: This API is currently experimental and subject to change 2024-08-06T21:20:02.8384553Z 2024-08-06T21:20:02.8384801Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8384890Z 2024-08-06T21:20:02.8384984Z warnings.warn(msg) 2024-08-06T21:20:02.8385062Z 2024-08-06T21:20:02.8385267Z --- Parse Warning: 38 / 100 --- 2024-08-06T21:20:02.8386336Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=register_sharding in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/_tensor/experimental/register_sharding.py line=22. 2024-08-06T21:20:02.8387056Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8387134Z 2024-08-06T21:20:02.8387394Z ``register_sharding`` is an experimental API that allows users to register sharding 2024-08-06T21:20:02.8387670Z strategies for an operator when the tensor inputs and outputs are :class:`DTensor`s. 2024-08-06T21:20:02.8387918Z It can be useful when: (1) there doesn't exist a default sharding strategy for ``op``, 2024-08-06T21:20:02.8388153Z e.g. when ``op`` is a custom operator that is not supported by :class:`DTensor`; (2) 2024-08-06T21:20:02.8388434Z when users would like to overwrite default sharding strategies of existing operators. 2024-08-06T21:20:02.8388513Z 2024-08-06T21:20:02.8388594Z Args: 2024-08-06T21:20:02.8388735Z op (Union[OpOverload, List[OpOverload]]): 2024-08-06T21:20:02.8388928Z An op or a list of ops to register the customized sharding function. 2024-08-06T21:20:02.8389012Z 2024-08-06T21:20:02.8389101Z Returns: 2024-08-06T21:20:02.8389365Z A function decorator which can be used to wrap a function that defines the sharding 2024-08-06T21:20:02.8389689Z strategy for the operator specified in ``op``. The defined sharding strategy will be 2024-08-06T21:20:02.8389962Z registered to DTensor and will override the default sharding strategy if DTensor has 2024-08-06T21:20:02.8390260Z already implemented the operator. The customized sharding function takes the same inputs 2024-08-06T21:20:02.8390507Z as the original op (except that if an arg is a :class:`torch.Tensor`, it will be 2024-08-06T21:20:02.8390775Z replaced by a tensor-like object that DTensor uses internally). The function should 2024-08-06T21:20:02.8391045Z return a sequence of 2-tuples, each specifying acceptable output placements and its 2024-08-06T21:20:02.8391166Z corresponding intput placements. 2024-08-06T21:20:02.8391247Z 2024-08-06T21:20:02.8391331Z Example: 2024-08-06T21:20:02.8391452Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8391585Z >>> @register_sharding(aten._softmax.default) 2024-08-06T21:20:02.8391736Z >>> def custom_softmax_sharding(x, dim, half_to_float): 2024-08-06T21:20:02.8391883Z >>> softmax_dim = dim if dim >= 0 else dim + x.ndim 2024-08-06T21:20:02.8391989Z >>> acceptable_shardings = [] 2024-08-06T21:20:02.8392070Z >>> 2024-08-06T21:20:02.8392250Z >>> all_replicate = ([Replicate()], [Replicate(), None, None]) 2024-08-06T21:20:02.8392387Z >>> acceptable_shardings.append(all_replicate) 2024-08-06T21:20:02.8392476Z >>> 2024-08-06T21:20:02.8392591Z >>> for sharding_dim in range(x.ndim): 2024-08-06T21:20:02.8392703Z >>> if sharding_dim != softmax_dim: 2024-08-06T21:20:02.8392810Z >>> all_sharded = ( 2024-08-06T21:20:02.8392915Z >>> [Shard(sharding_dim)], 2024-08-06T21:20:02.8393038Z >>> [Shard(sharding_dim), None, None], 2024-08-06T21:20:02.8393132Z >>> ) 2024-08-06T21:20:02.8393271Z >>> acceptable_shardings.append(all_sharded) 2024-08-06T21:20:02.8393354Z >>> 2024-08-06T21:20:02.8393471Z >>> return acceptable_shardings 2024-08-06T21:20:02.8393551Z 2024-08-06T21:20:02.8393800Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8393885Z 2024-08-06T21:20:02.8393978Z warnings.warn(msg) 2024-08-06T21:20:02.8394053Z 2024-08-06T21:20:02.8394244Z --- Parse Warning: 39 / 100 --- 2024-08-06T21:20:02.8395357Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=post_localSGD_hook in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/post_localSGD_hook.py line=72. 2024-08-06T21:20:02.8395675Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8395754Z 2024-08-06T21:20:02.8395862Z Run post-localSGD algorithm. 2024-08-06T21:20:02.8395948Z 2024-08-06T21:20:02.8396187Z This DDP communication hook is used for running post-localSGD algorithm, 2024-08-06T21:20:02.8396341Z by combining with a model averaging component (e.g., 2024-08-06T21:20:02.8396671Z :class:`~torch.distributed.algorithms.model_averaging.averagers.PeriodicModelAverager`) 2024-08-06T21:20:02.8396781Z that runs after the optimizer step. 2024-08-06T21:20:02.8396858Z 2024-08-06T21:20:02.8396948Z Args: 2024-08-06T21:20:02.8397166Z state (PostLocalSGDState): State information to run post-localSGD. 2024-08-06T21:20:02.8397443Z Users mainly need to tune ``start_localSGD_iter`` to determine when to start local SGD. 2024-08-06T21:20:02.8397866Z bucket (dist.GradBucket): Bucket that stores a 1D flattened gradient tensor that batches multiple per-variable tensors. 2024-08-06T21:20:02.8398113Z Note that since DDP comm hook only supports single process single device mode, 2024-08-06T21:20:02.8398306Z only exactly one tensor is stored in this bucket. 2024-08-06T21:20:02.8398391Z 2024-08-06T21:20:02.8398474Z Returns: 2024-08-06T21:20:02.8398713Z Future handler of the communication, which updates the gradients in place. 2024-08-06T21:20:02.8398793Z 2024-08-06T21:20:02.8398887Z Example:: 2024-08-06T21:20:02.8398989Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8399240Z >>> state = PostLocalSGDState(process_group=process_group, subgroup=subgroup, 2024-08-06T21:20:02.8399354Z start_localSGD_iter=10) 2024-08-06T21:20:02.8399533Z >>> ddp_model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:20:02.8399862Z >>> # Also need to establish a model averaging module and run model averaging after ``optimizer.step()``. 2024-08-06T21:20:02.8400208Z >>> # Please refer to the examples in ``torch.distributed.algorithms.model_averaging.averagers`` module. 2024-08-06T21:20:02.8400296Z 2024-08-06T21:20:02.8400550Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8400627Z 2024-08-06T21:20:02.8400726Z warnings.warn(msg) 2024-08-06T21:20:02.8400804Z 2024-08-06T21:20:02.8400986Z --- Parse Warning: 40 / 100 --- 2024-08-06T21:20:02.8402065Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=powerSGD_hook in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/ddp_comm_hooks/powerSGD_hook.py line=342. 2024-08-06T21:20:02.8402322Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8402409Z 2024-08-06T21:20:02.8402513Z Implement PowerSGD algorithm. 2024-08-06T21:20:02.8402595Z 2024-08-06T21:20:02.8402825Z This DDP communication hook implements PowerSGD gradient compression 2024-08-06T21:20:02.8403063Z algorithm described in the `paper `_. 2024-08-06T21:20:02.8403302Z Once gradient tensors are aggregated across all workers, this hook applies 2024-08-06T21:20:02.8403412Z compression as follows: 2024-08-06T21:20:02.8403487Z 2024-08-06T21:20:02.8403923Z 1. Views the input flattened 1D gradient tensor as a list of per-parameter tensors, and divides all the tensors into two groups: 2024-08-06T21:20:02.8404009Z 2024-08-06T21:20:02.8404427Z 1.1 The tensors that should be compressed before allreduce, because the compression can give enough saving in bandwidth. 2024-08-06T21:20:02.8404506Z 2024-08-06T21:20:02.8404920Z 1.2 Rest of the tensors will be directly allreduced without compression, including all the vector tensors (for biases). 2024-08-06T21:20:02.8404998Z 2024-08-06T21:20:02.8405154Z 2. Handles uncompressed tensors: 2024-08-06T21:20:02.8405238Z 2024-08-06T21:20:02.8405753Z 2.1. Allocate contiguous memory for those uncompressed tensors, and allreduces all the uncompressed tensors as a batch, without compression; 2024-08-06T21:20:02.8405840Z 2024-08-06T21:20:02.8406177Z 2.2. Copies the individual uncompressed tensors from the contiguous memory back to the input tensor. 2024-08-06T21:20:02.8406254Z 2024-08-06T21:20:02.8406491Z 3. Handles the tensors that should be compressed by PowerSGD compression: 2024-08-06T21:20:02.8406566Z 2024-08-06T21:20:02.8406804Z 3.1. For each tensor M, creates two low-rank tensors P and Q for decomposing M, 2024-08-06T21:20:02.8407118Z such that M = PQ^T, where Q is initialized from a standard normal distribution and orthogonalized; 2024-08-06T21:20:02.8407196Z 2024-08-06T21:20:02.8407337Z 3.2. Computes each P in Ps, which is equal to MQ; 2024-08-06T21:20:02.8407422Z 2024-08-06T21:20:02.8407532Z 3.3. Allreduces Ps as a batch; 2024-08-06T21:20:02.8407610Z 2024-08-06T21:20:02.8407732Z 3.4. Orthogonalizes each P in Ps; 2024-08-06T21:20:02.8407811Z 2024-08-06T21:20:02.8408052Z 3.5. Computes each Q in Qs, which is approximately equal to M^TP; 2024-08-06T21:20:02.8408140Z 2024-08-06T21:20:02.8408245Z 3.6. Allreduces Qs as a batch; 2024-08-06T21:20:02.8408323Z 2024-08-06T21:20:02.8408624Z 3.7. Computes each M among all the compressed tensors, which is approximately equal to PQ^T. 2024-08-06T21:20:02.8408704Z 2024-08-06T21:20:02.8409114Z Note that this communication hook enforces vanilla allreduce for the first ``state.start_powerSGD_iter`` iterations. 2024-08-06T21:20:02.8409403Z This not only gives the user more control over the tradeoff between speedup and accuracy, 2024-08-06T21:20:02.8409836Z but also helps abstract away some complexity of the internal optimization of DDP for future communication hook developers. 2024-08-06T21:20:02.8409924Z 2024-08-06T21:20:02.8410007Z Args: 2024-08-06T21:20:02.8410444Z state (PowerSGDState): State information to configure the compression rate and support error feedback, warm start, etc. 2024-08-06T21:20:02.8410808Z To tune the compression configs, mainly need to tune ``matrix_approximation_rank``, ``start_powerSGD_iter`` 2024-08-06T21:20:02.8410917Z and ``min_compression_rate``. 2024-08-06T21:20:02.8411332Z bucket (dist.GradBucket): Bucket that stores a 1D flattened gradient tensor that batches multiple per-variable tensors. 2024-08-06T21:20:02.8411590Z Note that since DDP comm hook only supports single process single device mode, 2024-08-06T21:20:02.8411738Z only exactly one tensor is stored in this bucket. 2024-08-06T21:20:02.8411818Z 2024-08-06T21:20:02.8411908Z Returns: 2024-08-06T21:20:02.8412146Z Future handler of the communication, which updates the gradients in place. 2024-08-06T21:20:02.8412229Z 2024-08-06T21:20:02.8412323Z Example:: 2024-08-06T21:20:02.8412421Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8412701Z >>> state = PowerSGDState(process_group=process_group, matrix_approximation_rank=1, 2024-08-06T21:20:02.8412858Z start_powerSGD_iter=10, min_compression_rate=0.5) 2024-08-06T21:20:02.8413012Z >>> ddp_model.register_comm_hook(state, powerSGD_hook) 2024-08-06T21:20:02.8413096Z 2024-08-06T21:20:02.8413347Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8413427Z 2024-08-06T21:20:02.8413531Z warnings.warn(msg) 2024-08-06T21:20:02.8413610Z 2024-08-06T21:20:02.8413795Z --- Parse Warning: 41 / 100 --- 2024-08-06T21:20:02.8414987Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=PeriodicModelAverager in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/model_averaging/averagers.py line=36. 2024-08-06T21:20:02.8415309Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8415392Z 2024-08-06T21:20:02.8415583Z Averages parameters periodically after the warm-up stage. 2024-08-06T21:20:02.8415661Z 2024-08-06T21:20:02.8415917Z This can be used for running `post-local SGD `_, 2024-08-06T21:20:02.8416112Z by running :class:`~torch.nn.DistributedDataParallel` (DDP) 2024-08-06T21:20:02.8416346Z using the subgroups created by :meth:`~torch.distributed.new_subgroups`. 2024-08-06T21:20:02.8416433Z 2024-08-06T21:20:02.8416515Z Args: 2024-08-06T21:20:02.8416674Z period (int): The number of steps per model averaging. 2024-08-06T21:20:02.8416947Z Usually the period should be greater than ``1`` to reduce the communication cost. 2024-08-06T21:20:02.8417071Z Otherwise, only DDP needs to be used. 2024-08-06T21:20:02.8417279Z warmup_steps (int): The number of warm-up steps. During this stage, 2024-08-06T21:20:02.8417405Z model averaging is skipped. 2024-08-06T21:20:02.8417645Z process_group: The process group to be used for all-reduce. 2024-08-06T21:20:02.8417787Z If ``None``, the default process group, which 2024-08-06T21:20:02.8417982Z is created by :func:`torch.distributed.init_process_group`, 2024-08-06T21:20:02.8418095Z will be used. (default: ``None``) 2024-08-06T21:20:02.8418169Z 2024-08-06T21:20:02.8418265Z Example:: 2024-08-06T21:20:02.8418341Z 2024-08-06T21:20:02.8418464Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8418564Z >>> import torch 2024-08-06T21:20:02.8418679Z >>> import torch.distributed as dist 2024-08-06T21:20:02.8418996Z >>> import torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook as post_localSGD 2024-08-06T21:20:02.8419266Z >>> import torch.distributed.algorithms.model_averaging.averagers as averagers 2024-08-06T21:20:02.8419367Z >>> import torch.nn as nn 2024-08-06T21:20:02.8419455Z >>> 2024-08-06T21:20:02.8419627Z >>> dist.init_process_group("nccl", rank=rank, world_size=16) 2024-08-06T21:20:02.8419732Z >>> torch.cuda.set_device(rank) 2024-08-06T21:20:02.8419865Z >>> module = nn.Linear(1, 1, bias=False).cuda() 2024-08-06T21:20:02.8420011Z >>> model = nn.parallel.DistributedDataParallel( 2024-08-06T21:20:02.8420147Z >>> module, device_ids=[rank], output_device=rank 2024-08-06T21:20:02.8420232Z >>> ) 2024-08-06T21:20:02.8420374Z >>> # Register a post-localSGD communication hook. 2024-08-06T21:20:02.8420666Z >>> state = PostLocalSGDState(process_group=None, subgroup=None, start_localSGD_iter=100) 2024-08-06T21:20:02.8420828Z >>> model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:20:02.8420913Z >>> 2024-08-06T21:20:02.8421173Z >>> # In the first 100 steps, run global gradient averaging like normal DDP at every step. 2024-08-06T21:20:02.8421335Z >>> # After 100 steps, run model averaging every 4 steps. 2024-08-06T21:20:02.8421647Z >>> # Note that ``warmup_steps`` must be the same as ``start_localSGD_iter`` used in ``PostLocalSGDState``. 2024-08-06T21:20:02.8421899Z >>> averager = averagers.PeriodicModelAverager(period=4, warmup_steps=100) 2024-08-06T21:20:02.8421998Z >>> for step in range(0, 200): 2024-08-06T21:20:02.8422097Z >>> optimizer.zero_grad() 2024-08-06T21:20:02.8422214Z >>> loss = loss_fn(output, labels) 2024-08-06T21:20:02.8422307Z >>> loss.backward() 2024-08-06T21:20:02.8422405Z >>> optimizer.step() 2024-08-06T21:20:02.8422602Z >>> # Will average model parameters globally every 4 steps. Thus, 2024-08-06T21:20:02.8422800Z >>> # inter-node communication only occurs every 4 iterations after 2024-08-06T21:20:02.8422974Z >>> # the initial ``warmup_steps`` period. 2024-08-06T21:20:02.8423141Z >>> averager.average_parameters(model.parameters()) 2024-08-06T21:20:02.8423219Z 2024-08-06T21:20:02.8423470Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8423554Z 2024-08-06T21:20:02.8423645Z warnings.warn(msg) 2024-08-06T21:20:02.8423723Z 2024-08-06T21:20:02.8423922Z --- Parse Warning: 42 / 100 --- 2024-08-06T21:20:02.8425139Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=HierarchicalModelAverager in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/algorithms/model_averaging/hierarchical_model_averager.py line=18. 2024-08-06T21:20:02.8425406Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8425484Z 2024-08-06T21:20:02.8425818Z Runs hierarchical model averaging (`hierarchical SGD `_). 2024-08-06T21:20:02.8425905Z 2024-08-06T21:20:02.8426262Z Process groups of different sizes are organized in a hierarchy, and they average parameters 2024-08-06T21:20:02.8426466Z by using different periods concurrently after the warm-up stage. 2024-08-06T21:20:02.8426875Z This is an extension of :class:`~torch.distributed.algorithms.model_averaging.averagers.PeriodicModelAverager` 2024-08-06T21:20:02.8427210Z that supports `post-local SGD `_, which essentially only supports 2024-08-06T21:20:02.8427516Z a two-level hierarchy: the intra-machine level and the global level, where the intra-machine 2024-08-06T21:20:02.8427875Z level is usually embedded in :meth:`~torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook`. 2024-08-06T21:20:02.8428170Z Similarly, the process groups within this class do not have such an intra-machine process 2024-08-06T21:20:02.8428460Z subgroup, which should be embedded by the post-local SGD communication hook instead. 2024-08-06T21:20:02.8428538Z 2024-08-06T21:20:02.8428623Z Args: 2024-08-06T21:20:02.8428888Z period_group_size_dict: An ordered dict mapping keys of model averaging period to 2024-08-06T21:20:02.8429081Z process group size, used for initializing process groups of 2024-08-06T21:20:02.8429299Z different sizes in a hierarchy to average parameters concurrently. 2024-08-06T21:20:02.8429519Z Particularly, at each iteration, there will be at most a single 2024-08-06T21:20:02.8429745Z process group that runs averaging -- the period of such group should 2024-08-06T21:20:02.8429953Z have the largest period which the current step can be divided by. 2024-08-06T21:20:02.8430129Z For example, if the dict has three keys: 2, 4, and 8, 2024-08-06T21:20:02.8430334Z then this means totally three process groups will be created to 2024-08-06T21:20:02.8430552Z average parameters every 2, 4, and 8 iterations, respectively. 2024-08-06T21:20:02.8430737Z At the 4th iteration, only the second process group will run 2024-08-06T21:20:02.8430910Z averaging, because the first process group should be a 2024-08-06T21:20:02.8431137Z subset of the second process group, and no need to execute the first 2024-08-06T21:20:02.8431256Z process group redundantly. 2024-08-06T21:20:02.8431453Z On the other hand, the third process group can only be triggered 2024-08-06T21:20:02.8431680Z every 8 iterations, so it will not be triggered at the 4th iteration. 2024-08-06T21:20:02.8432064Z warmup_steps (int): The number of warm-up steps. During this stage, model averaging is skipped. 2024-08-06T21:20:02.8432518Z process_group (ProcessGroup, optional): The overall process group containing all the processes that runs model averaging. 2024-08-06T21:20:02.8432689Z If ``None``, the default process group, which is created 2024-08-06T21:20:02.8432888Z by :func:`torch.distributed.init_process_group`, will be used. 2024-08-06T21:20:02.8433019Z (default: ``None``) 2024-08-06T21:20:02.8433095Z 2024-08-06T21:20:02.8433179Z Example:: 2024-08-06T21:20:02.8433305Z >>> # xdoctest: +SKIP('undefined rank') 2024-08-06T21:20:02.8433420Z >>> from collections import OrderedDict 2024-08-06T21:20:02.8433510Z >>> import torch 2024-08-06T21:20:02.8433639Z >>> import torch.distributed as dist 2024-08-06T21:20:02.8433914Z >>> from torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook import ( 2024-08-06T21:20:02.8434016Z >>> PostLocalSGDState, 2024-08-06T21:20:02.8434175Z >>> post_localSGD_hook, 2024-08-06T21:20:02.8434254Z >>> ) 2024-08-06T21:20:02.8434635Z >>> import torch.distributed.algorithms.model_averaging.hierarchical_model_averager as hierarchicalSGD 2024-08-06T21:20:02.8434732Z >>> import torch.nn as nn 2024-08-06T21:20:02.8434811Z >>> 2024-08-06T21:20:02.8434998Z >>> dist.init_process_group("nccl", rank=rank, world_size=16) 2024-08-06T21:20:02.8435101Z >>> torch.cuda.set_device(rank) 2024-08-06T21:20:02.8435227Z >>> module = nn.Linear(1, 1, bias=False).to(rank) 2024-08-06T21:20:02.8435389Z >>> model = nn.parallel.DistributedDataParallel( 2024-08-06T21:20:02.8435525Z >>> module, device_ids=[rank], output_device=rank 2024-08-06T21:20:02.8435603Z >>> ) 2024-08-06T21:20:02.8435760Z >>> # Register a post-localSGD communication hook. 2024-08-06T21:20:02.8436032Z >>> # Assume that each machine has 4 GPUs, then each intra-machine subgroup has a size of 4. 2024-08-06T21:20:02.8436150Z >>> subgroup, _ = dist.new_subgroups() 2024-08-06T21:20:02.8436469Z >>> state = PostLocalSGDState(process_group=None, subgroup=subgroup, start_localSGD_iter=100) 2024-08-06T21:20:02.8436627Z >>> model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:20:02.8436707Z >>> 2024-08-06T21:20:02.8436999Z >>> # Average parameters among each group of 8 processes every 4 iterations, and among all 2024-08-06T21:20:02.8437112Z >>> # the 16 processes every 16 iterations. 2024-08-06T21:20:02.8437300Z >>> averager = hierarchicalSGD.HierarchicalModelAverager( 2024-08-06T21:20:02.8437532Z >>> period_group_size_dict=OrderedDict([(4, 8), (16, 16)]), warmup_steps=100) 2024-08-06T21:20:02.8437843Z >>> # Note that ``warmup_steps`` must be the same as ``start_localSGD_iter`` used in ``PostLocalSGDState``. 2024-08-06T21:20:02.8438117Z >>> # In the first 100 steps, run global gradient averaging like normal DDP at every step. 2024-08-06T21:20:02.8438273Z >>> # After 100 steps, run model averaging at two levels. 2024-08-06T21:20:02.8438375Z >>> for step in range(0, 200): 2024-08-06T21:20:02.8438485Z >>> optimizer.zero_grad() 2024-08-06T21:20:02.8438596Z >>> loss = loss_fn(output, labels) 2024-08-06T21:20:02.8438689Z >>> loss.backward() 2024-08-06T21:20:02.8438795Z >>> optimizer.step() 2024-08-06T21:20:02.8438944Z >>> # Average parameters after ``optimizer.step()``. 2024-08-06T21:20:02.8439225Z >>> # Thus, the inter-node communication only occurs periodically after ``warmup_steps``. 2024-08-06T21:20:02.8439388Z >>> averager.average_parameters(model.parameters()) 2024-08-06T21:20:02.8439468Z 2024-08-06T21:20:02.8439559Z .. warning :: 2024-08-06T21:20:02.8439888Z The last group size in the dict must be the size of the provided ``process_group``, 2024-08-06T21:20:02.8440122Z which indicates model averaging at the highest level of the hierarchy. 2024-08-06T21:20:02.8440426Z If ``process_group`` is not provided, then the last group size should be equal to the world size. 2024-08-06T21:20:02.8440503Z 2024-08-06T21:20:02.8440591Z .. warning :: 2024-08-06T21:20:02.8440826Z `HierarchicalModelAverager` is experimental and subject to change. 2024-08-06T21:20:02.8440904Z 2024-08-06T21:20:02.8441155Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8441246Z 2024-08-06T21:20:02.8441341Z warnings.warn(msg) 2024-08-06T21:20:02.8441419Z 2024-08-06T21:20:02.8441616Z --- Parse Warning: 43 / 100 --- 2024-08-06T21:20:02.8442693Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=BroadcastingTorchSaveReader in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/format_utils.py line=40. 2024-08-06T21:20:02.8443012Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8443092Z 2024-08-06T21:20:02.8443383Z StorageReader for reading a Torch Save file. This reader will read the entire checkpoint 2024-08-06T21:20:02.8443638Z on the coordinator rank, and then broadcast and shard each tensor to all ranks. 2024-08-06T21:20:02.8443718Z 2024-08-06T21:20:02.8443878Z . N.B. Intended to be used with DynamicMetaLoadPlanner 2024-08-06T21:20:02.8443967Z 2024-08-06T21:20:02.8444054Z .. warning:: 2024-08-06T21:20:02.8444224Z Current implementation only supports loading Tensors. 2024-08-06T21:20:02.8444314Z 2024-08-06T21:20:02.8444427Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8444522Z >>> sd = {"mode": model} 2024-08-06T21:20:02.8444619Z >>> dcp.load( 2024-08-06T21:20:02.8444703Z >>> sd, 2024-08-06T21:20:02.8444851Z >>> storage_reader=BroadcastingTorchSaveReader(), 2024-08-06T21:20:02.8444982Z >>> planner=DynamicMetaLoadPlanner(), 2024-08-06T21:20:02.8445096Z >>> checkpoint_id="path_to_model.pt" 2024-08-06T21:20:02.8445178Z >>> ) 2024-08-06T21:20:02.8445263Z 2024-08-06T21:20:02.8445513Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8445593Z 2024-08-06T21:20:02.8445695Z warnings.warn(msg) 2024-08-06T21:20:02.8445775Z 2024-08-06T21:20:02.8445955Z --- Parse Warning: 44 / 100 --- 2024-08-06T21:20:02.8447020Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=DynamicMetaLoadPlanner in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/format_utils.py line=151. 2024-08-06T21:20:02.8447282Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8447374Z 2024-08-06T21:20:02.8447740Z Extension of DefaultLoadPlanner, which creates a new Metadata object based on the passed in state dict, 2024-08-06T21:20:02.8448061Z avoiding the need to read metadata from disk. This is useful when reading formats which don't have a 2024-08-06T21:20:02.8448183Z metadata file, like Torch Save files. 2024-08-06T21:20:02.8448265Z 2024-08-06T21:20:02.8448441Z . N.B. Intended to be used with BroadcastingTorchSaveReader 2024-08-06T21:20:02.8448530Z 2024-08-06T21:20:02.8448617Z .. warning:: 2024-08-06T21:20:02.8448788Z Current implementation only supports loading Tensors. 2024-08-06T21:20:02.8448882Z 2024-08-06T21:20:02.8448994Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8449088Z >>> sd = {"mode": model} 2024-08-06T21:20:02.8449182Z >>> dcp.load( 2024-08-06T21:20:02.8449264Z >>> sd, 2024-08-06T21:20:02.8449459Z >>> storage_reader=BroadcastingTorchSaveReader(), 2024-08-06T21:20:02.8449588Z >>> planner=DynamicMetaLoadPlanner(), 2024-08-06T21:20:02.8449705Z >>> checkpoint_id="path_to_model.pt" 2024-08-06T21:20:02.8449787Z >>> ) 2024-08-06T21:20:02.8449875Z 2024-08-06T21:20:02.8450125Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8450203Z 2024-08-06T21:20:02.8450306Z warnings.warn(msg) 2024-08-06T21:20:02.8450385Z 2024-08-06T21:20:02.8450559Z --- Parse Warning: 45 / 100 --- 2024-08-06T21:20:02.8452266Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=load_sharded_optimizer_state_dict in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/optimizer.py line=220. 2024-08-06T21:20:02.8452523Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8452620Z 2024-08-06T21:20:02.8452827Z Load a state_dict in conjunction with FSDP sharded optimizer state. 2024-08-06T21:20:02.8452909Z 2024-08-06T21:20:02.8453142Z This is the current recommended way to checkpoint FSDP. 2024-08-06T21:20:02.8453239Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8453390Z >>> import torch.distributed.checkpoint as dist_cp 2024-08-06T21:20:02.8453485Z >>> # Save 2024-08-06T21:20:02.8453584Z >>> model: torch.nn.Model 2024-08-06T21:20:02.8453700Z >>> optim_params = model.parameters() 2024-08-06T21:20:02.8453849Z >>> optim = torch.optim.SGD(optim_params, lr=0.01) 2024-08-06T21:20:02.8453931Z >>> # Save 2024-08-06T21:20:02.8454145Z >>> with FSDP.state_dict_type(model, StateDictType.SHARDED_STATE_DICT): 2024-08-06T21:20:02.8454245Z >>> state_dict = { 2024-08-06T21:20:02.8454489Z >>> "optimizer": FSDP.optim_state_dict(model, optim), 2024-08-06T21:20:02.8472137Z >>> "model": model.state_dict() 2024-08-06T21:20:02.8472241Z >>> } 2024-08-06T21:20:02.8472350Z >>> dist_cp.save_state_dict( 2024-08-06T21:20:02.8472454Z >>> state_dict=optim_state, 2024-08-06T21:20:02.8472650Z >>> storage_writer=dist_cp.FileSystemWriter("checkpoint"), 2024-08-06T21:20:02.8472780Z >>> planner=dist_cp.DefaultSavePlanner(), 2024-08-06T21:20:02.8472860Z >>> ) 2024-08-06T21:20:02.8472945Z >>> 2024-08-06T21:20:02.8473026Z >>> # Load 2024-08-06T21:20:02.8473254Z >>> with FSDP.state_dict_type(model_tp, StateDictType.SHARDED_STATE_DICT): 2024-08-06T21:20:02.8473386Z >>> model_state_dict = model_tp.state_dict() 2024-08-06T21:20:02.8473480Z >>> checkpoint = { 2024-08-06T21:20:02.8473585Z >>> "model": model_state_dict 2024-08-06T21:20:02.8473674Z >>> } 2024-08-06T21:20:02.8473774Z >>> dist_cp.load_state_dict( 2024-08-06T21:20:02.8473876Z >>> state_dict=checkpoint, 2024-08-06T21:20:02.8474096Z >>> storage_reader=dist_cp.FileSystemReader(checkpoint_file), 2024-08-06T21:20:02.8474236Z >>> planner=dist_cp.DefaultLoadPlanner(), 2024-08-06T21:20:02.8474315Z >>> ) 2024-08-06T21:20:02.8474467Z >>> model.load_state_dict(checkpoint["model_state"]) 2024-08-06T21:20:02.8474557Z >>> 2024-08-06T21:20:02.8474726Z >>> optim_state = dist_cp.load_sharded_optimizer_state_dict( 2024-08-06T21:20:02.8474822Z >>> model_state_dict, 2024-08-06T21:20:02.8474942Z >>> optimizer_key="optimizer", 2024-08-06T21:20:02.8475115Z >>> storage_reader=dist_cp.FileSystemReader("checkpoint"), 2024-08-06T21:20:02.8475196Z >>> ) 2024-08-06T21:20:02.8475287Z >>> 2024-08-06T21:20:02.8475429Z >>> flattened_osd = FSDP.optim_state_dict_to_load( 2024-08-06T21:20:02.8475552Z >>> model, optim, optim_state["optimizer"] 2024-08-06T21:20:02.8475643Z >>> ) 2024-08-06T21:20:02.8475724Z >>> 2024-08-06T21:20:02.8475845Z >>> optim.load_state_dict(flattened_osd) 2024-08-06T21:20:02.8476009Z 2024-08-06T21:20:02.8476262Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8476343Z 2024-08-06T21:20:02.8476454Z warnings.warn(msg) 2024-08-06T21:20:02.8476535Z 2024-08-06T21:20:02.8476769Z --- Parse Warning: 46 / 100 --- 2024-08-06T21:20:02.8477748Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=SavePlanner in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/planner.py line=110. 2024-08-06T21:20:02.8478008Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8478099Z 2024-08-06T21:20:02.8478384Z Abstract class defining the protocol used by save_state_dict to plan the save process. 2024-08-06T21:20:02.8478462Z 2024-08-06T21:20:02.8478765Z SavePlanners are stateful objects that can be used to customize the whole save process. 2024-08-06T21:20:02.8478851Z 2024-08-06T21:20:02.8479124Z SavePlanner acts as an access proxy to the state_dict, so any transformation done to it 2024-08-06T21:20:02.8479318Z will be visible to the whole process. 2024-08-06T21:20:02.8479398Z 2024-08-06T21:20:02.8479673Z A planner subclass can expect the following sequence of calls during save_state_dict: 2024-08-06T21:20:02.8479765Z 2024-08-06T21:20:02.8479885Z 1) set_up_planner - called on all ranks. 2024-08-06T21:20:02.8480005Z Signals the start of a checkpoint save. 2024-08-06T21:20:02.8480094Z 2024-08-06T21:20:02.8480216Z 2) create_local_plan - called on all ranks. 2024-08-06T21:20:02.8480503Z Process the state_dict and produces a `SavePlan` that will be sent for global planning. 2024-08-06T21:20:02.8480593Z 2024-08-06T21:20:02.8480773Z 3) create_global_plan - called on the coordinator rank only. 2024-08-06T21:20:02.8481038Z Takes the SavePlan from all ranks and make any global decision. 2024-08-06T21:20:02.8481127Z 2024-08-06T21:20:02.8481236Z 4) finish_plan - called on all ranks. 2024-08-06T21:20:02.8481463Z This gives each rank a chance to adjust to global planning decisions. 2024-08-06T21:20:02.8481542Z 2024-08-06T21:20:02.8481691Z 5) resolve_data - called multiple times on each rank 2024-08-06T21:20:02.8481901Z Lookups a value on the `state_dict` for the storage layer to write. 2024-08-06T21:20:02.8481980Z 2024-08-06T21:20:02.8482283Z Users are recommended to extend DefaultSavePlanner instead of this interface directly as 2024-08-06T21:20:02.8482474Z most changes can be expressed by changes in a single method. 2024-08-06T21:20:02.8482553Z 2024-08-06T21:20:02.8482672Z There are 3 usual patterns of extension: 2024-08-06T21:20:02.8482762Z 2024-08-06T21:20:02.8483013Z Rewriting state_dict. This is the simplest way to extend the save process as it 2024-08-06T21:20:02.8483239Z doesn't requite understanding the intrincacies of how SavePlan works: 2024-08-06T21:20:02.8483330Z 2024-08-06T21:20:02.8483441Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8483575Z >>> class RenamePlanner(DefaultSavePlanner): 2024-08-06T21:20:02.8483682Z >>> def set_up_planner( 2024-08-06T21:20:02.8483765Z >>> self, 2024-08-06T21:20:02.8483874Z >>> state_dict: STATE_DICT_TYPE, 2024-08-06T21:20:02.8484006Z >>> storage_meta: Optional[StorageMeta], 2024-08-06T21:20:02.8484108Z >>> is_coordinator: bool, 2024-08-06T21:20:02.8484194Z >>> ) -> None: 2024-08-06T21:20:02.8484313Z >>> # prefix all keys with `foo_`` 2024-08-06T21:20:02.8484606Z >>> super().set_up_planner({"foo_" + k: v for k, v in state_dict.items()}, storage_meta, is_coordinator) 2024-08-06T21:20:02.8484693Z 2024-08-06T21:20:02.8485025Z Modifying local plan and lookup in tandem. This is useful when fine control of how data is persisted 2024-08-06T21:20:02.8485133Z 2024-08-06T21:20:02.8485253Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8485378Z >>> class FP16Planner(DefaultSavePlanner): 2024-08-06T21:20:02.8485489Z >>> def create_local_plan(self): 2024-08-06T21:20:02.8485617Z >>> plan = super().create_local_plan() 2024-08-06T21:20:02.8485710Z >>> for p in plan: 2024-08-06T21:20:02.8485824Z >>> if p.tensor_data is not None: 2024-08-06T21:20:02.8485991Z >>> p.tensor_data.properties.dtype = torch.float16 2024-08-06T21:20:02.8486081Z >>> return plan 2024-08-06T21:20:02.8486158Z >>> 2024-08-06T21:20:02.8486284Z >>> def resolve_data(self, write_item): 2024-08-06T21:20:02.8486405Z >>> item = super().resolve_data(write_item) 2024-08-06T21:20:02.8486677Z >>> return item if write_item.type == WriteItemType.BYTE_IO else item.to(torch.float16) 2024-08-06T21:20:02.8486772Z 2024-08-06T21:20:02.8487109Z Using the global planning step to make central decisions that can't be made individually by each rank 2024-08-06T21:20:02.8487191Z 2024-08-06T21:20:02.8487311Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8487464Z >>> from itertools import islice 2024-08-06T21:20:02.8487573Z >>> from dataclasses import replace 2024-08-06T21:20:02.8487744Z >>> class DDPLoadBalancingPlanner(DefaultSavePlanner): 2024-08-06T21:20:02.8488020Z >>> # This uses the default local plan behavior of having all non-sharded writes in rank 0 2024-08-06T21:20:02.8488155Z >>> # This sample doesn't handle ShardedTensors 2024-08-06T21:20:02.8488281Z >>> def create_global_plan(self, all_plans): 2024-08-06T21:20:02.8488377Z >>> def chunk(it, size): 2024-08-06T21:20:02.8488475Z >>> it = iter(it) 2024-08-06T21:20:02.8488644Z >>> return list(iter(lambda: tuple(islice(it, size)), ())) 2024-08-06T21:20:02.8488774Z >>> all_plans = [ 2024-08-06T21:20:02.8488926Z >>> replace(plan, items=items) for plan, items in 2024-08-06T21:20:02.8489104Z >>> zip(all_plans, chunk(all_plans[0].items, len(all_plans))) 2024-08-06T21:20:02.8489191Z >>> ] 2024-08-06T21:20:02.8489339Z >>> return super().create_global_plan(all_plans) 2024-08-06T21:20:02.8489420Z 2024-08-06T21:20:02.8489685Z Finally, some planners need to save additional metadata in the checkpoint, this is 2024-08-06T21:20:02.8489963Z accomplished by having each rank contribute their data items in the local plan and 2024-08-06T21:20:02.8490073Z the global planner aggregate them: 2024-08-06T21:20:02.8490153Z 2024-08-06T21:20:02.8490273Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8490425Z >>> class SaveExtraDataPlanner(DefaultSavePlanner): 2024-08-06T21:20:02.8490550Z >>> def create_local_plan(self) -> SavePlan: 2024-08-06T21:20:02.8490676Z >>> plan = super().create_local_plan() 2024-08-06T21:20:02.8490839Z >>> return replace(plan, planner_data="per-rank-data") 2024-08-06T21:20:02.8490934Z >>> 2024-08-06T21:20:02.8491232Z >>> def create_global_plan(self, all_plans: List[SavePlan]) -> Tuple[List[SavePlan], Metadata]: 2024-08-06T21:20:02.8491424Z >>> global_plan, metadata = super().create_global_plan(all_plans) 2024-08-06T21:20:02.8491591Z >>> merged_data = [p.planner_data for p in global_plan] 2024-08-06T21:20:02.8491756Z >>> metadata = replace(metadata, planner_data=merged_data) 2024-08-06T21:20:02.8491863Z >>> return global_plan, metadata 2024-08-06T21:20:02.8491951Z 2024-08-06T21:20:02.8492202Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8492281Z 2024-08-06T21:20:02.8492390Z warnings.warn(msg) 2024-08-06T21:20:02.8492469Z 2024-08-06T21:20:02.8492662Z --- Parse Warning: 47 / 100 --- 2024-08-06T21:20:02.8493640Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=LoadPlanner in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/planner.py line=275. 2024-08-06T21:20:02.8493934Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8494026Z 2024-08-06T21:20:02.8494420Z Abstract class defining the protocol used by load_state_dict to plan the load process. 2024-08-06T21:20:02.8494502Z 2024-08-06T21:20:02.8494804Z LoadPlanner are stateful objects that can be used to customize the whole load process. 2024-08-06T21:20:02.8494884Z 2024-08-06T21:20:02.8495161Z LoadPlanner acts as an access proxy to the state_dict, so any transformation done to it 2024-08-06T21:20:02.8495290Z will be visible to the whole process. 2024-08-06T21:20:02.8495368Z 2024-08-06T21:20:02.8495641Z A planner subclass can expect the following sequence of calls during load_state_dict: 2024-08-06T21:20:02.8495736Z 2024-08-06T21:20:02.8495855Z 1) set_up_planner - called on all ranks. 2024-08-06T21:20:02.8495981Z Signals the start of loading a checkpoint. 2024-08-06T21:20:02.8496069Z 2024-08-06T21:20:02.8496244Z 2) create_local_plan - called on all ranks. 2024-08-06T21:20:02.8496529Z Process the state_dict and produces a `LoadPlan` that will be sent for global planning. 2024-08-06T21:20:02.8496619Z 2024-08-06T21:20:02.8496798Z 3) create_global_plan - called on the coordinator rank only. 2024-08-06T21:20:02.8496993Z Takes the LoadPlan from all ranks and make any global decision. 2024-08-06T21:20:02.8497081Z 2024-08-06T21:20:02.8497221Z 4) load_bytes - called multiple times on each rank 2024-08-06T21:20:02.8497383Z This is called once per non-tensor value in state_dict. 2024-08-06T21:20:02.8497472Z 2024-08-06T21:20:02.8497691Z 5) resolve_tensor and commit_tensor - called multiple times on each rank 2024-08-06T21:20:02.8497914Z They are called in pair for each Tensor value in state_dict. 2024-08-06T21:20:02.8497993Z 2024-08-06T21:20:02.8498295Z Users are recommended to extend DefaultLoadPlanner instead of this interface directly as 2024-08-06T21:20:02.8498489Z most changes can be expressed by changes in a single method. 2024-08-06T21:20:02.8498564Z 2024-08-06T21:20:02.8498688Z There are two usual patterns of extension: 2024-08-06T21:20:02.8498776Z 2024-08-06T21:20:02.8499025Z Rewriting state_dict. This is the simplest way to extend the load process as it 2024-08-06T21:20:02.8499274Z doesn't requite understanding the intrincacies of how LoadPlan works. We need 2024-08-06T21:20:02.8499506Z to keep a reference to the original state_dict as load happens in place so 2024-08-06T21:20:02.8499627Z we need to be able to perform it in place 2024-08-06T21:20:02.8499706Z 2024-08-06T21:20:02.8499830Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8499962Z >>> class RenamePlanner(DefaultLoadPlanner): 2024-08-06T21:20:02.8500062Z >>> def set_up_planner( 2024-08-06T21:20:02.8500151Z >>> self, 2024-08-06T21:20:02.8500261Z >>> state_dict: STATE_DICT_TYPE, 2024-08-06T21:20:02.8500361Z >>> metadata: Metadata, 2024-08-06T21:20:02.8500472Z >>> is_coordinator: bool, 2024-08-06T21:20:02.8500558Z >>> ) -> None: 2024-08-06T21:20:02.8500678Z >>> self.original_state_dict = state_dict 2024-08-06T21:20:02.8500860Z >>> state_dict = {"foo_" + k: v for k, v in state_dict.items()} 2024-08-06T21:20:02.8500940Z >>> 2024-08-06T21:20:02.8501064Z >>> if self.flatten_sharded_tensors: 2024-08-06T21:20:02.8501214Z >>> state_dict = _flatten_sharded_tensors(state_dict) 2024-08-06T21:20:02.8501294Z >>> 2024-08-06T21:20:02.8501409Z >>> if self.flatten_state_dict: 2024-08-06T21:20:02.8501591Z >>> state_dict, self.mappings = flatten_state_dict(state_dict) 2024-08-06T21:20:02.8501717Z >>> 2024-08-06T21:20:02.8501835Z >>> self.state_dict = state_dict 2024-08-06T21:20:02.8501939Z >>> self.metadata = metadata 2024-08-06T21:20:02.8502063Z >>> self.is_coordinator = is_coordinator 2024-08-06T21:20:02.8502152Z >>> 2024-08-06T21:20:02.8502270Z >>> def load_bytes(self, read_item, value): 2024-08-06T21:20:02.8502374Z >>> # Remove the "foo_" prefix 2024-08-06T21:20:02.8502704Z >>> self.original_state_dict[read_item.dest_index.fqn[4:]] = torch.load(value, weights_only=False) 2024-08-06T21:20:02.8502782Z 2024-08-06T21:20:02.8502860Z 2024-08-06T21:20:02.8503130Z Modifying resolve_tensor and commit_tensor to handle load time transformation. 2024-08-06T21:20:02.8503209Z 2024-08-06T21:20:02.8503321Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8503488Z >>> class MetaModelMaterialize(DefaultSavePlanner): 2024-08-06T21:20:02.8503605Z >>> def resolve_tensor(self, read_item): 2024-08-06T21:20:02.8503736Z >>> tensor = super().resolve_tensor(read_item) 2024-08-06T21:20:02.8503887Z >>> return torch.empty_like(tensor, device="cpu") 2024-08-06T21:20:02.8504015Z >>> 2024-08-06T21:20:02.8504151Z >>> def commit_tensor(self, read_item, tensor): 2024-08-06T21:20:02.8504305Z >>> self.state_dict[read_item.dest_index.fqn] = tensor 2024-08-06T21:20:02.8504384Z 2024-08-06T21:20:02.8504638Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8504714Z 2024-08-06T21:20:02.8504808Z warnings.warn(msg) 2024-08-06T21:20:02.8504900Z 2024-08-06T21:20:02.8505102Z --- Parse Warning: 48 / 100 --- 2024-08-06T21:20:02.8506073Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict_loader.py line=61. 2024-08-06T21:20:02.8506378Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8506457Z 2024-08-06T21:20:02.8506603Z Load a distributed ``state_dict`` in SPMD style. 2024-08-06T21:20:02.8506691Z 2024-08-06T21:20:02.8506874Z Each rank will try to read the least amount of data necessary 2024-08-06T21:20:02.8507112Z to fullfill the requested `state_dict`. When loading :class:`ShardedTensor` 2024-08-06T21:20:02.8507366Z or :class:`DTensor` instances, each rank only reads data for their local shards. 2024-08-06T21:20:02.8507444Z 2024-08-06T21:20:02.8507700Z For each ``Stateful`` object (having both a ``state_dict`` and a ``load_state_dict``), 2024-08-06T21:20:02.8507962Z load will first call ``state_dict`` before attempting deserialization, followed by 2024-08-06T21:20:02.8508126Z ``load_state_dict`` once the deserialization is complete. 2024-08-06T21:20:02.8508215Z 2024-08-06T21:20:02.8508309Z .. warning:: 2024-08-06T21:20:02.8508474Z All tensors in ``state_dict`` must be allocated on their 2024-08-06T21:20:02.8508644Z destination device *prior to* calling this function. 2024-08-06T21:20:02.8508722Z 2024-08-06T21:20:02.8508951Z All non-tensor data is loaded using `torch.load()` and modified in place 2024-08-06T21:20:02.8509047Z on state_dict. 2024-08-06T21:20:02.8509126Z 2024-08-06T21:20:02.8509214Z .. warning:: 2024-08-06T21:20:02.8509427Z Users must call `load_state_dict` on the root module to ensure load 2024-08-06T21:20:02.8509603Z pos-processing and non-tensor data properly propagates. 2024-08-06T21:20:02.8509680Z 2024-08-06T21:20:02.8509773Z .. note: 2024-08-06T21:20:02.8509994Z If no process group is initialized, this function will assume the intent 2024-08-06T21:20:02.8510214Z is to load a checkpoint into the local process. This can be useful in the 2024-08-06T21:20:02.8510472Z case of local inference, and when using regular Tensors (as opposed to DTensor 2024-08-06T21:20:02.8510596Z or ShardedTensor) 2024-08-06T21:20:02.8510674Z 2024-08-06T21:20:02.8510765Z .. note: 2024-08-06T21:20:02.8510902Z Rank 0 is assumed to be the coordinator rank. 2024-08-06T21:20:02.8510980Z 2024-08-06T21:20:02.8511073Z Args: 2024-08-06T21:20:02.8511223Z state_dict (Dict[str, Any]): The state_dict to save. 2024-08-06T21:20:02.8511376Z checkpoint_id (Union[str, os.PathLike, None]): 2024-08-06T21:20:02.8511581Z The ID of this checkpoint instance. The meaning of the checkpoint_id 2024-08-06T21:20:02.8511780Z depends on the storage. It can be a path to a folder or to a file. 2024-08-06T21:20:02.8511958Z It can also be a key if the storage is a key-value store. 2024-08-06T21:20:02.8512053Z (Default: ``None``) 2024-08-06T21:20:02.8512179Z storage_reader (Optional[StorageReader]): 2024-08-06T21:20:02.8512395Z Instance of StorageWriter used to perform reads. If this is not 2024-08-06T21:20:02.8512596Z specified, DCP will automatically infer the reader based on the 2024-08-06T21:20:02.8512842Z checkpoint_id. If checkpoint_id is also None, an exception will 2024-08-06T21:20:02.8512960Z be raised. (Default: ``None``) 2024-08-06T21:20:02.8513072Z planner (Optional[LoadPlanner]): 2024-08-06T21:20:02.8513269Z Instance of LoadPlanner. If this is not specificed, the default 2024-08-06T21:20:02.8513401Z planner will be used. (Default: ``None``) 2024-08-06T21:20:02.8513525Z process_group (Optional[ProcessGroup]): 2024-08-06T21:20:02.8513703Z ProcessGroup to be used for cross-rank synchronization. 2024-08-06T21:20:02.8513804Z (Default: ``None``) 2024-08-06T21:20:02.8513882Z 2024-08-06T21:20:02.8513976Z Returns: 2024-08-06T21:20:02.8514058Z None. 2024-08-06T21:20:02.8514168Z 2024-08-06T21:20:02.8514262Z Examples 2024-08-06T21:20:02.8514360Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8514457Z >>> my_model = MyModule() 2024-08-06T21:20:02.8514600Z >>> optimizer = Adagrad(my_model.parameters()) 2024-08-06T21:20:02.8514729Z >>> model_state_dict = my_model.state_dict() 2024-08-06T21:20:02.8515023Z >>> fs_storage_reader = torch.distributed.checkpoint.FileSystemReader("/checkpoint/1") 2024-08-06T21:20:02.8515108Z 2024-08-06T21:20:02.8515259Z >>> torch.distributed.checkpoint.load_state_dict( 2024-08-06T21:20:02.8515368Z >>> state_dict=model_state_dict, 2024-08-06T21:20:02.8515489Z >>> storage_reader=fs_storage_reader, 2024-08-06T21:20:02.8515571Z >>> ) 2024-08-06T21:20:02.8515650Z 2024-08-06T21:20:02.8515851Z >>> # module.load_state_dict() function might have customized steps 2024-08-06T21:20:02.8515976Z >>> # to flush the state_dict, must call it to 2024-08-06T21:20:02.8516080Z >>> # ensure correct behavior. 2024-08-06T21:20:02.8516217Z >>> my_model.load_state_dict(model_state_dict) 2024-08-06T21:20:02.8516296Z 2024-08-06T21:20:02.8516381Z .. note:: 2024-08-06T21:20:02.8516598Z load_state_dict uses collectives to coordinate reads across ranks. 2024-08-06T21:20:02.8516808Z For NCCL-based process groups, internal tensor representations of 2024-08-06T21:20:02.8517033Z objects must be moved to the GPU device before communication takes place. 2024-08-06T21:20:02.8517260Z In this case, the device used is given by ``torch.cuda.current_device()`` 2024-08-06T21:20:02.8517482Z and it is the user's responsibility to ensure that this is set so that each 2024-08-06T21:20:02.8517671Z rank has an individual GPU, via ``torch.cuda.set_device()``. 2024-08-06T21:20:02.8517748Z 2024-08-06T21:20:02.8517996Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8518084Z 2024-08-06T21:20:02.8518174Z warnings.warn(msg) 2024-08-06T21:20:02.8518295Z 2024-08-06T21:20:02.8518485Z --- Parse Warning: 49 / 100 --- 2024-08-06T21:20:02.8519459Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=save in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict_saver.py line=67. 2024-08-06T21:20:02.8519733Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8519810Z 2024-08-06T21:20:02.8519942Z Save a distributed model in SPMD style. 2024-08-06T21:20:02.8520020Z 2024-08-06T21:20:02.8520207Z This function is different from ``torch.save()`` as it handles 2024-08-06T21:20:02.8520469Z ``ShardedTensor`` , and ``DTensor`` by having each rank only save their local shards. 2024-08-06T21:20:02.8520550Z 2024-08-06T21:20:02.8520802Z For each ``Stateful`` object (having both a ``state_dict`` and a ``load_state_dict``), 2024-08-06T21:20:02.8520963Z save will call ``state_dict`` before serialization. 2024-08-06T21:20:02.8521041Z 2024-08-06T21:20:02.8521130Z .. warning:: 2024-08-06T21:20:02.8521427Z There is no guarantees of Backwards Compatibility across PyTorch versions 2024-08-06T21:20:02.8521527Z for saved state_dicts. 2024-08-06T21:20:02.8521603Z 2024-08-06T21:20:02.8521695Z .. warning:: 2024-08-06T21:20:02.8521902Z If using the `process_group` argument, make sure that only its ranks 2024-08-06T21:20:02.8522104Z call `save_state_dict` and that all data in state_dict belong to it. 2024-08-06T21:20:02.8522189Z 2024-08-06T21:20:02.8522272Z .. note:: 2024-08-06T21:20:02.8522525Z When saving checkpoint for FSDP's `ShardingStrategy.HYBRID_SHARD`, only one of 2024-08-06T21:20:02.8522792Z the shard_group should be calling `save_state_dict` and the corresponding process 2024-08-06T21:20:02.8522895Z group needs to be passed in. 2024-08-06T21:20:02.8523014Z 2024-08-06T21:20:02.8523104Z .. note:: 2024-08-06T21:20:02.8523367Z If no process group is available, this function assumes the intention is to save the 2024-08-06T21:20:02.8523490Z state_dict in the local process. 2024-08-06T21:20:02.8523570Z 2024-08-06T21:20:02.8523650Z .. note: 2024-08-06T21:20:02.8523796Z Rank 0 is assumed to be the coordinator rank. 2024-08-06T21:20:02.8523879Z 2024-08-06T21:20:02.8523955Z 2024-08-06T21:20:02.8524046Z Args: 2024-08-06T21:20:02.8524195Z state_dict (Dict[str, Any]): The state_dict to save. 2024-08-06T21:20:02.8524330Z checkpoint_id (Union[str, os.PathLike, None]): 2024-08-06T21:20:02.8524552Z The ID of this checkpoint instance. The meaning of the checkpoint_id 2024-08-06T21:20:02.8524753Z depends on the storage. It can be a path to a folder or to a file. 2024-08-06T21:20:02.8524915Z It can also be a key if the storage is a key-value store. 2024-08-06T21:20:02.8525020Z (Default: ``None``) 2024-08-06T21:20:02.8525147Z storage_writer (Optional[StorageWriter]): 2024-08-06T21:20:02.8525348Z Instance of StorageWriter used to perform writes. If this is not 2024-08-06T21:20:02.8525561Z specified, DCP will automatically infer the writer based on the 2024-08-06T21:20:02.8525754Z checkpoint_id. If checkpoint_id is also None, an exception will 2024-08-06T21:20:02.8525860Z be raised. (Default: ``None``) 2024-08-06T21:20:02.8525986Z planner (Optional[SavePlanner]): 2024-08-06T21:20:02.8526183Z Instance of SavePlanner. If this is not specificed, the default 2024-08-06T21:20:02.8526315Z planner will be used. (Default: ``None``) 2024-08-06T21:20:02.8526440Z process_group (Optional[ProcessGroup]): 2024-08-06T21:20:02.8526615Z ProcessGroup to be used for cross-rank synchronization. 2024-08-06T21:20:02.8526720Z (Default: ``None``) 2024-08-06T21:20:02.8526799Z 2024-08-06T21:20:02.8526909Z Returns: 2024-08-06T21:20:02.8527072Z Metadata: Metadata object for the saved checkpoint. 2024-08-06T21:20:02.8527151Z 2024-08-06T21:20:02.8527236Z Example: 2024-08-06T21:20:02.8527348Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8527445Z >>> my_model = MyModule() 2024-08-06T21:20:02.8527520Z 2024-08-06T21:20:02.8527637Z >>> state_dict = {"model": my_model} 2024-08-06T21:20:02.8527714Z 2024-08-06T21:20:02.8528005Z >>> fs_storage_writer = torch.distributed.checkpoint.FileSystemWriter("/checkpoint/1") 2024-08-06T21:20:02.8528143Z >>> torch.distributed.checkpoint.save( 2024-08-06T21:20:02.8528239Z >>> state_dict=state_dict, 2024-08-06T21:20:02.8528351Z >>> storage_writer=fs_storage_writer, 2024-08-06T21:20:02.8528442Z >>> ) 2024-08-06T21:20:02.8528517Z 2024-08-06T21:20:02.8528598Z .. note:: 2024-08-06T21:20:02.8528816Z save_state_dict uses collectives to coordinate writes across ranks. 2024-08-06T21:20:02.8529030Z For NCCL-based process groups, internal tensor representations of 2024-08-06T21:20:02.8529255Z objects must be moved to the GPU device before communication takes place. 2024-08-06T21:20:02.8529531Z In this case, the device used is given by ``torch.cuda.current_device()`` 2024-08-06T21:20:02.8529734Z and it is the user's responsibility to ensure that this is set so that 2024-08-06T21:20:02.8529938Z each rank has an individual GPU, via ``torch.cuda.set_device()``. 2024-08-06T21:20:02.8530018Z 2024-08-06T21:20:02.8530263Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8530357Z 2024-08-06T21:20:02.8530451Z warnings.warn(msg) 2024-08-06T21:20:02.8530526Z 2024-08-06T21:20:02.8530720Z --- Parse Warning: 50 / 100 --- 2024-08-06T21:20:02.8531713Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=async_save in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/checkpoint/state_dict_saver.py line=170. 2024-08-06T21:20:02.8532018Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8532289Z Asynchronous version of ``save``. This code first de-stages the state_dict on to the 2024-08-06T21:20:02.8532572Z staging storage (defaults to CPU memory), and then calls the `save` in a separate thread. 2024-08-06T21:20:02.8532649Z 2024-08-06T21:20:02.8532750Z .. warning:: 2024-08-06T21:20:02.8532901Z This feature is experimental and subject to change. 2024-08-06T21:20:02.8532990Z 2024-08-06T21:20:02.8533073Z Args: 2024-08-06T21:20:02.8533221Z state_dict (Dict[str, Any]): The state_dict to save. 2024-08-06T21:20:02.8533369Z checkpoint_id (Union[str, os.PathLike, None]): 2024-08-06T21:20:02.8533580Z The ID of this checkpoint instance. The meaning of the checkpoint_id 2024-08-06T21:20:02.8533782Z depends on the storage. It can be a path to a folder or to a file. 2024-08-06T21:20:02.8533960Z It can also be a key if the storage is a key-value store. 2024-08-06T21:20:02.8534057Z (Default: ``None``) 2024-08-06T21:20:02.8534185Z storage_writer (Optional[StorageWriter]): 2024-08-06T21:20:02.8534512Z Instance of StorageWriter used to perform 'stage' and 'save'. If 2024-08-06T21:20:02.8534753Z this is not specified, DCP will automatically infer the writer based on the 2024-08-06T21:20:02.8534955Z checkpoint_id. If checkpoint_id is also None, an exception will 2024-08-06T21:20:02.8535082Z be raised. (Default: ``None``) 2024-08-06T21:20:02.8535200Z planner (Optional[SavePlanner]): 2024-08-06T21:20:02.8535413Z Instance of SavePlanner. If this is not specificed, the default 2024-08-06T21:20:02.8535543Z planner will be used. (Default: ``None``) 2024-08-06T21:20:02.8535705Z process_group (Optional[ProcessGroup]): 2024-08-06T21:20:02.8535897Z ProcessGroup to be used for cross-rank synchronization. 2024-08-06T21:20:02.8535994Z (Default: ``None``) 2024-08-06T21:20:02.8536070Z 2024-08-06T21:20:02.8536161Z Returns: 2024-08-06T21:20:02.8536370Z Future: A future holding the resultant Metadata object from `save`. 2024-08-06T21:20:02.8536445Z 2024-08-06T21:20:02.8536537Z Example: 2024-08-06T21:20:02.8536633Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8536729Z >>> my_model = MyModule() 2024-08-06T21:20:02.8536813Z 2024-08-06T21:20:02.8536922Z >>> state_dict = {"model": my_model} 2024-08-06T21:20:02.8536996Z 2024-08-06T21:20:02.8537301Z >>> fs_storage_writer = torch.distributed.checkpoint.FileSystemWriter("/checkpoint/1") 2024-08-06T21:20:02.8537510Z >>> checkpoint_future = torch.distributed.checkpoint.async_save( 2024-08-06T21:20:02.8537613Z >>> state_dict=state_dict, 2024-08-06T21:20:02.8537740Z >>> storage_writer=fs_storage_writer, 2024-08-06T21:20:02.8537868Z >>> ) 2024-08-06T21:20:02.8537949Z >>> 2024-08-06T21:20:02.8538056Z >>> # ... do some work ... 2024-08-06T21:20:02.8538137Z >>> 2024-08-06T21:20:02.8538244Z >>> checkpoint_future.result() 2024-08-06T21:20:02.8538335Z 2024-08-06T21:20:02.8538414Z 2024-08-06T21:20:02.8538661Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8538750Z 2024-08-06T21:20:02.8538843Z warnings.warn(msg) 2024-08-06T21:20:02.8538922Z 2024-08-06T21:20:02.8539126Z --- Parse Warning: 51 / 100 --- 2024-08-06T21:20:02.8540188Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=construct_and_record_rdzv_event in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/elastic/events/__init__.py line=91. 2024-08-06T21:20:02.8540490Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8540568Z 2024-08-06T21:20:02.8540767Z Initialize rendezvous event object and record its operations. 2024-08-06T21:20:02.8540858Z 2024-08-06T21:20:02.8540940Z Args: 2024-08-06T21:20:02.8541063Z run_id (str): The run id of the rendezvous. 2024-08-06T21:20:02.8541218Z message (str): The message describing the event. 2024-08-06T21:20:02.8541471Z node_state (NodeState): The state of the node (INIT, RUNNING, SUCCEEDED, FAILED). 2024-08-06T21:20:02.8541651Z name (str): Event name. (E.g. Current action being performed). 2024-08-06T21:20:02.8541776Z hostname (str): Hostname of the node. 2024-08-06T21:20:02.8541914Z pid (Optional[int]): The process id of the node. 2024-08-06T21:20:02.8542156Z master_endpoint (str): The master endpoint for the rendezvous store, if known. 2024-08-06T21:20:02.8542431Z local_id (Optional[int]): The local_id of the node, if defined in dynamic_rendezvous.py 2024-08-06T21:20:02.8542588Z rank (Optional[int]): The rank of the node, if known. 2024-08-06T21:20:02.8542681Z Returns: 2024-08-06T21:20:02.8542764Z None 2024-08-06T21:20:02.8542847Z Example: 2024-08-06T21:20:02.8542976Z >>> # See DynamicRendezvousHandler class 2024-08-06T21:20:02.8543065Z >>> def _record( 2024-08-06T21:20:02.8543146Z ... self, 2024-08-06T21:20:02.8543245Z ... message: str, 2024-08-06T21:20:02.8543380Z ... node_state: NodeState = NodeState.RUNNING, 2024-08-06T21:20:02.8543482Z ... rank: Optional[int] = None, 2024-08-06T21:20:02.8543573Z ... ) -> None: 2024-08-06T21:20:02.8543687Z ... construct_and_record_rdzv_event( 2024-08-06T21:20:02.8543852Z ... name=f"{self.__class__.__name__}.{get_method_name()}", 2024-08-06T21:20:02.8544005Z ... run_id=self._settings.run_id, 2024-08-06T21:20:02.8544099Z ... message=message, 2024-08-06T21:20:02.8544204Z ... node_state=node_state, 2024-08-06T21:20:02.8544327Z ... hostname=self._this_node.addr, 2024-08-06T21:20:02.8544434Z ... pid=self._this_node.pid, 2024-08-06T21:20:02.8544556Z ... local_id=self._this_node.local_id, 2024-08-06T21:20:02.8544655Z ... rank=rank, 2024-08-06T21:20:02.8544737Z ... ) 2024-08-06T21:20:02.8544814Z 2024-08-06T21:20:02.8545078Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8545156Z 2024-08-06T21:20:02.8545246Z warnings.warn(msg) 2024-08-06T21:20:02.8545335Z 2024-08-06T21:20:02.8545513Z --- Parse Warning: 52 / 100 --- 2024-08-06T21:20:02.8546443Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=MixedPrecision in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/api.py line=113. 2024-08-06T21:20:02.8546751Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8546828Z 2024-08-06T21:20:02.8546994Z This configures FSDP-native mixed precision training. 2024-08-06T21:20:02.8553038Z 2024-08-06T21:20:02.8553138Z Attributes: 2024-08-06T21:20:02.8553393Z param_dtype (Optional[torch.dtype]): This specifies the dtype for model 2024-08-06T21:20:02.8553596Z parameters during forward and backward and thus the dtype for 2024-08-06T21:20:02.8553816Z forward and backward computation. Outside forward and backward, the 2024-08-06T21:20:02.8554017Z *sharded* parameters are kept in full precision (e.g. for the 2024-08-06T21:20:02.8554223Z optimizer step), and for model checkpointing, the parameters are 2024-08-06T21:20:02.8554471Z always saved in full precision. (Default: ``None``) 2024-08-06T21:20:02.8554691Z reduce_dtype (Optional[torch.dtype]): This specifies the dtype for 2024-08-06T21:20:02.8554917Z gradient reduction (i.e. reduce-scatter or all-reduce). If this is 2024-08-06T21:20:02.8555091Z ``None`` but ``param_dtype`` is not ``None``, then this takes on 2024-08-06T21:20:02.8555294Z the ``param_dtype`` value, still running gradient reduction in low 2024-08-06T21:20:02.8555508Z precision. This is permitted to differ from ``param_dtype``, e.g. 2024-08-06T21:20:02.8555711Z to force gradient reduction to run in full precision. (Default: 2024-08-06T21:20:02.8555795Z ``None``) 2024-08-06T21:20:02.8556005Z buffer_dtype (Optional[torch.dtype]): This specifies the dtype for 2024-08-06T21:20:02.8556208Z buffers. FSDP does not shard buffers. Rather, FSDP casts them to 2024-08-06T21:20:02.8556406Z ``buffer_dtype`` in the first forward pass and keeps them in that 2024-08-06T21:20:02.8556612Z dtype thereafter. For model checkpointing, the buffers are saved 2024-08-06T21:20:02.8556807Z in full precision except for ``LOCAL_STATE_DICT``. (Default: 2024-08-06T21:20:02.8556894Z ``None``) 2024-08-06T21:20:02.8557087Z keep_low_precision_grads (bool): If ``False``, then FSDP upcasts 2024-08-06T21:20:02.8557304Z gradients to full precision after the backward pass in preparation 2024-08-06T21:20:02.8557510Z for the optimizer step. If ``True``, then FSDP keeps the gradients 2024-08-06T21:20:02.8557704Z in the dtype used for gradient reduction, which can save memory if 2024-08-06T21:20:02.8557905Z using a custom optimizer that supports running in low precision. 2024-08-06T21:20:02.8558008Z (Default: ``False``) 2024-08-06T21:20:02.8558219Z cast_forward_inputs (bool): If ``True``, then this FSDP module casts 2024-08-06T21:20:02.8558449Z its forward args and kwargs to ``param_dtype``. This is to ensure 2024-08-06T21:20:02.8558665Z that parameter and input dtypes match for forward computation, as 2024-08-06T21:20:02.8558865Z required by many ops. This may need to be set to ``True`` when only 2024-08-06T21:20:02.8559091Z applying mixed precision to some but not all FSDP modules, in which 2024-08-06T21:20:02.8559297Z case a mixed-precision FSDP submodule needs to recast its inputs. 2024-08-06T21:20:02.8559394Z (Default: ``False``) 2024-08-06T21:20:02.8559617Z cast_root_forward_inputs (bool): If ``True``, then the root FSDP module 2024-08-06T21:20:02.8559813Z casts its forward args and kwargs to ``param_dtype``, overriding 2024-08-06T21:20:02.8559996Z the value of ``cast_forward_inputs``. For non-root FSDP modules, 2024-08-06T21:20:02.8560147Z this does not do anything. (Default: ``True``) 2024-08-06T21:20:02.8560363Z _module_classes_to_ignore: (Sequence[Type[nn.Module]]): This specifies 2024-08-06T21:20:02.8560545Z module classes to ignore for mixed precision when using an 2024-08-06T21:20:02.8560783Z ``auto_wrap_policy``: Modules of these classes will have FSDP 2024-08-06T21:20:02.8560987Z applied to them separately with mixed precision disabled (meaning 2024-08-06T21:20:02.8561185Z that the final FSDP construction would deviate from the specified 2024-08-06T21:20:02.8561379Z policy). If ``auto_wrap_policy`` is not specified, then this does 2024-08-06T21:20:02.8561571Z not do anything. This API is experimental and subject to change. 2024-08-06T21:20:02.8561682Z (Default: ``(_BatchNorm,)``) 2024-08-06T21:20:02.8561760Z 2024-08-06T21:20:02.8561931Z .. note:: This API is experimental and subject to change. 2024-08-06T21:20:02.8562049Z 2024-08-06T21:20:02.8562266Z .. note:: Only floating point tensors are cast to their specified dtypes. 2024-08-06T21:20:02.8562350Z 2024-08-06T21:20:02.8562534Z .. note:: In ``summon_full_params``, parameters are forced to full 2024-08-06T21:20:02.8562647Z precision, but buffers are not. 2024-08-06T21:20:02.8562726Z 2024-08-06T21:20:02.8563162Z .. note:: Layer norm and batch norm accumulate in ``float32`` even when 2024-08-06T21:20:02.8563369Z their inputs are in a low precision like ``float16`` or ``bfloat16``. 2024-08-06T21:20:02.8563596Z Disabling FSDP's mixed precision for those norm modules only means that 2024-08-06T21:20:02.8563811Z the affine parameters are kept in ``float32``. However, this incurs 2024-08-06T21:20:02.8564042Z separate all-gathers and reduce-scatters for those norm modules, which 2024-08-06T21:20:02.8564265Z may be inefficient, so if the workload permits, the user should prefer 2024-08-06T21:20:02.8564410Z to still apply mixed precision to those modules. 2024-08-06T21:20:02.8564492Z 2024-08-06T21:20:02.8564704Z .. note:: By default, if the user passes a model with any ``_BatchNorm`` 2024-08-06T21:20:02.8564910Z modules and specifies an ``auto_wrap_policy``, then the batch norm 2024-08-06T21:20:02.8565133Z modules will have FSDP applied to them separately with mixed precision 2024-08-06T21:20:02.8565317Z disabled. See the ``_module_classes_to_ignore`` argument. 2024-08-06T21:20:02.8565394Z 2024-08-06T21:20:02.8565788Z .. note:: ``MixedPrecision`` has ``cast_root_forward_inputs=True`` and 2024-08-06T21:20:02.8566007Z ``cast_forward_inputs=False`` by default. For the root FSDP instance, 2024-08-06T21:20:02.8566172Z its ``cast_root_forward_inputs`` takes precedence over its 2024-08-06T21:20:02.8566360Z ``cast_forward_inputs``. For non-root FSDP instances, their 2024-08-06T21:20:02.8566570Z ``cast_root_forward_inputs`` values are ignored. The default setting is 2024-08-06T21:20:02.8566793Z sufficient for the typical case where each FSDP instance has the same 2024-08-06T21:20:02.8567097Z ``MixedPrecision`` configuration and only needs to cast inputs to the 2024-08-06T21:20:02.8567280Z ``param_dtype`` at the beginning of the model's forward pass. 2024-08-06T21:20:02.8567357Z 2024-08-06T21:20:02.8567571Z .. note:: For nested FSDP instances with different ``MixedPrecision`` 2024-08-06T21:20:02.8567800Z configurations, we recommend setting individual ``cast_forward_inputs`` 2024-08-06T21:20:02.8567999Z values to configure casting inputs or not before each instance's 2024-08-06T21:20:02.8568197Z forward. In such a case, since the casts happen before each FSDP 2024-08-06T21:20:02.8568408Z instance's forward, a parent FSDP instance should have its non-FSDP 2024-08-06T21:20:02.8568638Z submodules run before its FSDP submodules to avoid the activation dtype 2024-08-06T21:20:02.8568850Z being changed due to a different ``MixedPrecision`` configuration. 2024-08-06T21:20:02.8568928Z 2024-08-06T21:20:02.8569027Z Example:: 2024-08-06T21:20:02.8569105Z 2024-08-06T21:20:02.8569229Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8569479Z >>> model = nn.Sequential(nn.Linear(3, 3), nn.Linear(3, 3)) 2024-08-06T21:20:02.8569571Z >>> model[1] = FSDP( 2024-08-06T21:20:02.8569657Z >>> model[1], 2024-08-06T21:20:02.8569967Z >>> mixed_precision=MixedPrecision(param_dtype=torch.float16, cast_forward_inputs=True), 2024-08-06T21:20:02.8570047Z >>> ) 2024-08-06T21:20:02.8570138Z >>> model = FSDP( 2024-08-06T21:20:02.8570234Z >>> model, 2024-08-06T21:20:02.8570538Z >>> mixed_precision=MixedPrecision(param_dtype=torch.bfloat16, cast_forward_inputs=True), 2024-08-06T21:20:02.8570621Z >>> ) 2024-08-06T21:20:02.8570709Z 2024-08-06T21:20:02.8570957Z The above shows a working example. On the other hand, if ``model[1]`` 2024-08-06T21:20:02.8571159Z were replaced with ``model[0]``, meaning that the submodule using 2024-08-06T21:20:02.8571392Z different ``MixedPrecision`` ran its forward first, then ``model[1]`` 2024-08-06T21:20:02.8571608Z would incorrectly see ``float16`` activations instead of ``bfloat16`` 2024-08-06T21:20:02.8571688Z ones. 2024-08-06T21:20:02.8571774Z 2024-08-06T21:20:02.8571852Z 2024-08-06T21:20:02.8572101Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8572185Z 2024-08-06T21:20:02.8572277Z warnings.warn(msg) 2024-08-06T21:20:02.8572367Z 2024-08-06T21:20:02.8572600Z --- Parse Warning: 53 / 100 --- 2024-08-06T21:20:02.8573793Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=FullyShardedDataParallel.set_state_dict_type in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=648. 2024-08-06T21:20:02.8574070Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8574385Z Set the ``state_dict_type`` of all the descendant FSDP modules of the target module. 2024-08-06T21:20:02.8574466Z 2024-08-06T21:20:02.8574738Z Also takes (optional) configuration for the model's and optimizer's state dict. 2024-08-06T21:20:02.8574941Z The target module does not have to be a FSDP module. If the target 2024-08-06T21:20:02.8575147Z module is a FSDP module, its ``state_dict_type`` will also be changed. 2024-08-06T21:20:02.8575236Z 2024-08-06T21:20:02.8575428Z .. note:: This API should be called for only the top-level (root) 2024-08-06T21:20:02.8575524Z module. 2024-08-06T21:20:02.8575602Z 2024-08-06T21:20:02.8575803Z .. note:: This API enables users to transparently use the conventional 2024-08-06T21:20:02.8576033Z ``state_dict`` API to take model checkpoints in cases where the 2024-08-06T21:20:02.8576235Z root FSDP module is wrapped by another ``nn.Module``. For example, 2024-08-06T21:20:02.8576441Z the following will ensure ``state_dict`` is called on all non-FSDP 2024-08-06T21:20:02.8576680Z instances, while dispatching into `sharded_state_dict` implementation 2024-08-06T21:20:02.8576766Z for FSDP: 2024-08-06T21:20:02.8576844Z 2024-08-06T21:20:02.8576943Z Example:: 2024-08-06T21:20:02.8577018Z 2024-08-06T21:20:02.8577148Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8577262Z >>> model = DDP(FSDP(...)) 2024-08-06T21:20:02.8577368Z >>> FSDP.set_state_dict_type( 2024-08-06T21:20:02.8577454Z >>> model, 2024-08-06T21:20:02.8577588Z >>> StateDictType.SHARDED_STATE_DICT, 2024-08-06T21:20:02.8577796Z >>> state_dict_config = ShardedStateDictConfig(offload_to_cpu=True), 2024-08-06T21:20:02.8578029Z >>> optim_state_dict_config = OptimStateDictConfig(offload_to_cpu=True), 2024-08-06T21:20:02.8578161Z >>> ) 2024-08-06T21:20:02.8578283Z >>> param_state_dict = model.state_dict() 2024-08-06T21:20:02.8578461Z >>> optim_state_dict = FSDP.optim_state_dict(model, optim) 2024-08-06T21:20:02.8578538Z 2024-08-06T21:20:02.8578621Z Args: 2024-08-06T21:20:02.8578752Z module (torch.nn.Module): Root module. 2024-08-06T21:20:02.8578978Z state_dict_type (StateDictType): the desired ``state_dict_type`` to set. 2024-08-06T21:20:02.8579209Z state_dict_config (Optional[StateDictConfig]): the configuration for the 2024-08-06T21:20:02.8579332Z target ``state_dict_type``. 2024-08-06T21:20:02.8579609Z optim_state_dict_config (Optional[OptimStateDictConfig]): the configuration 2024-08-06T21:20:02.8579722Z for the optimizer state dict. 2024-08-06T21:20:02.8579808Z 2024-08-06T21:20:02.8579891Z Returns: 2024-08-06T21:20:02.8580112Z A StateDictSettings that include the previous state_dict type and 2024-08-06T21:20:02.8580231Z configuration for the module. 2024-08-06T21:20:02.8580309Z 2024-08-06T21:20:02.8580557Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8580644Z 2024-08-06T21:20:02.8580739Z warnings.warn(msg) 2024-08-06T21:20:02.8580817Z 2024-08-06T21:20:02.8581017Z --- Parse Warning: 54 / 100 --- 2024-08-06T21:20:02.8582198Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=FullyShardedDataParallel.state_dict_type in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=804. 2024-08-06T21:20:02.8582472Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8582717Z Set the ``state_dict_type`` of all the descendant FSDP modules of the target module. 2024-08-06T21:20:02.8582794Z 2024-08-06T21:20:02.8583119Z This context manager has the same functions as :meth:`set_state_dict_type`. Read the document of 2024-08-06T21:20:02.8583244Z :meth:`set_state_dict_type` for the detail. 2024-08-06T21:20:02.8583321Z 2024-08-06T21:20:02.8583419Z Example:: 2024-08-06T21:20:02.8583497Z 2024-08-06T21:20:02.8583625Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8583735Z >>> model = DDP(FSDP(...)) 2024-08-06T21:20:02.8583842Z >>> with FSDP.state_dict_type( 2024-08-06T21:20:02.8583929Z >>> model, 2024-08-06T21:20:02.8584065Z >>> StateDictType.SHARDED_STATE_DICT, 2024-08-06T21:20:02.8584176Z >>> ): 2024-08-06T21:20:02.8584308Z >>> checkpoint = model.state_dict() 2024-08-06T21:20:02.8584382Z 2024-08-06T21:20:02.8584462Z Args: 2024-08-06T21:20:02.8584599Z module (torch.nn.Module): Root module. 2024-08-06T21:20:02.8584829Z state_dict_type (StateDictType): the desired ``state_dict_type`` to set. 2024-08-06T21:20:02.8585056Z state_dict_config (Optional[StateDictConfig]): the model ``state_dict`` 2024-08-06T21:20:02.8585219Z configuration for the target ``state_dict_type``. 2024-08-06T21:20:02.8585448Z optim_state_dict_config (Optional[OptimStateDictConfig]): the optimizer 2024-08-06T21:20:02.8585643Z ``state_dict`` configuration for the target ``state_dict_type``. 2024-08-06T21:20:02.8585733Z 2024-08-06T21:20:02.8585982Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8586062Z 2024-08-06T21:20:02.8586165Z warnings.warn(msg) 2024-08-06T21:20:02.8586242Z 2024-08-06T21:20:02.8586418Z --- Parse Warning: 55 / 100 --- 2024-08-06T21:20:02.8587656Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=FullyShardedDataParallel.optim_state_dict in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=1801. 2024-08-06T21:20:02.8587916Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8588006Z 2024-08-06T21:20:02.8588239Z Transform the state-dict of an optimizer corresponding to a sharded model. 2024-08-06T21:20:02.8588315Z 2024-08-06T21:20:02.8588514Z The given state-dict can be transformed to one of three types: 2024-08-06T21:20:02.8588809Z 1) full optimizer state_dict, 2) sharded optimizer state_dict, 3) local optimizer state_dict. 2024-08-06T21:20:02.8588916Z 2024-08-06T21:20:02.8589153Z For full optimizer state_dict, all states are unflattened and not sharded. 2024-08-06T21:20:02.8589366Z Rank0 only and CPU only can be specified via :meth:`state_dict_type` to 2024-08-06T21:20:02.8589455Z avoid OOM. 2024-08-06T21:20:02.8589544Z 2024-08-06T21:20:02.8589774Z For sharded optimizer state_dict, all states are unflattened but sharded. 2024-08-06T21:20:02.8589977Z CPU only can be specified via :meth:`state_dict_type` to further save 2024-08-06T21:20:02.8590068Z memory. 2024-08-06T21:20:02.8590144Z 2024-08-06T21:20:02.8590357Z For local state_dict, no transformation will be performed. But a state 2024-08-06T21:20:02.8590595Z will be converted from nn.Tensor to ShardedTensor to represent its sharding 2024-08-06T21:20:02.8590702Z nature (this is not supported yet). 2024-08-06T21:20:02.8590789Z 2024-08-06T21:20:02.8590877Z Example:: 2024-08-06T21:20:02.8590958Z 2024-08-06T21:20:02.8591095Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8591329Z >>> from torch.distributed.fsdp import FullyShardedDataParallel as FSDP 2024-08-06T21:20:02.8591488Z >>> from torch.distributed.fsdp import StateDictType 2024-08-06T21:20:02.8591671Z >>> from torch.distributed.fsdp import FullStateDictConfig 2024-08-06T21:20:02.8591865Z >>> from torch.distributed.fsdp import FullOptimStateDictConfig 2024-08-06T21:20:02.8591961Z >>> # Save a checkpoint 2024-08-06T21:20:02.8592066Z >>> model, optim = ... 2024-08-06T21:20:02.8592170Z >>> FSDP.set_state_dict_type( 2024-08-06T21:20:02.8592252Z >>> model, 2024-08-06T21:20:02.8592379Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:20:02.8592505Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8592647Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8592737Z >>> ) 2024-08-06T21:20:02.8592852Z >>> state_dict = model.state_dict() 2024-08-06T21:20:02.8593044Z >>> optim_state_dict = FSDP.optim_state_dict(model, optim) 2024-08-06T21:20:02.8593191Z >>> save_a_checkpoint(state_dict, optim_state_dict) 2024-08-06T21:20:02.8593290Z >>> # Load a checkpoint 2024-08-06T21:20:02.8593384Z >>> model, optim = ... 2024-08-06T21:20:02.8593536Z >>> state_dict, optim_state_dict = load_a_checkpoint() 2024-08-06T21:20:02.8593641Z >>> FSDP.set_state_dict_type( 2024-08-06T21:20:02.8593733Z >>> model, 2024-08-06T21:20:02.8593850Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:20:02.8593974Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8594122Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8594200Z >>> ) 2024-08-06T21:20:02.8594312Z >>> model.load_state_dict(state_dict) 2024-08-06T21:20:02.8594466Z >>> optim_state_dict = FSDP.optim_state_dict_to_load( 2024-08-06T21:20:02.8594578Z >>> model, optim, optim_state_dict 2024-08-06T21:20:02.8594659Z >>> ) 2024-08-06T21:20:02.8594790Z >>> optim.load_state_dict(optim_state_dict) 2024-08-06T21:20:02.8594870Z 2024-08-06T21:20:02.8595032Z Args: 2024-08-06T21:20:02.8595233Z model (torch.nn.Module): Root module (which may or may not be a 2024-08-06T21:20:02.8595429Z :class:`FullyShardedDataParallel` instance) whose parameters 2024-08-06T21:20:02.8595558Z were passed into the optimizer ``optim``. 2024-08-06T21:20:02.8595739Z optim (torch.optim.Optimizer): Optimizer for ``model`` 's 2024-08-06T21:20:02.8595828Z parameters. 2024-08-06T21:20:02.8596040Z optim_state_dict (Dict[str, Any]): the target optimizer state_dict to 2024-08-06T21:20:02.8596250Z transform. If the value is None, optim.state_dict() will be used. ( 2024-08-06T21:20:02.8596343Z Default: ``None``) 2024-08-06T21:20:02.8596619Z group (dist.ProcessGroup): Model's process group across which parameters 2024-08-06T21:20:02.8596802Z are sharded or ``None`` if using the default process group. ( 2024-08-06T21:20:02.8596894Z Default: ``None``) 2024-08-06T21:20:02.8596987Z 2024-08-06T21:20:02.8597070Z Returns: 2024-08-06T21:20:02.8597259Z Dict[str, Any]: A :class:`dict` containing the optimizer state for 2024-08-06T21:20:02.8597433Z ``model``. The sharding of the optimizer state is based on 2024-08-06T21:20:02.8597525Z ``state_dict_type``. 2024-08-06T21:20:02.8597602Z 2024-08-06T21:20:02.8597856Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8597934Z 2024-08-06T21:20:02.8598028Z warnings.warn(msg) 2024-08-06T21:20:02.8598111Z 2024-08-06T21:20:02.8598292Z --- Parse Warning: 56 / 100 --- 2024-08-06T21:20:02.8599498Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=FullyShardedDataParallel.optim_state_dict_to_load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/fsdp/fully_sharded_data_parallel.py line=1899. 2024-08-06T21:20:02.8599767Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8599846Z 2024-08-06T21:20:02.8600202Z Convert an optimizer state-dict so that it can be loaded into the optimizer associated with the FSDP model. 2024-08-06T21:20:02.8600283Z 2024-08-06T21:20:02.8600448Z Given a ``optim_state_dict`` that is transformed through 2024-08-06T21:20:02.8600662Z :meth:`optim_state_dict`, it gets converted to the flattened optimizer 2024-08-06T21:20:02.8600869Z state_dict that can be loaded to ``optim`` which is the optimizer for 2024-08-06T21:20:02.8601053Z ``model``. ``model`` must be sharded by FullyShardedDataParallel. 2024-08-06T21:20:02.8601139Z 2024-08-06T21:20:02.8601260Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8601518Z >>> from torch.distributed.fsdp import FullyShardedDataParallel as FSDP 2024-08-06T21:20:02.8601675Z >>> from torch.distributed.fsdp import StateDictType 2024-08-06T21:20:02.8601850Z >>> from torch.distributed.fsdp import FullStateDictConfig 2024-08-06T21:20:02.8602047Z >>> from torch.distributed.fsdp import FullOptimStateDictConfig 2024-08-06T21:20:02.8602146Z >>> # Save a checkpoint 2024-08-06T21:20:02.8602239Z >>> model, optim = ... 2024-08-06T21:20:02.8602343Z >>> FSDP.set_state_dict_type( 2024-08-06T21:20:02.8602433Z >>> model, 2024-08-06T21:20:02.8602548Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:20:02.8602673Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8602819Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8602900Z >>> ) 2024-08-06T21:20:02.8603014Z >>> state_dict = model.state_dict() 2024-08-06T21:20:02.8603129Z >>> original_osd = optim.state_dict() 2024-08-06T21:20:02.8603258Z >>> optim_state_dict = FSDP.optim_state_dict( 2024-08-06T21:20:02.8603348Z >>> model, 2024-08-06T21:20:02.8603489Z >>> optim, 2024-08-06T21:20:02.8603602Z >>> optim_state_dict=original_osd 2024-08-06T21:20:02.8603692Z >>> ) 2024-08-06T21:20:02.8603833Z >>> save_a_checkpoint(state_dict, optim_state_dict) 2024-08-06T21:20:02.8603927Z >>> # Load a checkpoint 2024-08-06T21:20:02.8604028Z >>> model, optim = ... 2024-08-06T21:20:02.8604175Z >>> state_dict, optim_state_dict = load_a_checkpoint() 2024-08-06T21:20:02.8604279Z >>> FSDP.set_state_dict_type( 2024-08-06T21:20:02.8604369Z >>> model, 2024-08-06T21:20:02.8604484Z >>> StateDictType.FULL_STATE_DICT, 2024-08-06T21:20:02.8604609Z >>> FullStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8604757Z >>> FullOptimStateDictConfig(rank0_only=False), 2024-08-06T21:20:02.8604865Z >>> ) 2024-08-06T21:20:02.8604978Z >>> model.load_state_dict(state_dict) 2024-08-06T21:20:02.8605129Z >>> optim_state_dict = FSDP.optim_state_dict_to_load( 2024-08-06T21:20:02.8605241Z >>> model, optim, optim_state_dict 2024-08-06T21:20:02.8605322Z >>> ) 2024-08-06T21:20:02.8605449Z >>> optim.load_state_dict(optim_state_dict) 2024-08-06T21:20:02.8605526Z 2024-08-06T21:20:02.8605608Z Args: 2024-08-06T21:20:02.8605805Z model (torch.nn.Module): Root module (which may or may not be a 2024-08-06T21:20:02.8606000Z :class:`FullyShardedDataParallel` instance) whose parameters 2024-08-06T21:20:02.8606136Z were passed into the optimizer ``optim``. 2024-08-06T21:20:02.8606314Z optim (torch.optim.Optimizer): Optimizer for ``model`` 's 2024-08-06T21:20:02.8606402Z parameters. 2024-08-06T21:20:02.8606618Z optim_state_dict (Dict[str, Any]): The optimizer states to be loaded. 2024-08-06T21:20:02.8606818Z is_named_optimizer (bool): Is this optimizer a NamedOptimizer or 2024-08-06T21:20:02.8607009Z KeyedOptimizer. Only set to True if ``optim`` is TorchRec's 2024-08-06T21:20:02.8607191Z KeyedOptimizer or torch.distributed's NamedOptimizer. 2024-08-06T21:20:02.8607380Z load_directly (bool): If this is set to True, this API will also 2024-08-06T21:20:02.8607579Z call optim.load_state_dict(result) before returning the result. 2024-08-06T21:20:02.8607801Z Otherwise, users are responsible to call ``optim.load_state_dict()`` 2024-08-06T21:20:02.8607900Z (Default: ``False``) 2024-08-06T21:20:02.8608136Z group (dist.ProcessGroup): Model's process group across which parameters 2024-08-06T21:20:02.8608322Z are sharded or ``None`` if using the default process group. ( 2024-08-06T21:20:02.8608415Z Default: ``None``) 2024-08-06T21:20:02.8608495Z 2024-08-06T21:20:02.8608748Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8608853Z 2024-08-06T21:20:02.8608954Z warnings.warn(msg) 2024-08-06T21:20:02.8609030Z 2024-08-06T21:20:02.8609213Z --- Parse Warning: 57 / 100 --- 2024-08-06T21:20:02.8610224Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=_RemoteModule.__init__ in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/api/remote_module.py line=137. 2024-08-06T21:20:02.8610485Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8610564Z 2024-08-06T21:20:02.8610791Z RemoteModule instance can only be created after RPC initialization. 2024-08-06T21:20:02.8610867Z 2024-08-06T21:20:02.8611056Z It creates a user-specified module on a specified remote node. 2024-08-06T21:20:02.8611297Z It behaves like a regular ``nn.Module`` except that the ``forward`` method is 2024-08-06T21:20:02.8611402Z executed on the remote node. 2024-08-06T21:20:02.8611633Z It takes care of autograd recording to ensure the backward pass propagates 2024-08-06T21:20:02.8611839Z gradients back to the corresponding remote module. 2024-08-06T21:20:02.8612194Z It can be shared across processors using `RPC framework `__, 2024-08-06T21:20:02.8612398Z without incurring any overheads of copying the actual module, 2024-08-06T21:20:02.8612591Z which is equivalent to an :class:`~torch.distributed.rpc.RRef` 2024-08-06T21:20:02.8612696Z pointing to the remote module. 2024-08-06T21:20:02.8612778Z 2024-08-06T21:20:02.8612971Z The arguments of ``forward_async`` and ``forward`` are the same as 2024-08-06T21:20:02.8613170Z the ``forward`` method of the module returned by the ``module_cls``. 2024-08-06T21:20:02.8613257Z 2024-08-06T21:20:02.8613559Z Apart from ``forward_async`` and ``forward``, no other methods are supported from nn.Module for now. 2024-08-06T21:20:02.8613666Z 2024-08-06T21:20:02.8613922Z Particularly, to create a hybrid model, typically the local modules should be 2024-08-06T21:20:02.8614296Z created outside of remote modules, rather than as submodules of any remote module (by calling ``add_module``). 2024-08-06T21:20:02.8614480Z Hybrid Example: 2024-08-06T21:20:02.8614606Z >>> class HybridModel(nn.Module): 2024-08-06T21:20:02.8614712Z >>> def __init__(self) -> None: 2024-08-06T21:20:02.8614817Z >>> nn.Module.__init__(self) 2024-08-06T21:20:02.8614962Z >>> self.remote_embedding = RemoteModule(...) 2024-08-06T21:20:02.8615084Z >>> self.local_linear = nn.Linear(...) 2024-08-06T21:20:02.8615174Z 2024-08-06T21:20:02.8615368Z For example, if ``module_cls`` returns an instance of ``nn.Linear``, 2024-08-06T21:20:02.8615613Z that has ``forward`` method signature, ``def forward(input: Tensor) -> Tensor:``, 2024-08-06T21:20:02.8615830Z the generated ``RemoteModule`` will have 2 methods in signature of 2024-08-06T21:20:02.8615960Z ``def forward(input: Tensor) -> Tensor:`` and 2024-08-06T21:20:02.8616122Z ``def forward_async(input: Tensor) -> Future[Tensor]:``. 2024-08-06T21:20:02.8616211Z 2024-08-06T21:20:02.8616298Z .. note:: 2024-08-06T21:20:02.8616437Z If the remote module is placed on a cuda device, 2024-08-06T21:20:02.8616676Z any input CPU tensors will be automatically moved to the same cuda device, 2024-08-06T21:20:02.8617067Z and GPU tensors are returned over the wire according to the device map of the remote worker on TensorPipe RPC backend. 2024-08-06T21:20:02.8617150Z 2024-08-06T21:20:02.8617237Z Args: 2024-08-06T21:20:02.8617526Z remote_device (str): Device on the destination worker where we'd like to place this module. 2024-08-06T21:20:02.8617811Z The device can be a local device or a remote device specified by one of the following remote 2024-08-06T21:20:02.8617934Z formats: 2024-08-06T21:20:02.8618021Z 2024-08-06T21:20:02.8618156Z 1. "rank:/" (ex: "rank:0/cuda:0"). 2024-08-06T21:20:02.8618303Z 2. "/" (ex: "trainer0/cuda:0"). 2024-08-06T21:20:02.8618388Z 2024-08-06T21:20:02.8618630Z In addition, the device field can be optional and the default value is "cpu". 2024-08-06T21:20:02.8618740Z module_cls (nn.Module): For example, 2024-08-06T21:20:02.8618855Z >>> class MyModule(nn.Module): 2024-08-06T21:20:02.8618953Z >>> def forward(input): 2024-08-06T21:20:02.8619049Z >>> return input + 1 2024-08-06T21:20:02.8619136Z >>> 2024-08-06T21:20:02.8619235Z >>> module_cls = MyModule 2024-08-06T21:20:02.8619427Z args (Sequence, optional): args to be passed to ``module_cls``. 2024-08-06T21:20:02.8619625Z kwargs (Dict, optional): kwargs to be passed to ``module_cls``. 2024-08-06T21:20:02.8619904Z _module_interface_cls (type, optional): The TorchScript interface type for the module 2024-08-06T21:20:02.8620189Z to be created. The type object should be decorated by @torch.jit.interface. 2024-08-06T21:20:02.8620406Z If not provided, the generated RemoteModule is not torchscript-able. 2024-08-06T21:20:02.8620634Z Warning, this is an experimental API and susceptible to frequent changes. 2024-08-06T21:20:02.8620717Z 2024-08-06T21:20:02.8620799Z Returns: 2024-08-06T21:20:02.8621035Z A remote module instance which wraps the :class:`~nn.Module` created by the 2024-08-06T21:20:02.8621264Z user-provided ``module_cls``, it has a blocking ``forward`` method and an 2024-08-06T21:20:02.8621530Z asynchronous ``forward_async`` method that returns a future of the ``forward`` call 2024-08-06T21:20:02.8621667Z on the user-provided module on the remote side. 2024-08-06T21:20:02.8621790Z 2024-08-06T21:20:02.8621879Z Example:: 2024-08-06T21:20:02.8622024Z Run the following code in two different processes: 2024-08-06T21:20:02.8622109Z 2024-08-06T21:20:02.8622225Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8622313Z >>> # On worker 0: 2024-08-06T21:20:02.8622410Z >>> import torch 2024-08-06T21:20:02.8622533Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:20:02.8622635Z >>> from torch import nn, Tensor 2024-08-06T21:20:02.8622854Z >>> from torch.distributed.nn.api.remote_module import RemoteModule 2024-08-06T21:20:02.8622935Z >>> 2024-08-06T21:20:02.8623078Z >>> rpc.init_rpc("worker0", rank=0, world_size=2) 2024-08-06T21:20:02.8623196Z >>> remote_linear_module = RemoteModule( 2024-08-06T21:20:02.8623317Z >>> "worker1/cpu", nn.Linear, args=(20, 30), 2024-08-06T21:20:02.8623406Z >>> ) 2024-08-06T21:20:02.8623511Z >>> input = torch.randn(128, 20) 2024-08-06T21:20:02.8623659Z >>> ret_fut = remote_linear_module.forward_async(input) 2024-08-06T21:20:02.8623758Z >>> ret = ret_fut.wait() 2024-08-06T21:20:02.8623853Z >>> rpc.shutdown() 2024-08-06T21:20:02.8623934Z 2024-08-06T21:20:02.8624026Z >>> # On worker 1: 2024-08-06T21:20:02.8624114Z >>> import torch 2024-08-06T21:20:02.8624236Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:20:02.8624327Z >>> 2024-08-06T21:20:02.8624458Z >>> rpc.init_rpc("worker1", rank=1, world_size=2) 2024-08-06T21:20:02.8624548Z >>> rpc.shutdown() 2024-08-06T21:20:02.8624632Z 2024-08-06T21:20:02.8624882Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8624958Z 2024-08-06T21:20:02.8625057Z warnings.warn(msg) 2024-08-06T21:20:02.8625134Z 2024-08-06T21:20:02.8625326Z --- Parse Warning: 58 / 100 --- 2024-08-06T21:20:02.8626393Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=_RemoteModule.init_from_module_rref in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/api/remote_module.py line=514. 2024-08-06T21:20:02.8626681Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8626758Z 2024-08-06T21:20:02.8627073Z Besides the constructor, a RemoteModule instance can also be initialized given a module RRef. 2024-08-06T21:20:02.8627146Z 2024-08-06T21:20:02.8627468Z This alternate initialization method can be particularly useful if we want to create multiple 2024-08-06T21:20:02.8627779Z RemoteModule instances that share the same underlying module and reduce memory consumption. 2024-08-06T21:20:02.8627855Z 2024-08-06T21:20:02.8628133Z Moreover, this also provides a workaround for passing script RemoteModule over RPC, 2024-08-06T21:20:02.8628303Z which is not supported. The recommended way is as follows: 2024-08-06T21:20:02.8628384Z 2024-08-06T21:20:02.8628506Z 1. the sender creates a RemoteModule; 2024-08-06T21:20:02.8628646Z 2. the sender sends its ``module_rref`` over RPC; 2024-08-06T21:20:02.8629030Z 3. the receiver calls this method to initialize another RemoteModule using the same ``module_rref``. 2024-08-06T21:20:02.8629115Z 2024-08-06T21:20:02.8629200Z Example:: 2024-08-06T21:20:02.8629346Z Run the following code in two different processes: 2024-08-06T21:20:02.8629426Z 2024-08-06T21:20:02.8629535Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8629621Z >>> # On worker 0: 2024-08-06T21:20:02.8629712Z >>> import torch 2024-08-06T21:20:02.8629835Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:20:02.8629941Z >>> from torch import nn, Tensor 2024-08-06T21:20:02.8630154Z >>> from torch.distributed.nn.api.remote_module import RemoteModule 2024-08-06T21:20:02.8630257Z >>> 2024-08-06T21:20:02.8630398Z >>> rpc.init_rpc("worker0", rank=0, world_size=2) 2024-08-06T21:20:02.8630502Z >>> remote_module = RemoteModule( 2024-08-06T21:20:02.8630624Z >>> "worker1/cpu", nn.Linear, args=(20, 30), 2024-08-06T21:20:02.8630710Z >>> ) 2024-08-06T21:20:02.8630787Z >>> 2024-08-06T21:20:02.8630891Z >>> remote_module1 = rpc.rpc_sync( 2024-08-06T21:20:02.8630988Z >>> "worker1/cpu", 2024-08-06T21:20:02.8631107Z >>> RemoteModule.init_from_module_rref, 2024-08-06T21:20:02.8631254Z >>> ("worker1/cpu", remote_module1.get_module_rref()), 2024-08-06T21:20:02.8631344Z >>> ) 2024-08-06T21:20:02.8631435Z >>> rpc.shutdown() 2024-08-06T21:20:02.8631509Z 2024-08-06T21:20:02.8631602Z >>> # On worker 1: 2024-08-06T21:20:02.8631688Z >>> import torch 2024-08-06T21:20:02.8631806Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:20:02.8631897Z >>> 2024-08-06T21:20:02.8632028Z >>> rpc.init_rpc("worker1", rank=1, world_size=2) 2024-08-06T21:20:02.8632118Z >>> rpc.shutdown() 2024-08-06T21:20:02.8632204Z 2024-08-06T21:20:02.8632282Z Args: 2024-08-06T21:20:02.8632575Z remote_device (str): Device on the destination worker where we'd like to place this module. 2024-08-06T21:20:02.8632867Z The device can be a local device or a remote device specified by one of the following remote 2024-08-06T21:20:02.8632949Z formats: 2024-08-06T21:20:02.8633023Z 2024-08-06T21:20:02.8633164Z 1. "rank:/" (ex: "rank:0/cuda:0"). 2024-08-06T21:20:02.8633309Z 2. "/" (ex: "trainer0/cuda:0"). 2024-08-06T21:20:02.8633393Z 2024-08-06T21:20:02.8633634Z In addition, the device field can be optional and the default value is "cpu". 2024-08-06T21:20:02.8633878Z module_rref (RRef[nn.Module]): The module reference shared by both the caller and 2024-08-06T21:20:02.8633991Z the created remote module. 2024-08-06T21:20:02.8634303Z _module_interface_cls (type, optional): The TorchScript interface type for the module 2024-08-06T21:20:02.8634534Z to be created. The type object should be decorated by @torch.jit.interface. 2024-08-06T21:20:02.8634752Z If not provided, the generated RemoteModule is not torchscript-able. 2024-08-06T21:20:02.8634981Z Warning, this is an experimental API and susceptible to frequent changes. 2024-08-06T21:20:02.8635057Z 2024-08-06T21:20:02.8635144Z Returns: 2024-08-06T21:20:02.8635379Z A remote module instance which wraps the :class:`~nn.Module` created by the 2024-08-06T21:20:02.8635605Z user-provided ``module_rref``, it has a blocking ``forward`` method and an 2024-08-06T21:20:02.8635877Z asynchronous ``forward_async`` method that returns a future of the ``forward`` call 2024-08-06T21:20:02.8636013Z on the user-provided module on the remote side. 2024-08-06T21:20:02.8636100Z 2024-08-06T21:20:02.8636346Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8636424Z 2024-08-06T21:20:02.8636522Z warnings.warn(msg) 2024-08-06T21:20:02.8636650Z 2024-08-06T21:20:02.8636832Z --- Parse Warning: 59 / 100 --- 2024-08-06T21:20:02.8637820Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=RemoteModule in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/nn/api/remote_module.py line=606. 2024-08-06T21:20:02.8638080Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8638154Z 2024-08-06T21:20:02.8638388Z A RemoteModule instance can only be created after RPC initialization. 2024-08-06T21:20:02.8638465Z 2024-08-06T21:20:02.8638653Z It creates a user-specified module on a specified remote node. 2024-08-06T21:20:02.8638919Z It behaves like a regular ``nn.Module`` except that the ``forward`` method is 2024-08-06T21:20:02.8639023Z executed on the remote node. 2024-08-06T21:20:02.8639259Z It takes care of autograd recording to ensure the backward pass propagates 2024-08-06T21:20:02.8639423Z gradients back to the corresponding remote module. 2024-08-06T21:20:02.8639498Z 2024-08-06T21:20:02.8639718Z It generates two methods ``forward_async`` and ``forward`` based on the 2024-08-06T21:20:02.8639926Z signature of the ``forward`` method of ``module_cls``. ``forward_async`` 2024-08-06T21:20:02.8640170Z runs asynchronously and returns a Future. The arguments of ``forward_async`` 2024-08-06T21:20:02.8640368Z and ``forward`` are the same as the ``forward`` method of the module 2024-08-06T21:20:02.8640469Z returned by the ``module_cls``. 2024-08-06T21:20:02.8640544Z 2024-08-06T21:20:02.8640745Z For example, if ``module_cls`` returns an instance of ``nn.Linear``, 2024-08-06T21:20:02.8640997Z that has ``forward`` method signature: ``def forward(input: Tensor) -> Tensor:``, 2024-08-06T21:20:02.8641215Z the generated ``RemoteModule`` will have 2 methods with the signatures: 2024-08-06T21:20:02.8641299Z 2024-08-06T21:20:02.8641417Z | ``def forward(input: Tensor) -> Tensor:`` 2024-08-06T21:20:02.8641574Z | ``def forward_async(input: Tensor) -> Future[Tensor]:`` 2024-08-06T21:20:02.8641659Z 2024-08-06T21:20:02.8641739Z Args: 2024-08-06T21:20:02.8642029Z remote_device (str): Device on the destination worker where we'd like to place this module. 2024-08-06T21:20:02.8642373Z The format should be "/", where the device field can be parsed as torch.device type. 2024-08-06T21:20:02.8642506Z E.g., "trainer0/cpu", "trainer0", "ps0/cuda:0". 2024-08-06T21:20:02.8642754Z In addition, the device field can be optional and the default value is "cpu". 2024-08-06T21:20:02.8642997Z module_cls (nn.Module): Class for the module to be created remotely. For example, 2024-08-06T21:20:02.8643100Z 2024-08-06T21:20:02.8643213Z >>> class MyModule(nn.Module): 2024-08-06T21:20:02.8643312Z >>> def forward(input): 2024-08-06T21:20:02.8643408Z >>> return input + 1 2024-08-06T21:20:02.8643494Z >>> 2024-08-06T21:20:02.8643589Z >>> module_cls = MyModule 2024-08-06T21:20:02.8643664Z 2024-08-06T21:20:02.8643865Z args (Sequence, optional): args to be passed to ``module_cls``. 2024-08-06T21:20:02.8644050Z kwargs (Dict, optional): kwargs to be passed to ``module_cls``. 2024-08-06T21:20:02.8644125Z 2024-08-06T21:20:02.8644211Z Returns: 2024-08-06T21:20:02.8644450Z A remote module instance which wraps the :class:`~nn.Module` created by the 2024-08-06T21:20:02.8644674Z user-provided ``module_cls``, it has a blocking ``forward`` method and an 2024-08-06T21:20:02.8644950Z asynchronous ``forward_async`` method that returns a future of the ``forward`` call 2024-08-06T21:20:02.8645089Z on the user-provided module on the remote side. 2024-08-06T21:20:02.8645176Z 2024-08-06T21:20:02.8645309Z Example:: 2024-08-06T21:20:02.8645452Z Run the following code in two different processes: 2024-08-06T21:20:02.8645534Z 2024-08-06T21:20:02.8645645Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8645732Z >>> # On worker 0: 2024-08-06T21:20:02.8645829Z >>> import torch 2024-08-06T21:20:02.8645950Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:20:02.8646051Z >>> from torch import nn, Tensor 2024-08-06T21:20:02.8646272Z >>> from torch.distributed.nn.api.remote_module import RemoteModule 2024-08-06T21:20:02.8646351Z >>> 2024-08-06T21:20:02.8646482Z >>> rpc.init_rpc("worker0", rank=0, world_size=2) 2024-08-06T21:20:02.8646603Z >>> remote_linear_module = RemoteModule( 2024-08-06T21:20:02.8646750Z >>> "worker1/cpu", nn.Linear, args=(20, 30), 2024-08-06T21:20:02.8646827Z >>> ) 2024-08-06T21:20:02.8646936Z >>> input = torch.randn(128, 20) 2024-08-06T21:20:02.8647085Z >>> ret_fut = remote_linear_module.forward_async(input) 2024-08-06T21:20:02.8647178Z >>> ret = ret_fut.wait() 2024-08-06T21:20:02.8647272Z >>> rpc.shutdown() 2024-08-06T21:20:02.8647348Z 2024-08-06T21:20:02.8647431Z >>> # On worker 1: 2024-08-06T21:20:02.8647525Z >>> import torch 2024-08-06T21:20:02.8647644Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:20:02.8647723Z >>> 2024-08-06T21:20:02.8647862Z >>> rpc.init_rpc("worker1", rank=1, world_size=2) 2024-08-06T21:20:02.8647948Z >>> rpc.shutdown() 2024-08-06T21:20:02.8648023Z 2024-08-06T21:20:02.8648216Z Furthermore, a more practical example that is combined with 2024-08-06T21:20:02.8648685Z `DistributedDataParallel `__ (DDP) 2024-08-06T21:20:02.8649019Z can be found in this `tutorial `__. 2024-08-06T21:20:02.8649095Z 2024-08-06T21:20:02.8649345Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8649431Z 2024-08-06T21:20:02.8649522Z warnings.warn(msg) 2024-08-06T21:20:02.8649597Z 2024-08-06T21:20:02.8649785Z --- Parse Warning: 60 / 100 --- 2024-08-06T21:20:02.8650781Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=DistributedOptimizer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/optimizer.py line=130. 2024-08-06T21:20:02.8651040Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8651123Z 2024-08-06T21:20:02.8651360Z DistributedOptimizer takes remote references to parameters scattered 2024-08-06T21:20:02.8651627Z across workers and applies the given optimizer locally for each parameter. 2024-08-06T21:20:02.8651714Z 2024-08-06T21:20:02.8651948Z This class uses :meth:`~torch.distributed.autograd.get_gradients` in order 2024-08-06T21:20:02.8652094Z to retrieve the gradients for specific parameters. 2024-08-06T21:20:02.8652177Z 2024-08-06T21:20:02.8652268Z Concurrent calls to 2024-08-06T21:20:02.8652474Z :meth:`~torch.distributed.optim.DistributedOptimizer.step`, 2024-08-06T21:20:02.8652611Z either from the same or different clients, will 2024-08-06T21:20:02.8652826Z be serialized on each worker -- as each worker's optimizer can only work 2024-08-06T21:20:02.8653033Z on one set of gradients at a time. However, there is no guarantee that 2024-08-06T21:20:02.8653273Z the full forward-backward-optimizer sequence will execute for one client 2024-08-06T21:20:02.8653487Z at a time. This means that the gradients being applied may not correspond 2024-08-06T21:20:02.8653716Z to the latest forward pass executed on a given worker. Also, there is no 2024-08-06T21:20:02.8653824Z guaranteed ordering across workers. 2024-08-06T21:20:02.8653947Z 2024-08-06T21:20:02.8654210Z `DistributedOptimizer` creates the local optimizer with TorchScript enabled 2024-08-06T21:20:02.8654524Z by default, so that optimizer updates are not blocked by the Python Global 2024-08-06T21:20:02.8654765Z Interpreter Lock (GIL) in the case of multithreaded training (e.g. Distributed 2024-08-06T21:20:02.8655007Z Model Parallel). This feature is currently enabled for most optimizers. You 2024-08-06T21:20:02.8655255Z can also follow `the recipe`__ in PyTorch tutorials to enable TorchScript support 2024-08-06T21:20:02.8655364Z for your own custom optimizers. 2024-08-06T21:20:02.8655441Z 2024-08-06T21:20:02.8655520Z Args: 2024-08-06T21:20:02.8655718Z optimizer_class (optim.Optimizer): the class of optimizer to 2024-08-06T21:20:02.8655855Z instantiate on each worker. 2024-08-06T21:20:02.8656056Z params_rref (list[RRef]): list of RRefs to local or remote parameters 2024-08-06T21:20:02.8656152Z to optimize. 2024-08-06T21:20:02.8656359Z args: arguments to pass to the optimizer constructor on each worker. 2024-08-06T21:20:02.8656575Z kwargs: arguments to pass to the optimizer constructor on each worker. 2024-08-06T21:20:02.8656657Z 2024-08-06T21:20:02.8656746Z Example:: 2024-08-06T21:20:02.8656855Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8657018Z >>> import torch.distributed.autograd as dist_autograd 2024-08-06T21:20:02.8657136Z >>> import torch.distributed.rpc as rpc 2024-08-06T21:20:02.8657234Z >>> from torch import optim 2024-08-06T21:20:02.8657419Z >>> from torch.distributed.optim import DistributedOptimizer 2024-08-06T21:20:02.8657497Z >>> 2024-08-06T21:20:02.8657628Z >>> with dist_autograd.context() as context_id: 2024-08-06T21:20:02.8657726Z >>> # Forward pass. 2024-08-06T21:20:02.8657919Z >>> rref1 = rpc.remote("worker1", torch.add, args=(torch.ones(2), 3)) 2024-08-06T21:20:02.8658111Z >>> rref2 = rpc.remote("worker1", torch.add, args=(torch.ones(2), 1)) 2024-08-06T21:20:02.8658238Z >>> loss = rref1.to_here() + rref2.to_here() 2024-08-06T21:20:02.8658316Z >>> 2024-08-06T21:20:02.8658415Z >>> # Backward pass. 2024-08-06T21:20:02.8658559Z >>> dist_autograd.backward(context_id, [loss.sum()]) 2024-08-06T21:20:02.8658638Z >>> 2024-08-06T21:20:02.8658734Z >>> # Optimizer. 2024-08-06T21:20:02.8658851Z >>> dist_optim = DistributedOptimizer( 2024-08-06T21:20:02.8658937Z >>> optim.SGD, 2024-08-06T21:20:02.8659033Z >>> [rref1, rref2], 2024-08-06T21:20:02.8659117Z >>> lr=0.05, 2024-08-06T21:20:02.8659196Z >>> ) 2024-08-06T21:20:02.8659310Z >>> dist_optim.step(context_id) 2024-08-06T21:20:02.8659411Z 2024-08-06T21:20:02.8659558Z __ https://github.com/pytorch/tutorials/pull/1465 2024-08-06T21:20:02.8659638Z 2024-08-06T21:20:02.8659890Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8659964Z 2024-08-06T21:20:02.8660059Z warnings.warn(msg) 2024-08-06T21:20:02.8660134Z 2024-08-06T21:20:02.8660323Z --- Parse Warning: 61 / 100 --- 2024-08-06T21:20:02.8661390Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=PostLocalSGDOptimizer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/post_localSGD_optimizer.py line=9. 2024-08-06T21:20:02.8661648Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8661725Z 2024-08-06T21:20:02.8662118Z Wraps an arbitrary :class:`torch.optim.Optimizer` and runs `post-local SGD `_, 2024-08-06T21:20:02.8662269Z This optimizer runs local optimizer at every step. 2024-08-06T21:20:02.8662650Z After the warm-up stage, it averages parameters periodically afer the local optimizer is applied. 2024-08-06T21:20:02.8662886Z 2024-08-06T21:20:02.8662966Z Args: 2024-08-06T21:20:02.8663075Z optim: The local optimizer. 2024-08-06T21:20:02.8663288Z averager: A model averager instance to run post-localSGD algorithm. 2024-08-06T21:20:02.8663366Z 2024-08-06T21:20:02.8663459Z Example:: 2024-08-06T21:20:02.8663534Z 2024-08-06T21:20:02.8663658Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8663753Z >>> import torch 2024-08-06T21:20:02.8663864Z >>> import torch.distributed as dist 2024-08-06T21:20:02.8664131Z >>> import torch.distributed.algorithms.model_averaging.averagers as averagers 2024-08-06T21:20:02.8664310Z >>> import torch.nn as nn 2024-08-06T21:20:02.8664498Z >>> from torch.distributed.optim import PostLocalSGDOptimizer 2024-08-06T21:20:02.8664767Z >>> from torch.distributed.algorithms.ddp_comm_hooks.post_localSGD_hook import ( 2024-08-06T21:20:02.8664877Z >>> PostLocalSGDState, 2024-08-06T21:20:02.8664971Z >>> post_localSGD_hook, 2024-08-06T21:20:02.8665050Z >>> ) 2024-08-06T21:20:02.8665137Z >>> 2024-08-06T21:20:02.8665285Z >>> model = nn.parallel.DistributedDataParallel( 2024-08-06T21:20:02.8665420Z >>> module, device_ids=[rank], output_device=rank 2024-08-06T21:20:02.8665509Z >>> ) 2024-08-06T21:20:02.8665755Z >>> 2024-08-06T21:20:02.8665897Z >>> # Register a post-localSGD communication hook. 2024-08-06T21:20:02.8666197Z >>> state = PostLocalSGDState(process_group=None, subgroup=None, start_localSGD_iter=100) 2024-08-06T21:20:02.8666356Z >>> model.register_comm_hook(state, post_localSGD_hook) 2024-08-06T21:20:02.8666448Z >>> 2024-08-06T21:20:02.8666649Z >>> # Create a post-localSGD optimizer that wraps a local optimizer. 2024-08-06T21:20:02.8666892Z >>> # Note that ``warmup_steps`` used in ``PostLocalSGDOptimizer`` must be the same as 2024-08-06T21:20:02.8667065Z >>> # ``start_localSGD_iter`` used in ``PostLocalSGDState``. 2024-08-06T21:20:02.8667269Z >>> local_optim = torch.optim.SGD(params=model.parameters(), lr=0.01) 2024-08-06T21:20:02.8667380Z >>> opt = PostLocalSGDOptimizer( 2024-08-06T21:20:02.8667486Z >>> optim=local_optim, 2024-08-06T21:20:02.8667729Z >>> averager=averagers.PeriodicModelAverager(period=4, warmup_steps=100) 2024-08-06T21:20:02.8667807Z >>> ) 2024-08-06T21:20:02.8667895Z >>> 2024-08-06T21:20:02.8668112Z >>> # In the first 100 steps, DDP runs global gradient averaging at every step. 2024-08-06T21:20:02.8668407Z >>> # After 100 steps, DDP runs gradient averaging within each subgroup (intra-node by default), 2024-08-06T21:20:02.8668841Z >>> # and post-localSGD optimizer runs global model averaging every 4 steps after applying the local optimizer. 2024-08-06T21:20:02.8668942Z >>> for step in range(0, 200): 2024-08-06T21:20:02.8669044Z >>> opt.zero_grad() 2024-08-06T21:20:02.8669152Z >>> loss = loss_fn(output, labels) 2024-08-06T21:20:02.8669244Z >>> loss.backward() 2024-08-06T21:20:02.8669338Z >>> opt.step() 2024-08-06T21:20:02.8669416Z 2024-08-06T21:20:02.8669663Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8669745Z 2024-08-06T21:20:02.8669837Z warnings.warn(msg) 2024-08-06T21:20:02.8669914Z 2024-08-06T21:20:02.8670123Z --- Parse Warning: 62 / 100 --- 2024-08-06T21:20:02.8671227Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ZeroRedundancyOptimizer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/optim/zero_redundancy_optimizer.py line=282. 2024-08-06T21:20:02.8671489Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8671573Z 2024-08-06T21:20:02.8672039Z Wrap an arbitrary :class:`optim.Optimizer ` and shards its states across ranks in the group. 2024-08-06T21:20:02.8672118Z 2024-08-06T21:20:02.8672246Z The sharing is done as described by ZeRO_. 2024-08-06T21:20:02.8672321Z 2024-08-06T21:20:02.8672472Z The local optimizer instance in each rank is only 2024-08-06T21:20:02.8672711Z responsible for updating approximately ``1 / world_size`` parameters and 2024-08-06T21:20:02.8672907Z hence only needs to keep ``1 / world_size`` optimizer states. After 2024-08-06T21:20:02.8673153Z parameters are updated locally, each rank will broadcast its parameters to 2024-08-06T21:20:02.8673332Z all other peers to keep all model replicas in the same state. 2024-08-06T21:20:02.8673547Z ``ZeroRedundancyOptimizer`` can be used in conjunction with 2024-08-06T21:20:02.8673807Z :class:`torch.nn.parallel.DistributedDataParallel` to reduce per-rank peak 2024-08-06T21:20:02.8673899Z memory consumption. 2024-08-06T21:20:02.8673980Z 2024-08-06T21:20:02.8674239Z ``ZeroRedundancyOptimizer`` uses a sorted-greedy algorithm to pack a number 2024-08-06T21:20:02.8674464Z of parameters at each rank. Each parameter belongs to a single rank and is 2024-08-06T21:20:02.8674696Z not divided among ranks. The partition is arbitrary and might not match the 2024-08-06T21:20:02.8674826Z the parameter registration or usage order. 2024-08-06T21:20:02.8674904Z 2024-08-06T21:20:02.8674987Z Arguments: 2024-08-06T21:20:02.8675179Z params (``Iterable``): an ``Iterable`` of :class:`torch.Tensor` s 2024-08-06T21:20:02.8675359Z or :class:`dict` s giving all parameters, which will be sharded 2024-08-06T21:20:02.8675458Z across ranks. 2024-08-06T21:20:02.8675536Z 2024-08-06T21:20:02.8675624Z Keyword Args: 2024-08-06T21:20:02.8675848Z optimizer_class (:class:`torch.nn.Optimizer`): the class of the local 2024-08-06T21:20:02.8675934Z optimizer. 2024-08-06T21:20:02.8676144Z process_group (``ProcessGroup``, optional): ``torch.distributed`` 2024-08-06T21:20:02.8676342Z ``ProcessGroup`` (default: ``dist.group.WORLD`` initialized by 2024-08-06T21:20:02.8676486Z :meth:`torch.distributed.init_process_group`). 2024-08-06T21:20:02.8676709Z parameters_as_bucket_view (bool, optional): if ``True``, parameters are 2024-08-06T21:20:02.8676924Z packed into buckets to speed up communication, and ``param.data`` 2024-08-06T21:20:02.8677118Z fields point to bucket views at different offsets; if ``False``, 2024-08-06T21:20:02.8677320Z each individual parameter is communicated separately, and each 2024-08-06T21:20:02.8677475Z ``params.data`` stays intact (default: ``False``). 2024-08-06T21:20:02.8677692Z overlap_with_ddp (bool, optional): if ``True``, :meth:`step` is 2024-08-06T21:20:02.8677886Z overlapped with :class:`DistributedDataParallel` 's gradient 2024-08-06T21:20:02.8678108Z synchronization; this requires (1) either a functional optimizer 2024-08-06T21:20:02.8678283Z for the ``optimizer_class`` argument or one with a functional 2024-08-06T21:20:02.8678457Z equivalent and (2) registering a DDP communication hook 2024-08-06T21:20:02.8678651Z constructed from one of the functions in ``ddp_zero_hook.py``; 2024-08-06T21:20:02.8678810Z parameters are packed into buckets matching those in 2024-08-06T21:20:02.8678970Z :class:`DistributedDataParallel`, meaning that the 2024-08-06T21:20:02.8679115Z ``parameters_as_bucket_view`` argument is ignored. 2024-08-06T21:20:02.8679298Z If ``False``, :meth:`step` runs disjointly after the backward pass 2024-08-06T21:20:02.8679395Z (per normal). 2024-08-06T21:20:02.8679490Z (default: ``False``) 2024-08-06T21:20:02.8679695Z **defaults: any trailing arguments, which are forwarded to the local 2024-08-06T21:20:02.8679840Z optimizer. 2024-08-06T21:20:02.8679921Z 2024-08-06T21:20:02.8680010Z Example:: 2024-08-06T21:20:02.8680098Z 2024-08-06T21:20:02.8680193Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8680293Z >>> import torch.nn as nn 2024-08-06T21:20:02.8680502Z >>> from torch.distributed.optim import ZeroRedundancyOptimizer 2024-08-06T21:20:02.8680699Z >>> from torch.nn.parallel import DistributedDataParallel as DDP 2024-08-06T21:20:02.8680931Z >>> model = nn.Sequential(*[nn.Linear(2000, 2000).to(rank) for _ in range(20)]) 2024-08-06T21:20:02.8681049Z >>> ddp = DDP(model, device_ids=[rank]) 2024-08-06T21:20:02.8681161Z >>> opt = ZeroRedundancyOptimizer( 2024-08-06T21:20:02.8681293Z >>> ddp.parameters(), 2024-08-06T21:20:02.8681413Z >>> optimizer_class=torch.optim.Adam, 2024-08-06T21:20:02.8681495Z >>> lr=0.01 2024-08-06T21:20:02.8681587Z >>> ) 2024-08-06T21:20:02.8681695Z >>> ddp(inputs).sum().backward() 2024-08-06T21:20:02.8681779Z >>> opt.step() 2024-08-06T21:20:02.8681867Z 2024-08-06T21:20:02.8681952Z .. warning:: 2024-08-06T21:20:02.8682154Z Currently, ``ZeroRedundancyOptimizer`` requires that all of the 2024-08-06T21:20:02.8682302Z passed-in parameters are the same dense type. 2024-08-06T21:20:02.8682380Z 2024-08-06T21:20:02.8682464Z .. warning:: 2024-08-06T21:20:02.8682685Z If you pass ``overlap_with_ddp=True``, be wary of the following: Given 2024-08-06T21:20:02.8682880Z the way that overlapping :class:`DistributedDataParallel` with 2024-08-06T21:20:02.8683109Z :class:`ZeroRedundancyOptimizer` is currently implemented, the first 2024-08-06T21:20:02.8683332Z two or three training iterations do not perform parameter updates in 2024-08-06T21:20:02.8683520Z the optimizer step, depending on if ``static_graph=False`` or 2024-08-06T21:20:02.8683714Z ``static_graph=True``, respectively. This is because it needs 2024-08-06T21:20:02.8683893Z information about the gradient bucketing strategy used by 2024-08-06T21:20:02.8684105Z :class:`DistributedDataParallel`, which is not finalized until the 2024-08-06T21:20:02.8684310Z second forward pass if ``static_graph=False`` or until the third 2024-08-06T21:20:02.8684514Z forward pass if ``static_graph=True``. To adjust for this, one option 2024-08-06T21:20:02.8684616Z is to prepend dummy inputs. 2024-08-06T21:20:02.8684704Z 2024-08-06T21:20:02.8684950Z .. warning:: ZeroRedundancyOptimizer is experimental and subject to change. 2024-08-06T21:20:02.8685026Z 2024-08-06T21:20:02.8685163Z .. _ZeRO: https://arxiv.org/abs/1910.02054 2024-08-06T21:20:02.8685243Z 2024-08-06T21:20:02.8685318Z 2024-08-06T21:20:02.8685608Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8685683Z 2024-08-06T21:20:02.8685773Z warnings.warn(msg) 2024-08-06T21:20:02.8685861Z 2024-08-06T21:20:02.8686047Z --- Parse Warning: 63 / 100 --- 2024-08-06T21:20:02.8687027Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=_CustomReducer in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/pipelining/microbatch.py line=28. 2024-08-06T21:20:02.8687296Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8687374Z 2024-08-06T21:20:02.8687610Z Custom reducer class that can be used to specify a custom operation that 2024-08-06T21:20:02.8687779Z reduces losses of multiple microbatches into one value. 2024-08-06T21:20:02.8687854Z 2024-08-06T21:20:02.8687952Z Example: 2024-08-06T21:20:02.8688044Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8688147Z >>> sum_reducer = _CustomReducer( 2024-08-06T21:20:02.8688254Z >>> torch.tensor(0.0), 2024-08-06T21:20:02.8688342Z >>> lambda a, b: a + b 2024-08-06T21:20:02.8688468Z >>> ) 2024-08-06T21:20:02.8688556Z 2024-08-06T21:20:02.8688806Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8688880Z 2024-08-06T21:20:02.8688982Z warnings.warn(msg) 2024-08-06T21:20:02.8689058Z 2024-08-06T21:20:02.8689236Z --- Parse Warning: 64 / 100 --- 2024-08-06T21:20:02.8690165Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=async_execution in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/functions.py line=6. 2024-08-06T21:20:02.8690419Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8690525Z 2024-08-06T21:20:02.8690769Z A decorator for a function indicating that the return value of the function 2024-08-06T21:20:02.8690972Z is guaranteed to be a :class:`~torch.futures.Future` object and this 2024-08-06T21:20:02.8691225Z function can run asynchronously on the RPC callee. More specifically, the 2024-08-06T21:20:02.8691456Z callee extracts the :class:`~torch.futures.Future` returned by the wrapped 2024-08-06T21:20:02.8691686Z function and installs subsequent processing steps as a callback to that 2024-08-06T21:20:02.8691926Z :class:`~torch.futures.Future`. The installed callback will read the value 2024-08-06T21:20:02.8692124Z from the :class:`~torch.futures.Future` when completed and send the 2024-08-06T21:20:02.8692300Z value back as the RPC response. That also means the returned 2024-08-06T21:20:02.8692537Z :class:`~torch.futures.Future` only exists on the callee side and is never 2024-08-06T21:20:02.8692757Z sent through RPC. This decorator is useful when the wrapped function's 2024-08-06T21:20:02.8692947Z (``fn``) execution needs to pause and resume due to, e.g., containing 2024-08-06T21:20:02.8693180Z :meth:`~torch.distributed.rpc.rpc_async` or waiting for other signals. 2024-08-06T21:20:02.8693260Z 2024-08-06T21:20:02.8693474Z .. note:: To enable asynchronous execution, applications must pass the 2024-08-06T21:20:02.8693697Z function object returned by this decorator to RPC APIs. If RPC detected 2024-08-06T21:20:02.8693908Z attributes installed by this decorator, it knows that this function 2024-08-06T21:20:02.8694097Z returns a ``Future`` object and will handle that accordingly. 2024-08-06T21:20:02.8694386Z However, this does not mean this decorator has to be outmost one when 2024-08-06T21:20:02.8694634Z defining a function. For example, when combined with ``@staticmethod`` 2024-08-06T21:20:02.8694853Z or ``@classmethod``, ``@rpc.functions.async_execution`` needs to be the 2024-08-06T21:20:02.8695070Z inner decorator to allow the target function be recognized as a static 2024-08-06T21:20:02.8695326Z or class function. This target function can still execute asynchronously 2024-08-06T21:20:02.8695562Z because, when accessed, the static or class method preserves attributes 2024-08-06T21:20:02.8695707Z installed by ``@rpc.functions.async_execution``. 2024-08-06T21:20:02.8695785Z 2024-08-06T21:20:02.8695872Z 2024-08-06T21:20:02.8695957Z Example:: 2024-08-06T21:20:02.8696150Z The returned :class:`~torch.futures.Future` object can come from 2024-08-06T21:20:02.8696288Z :meth:`~torch.distributed.rpc.rpc_async`, 2024-08-06T21:20:02.8696508Z :meth:`~torch.futures.Future.then`, or :class:`~torch.futures.Future` 2024-08-06T21:20:02.8696689Z constructor. The example below shows directly using the 2024-08-06T21:20:02.8696812Z :class:`~torch.futures.Future` returned by 2024-08-06T21:20:02.8696930Z :meth:`~torch.futures.Future.then`. 2024-08-06T21:20:02.8697021Z 2024-08-06T21:20:02.8697137Z >>> from torch.distributed import rpc 2024-08-06T21:20:02.8697216Z >>> 2024-08-06T21:20:02.8697400Z >>> # omitting setup and shutdown RPC 2024-08-06T21:20:02.8697479Z >>> 2024-08-06T21:20:02.8697570Z >>> # On all workers 2024-08-06T21:20:02.8697692Z >>> @rpc.functions.async_execution 2024-08-06T21:20:02.8697802Z >>> def async_add_chained(to, x, y, z): 2024-08-06T21:20:02.8697990Z >>> # This function runs on "worker1" and returns immediately when 2024-08-06T21:20:02.8698183Z >>> # the callback is installed through the `then(cb)` API. In the 2024-08-06T21:20:02.8698360Z >>> # mean time, the `rpc_async` to "worker2" can run concurrently. 2024-08-06T21:20:02.8698514Z >>> # When the return value of that `rpc_async` arrives at 2024-08-06T21:20:02.8698704Z >>> # "worker1", "worker1" will run the lambda function accordingly 2024-08-06T21:20:02.8698914Z >>> # and set the value for the previously returned `Future`, which 2024-08-06T21:20:02.8699102Z >>> # will then trigger RPC to send the result back to "worker0". 2024-08-06T21:20:02.8699269Z >>> return rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:20:02.8699377Z >>> lambda fut: fut.wait() + z 2024-08-06T21:20:02.8699466Z >>> ) 2024-08-06T21:20:02.8699545Z >>> 2024-08-06T21:20:02.8699629Z >>> # On worker0 2024-08-06T21:20:02.8699731Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8699822Z >>> ret = rpc.rpc_sync( 2024-08-06T21:20:02.8699908Z >>> "worker1", 2024-08-06T21:20:02.8700014Z >>> async_add_chained, 2024-08-06T21:20:02.8700130Z >>> args=("worker2", torch.ones(2), 1, 1) 2024-08-06T21:20:02.8700210Z >>> ) 2024-08-06T21:20:02.8700335Z >>> print(ret) # prints tensor([3., 3.]) 2024-08-06T21:20:02.8700413Z 2024-08-06T21:20:02.8700639Z When combined with TorchScript decorators, this decorator must be the 2024-08-06T21:20:02.8700734Z outmost one. 2024-08-06T21:20:02.8700809Z 2024-08-06T21:20:02.8700914Z >>> from torch import Tensor 2024-08-06T21:20:02.8701036Z >>> from torch.futures import Future 2024-08-06T21:20:02.8701150Z >>> from torch.distributed import rpc 2024-08-06T21:20:02.8701230Z >>> 2024-08-06T21:20:02.8701352Z >>> # omitting setup and shutdown RPC 2024-08-06T21:20:02.8701429Z >>> 2024-08-06T21:20:02.8701518Z >>> # On all workers 2024-08-06T21:20:02.8701619Z >>> @torch.jit.script 2024-08-06T21:20:02.8701762Z >>> def script_add(x: Tensor, y: Tensor) -> Tensor: 2024-08-06T21:20:02.8701851Z >>> return x + y 2024-08-06T21:20:02.8701941Z >>> 2024-08-06T21:20:02.8702053Z >>> @rpc.functions.async_execution 2024-08-06T21:20:02.8702148Z >>> @torch.jit.script 2024-08-06T21:20:02.8702341Z >>> def async_add(to: str, x: Tensor, y: Tensor) -> Future[Tensor]: 2024-08-06T21:20:02.8702502Z >>> return rpc.rpc_async(to, script_add, (x, y)) 2024-08-06T21:20:02.8702596Z >>> 2024-08-06T21:20:02.8702682Z >>> # On worker0 2024-08-06T21:20:02.8702773Z >>> ret = rpc.rpc_sync( 2024-08-06T21:20:02.8702870Z >>> "worker1", 2024-08-06T21:20:02.8702956Z >>> async_add, 2024-08-06T21:20:02.8703067Z >>> args=("worker2", torch.ones(2), 1) 2024-08-06T21:20:02.8703155Z >>> ) 2024-08-06T21:20:02.8703268Z >>> print(ret) # prints tensor([2., 2.]) 2024-08-06T21:20:02.8703346Z 2024-08-06T21:20:02.8703568Z When combined with static or class method, this decorator must be the 2024-08-06T21:20:02.8703651Z inner one. 2024-08-06T21:20:02.8703729Z 2024-08-06T21:20:02.8703852Z >>> from torch.distributed import rpc 2024-08-06T21:20:02.8703932Z >>> 2024-08-06T21:20:02.8704042Z >>> # omitting setup and shutdown RPC 2024-08-06T21:20:02.8704133Z >>> 2024-08-06T21:20:02.8704219Z >>> # On all workers 2024-08-06T21:20:02.8704326Z >>> class AsyncExecutionClass: 2024-08-06T21:20:02.8704416Z >>> 2024-08-06T21:20:02.8704556Z >>> @staticmethod 2024-08-06T21:20:02.8704673Z >>> @rpc.functions.async_execution 2024-08-06T21:20:02.8704793Z >>> def static_async_add(to, x, y, z): 2024-08-06T21:20:02.8704960Z >>> return rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:20:02.8705072Z >>> lambda fut: fut.wait() + z 2024-08-06T21:20:02.8705160Z >>> ) 2024-08-06T21:20:02.8705239Z >>> 2024-08-06T21:20:02.8705329Z >>> @classmethod 2024-08-06T21:20:02.8705449Z >>> @rpc.functions.async_execution 2024-08-06T21:20:02.8705570Z >>> def class_async_add(cls, to, x, y, z): 2024-08-06T21:20:02.8705690Z >>> ret_fut = torch.futures.Future() 2024-08-06T21:20:02.8705868Z >>> rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:20:02.8706013Z >>> lambda fut: ret_fut.set_result(fut.wait() + z) 2024-08-06T21:20:02.8706110Z >>> ) 2024-08-06T21:20:02.8706202Z >>> return ret_fut 2024-08-06T21:20:02.8706280Z >>> 2024-08-06T21:20:02.8706400Z >>> @rpc.functions.async_execution 2024-08-06T21:20:02.8706521Z >>> def bound_async_add(self, to, x, y, z): 2024-08-06T21:20:02.8706684Z >>> return rpc.rpc_async(to, torch.add, args=(x, y)).then( 2024-08-06T21:20:02.8706796Z >>> lambda fut: fut.wait() + z 2024-08-06T21:20:02.8706878Z >>> ) 2024-08-06T21:20:02.8706958Z >>> 2024-08-06T21:20:02.8707051Z >>> # On worker0 2024-08-06T21:20:02.8707147Z >>> ret = rpc.rpc_sync( 2024-08-06T21:20:02.8707234Z >>> "worker1", 2024-08-06T21:20:02.8707370Z >>> AsyncExecutionClass.static_async_add, 2024-08-06T21:20:02.8707489Z >>> args=("worker2", torch.ones(2), 1, 2) 2024-08-06T21:20:02.8707569Z >>> ) 2024-08-06T21:20:02.8707687Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:20:02.8707773Z >>> 2024-08-06T21:20:02.8707867Z >>> ret = rpc.rpc_sync( 2024-08-06T21:20:02.8707959Z >>> "worker1", 2024-08-06T21:20:02.8708086Z >>> AsyncExecutionClass.class_async_add, 2024-08-06T21:20:02.8708201Z >>> args=("worker2", torch.ones(2), 1, 2) 2024-08-06T21:20:02.8708290Z >>> ) 2024-08-06T21:20:02.8708404Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:20:02.8708480Z 2024-08-06T21:20:02.8708650Z This decorator also works with RRef helpers, i.e., . 2024-08-06T21:20:02.8708784Z :meth:`torch.distributed.rpc.RRef.rpc_sync`, 2024-08-06T21:20:02.8708935Z :meth:`torch.distributed.rpc.RRef.rpc_async`, and 2024-08-06T21:20:02.8709078Z :meth:`torch.distributed.rpc.RRef.remote`. 2024-08-06T21:20:02.8709184Z 2024-08-06T21:20:02.8709307Z >>> from torch.distributed import rpc 2024-08-06T21:20:02.8709387Z >>> 2024-08-06T21:20:02.8709522Z >>> # reuse the AsyncExecutionClass class above 2024-08-06T21:20:02.8709680Z >>> rref = rpc.remote("worker1", AsyncExecutionClass) 2024-08-06T21:20:02.8709886Z >>> ret = rref.rpc_sync().static_async_add("worker2", torch.ones(2), 1, 2) 2024-08-06T21:20:02.8709998Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:20:02.8710085Z >>> 2024-08-06T21:20:02.8710232Z >>> rref = rpc.remote("worker1", AsyncExecutionClass) 2024-08-06T21:20:02.8710460Z >>> ret = rref.rpc_async().static_async_add("worker2", torch.ones(2), 1, 2).wait() 2024-08-06T21:20:02.8710587Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:20:02.8710668Z >>> 2024-08-06T21:20:02.8710812Z >>> rref = rpc.remote("worker1", AsyncExecutionClass) 2024-08-06T21:20:02.8711052Z >>> ret = rref.remote().static_async_add("worker2", torch.ones(2), 1, 2).to_here() 2024-08-06T21:20:02.8711167Z >>> print(ret) # prints tensor([4., 4.]) 2024-08-06T21:20:02.8711243Z 2024-08-06T21:20:02.8711550Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8711629Z 2024-08-06T21:20:02.8711721Z warnings.warn(msg) 2024-08-06T21:20:02.8711810Z 2024-08-06T21:20:02.8712015Z --- Parse Warning: 65 / 100 --- 2024-08-06T21:20:02.8713095Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=TensorPipeRpcBackendOptions.set_device_map in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/rpc/options.py line=108. 2024-08-06T21:20:02.8713355Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8713435Z 2024-08-06T21:20:02.8713678Z Set device mapping between each RPC caller and callee pair. This 2024-08-06T21:20:02.8713859Z function can be called multiple times to incrementally add 2024-08-06T21:20:02.8713970Z device placement configurations. 2024-08-06T21:20:02.8714056Z 2024-08-06T21:20:02.8714142Z Args: 2024-08-06T21:20:02.8714238Z to (str): Callee name. 2024-08-06T21:20:02.8714437Z device_map (Dict of int, str, or torch.device): Device placement 2024-08-06T21:20:02.8714614Z mappings from this worker to the callee. This map must be 2024-08-06T21:20:02.8714702Z invertible. 2024-08-06T21:20:02.8714789Z 2024-08-06T21:20:02.8714874Z Example: 2024-08-06T21:20:02.8714983Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8715084Z >>> # both workers 2024-08-06T21:20:02.8715171Z >>> def add(x, y): 2024-08-06T21:20:02.8715303Z >>> print(x) # tensor([1., 1.], device='cuda:1') 2024-08-06T21:20:02.8715418Z >>> return x + y, (x + y).to(2) 2024-08-06T21:20:02.8715501Z >>> 2024-08-06T21:20:02.8715589Z >>> # on worker 0 2024-08-06T21:20:02.8715733Z >>> options = TensorPipeRpcBackendOptions( 2024-08-06T21:20:02.8715832Z >>> num_worker_threads=8, 2024-08-06T21:20:02.8715953Z >>> device_maps={"worker1": {0: 1}} 2024-08-06T21:20:02.8716083Z >>> # maps worker0's cuda:0 to worker1's cuda:1 2024-08-06T21:20:02.8716162Z >>> ) 2024-08-06T21:20:02.8716296Z >>> options.set_device_map("worker1", {1: 2}) 2024-08-06T21:20:02.8716422Z >>> # maps worker0's cuda:1 to worker1's cuda:2 2024-08-06T21:20:02.8716501Z >>> 2024-08-06T21:20:02.8716601Z >>> rpc.init_rpc( 2024-08-06T21:20:02.8716688Z >>> "worker0", 2024-08-06T21:20:02.8716768Z >>> rank=0, 2024-08-06T21:20:02.8716867Z >>> world_size=2, 2024-08-06T21:20:02.8716990Z >>> backend=rpc.BackendType.TENSORPIPE, 2024-08-06T21:20:02.8717094Z >>> rpc_backend_options=options 2024-08-06T21:20:02.8717186Z >>> ) 2024-08-06T21:20:02.8717292Z >>> 2024-08-06T21:20:02.8717381Z >>> x = torch.ones(2) 2024-08-06T21:20:02.8717543Z >>> rets = rpc.rpc_sync("worker1", add, args=(x.to(0), 1)) 2024-08-06T21:20:02.8717730Z >>> # The first argument will be moved to cuda:1 on worker1. When 2024-08-06T21:20:02.8717910Z >>> # sending the return value back, it will follow the invert of 2024-08-06T21:20:02.8718087Z >>> # the device map, and hence will be moved back to cuda:0 and 2024-08-06T21:20:02.8718179Z >>> # cuda:1 on worker0 2024-08-06T21:20:02.8718320Z >>> print(rets[0]) # tensor([2., 2.], device='cuda:0') 2024-08-06T21:20:02.8718468Z >>> print(rets[1]) # tensor([2., 2.], device='cuda:1') 2024-08-06T21:20:02.8718544Z 2024-08-06T21:20:02.8718791Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8718877Z 2024-08-06T21:20:02.8718971Z warnings.warn(msg) 2024-08-06T21:20:02.8719046Z 2024-08-06T21:20:02.8719238Z --- Parse Warning: 66 / 100 --- 2024-08-06T21:20:02.8720311Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=PrepareModuleInput in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py line=378. 2024-08-06T21:20:02.8720579Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8720658Z 2024-08-06T21:20:02.8721036Z Configure the nn.Module's inputs to convert the input tensors of the nn.Module to DTensors at runtime according to 2024-08-06T21:20:02.8721364Z ``input_layouts``, and perform layout redistribution according to the ``desired_input_layouts``. 2024-08-06T21:20:02.8721441Z 2024-08-06T21:20:02.8721527Z Keyword Args: 2024-08-06T21:20:02.8721736Z input_layouts (Union[Placement, Tuple[Optional[Placement]]]): 2024-08-06T21:20:02.8722088Z The DTensor layouts of input tensors for the nn.Module, this is used to convert the input tensors to 2024-08-06T21:20:02.8722457Z DTensors. If some inputs are not torch.Tensor or no need to convert to DTensors, ``None`` need to be specified 2024-08-06T21:20:02.8722573Z as a placeholder. default: None. 2024-08-06T21:20:02.8722800Z desired_input_layouts (Union[Placement, Tuple[Optional[Placement]]]): 2024-08-06T21:20:02.8723179Z The desired DTensor layout of input tensors for the nn.Module, this is used to ensure the inputs of the nn.Module 2024-08-06T21:20:02.8723570Z have the desired DTensor layouts. This argument needs to have the same length with ``input_layouts``. default: None. 2024-08-06T21:20:02.8723699Z input_kwarg_layouts (Dict[str, Placement]): 2024-08-06T21:20:02.8724076Z The DTensor layouts of input kwargs for the nn.Module, this is used to convert the input kwarg tensors to DTensors. 2024-08-06T21:20:02.8724170Z default: None 2024-08-06T21:20:02.8724324Z desired_input_kwarg_layouts: (Dict[str, Placement]): 2024-08-06T21:20:02.8724702Z The desired DTensor layout of input kwargs for the nn.Module, this is used to ensure the inputs of the nn.Module 2024-08-06T21:20:02.8724844Z have the desired DTensor layouts. default: None. 2024-08-06T21:20:02.8724962Z use_local_output (bool, optional): 2024-08-06T21:20:02.8725317Z Whether to use local :class:`torch.Tensor` instead of :class:`DTensor` for the module inputs, default: False. 2024-08-06T21:20:02.8725399Z Returns: 2024-08-06T21:20:02.8725720Z A :class:`ParallelStyle` object that prepares the sharding layouts of the nn.Module's inputs. 2024-08-06T21:20:02.8725797Z 2024-08-06T21:20:02.8725885Z Example:: 2024-08-06T21:20:02.8725992Z >>> # xdoctest: +SKIP(failing) 2024-08-06T21:20:02.8726300Z >>> from torch.distributed.tensor.parallel import parallelize_module, PrepareModuleInput 2024-08-06T21:20:02.8726516Z >>> from torch.distributed.device_mesh import init_device_mesh 2024-08-06T21:20:02.8726608Z >>> ... 2024-08-06T21:20:02.8726914Z >>> block = TransformerBlock(...) # block is a nn.Module that contains an "attn" Attention submodule 2024-08-06T21:20:02.8727035Z >>> tp_mesh = init_device_mesh("cuda", (8,)) 2024-08-06T21:20:02.8727129Z >>> 2024-08-06T21:20:02.8727460Z >>> # According to the style specified below, the first input of attn will be annotated to Sharded DTensor 2024-08-06T21:20:02.8727610Z >>> # and then redistributed to Replicated DTensor. 2024-08-06T21:20:02.8727709Z >>> parallelize_module( 2024-08-06T21:20:02.8727835Z >>> block, # this can be a submodule or module 2024-08-06T21:20:02.8727932Z >>> tp_mesh, 2024-08-06T21:20:02.8728033Z >>> parallelize_plan={ 2024-08-06T21:20:02.8728147Z >>> "attn": PrepareModuleInput( 2024-08-06T21:20:02.8728293Z >>> input_layouts=(Shard(0), None, None, ...), 2024-08-06T21:20:02.8728456Z >>> desired_input_layouts=(Replicate(), None, None, ...) 2024-08-06T21:20:02.8728542Z >>> ), 2024-08-06T21:20:02.8728721Z >>> } 2024-08-06T21:20:02.8728802Z >>> ) 2024-08-06T21:20:02.8728879Z 2024-08-06T21:20:02.8729144Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8729224Z 2024-08-06T21:20:02.8729318Z warnings.warn(msg) 2024-08-06T21:20:02.8729408Z 2024-08-06T21:20:02.8729588Z --- Parse Warning: 67 / 100 --- 2024-08-06T21:20:02.8730614Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=PrepareModuleOutput in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributed/tensor/parallel/style.py line=533. 2024-08-06T21:20:02.8730881Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8730986Z 2024-08-06T21:20:02.8731387Z Configure the nn.Module's outputs to convert the output tensors of the nn.Module to DTensors at runtime according to 2024-08-06T21:20:02.8731716Z ``output_layouts``, and perform layout redistribution according to the ``desired_output_layouts``. 2024-08-06T21:20:02.8731793Z 2024-08-06T21:20:02.8731889Z Keyword Args: 2024-08-06T21:20:02.8732048Z output_layouts (Union[Placement, Tuple[Placement]]): 2024-08-06T21:20:02.8732384Z The DTensor layouts of output tensors for the nn.Module, this is used to convert the output tensors to 2024-08-06T21:20:02.8732775Z DTensors if they are :class:`torch.Tensor`. If some outputs are not torch.Tensor or no need to convert to DTensors, 2024-08-06T21:20:02.8732912Z ``None`` need to be specified as a placeholder. 2024-08-06T21:20:02.8733107Z desired_output_layouts (Union[Placement, Tuple[Placement]]): 2024-08-06T21:20:02.8733507Z The desired DTensor layouts of output tensors for the nn.Module, this is used to ensure the outputs of the nn.Module 2024-08-06T21:20:02.8733620Z have the desired DTensor layouts. 2024-08-06T21:20:02.8733733Z use_local_output (bool, optional): 2024-08-06T21:20:02.8734104Z Whether to use local :class:`torch.Tensor` instead of :class:`DTensor` for the module outputs, default: True. 2024-08-06T21:20:02.8734185Z Returns: 2024-08-06T21:20:02.8734577Z A ParallelStyle object that prepares the sharding layouts of the nn.Module's outputs. 2024-08-06T21:20:02.8734660Z 2024-08-06T21:20:02.8734746Z Example:: 2024-08-06T21:20:02.8734861Z >>> # xdoctest: +SKIP(failing) 2024-08-06T21:20:02.8735175Z >>> from torch.distributed.tensor.parallel import parallelize_module, PrepareModuleOutput 2024-08-06T21:20:02.8735361Z >>> from torch.distributed.device_mesh import init_device_mesh 2024-08-06T21:20:02.8735457Z >>> ... 2024-08-06T21:20:02.8735757Z >>> block = TransformerBlock(...) # block is a nn.Module that contains an "attn" Attention submodule 2024-08-06T21:20:02.8735912Z >>> tp_mesh = init_device_mesh("cuda", (8,)) 2024-08-06T21:20:02.8736003Z >>> 2024-08-06T21:20:02.8736401Z >>> # According to the style specified below, the output of the TransformerBlock will be converted to Replicated DTensor 2024-08-06T21:20:02.8736532Z >>> # and then redistributed to Sharded DTensor. 2024-08-06T21:20:02.8736644Z >>> parallelize_module( 2024-08-06T21:20:02.8736770Z >>> block, # this can be a submodule or module 2024-08-06T21:20:02.8736869Z >>> tp_mesh, 2024-08-06T21:20:02.8737004Z >>> parallelize_plan = PrepareModuleOutput( 2024-08-06T21:20:02.8737116Z >>> output_layouts=Replicate(), 2024-08-06T21:20:02.8737242Z >>> desired_output_layouts=Shard(0) 2024-08-06T21:20:02.8737323Z >>> ) 2024-08-06T21:20:02.8737403Z >>> ) 2024-08-06T21:20:02.8737494Z 2024-08-06T21:20:02.8737741Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8737816Z 2024-08-06T21:20:02.8737918Z warnings.warn(msg) 2024-08-06T21:20:02.8738039Z 2024-08-06T21:20:02.8738229Z --- Parse Warning: 68 / 100 --- 2024-08-06T21:20:02.8739243Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=MixtureSameFamily in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/mixture_same_family.py line=13. 2024-08-06T21:20:02.8739501Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8739579Z 2024-08-06T21:20:02.8739810Z The `MixtureSameFamily` distribution implements a (batch of) mixture 2024-08-06T21:20:02.8740054Z distribution where all component are from different parameterizations of 2024-08-06T21:20:02.8740290Z the same distribution type. It is parameterized by a `Categorical` 2024-08-06T21:20:02.8740496Z "selecting distribution" (over `k` component) and a component 2024-08-06T21:20:02.8740702Z distribution, i.e., a `Distribution` with a rightmost batch shape 2024-08-06T21:20:02.8740867Z (equal to `[k]`) which indexes each (batch of) component. 2024-08-06T21:20:02.8740946Z 2024-08-06T21:20:02.8741039Z Examples:: 2024-08-06T21:20:02.8741124Z 2024-08-06T21:20:02.8741238Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.8741439Z >>> # Construct Gaussian Mixture Model in 1D consisting of 5 equally 2024-08-06T21:20:02.8741559Z >>> # weighted normal distributions 2024-08-06T21:20:02.8741678Z >>> mix = D.Categorical(torch.ones(5,)) 2024-08-06T21:20:02.8741822Z >>> comp = D.Normal(torch.randn(5,), torch.rand(5,)) 2024-08-06T21:20:02.8741950Z >>> gmm = MixtureSameFamily(mix, comp) 2024-08-06T21:20:02.8742030Z 2024-08-06T21:20:02.8742228Z >>> # Construct Gaussian Mixture Model in 2D consisting of 5 equally 2024-08-06T21:20:02.8742368Z >>> # weighted bivariate normal distributions 2024-08-06T21:20:02.8742484Z >>> mix = D.Categorical(torch.ones(5,)) 2024-08-06T21:20:02.8742601Z >>> comp = D.Independent(D.Normal( 2024-08-06T21:20:02.8742734Z ... torch.randn(5,2), torch.rand(5,2)), 1) 2024-08-06T21:20:02.8742853Z >>> gmm = MixtureSameFamily(mix, comp) 2024-08-06T21:20:02.8742931Z 2024-08-06T21:20:02.8743123Z >>> # Construct a batch of 3 Gaussian Mixture Models in 2D each 2024-08-06T21:20:02.8743323Z >>> # consisting of 5 random weighted bivariate normal distributions 2024-08-06T21:20:02.8743451Z >>> mix = D.Categorical(torch.rand(3,5)) 2024-08-06T21:20:02.8743561Z >>> comp = D.Independent(D.Normal( 2024-08-06T21:20:02.8743693Z ... torch.randn(3,5,2), torch.rand(3,5,2)), 1) 2024-08-06T21:20:02.8743822Z >>> gmm = MixtureSameFamily(mix, comp) 2024-08-06T21:20:02.8743904Z 2024-08-06T21:20:02.8744011Z Args: 2024-08-06T21:20:02.8744222Z mixture_distribution: `torch.distributions.Categorical`-like 2024-08-06T21:20:02.8744411Z instance. Manages the probability of selecting component. 2024-08-06T21:20:02.8744578Z The number of categories must match the rightmost batch 2024-08-06T21:20:02.8744775Z dimension of the `component_distribution`. Must have either 2024-08-06T21:20:02.8744914Z scalar `batch_shape` or `batch_shape` matching 2024-08-06T21:20:02.8745048Z `component_distribution.batch_shape[:-1]` 2024-08-06T21:20:02.8745270Z component_distribution: `torch.distributions.Distribution`-like 2024-08-06T21:20:02.8745447Z instance. Right-most batch dimension indexes component. 2024-08-06T21:20:02.8745527Z 2024-08-06T21:20:02.8745784Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8745866Z 2024-08-06T21:20:02.8745962Z warnings.warn(msg) 2024-08-06T21:20:02.8746050Z 2024-08-06T21:20:02.8746232Z --- Parse Warning: 69 / 100 --- 2024-08-06T21:20:02.8747275Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=RelaxedBernoulli in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/relaxed_bernoulli.py line=110. 2024-08-06T21:20:02.8747536Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8747617Z 2024-08-06T21:20:02.8747806Z Creates a RelaxedBernoulli distribution, parametrized by 2024-08-06T21:20:02.8747995Z :attr:`temperature`, and either :attr:`probs` or :attr:`logits` 2024-08-06T21:20:02.8748208Z (but not both). This is a relaxed version of the `Bernoulli` distribution, 2024-08-06T21:20:02.8748393Z so the values are in (0, 1), and has reparametrizable samples. 2024-08-06T21:20:02.8748498Z 2024-08-06T21:20:02.8748590Z Example:: 2024-08-06T21:20:02.8748682Z 2024-08-06T21:20:02.8748819Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:20:02.8748945Z >>> m = RelaxedBernoulli(torch.tensor([2.2]), 2024-08-06T21:20:02.8749081Z ... torch.tensor([0.1, 0.2, 0.3, 0.99])) 2024-08-06T21:20:02.8749166Z >>> m.sample() 2024-08-06T21:20:02.8749279Z tensor([ 0.2951, 0.3442, 0.8918, 0.9021]) 2024-08-06T21:20:02.8749364Z 2024-08-06T21:20:02.8749444Z Args: 2024-08-06T21:20:02.8749584Z temperature (Tensor): relaxation temperature 2024-08-06T21:20:02.8749759Z probs (Number, Tensor): the probability of sampling `1` 2024-08-06T21:20:02.8749915Z logits (Number, Tensor): the log-odds of sampling `1` 2024-08-06T21:20:02.8750001Z 2024-08-06T21:20:02.8750248Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8750326Z 2024-08-06T21:20:02.8750430Z warnings.warn(msg) 2024-08-06T21:20:02.8750508Z 2024-08-06T21:20:02.8750686Z --- Parse Warning: 70 / 100 --- 2024-08-06T21:20:02.8751740Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=RelaxedOneHotCategorical in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/distributions/relaxed_categorical.py line=98. 2024-08-06T21:20:02.8751998Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8752076Z 2024-08-06T21:20:02.8752299Z Creates a RelaxedOneHotCategorical distribution parametrized by 2024-08-06T21:20:02.8752490Z :attr:`temperature`, and either :attr:`probs` or :attr:`logits`. 2024-08-06T21:20:02.8752724Z This is a relaxed version of the :class:`OneHotCategorical` distribution, so 2024-08-06T21:20:02.8752892Z its samples are on simplex, and are reparametrizable. 2024-08-06T21:20:02.8752970Z 2024-08-06T21:20:02.8753060Z Example:: 2024-08-06T21:20:02.8753150Z 2024-08-06T21:20:02.8753315Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:20:02.8753476Z >>> m = RelaxedOneHotCategorical(torch.tensor([2.2]), 2024-08-06T21:20:02.8753602Z ... torch.tensor([0.1, 0.2, 0.3, 0.4])) 2024-08-06T21:20:02.8753689Z >>> m.sample() 2024-08-06T21:20:02.8753810Z tensor([ 0.1294, 0.2324, 0.3859, 0.2523]) 2024-08-06T21:20:02.8753888Z 2024-08-06T21:20:02.8753971Z Args: 2024-08-06T21:20:02.8754113Z temperature (Tensor): relaxation temperature 2024-08-06T21:20:02.8754229Z probs (Tensor): event probabilities 2024-08-06T21:20:02.8754412Z logits (Tensor): unnormalized log probability for each event 2024-08-06T21:20:02.8754496Z 2024-08-06T21:20:02.8754745Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8754823Z 2024-08-06T21:20:02.8754924Z warnings.warn(msg) 2024-08-06T21:20:02.8755005Z 2024-08-06T21:20:02.8755184Z --- Parse Warning: 71 / 100 --- 2024-08-06T21:20:02.8756255Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=assoc_in in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=230. 2024-08-06T21:20:02.8756520Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8756708Z Return a new dict with new, potentially nested, key value pair 2024-08-06T21:20:02.8756795Z 2024-08-06T21:20:02.8756896Z >>> purchase = {'name': 'Alice', 2024-08-06T21:20:02.8757030Z ... 'order': {'items': ['Apple', 'Orange'], 2024-08-06T21:20:02.8757139Z ... 'costs': [0.50, 1.25]}, 2024-08-06T21:20:02.8757256Z ... 'credit card': '5555-1234-1234-1234'} 2024-08-06T21:20:02.8757465Z >>> assoc_in(purchase, ['order', 'costs'], [0.25, 1.00]) # doctest: +SKIP 2024-08-06T21:20:02.8757608Z {'credit card': '5555-1234-1234-1234', 2024-08-06T21:20:02.8757697Z 'name': 'Alice', 2024-08-06T21:20:02.8757877Z 'order': {'costs': [0.25, 1.00], 'items': ['Apple', 'Orange']}} 2024-08-06T21:20:02.8757956Z 2024-08-06T21:20:02.8758206Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8758295Z 2024-08-06T21:20:02.8758389Z warnings.warn(msg) 2024-08-06T21:20:02.8758467Z 2024-08-06T21:20:02.8758649Z --- Parse Warning: 72 / 100 --- 2024-08-06T21:20:02.8759672Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=update_in in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=245. 2024-08-06T21:20:02.8759928Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8760081Z Update value in a (potentially) nested dictionary 2024-08-06T21:20:02.8760164Z 2024-08-06T21:20:02.8760258Z inputs: 2024-08-06T21:20:02.8760368Z d - dictionary on which to operate 2024-08-06T21:20:02.8760588Z keys - list or tuple giving the location of the value to be changed in d 2024-08-06T21:20:02.8760719Z func - function to operate on that value 2024-08-06T21:20:02.8760793Z 2024-08-06T21:20:02.8760979Z If keys == [k0,..,kX] and d[k0]..[kX] == v, update_in returns a copy of the 2024-08-06T21:20:02.8761220Z original dictionary with v replaced by func(v), but does not mutate the 2024-08-06T21:20:02.8761313Z original dictionary. 2024-08-06T21:20:02.8761392Z 2024-08-06T21:20:02.8761606Z If k0 is not a key in d, update_in creates nested dictionaries to the depth 2024-08-06T21:20:02.8761819Z specified by the keys, with the innermost value set to func(default). 2024-08-06T21:20:02.8761898Z 2024-08-06T21:20:02.8762005Z >>> inc = lambda x: x + 1 2024-08-06T21:20:02.8762151Z >>> update_in({'a': 0}, ['a'], inc) 2024-08-06T21:20:02.8762234Z {'a': 1} 2024-08-06T21:20:02.8762320Z 2024-08-06T21:20:02.8762430Z >>> transaction = {'name': 'Alice', 2024-08-06T21:20:02.8762567Z ... 'purchase': {'items': ['Apple', 'Orange'], 2024-08-06T21:20:02.8762688Z ... 'costs': [0.50, 1.25]}, 2024-08-06T21:20:02.8762975Z ... 'credit card': '5555-1234-1234-1234'} 2024-08-06T21:20:02.8763187Z >>> update_in(transaction, ['purchase', 'costs'], sum) # doctest: +SKIP 2024-08-06T21:20:02.8763303Z {'credit card': '5555-1234-1234-1234', 2024-08-06T21:20:02.8763394Z 'name': 'Alice', 2024-08-06T21:20:02.8763570Z 'purchase': {'costs': 1.75, 'items': ['Apple', 'Orange']}} 2024-08-06T21:20:02.8763651Z 2024-08-06T21:20:02.8763767Z >>> # updating a value when k0 is not in d 2024-08-06T21:20:02.8763910Z >>> update_in({}, [1, 2, 3], str, default="bar") 2024-08-06T21:20:02.8764000Z {1: {2: {3: 'bar'}}} 2024-08-06T21:20:02.8764111Z >>> update_in({1: 'foo'}, [2, 3, 4], inc, 0) 2024-08-06T21:20:02.8764213Z {1: 'foo', 2: {3: {4: 1}}} 2024-08-06T21:20:02.8764375Z 2024-08-06T21:20:02.8764626Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8764716Z 2024-08-06T21:20:02.8764810Z warnings.warn(msg) 2024-08-06T21:20:02.8764889Z 2024-08-06T21:20:02.8765083Z --- Parse Warning: 73 / 100 --- 2024-08-06T21:20:02.8766263Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=get_in in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=303. 2024-08-06T21:20:02.8766526Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8766747Z Returns coll[i0][i1]...[iX] where [i0, i1, ..., iX]==keys. 2024-08-06T21:20:02.8766827Z 2024-08-06T21:20:02.8767015Z If coll[i0][i1]...[iX] cannot be found, returns ``default``, unless 2024-08-06T21:20:02.8767214Z ``no_default`` is specified, then it raises KeyError or IndexError. 2024-08-06T21:20:02.8767292Z 2024-08-06T21:20:02.8767507Z ``get_in`` is a generalization of ``operator.getitem`` for nested data 2024-08-06T21:20:02.8767635Z structures such as dictionaries and lists. 2024-08-06T21:20:02.8767714Z 2024-08-06T21:20:02.8767833Z >>> transaction = {'name': 'Alice', 2024-08-06T21:20:02.8767966Z ... 'purchase': {'items': ['Apple', 'Orange'], 2024-08-06T21:20:02.8768078Z ... 'costs': [0.50, 1.25]}, 2024-08-06T21:20:02.8768204Z ... 'credit card': '5555-1234-1234-1234'} 2024-08-06T21:20:02.8768336Z >>> get_in(['purchase', 'items', 0], transaction) 2024-08-06T21:20:02.8768423Z 'Apple' 2024-08-06T21:20:02.8768537Z >>> get_in(['name'], transaction) 2024-08-06T21:20:02.8768620Z 'Alice' 2024-08-06T21:20:02.8768747Z >>> get_in(['purchase', 'total'], transaction) 2024-08-06T21:20:02.8768903Z >>> get_in(['purchase', 'items', 'apple'], transaction) 2024-08-06T21:20:02.8769033Z >>> get_in(['purchase', 'items', 10], transaction) 2024-08-06T21:20:02.8769164Z >>> get_in(['purchase', 'total'], transaction, 0) 2024-08-06T21:20:02.8769253Z 0 2024-08-06T21:20:02.8769360Z >>> get_in(['y'], {}, no_default=True) 2024-08-06T21:20:02.8769472Z Traceback (most recent call last): 2024-08-06T21:20:02.8769564Z ... 2024-08-06T21:20:02.8769653Z KeyError: 'y' 2024-08-06T21:20:02.8769731Z 2024-08-06T21:20:02.8769822Z See Also: 2024-08-06T21:20:02.8769913Z itertoolz.get 2024-08-06T21:20:02.8770006Z operator.getitem 2024-08-06T21:20:02.8770095Z 2024-08-06T21:20:02.8770347Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8770466Z 2024-08-06T21:20:02.8770559Z warnings.warn(msg) 2024-08-06T21:20:02.8770638Z 2024-08-06T21:20:02.8770839Z --- Parse Warning: 74 / 100 --- 2024-08-06T21:20:02.8771861Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=groupby in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/unification/unification_tools.py line=355. 2024-08-06T21:20:02.8772122Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8772241Z Group a collection by a key function 2024-08-06T21:20:02.8772321Z 2024-08-06T21:20:02.8772486Z >>> names = ['Alice', 'Bob', 'Charlie', 'Dan', 'Edith', 'Frank'] 2024-08-06T21:20:02.8772614Z >>> groupby(len, names) # doctest: +SKIP 2024-08-06T21:20:02.8772769Z {3: ['Bob', 'Dan'], 5: ['Alice', 'Edith', 'Frank'], 7: ['Charlie']} 2024-08-06T21:20:02.8772855Z 2024-08-06T21:20:02.8772967Z >>> iseven = lambda x: x % 2 == 0 2024-08-06T21:20:02.8773132Z >>> groupby(iseven, [1, 2, 3, 4, 5, 6, 7, 8]) # doctest: +SKIP 2024-08-06T21:20:02.8773294Z {False: [1, 3, 5, 7], True: [2, 4, 6, 8]} 2024-08-06T21:20:02.8773378Z 2024-08-06T21:20:02.8773520Z Non-callable keys imply grouping on a member. 2024-08-06T21:20:02.8773602Z 2024-08-06T21:20:02.8773761Z >>> groupby('gender', [{'name': 'Alice', 'gender': 'F'}, 2024-08-06T21:20:02.8773883Z ... {'name': 'Bob', 'gender': 'M'}, 2024-08-06T21:20:02.8774042Z ... {'name': 'Charlie', 'gender': 'M'}]) # doctest:+SKIP 2024-08-06T21:20:02.8774154Z {'F': [{'gender': 'F', 'name': 'Alice'}], 2024-08-06T21:20:02.8774261Z 'M': [{'gender': 'M', 'name': 'Bob'}, 2024-08-06T21:20:02.8774452Z {'gender': 'M', 'name': 'Charlie'}]} 2024-08-06T21:20:02.8774563Z 2024-08-06T21:20:02.8774706Z Not to be confused with ``itertools.groupby`` 2024-08-06T21:20:02.8774795Z 2024-08-06T21:20:02.8774879Z See Also: 2024-08-06T21:20:02.8774965Z countby 2024-08-06T21:20:02.8775055Z 2024-08-06T21:20:02.8775309Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8775389Z 2024-08-06T21:20:02.8775494Z warnings.warn(msg) 2024-08-06T21:20:02.8775572Z 2024-08-06T21:20:02.8775754Z --- Parse Warning: 75 / 100 --- 2024-08-06T21:20:02.8776675Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=SyncBatchNorm in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py line=601. 2024-08-06T21:20:02.8776934Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8777110Z Applies Batch Normalization over a N-Dimensional input. 2024-08-06T21:20:02.8777203Z 2024-08-06T21:20:02.8777549Z The N-D input is a mini-batch of [N-2]D inputs with additional channel dimension) as described in the paper 2024-08-06T21:20:02.8777782Z `Batch Normalization: Accelerating Deep Network Training by Reducing 2024-08-06T21:20:02.8777992Z Internal Covariate Shift `__ . 2024-08-06T21:20:02.8778068Z 2024-08-06T21:20:02.8778171Z .. math:: 2024-08-06T21:20:02.8778246Z 2024-08-06T21:20:02.8778463Z y = \frac{x - \mathrm{E}[x]}{ \sqrt{\mathrm{Var}[x] + \epsilon}} * \gamma + \beta 2024-08-06T21:20:02.8778549Z 2024-08-06T21:20:02.8778772Z The mean and standard-deviation are calculated per-dimension over all 2024-08-06T21:20:02.8779002Z mini-batches of the same process groups. :math:`\gamma` and :math:`\beta` 2024-08-06T21:20:02.8779250Z are learnable parameter vectors of size `C` (where `C` is the input size). 2024-08-06T21:20:02.8779423Z By default, the elements of :math:`\gamma` are sampled from 2024-08-06T21:20:02.8779648Z :math:`\mathcal{U}(0, 1)` and the elements of :math:`\beta` are set to 0. 2024-08-06T21:20:02.8779912Z The standard-deviation is calculated via the biased estimator, equivalent to 2024-08-06T21:20:02.8780023Z `torch.var(input, unbiased=False)`. 2024-08-06T21:20:02.8780101Z 2024-08-06T21:20:02.8780338Z Also by default, during training this layer keeps running estimates of its 2024-08-06T21:20:02.8780569Z computed mean and variance, which are then used for normalization during 2024-08-06T21:20:02.8780814Z evaluation. The running estimates are kept with a default :attr:`momentum` 2024-08-06T21:20:02.8780893Z of 0.1. 2024-08-06T21:20:02.8780971Z 2024-08-06T21:20:02.8781203Z If :attr:`track_running_stats` is set to ``False``, this layer then does not 2024-08-06T21:20:02.8781415Z keep running estimates, and batch statistics are instead used during 2024-08-06T21:20:02.8781517Z evaluation time as well. 2024-08-06T21:20:02.8781606Z 2024-08-06T21:20:02.8781693Z .. note:: 2024-08-06T21:20:02.8781914Z This :attr:`momentum` argument is different from one used in optimizer 2024-08-06T21:20:02.8782188Z classes and the conventional notion of momentum. Mathematically, the 2024-08-06T21:20:02.8782318Z update rule for running statistics here is 2024-08-06T21:20:02.8782580Z :math:`\hat{x}_\text{new} = (1 - \text{momentum}) \times \hat{x} + \text{momentum} \times x_t`, 2024-08-06T21:20:02.8782793Z where :math:`\hat{x}` is the estimated statistic and :math:`x_t` is the 2024-08-06T21:20:02.8782892Z new observed value. 2024-08-06T21:20:02.8782972Z 2024-08-06T21:20:02.8783282Z Because the Batch Normalization is done for each channel in the ``C`` dimension, computing 2024-08-06T21:20:02.8783529Z statistics on ``(N, +)`` slices, it's common terminology to call this Volumetric Batch 2024-08-06T21:20:02.8783739Z Normalization or Spatio-temporal Batch Normalization. 2024-08-06T21:20:02.8783818Z 2024-08-06T21:20:02.8783960Z Currently :class:`SyncBatchNorm` only supports 2024-08-06T21:20:02.8784251Z :class:`~torch.nn.DistributedDataParallel` (DDP) with single GPU per process. Use 2024-08-06T21:20:02.8784456Z :meth:`torch.nn.SyncBatchNorm.convert_sync_batchnorm()` to convert 2024-08-06T21:20:02.8784660Z :attr:`BatchNorm*D` layer to :class:`SyncBatchNorm` before wrapping 2024-08-06T21:20:02.8784761Z Network with DDP. 2024-08-06T21:20:02.8784840Z 2024-08-06T21:20:02.8784922Z Args: 2024-08-06T21:20:02.8785093Z num_features: :math:`C` from an expected input of size 2024-08-06T21:20:02.8785184Z :math:`(N, C, +)` 2024-08-06T21:20:02.8785373Z eps: a value added to the denominator for numerical stability. 2024-08-06T21:20:02.8785477Z Default: ``1e-5`` 2024-08-06T21:20:02.8785665Z momentum: the value used for the running_mean and running_var 2024-08-06T21:20:02.8785872Z computation. Can be set to ``None`` for cumulative moving average 2024-08-06T21:20:02.8786002Z (i.e. simple average). Default: 0.1 2024-08-06T21:20:02.8786205Z affine: a boolean value that when set to ``True``, this module has 2024-08-06T21:20:02.8786360Z learnable affine parameters. Default: ``True`` 2024-08-06T21:20:02.8786569Z track_running_stats: a boolean value that when set to ``True``, this 2024-08-06T21:20:02.8786796Z module tracks the running mean and variance, and when set to ``False``, 2024-08-06T21:20:02.8787025Z this module does not track such statistics, and initializes statistics 2024-08-06T21:20:02.8787223Z buffers :attr:`running_mean` and :attr:`running_var` as ``None``. 2024-08-06T21:20:02.8787450Z When these buffers are ``None``, this module always uses batch statistics. 2024-08-06T21:20:02.8787641Z in both training and eval modes. Default: ``True`` 2024-08-06T21:20:02.8787883Z process_group: synchronization of stats happen within each process group 2024-08-06T21:20:02.8788111Z individually. Default behavior is synchronization across the whole 2024-08-06T21:20:02.8788207Z world 2024-08-06T21:20:02.8788286Z 2024-08-06T21:20:02.8788379Z Shape: 2024-08-06T21:20:02.8788484Z - Input: :math:`(N, C, +)` 2024-08-06T21:20:02.8788627Z - Output: :math:`(N, C, +)` (same shape as input) 2024-08-06T21:20:02.8788719Z 2024-08-06T21:20:02.8788803Z .. note:: 2024-08-06T21:20:02.8789043Z Synchronization of batchnorm statistics occurs only while training, i.e. 2024-08-06T21:20:02.8789252Z synchronization is disabled when ``model.eval()`` is set or if 2024-08-06T21:20:02.8789374Z ``self.training`` is otherwise ``False``. 2024-08-06T21:20:02.8789454Z 2024-08-06T21:20:02.8789555Z Examples:: 2024-08-06T21:20:02.8789634Z 2024-08-06T21:20:02.8789729Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8789851Z >>> # With Learnable Parameters 2024-08-06T21:20:02.8790003Z >>> m = nn.SyncBatchNorm(100) 2024-08-06T21:20:02.8790121Z >>> # creating process group (optional) 2024-08-06T21:20:02.8790267Z >>> # ranks is a list of int identifying rank ids. 2024-08-06T21:20:02.8790363Z >>> ranks = list(range(8)) 2024-08-06T21:20:02.8790465Z >>> r1, r2 = ranks[:4], ranks[4:] 2024-08-06T21:20:02.8790620Z >>> # Note: every rank calls into new_group for every 2024-08-06T21:20:02.8790765Z >>> # process group created, even if that rank is not 2024-08-06T21:20:02.8790861Z >>> # part of the group. 2024-08-06T21:20:02.8791116Z >>> process_groups = [torch.distributed.new_group(pids) for pids in [r1, r2]] 2024-08-06T21:20:02.8791351Z >>> process_group = process_groups[0 if dist.get_rank() <= 3 else 1] 2024-08-06T21:20:02.8791476Z >>> # Without Learnable Parameters 2024-08-06T21:20:02.8791682Z >>> m = nn.BatchNorm3d(100, affine=False, process_group=process_group) 2024-08-06T21:20:02.8791800Z >>> input = torch.randn(20, 100, 35, 45, 10) 2024-08-06T21:20:02.8791905Z >>> output = m(input) 2024-08-06T21:20:02.8791984Z 2024-08-06T21:20:02.8792097Z >>> # network is nn.BatchNorm layer 2024-08-06T21:20:02.8792381Z >>> sync_bn_network = nn.SyncBatchNorm.convert_sync_batchnorm(network, process_group) 2024-08-06T21:20:02.8792538Z >>> # only single gpu per process is currently supported 2024-08-06T21:20:02.8792750Z >>> ddp_sync_bn_network = torch.nn.parallel.DistributedDataParallel( 2024-08-06T21:20:02.8792870Z >>> sync_bn_network, 2024-08-06T21:20:02.8792995Z >>> device_ids=[args.local_rank], 2024-08-06T21:20:02.8793124Z >>> output_device=args.local_rank) 2024-08-06T21:20:02.8793215Z 2024-08-06T21:20:02.8793465Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8793546Z 2024-08-06T21:20:02.8793650Z warnings.warn(msg) 2024-08-06T21:20:02.8793726Z 2024-08-06T21:20:02.8793921Z --- Parse Warning: 76 / 100 --- 2024-08-06T21:20:02.8794952Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=SyncBatchNorm.convert_sync_batchnorm in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/batchnorm.py line=824. 2024-08-06T21:20:02.8795210Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8795529Z Converts all :attr:`BatchNorm*D` layers in the model to :class:`torch.nn.SyncBatchNorm` layers. 2024-08-06T21:20:02.8795610Z 2024-08-06T21:20:02.8795722Z Args: 2024-08-06T21:20:02.8795976Z module (nn.Module): module containing one or more :attr:`BatchNorm*D` layers 2024-08-06T21:20:02.8796195Z process_group (optional): process group to scope synchronization, 2024-08-06T21:20:02.8796304Z default is the whole world 2024-08-06T21:20:02.8796392Z 2024-08-06T21:20:02.8796479Z Returns: 2024-08-06T21:20:02.8796727Z The original :attr:`module` with the converted :class:`torch.nn.SyncBatchNorm` 2024-08-06T21:20:02.8796948Z layers. If the original :attr:`module` is a :attr:`BatchNorm*D` layer, 2024-08-06T21:20:02.8797150Z a new :class:`torch.nn.SyncBatchNorm` layer object will be returned 2024-08-06T21:20:02.8797248Z instead. 2024-08-06T21:20:02.8797327Z 2024-08-06T21:20:02.8797414Z Example:: 2024-08-06T21:20:02.8797504Z 2024-08-06T21:20:02.8797626Z >>> # Network with nn.BatchNorm layer 2024-08-06T21:20:02.8797767Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:20:02.8797896Z >>> module = torch.nn.Sequential( 2024-08-06T21:20:02.8798060Z >>> torch.nn.Linear(20, 100), 2024-08-06T21:20:02.8798179Z >>> torch.nn.BatchNorm1d(100), 2024-08-06T21:20:02.8798284Z >>> ).cuda() 2024-08-06T21:20:02.8798404Z >>> # creating process group (optional) 2024-08-06T21:20:02.8798544Z >>> # ranks is a list of int identifying rank ids. 2024-08-06T21:20:02.8798658Z >>> ranks = list(range(8)) 2024-08-06T21:20:02.8798760Z >>> r1, r2 = ranks[:4], ranks[4:] 2024-08-06T21:20:02.8798904Z >>> # Note: every rank calls into new_group for every 2024-08-06T21:20:02.8799066Z >>> # process group created, even if that rank is not 2024-08-06T21:20:02.8799192Z >>> # part of the group. 2024-08-06T21:20:02.8799312Z >>> # xdoctest: +SKIP("distributed") 2024-08-06T21:20:02.8799569Z >>> process_groups = [torch.distributed.new_group(pids) for pids in [r1, r2]] 2024-08-06T21:20:02.8799772Z >>> process_group = process_groups[0 if dist.get_rank() <= 3 else 1] 2024-08-06T21:20:02.8800076Z >>> sync_bn_module = torch.nn.SyncBatchNorm.convert_sync_batchnorm(module, process_group) 2024-08-06T21:20:02.8800157Z 2024-08-06T21:20:02.8800237Z 2024-08-06T21:20:02.8800493Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8800573Z 2024-08-06T21:20:02.8800665Z warnings.warn(msg) 2024-08-06T21:20:02.8800753Z 2024-08-06T21:20:02.8800937Z --- Parse Warning: 77 / 100 --- 2024-08-06T21:20:02.8801812Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=Unflatten in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/flatten.py line=60. 2024-08-06T21:20:02.8802081Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8802166Z 2024-08-06T21:20:02.8802474Z Unflattens a tensor dim expanding it to a desired shape. For use with :class:`~nn.Sequential`. 2024-08-06T21:20:02.8802564Z 2024-08-06T21:20:02.8802829Z * :attr:`dim` specifies the dimension of the input tensor to be unflattened, and it can 2024-08-06T21:20:02.8803058Z be either `int` or `str` when `Tensor` or `NamedTensor` is used, respectively. 2024-08-06T21:20:02.8803137Z 2024-08-06T21:20:02.8803446Z * :attr:`unflattened_size` is the new shape of the unflattened dimension of the tensor and it can be 2024-08-06T21:20:02.8803705Z a `tuple` of ints or a `list` of ints or `torch.Size` for `Tensor` input; a `NamedShape` 2024-08-06T21:20:02.8803867Z (tuple of `(name, size)` tuples) for `NamedTensor` input. 2024-08-06T21:20:02.8803975Z 2024-08-06T21:20:02.8804066Z Shape: 2024-08-06T21:20:02.8804278Z - Input: :math:`(*, S_{\text{dim}}, *)`, where :math:`S_{\text{dim}}` is the size at 2024-08-06T21:20:02.8804529Z dimension :attr:`dim` and :math:`*` means any number of dimensions including none. 2024-08-06T21:20:02.8804753Z - Output: :math:`(*, U_1, ..., U_n, *)`, where :math:`U` = :attr:`unflattened_size` and 2024-08-06T21:20:02.8804872Z :math:`\prod_{i=1}^n U_i = S_{\text{dim}}`. 2024-08-06T21:20:02.8804951Z 2024-08-06T21:20:02.8805041Z Args: 2024-08-06T21:20:02.8805188Z dim (Union[int, str]): Dimension to be unflattened 2024-08-06T21:20:02.8805529Z unflattened_size (Union[torch.Size, Tuple, List, NamedShape]): New shape of the unflattened dimension 2024-08-06T21:20:02.8805618Z 2024-08-06T21:20:02.8805703Z Examples: 2024-08-06T21:20:02.8805820Z >>> input = torch.randn(2, 50) 2024-08-06T21:20:02.8805918Z >>> # With tuple of ints 2024-08-06T21:20:02.8806015Z >>> m = nn.Sequential( 2024-08-06T21:20:02.8806118Z >>> nn.Linear(50, 50), 2024-08-06T21:20:02.8806218Z >>> nn.Unflatten(1, (2, 5, 5)) 2024-08-06T21:20:02.8806345Z >>> ) 2024-08-06T21:20:02.8806451Z >>> output = m(input) 2024-08-06T21:20:02.8806541Z >>> output.size() 2024-08-06T21:20:02.8806640Z torch.Size([2, 2, 5, 5]) 2024-08-06T21:20:02.8806744Z >>> # With torch.Size 2024-08-06T21:20:02.8806836Z >>> m = nn.Sequential( 2024-08-06T21:20:02.8806931Z >>> nn.Linear(50, 50), 2024-08-06T21:20:02.8807062Z >>> nn.Unflatten(1, torch.Size([2, 5, 5])) 2024-08-06T21:20:02.8807140Z >>> ) 2024-08-06T21:20:02.8807232Z >>> output = m(input) 2024-08-06T21:20:02.8807331Z >>> output.size() 2024-08-06T21:20:02.8807427Z torch.Size([2, 2, 5, 5]) 2024-08-06T21:20:02.8807545Z >>> # With namedshape (tuple of tuples) 2024-08-06T21:20:02.8807723Z >>> input = torch.randn(2, 50, names=('N', 'features')) 2024-08-06T21:20:02.8807926Z >>> unflatten = nn.Unflatten('features', (('C', 2), ('H', 5), ('W', 5))) 2024-08-06T21:20:02.8808030Z >>> output = unflatten(input) 2024-08-06T21:20:02.8808129Z >>> output.size() 2024-08-06T21:20:02.8808223Z torch.Size([2, 2, 5, 5]) 2024-08-06T21:20:02.8808299Z 2024-08-06T21:20:02.8808556Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8808638Z 2024-08-06T21:20:02.8808737Z warnings.warn(msg) 2024-08-06T21:20:02.8808822Z 2024-08-06T21:20:02.8809001Z --- Parse Warning: 78 / 100 --- 2024-08-06T21:20:02.8809998Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=TripletMarginWithDistanceLoss in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/loss.py line=1696. 2024-08-06T21:20:02.8810262Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8810456Z Creates a criterion that measures the triplet loss given input 2024-08-06T21:20:02.8810664Z tensors :math:`a`, :math:`p`, and :math:`n` (representing anchor, 2024-08-06T21:20:02.8810873Z positive, and negative examples, respectively), and a nonnegative, 2024-08-06T21:20:02.8811117Z real-valued function ("distance function") used to compute the relationship 2024-08-06T21:20:02.8811340Z between the anchor and positive example ("positive distance") and the 2024-08-06T21:20:02.8811490Z anchor and negative example ("negative distance"). 2024-08-06T21:20:02.8811567Z 2024-08-06T21:20:02.8811782Z The unreduced loss (i.e., with :attr:`reduction` set to ``'none'``) 2024-08-06T21:20:02.8811878Z can be described as: 2024-08-06T21:20:02.8811955Z 2024-08-06T21:20:02.8812050Z .. math:: 2024-08-06T21:20:02.8812189Z \ell(a, p, n) = L = \{l_1,\dots,l_N\}^\top, \quad 2024-08-06T21:20:02.8812375Z l_i = \max \{d(a_i, p_i) - d(a_i, n_i) + {\rm margin}, 0\} 2024-08-06T21:20:02.8812451Z 2024-08-06T21:20:02.8812695Z where :math:`N` is the batch size; :math:`d` is a nonnegative, real-valued function 2024-08-06T21:20:02.8812991Z quantifying the closeness of two tensors, referred to as the :attr:`distance_function`; 2024-08-06T21:20:02.8813224Z and :math:`margin` is a nonnegative margin representing the minimum difference 2024-08-06T21:20:02.8813465Z between the positive and negative distances that is required for the loss to 2024-08-06T21:20:02.8813697Z be 0. The input tensors have :math:`N` elements each and can be of any shape 2024-08-06T21:20:02.8813812Z that the distance function can handle. 2024-08-06T21:20:02.8813890Z 2024-08-06T21:20:02.8814010Z If :attr:`reduction` is not ``'none'`` 2024-08-06T21:20:02.8814107Z (default ``'mean'``), then: 2024-08-06T21:20:02.8814187Z 2024-08-06T21:20:02.8814283Z .. math:: 2024-08-06T21:20:02.8814462Z \ell(x, y) = 2024-08-06T21:20:02.8814556Z \begin{cases} 2024-08-06T21:20:02.8814818Z \operatorname{mean}(L), & \text{if reduction} = \text{`mean';}\\ 2024-08-06T21:20:02.8815004Z \operatorname{sum}(L), & \text{if reduction} = \text{`sum'.} 2024-08-06T21:20:02.8815090Z \end{cases} 2024-08-06T21:20:02.8815179Z 2024-08-06T21:20:02.8815409Z See also :class:`~torch.nn.TripletMarginLoss`, which computes the triplet 2024-08-06T21:20:02.8815670Z loss for input tensors using the :math:`l_p` distance as the distance function. 2024-08-06T21:20:02.8815748Z 2024-08-06T21:20:02.8815829Z Args: 2024-08-06T21:20:02.8816107Z distance_function (Callable, optional): A nonnegative, real-valued function that 2024-08-06T21:20:02.8816291Z quantifies the closeness of two tensors. If not specified, 2024-08-06T21:20:02.8816483Z `nn.PairwiseDistance` will be used. Default: ``None`` 2024-08-06T21:20:02.8816757Z margin (float, optional): A nonnegative margin representing the minimum difference 2024-08-06T21:20:02.8817028Z between the positive and negative distances required for the loss to be 0. Larger 2024-08-06T21:20:02.8817304Z margins penalize cases where the negative examples are not distant enough from the 2024-08-06T21:20:02.8817484Z anchors, relative to the positives. Default: :math:`1`. 2024-08-06T21:20:02.8817728Z swap (bool, optional): Whether to use the distance swap described in the paper 2024-08-06T21:20:02.8817994Z `Learning shallow convolutional feature descriptors with triplet losses` by 2024-08-06T21:20:02.8818224Z V. Balntas, E. Riba et al. If True, and if the positive example is closer to the 2024-08-06T21:20:02.8818487Z negative example than the anchor is, swaps the positive example and the anchor in 2024-08-06T21:20:02.8818630Z the loss computation. Default: ``False``. 2024-08-06T21:20:02.8818902Z reduction (str, optional): Specifies the (optional) reduction to apply to the output: 2024-08-06T21:20:02.8819085Z ``'none'`` | ``'mean'`` | ``'sum'``. ``'none'``: no reduction will be applied, 2024-08-06T21:20:02.8819270Z ``'mean'``: the sum of the output will be divided by the number of 2024-08-06T21:20:02.8819501Z elements in the output, ``'sum'``: the output will be summed. Default: ``'mean'`` 2024-08-06T21:20:02.8819580Z 2024-08-06T21:20:02.8819665Z 2024-08-06T21:20:02.8819748Z Shape: 2024-08-06T21:20:02.8819988Z - Input: :math:`(N, *)` where :math:`*` represents any number of additional dimensions 2024-08-06T21:20:02.8820128Z as supported by the distance function. 2024-08-06T21:20:02.8820378Z - Output: A Tensor of shape :math:`(N)` if :attr:`reduction` is ``'none'``, or a scalar 2024-08-06T21:20:02.8820510Z otherwise. 2024-08-06T21:20:02.8820585Z 2024-08-06T21:20:02.8820673Z Examples:: 2024-08-06T21:20:02.8820761Z 2024-08-06T21:20:02.8820862Z >>> # Initialize embeddings 2024-08-06T21:20:02.8820979Z >>> embedding = nn.Embedding(1000, 128) 2024-08-06T21:20:02.8821113Z >>> anchor_ids = torch.randint(0, 1000, (1,)) 2024-08-06T21:20:02.8821237Z >>> positive_ids = torch.randint(0, 1000, (1,)) 2024-08-06T21:20:02.8821359Z >>> negative_ids = torch.randint(0, 1000, (1,)) 2024-08-06T21:20:02.8821478Z >>> anchor = embedding(anchor_ids) 2024-08-06T21:20:02.8821592Z >>> positive = embedding(positive_ids) 2024-08-06T21:20:02.8821706Z >>> negative = embedding(negative_ids) 2024-08-06T21:20:02.8821795Z >>> 2024-08-06T21:20:02.8821897Z >>> # Built-in Distance Function 2024-08-06T21:20:02.8821993Z >>> triplet_loss = \ 2024-08-06T21:20:02.8822281Z >>> nn.TripletMarginWithDistanceLoss(distance_function=nn.PairwiseDistance()) 2024-08-06T21:20:02.8822430Z >>> output = triplet_loss(anchor, positive, negative) 2024-08-06T21:20:02.8822526Z >>> output.backward() 2024-08-06T21:20:02.8822674Z >>> 2024-08-06T21:20:02.8822778Z >>> # Custom Distance Function 2024-08-06T21:20:02.8822877Z >>> def l_infinity(x1, x2): 2024-08-06T21:20:02.8823038Z >>> return torch.max(torch.abs(x1 - x2), dim=1).values 2024-08-06T21:20:02.8823118Z >>> 2024-08-06T21:20:02.8823303Z >>> # xdoctest: +SKIP("FIXME: Would call backwards a second time") 2024-08-06T21:20:02.8823408Z >>> triplet_loss = ( 2024-08-06T21:20:02.8823685Z >>> nn.TripletMarginWithDistanceLoss(distance_function=l_infinity, margin=1.5)) 2024-08-06T21:20:02.8823843Z >>> output = triplet_loss(anchor, positive, negative) 2024-08-06T21:20:02.8823938Z >>> output.backward() 2024-08-06T21:20:02.8824046Z >>> 2024-08-06T21:20:02.8824173Z >>> # Custom Distance Function (Lambda) 2024-08-06T21:20:02.8824266Z >>> triplet_loss = ( 2024-08-06T21:20:02.8824393Z >>> nn.TripletMarginWithDistanceLoss( 2024-08-06T21:20:02.8824615Z >>> distance_function=lambda x, y: 1.0 - F.cosine_similarity(x, y))) 2024-08-06T21:20:02.8824758Z >>> output = triplet_loss(anchor, positive, negative) 2024-08-06T21:20:02.8824855Z >>> output.backward() 2024-08-06T21:20:02.8824947Z 2024-08-06T21:20:02.8825033Z Reference: 2024-08-06T21:20:02.8825333Z V. Balntas, et al.: Learning shallow convolutional feature descriptors with triplet losses: 2024-08-06T21:20:02.8825524Z http://www.bmva.org/bmvc/2016/papers/paper119/index.html 2024-08-06T21:20:02.8825602Z 2024-08-06T21:20:02.8825855Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 17)) 2024-08-06T21:20:02.8825943Z 2024-08-06T21:20:02.8826038Z warnings.warn(msg) 2024-08-06T21:20:02.8826116Z 2024-08-06T21:20:02.8826321Z --- Parse Warning: 79 / 100 --- 2024-08-06T21:20:02.8827220Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=MaxUnpool2d in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/pooling.py line=395. 2024-08-06T21:20:02.8827491Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8827636Z Computes a partial inverse of :class:`MaxPool2d`. 2024-08-06T21:20:02.8827712Z 2024-08-06T21:20:02.8827981Z :class:`MaxPool2d` is not fully invertible, since the non-maximal values are lost. 2024-08-06T21:20:02.8828055Z 2024-08-06T21:20:02.8828277Z :class:`MaxUnpool2d` takes in as input the output of :class:`MaxPool2d` 2024-08-06T21:20:02.8828526Z including the indices of the maximal values and computes a partial inverse 2024-08-06T21:20:02.8828668Z in which all non-maximal values are set to zero. 2024-08-06T21:20:02.8828776Z 2024-08-06T21:20:02.8828867Z Note: 2024-08-06T21:20:02.8829176Z This operation may behave nondeterministically when the input indices has repeat values. 2024-08-06T21:20:02.8829552Z See https://github.com/pytorch/pytorch/issues/80827 and :doc:`/notes/randomness` for more information. 2024-08-06T21:20:02.8829638Z 2024-08-06T21:20:02.8829862Z .. note:: :class:`MaxPool2d` can map several input sizes to the same output 2024-08-06T21:20:02.8830042Z sizes. Hence, the inversion process can get ambiguous. 2024-08-06T21:20:02.8830223Z To accommodate this, you can provide the needed output size 2024-08-06T21:20:02.8830425Z as an additional argument :attr:`output_size` in the forward call. 2024-08-06T21:20:02.8830556Z See the Inputs and Example below. 2024-08-06T21:20:02.8830631Z 2024-08-06T21:20:02.8830714Z Args: 2024-08-06T21:20:02.8830902Z kernel_size (int or tuple): Size of the max pooling window. 2024-08-06T21:20:02.8831069Z stride (int or tuple): Stride of the max pooling window. 2024-08-06T21:20:02.8831250Z It is set to :attr:`kernel_size` by default. 2024-08-06T21:20:02.8831440Z padding (int or tuple): Padding that was added to the input 2024-08-06T21:20:02.8831520Z 2024-08-06T21:20:02.8831601Z Inputs: 2024-08-06T21:20:02.8831724Z - `input`: the input Tensor to invert 2024-08-06T21:20:02.8831920Z - `indices`: the indices given out by :class:`~torch.nn.MaxPool2d` 2024-08-06T21:20:02.8832071Z - `output_size` (optional): the targeted output size 2024-08-06T21:20:02.8832156Z 2024-08-06T21:20:02.8839789Z Shape: 2024-08-06T21:20:02.8840102Z - Input: :math:`(N, C, H_{in}, W_{in})` or :math:`(C, H_{in}, W_{in})`. 2024-08-06T21:20:02.8840336Z - Output: :math:`(N, C, H_{out}, W_{out})` or :math:`(C, H_{out}, W_{out})`, where 2024-08-06T21:20:02.8840498Z 2024-08-06T21:20:02.8840595Z .. math:: 2024-08-06T21:20:02.8840888Z H_{out} = (H_{in} - 1) \times \text{stride[0]} - 2 \times \text{padding[0]} + \text{kernel\_size[0]} 2024-08-06T21:20:02.8840968Z 2024-08-06T21:20:02.8841057Z .. math:: 2024-08-06T21:20:02.8841329Z W_{out} = (W_{in} - 1) \times \text{stride[1]} - 2 \times \text{padding[1]} + \text{kernel\_size[1]} 2024-08-06T21:20:02.8841410Z 2024-08-06T21:20:02.8841585Z or as given by :attr:`output_size` in the call operator 2024-08-06T21:20:02.8841663Z 2024-08-06T21:20:02.8841754Z Example:: 2024-08-06T21:20:02.8841847Z 2024-08-06T21:20:02.8842008Z >>> pool = nn.MaxPool2d(2, stride=2, return_indices=True) 2024-08-06T21:20:02.8842133Z >>> unpool = nn.MaxUnpool2d(2, stride=2) 2024-08-06T21:20:02.8842274Z >>> input = torch.tensor([[[[ 1., 2., 3., 4.], 2024-08-06T21:20:02.8842382Z [ 5., 6., 7., 8.], 2024-08-06T21:20:02.8842492Z [ 9., 10., 11., 12.], 2024-08-06T21:20:02.8842619Z [13., 14., 15., 16.]]]]) 2024-08-06T21:20:02.8842736Z >>> output, indices = pool(input) 2024-08-06T21:20:02.8842845Z >>> unpool(output, indices) 2024-08-06T21:20:02.8842965Z tensor([[[[ 0., 0., 0., 0.], 2024-08-06T21:20:02.8843069Z [ 0., 6., 0., 8.], 2024-08-06T21:20:02.8843182Z [ 0., 0., 0., 0.], 2024-08-06T21:20:02.8843286Z [ 0., 14., 0., 16.]]]]) 2024-08-06T21:20:02.8843507Z >>> # Now using output_size to resolve an ambiguous size for the inverse 2024-08-06T21:20:02.8843643Z >>> input = torch.tensor([[[[ 1., 2., 3., 4., 5.], 2024-08-06T21:20:02.8843755Z [ 6., 7., 8., 9., 10.], 2024-08-06T21:20:02.8843917Z [11., 12., 13., 14., 15.], 2024-08-06T21:20:02.8844027Z [16., 17., 18., 19., 20.]]]]) 2024-08-06T21:20:02.8844145Z >>> output, indices = pool(input) 2024-08-06T21:20:02.8844326Z >>> # This call will not work without specifying output_size 2024-08-06T21:20:02.8844483Z >>> unpool(output, indices, output_size=input.size()) 2024-08-06T21:20:02.8844599Z tensor([[[[ 0., 0., 0., 0., 0.], 2024-08-06T21:20:02.8844696Z [ 0., 7., 0., 9., 0.], 2024-08-06T21:20:02.8844795Z [ 0., 0., 0., 0., 0.], 2024-08-06T21:20:02.8844912Z [ 0., 17., 0., 19., 0.]]]]) 2024-08-06T21:20:02.8844992Z 2024-08-06T21:20:02.8845073Z 2024-08-06T21:20:02.8845166Z 2024-08-06T21:20:02.8845418Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8845501Z 2024-08-06T21:20:02.8845611Z warnings.warn(msg) 2024-08-06T21:20:02.8845692Z 2024-08-06T21:20:02.8845925Z --- Parse Warning: 80 / 100 --- 2024-08-06T21:20:02.8846913Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=EmbeddingBag in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/sparse.py line=270. 2024-08-06T21:20:02.8847177Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8847497Z Compute sums or means of 'bags' of embeddings, without instantiating the intermediate embeddings. 2024-08-06T21:20:02.8847590Z 2024-08-06T21:20:02.8847911Z For bags of constant length, no :attr:`per_sample_weights`, no indices equal to :attr:`padding_idx`, 2024-08-06T21:20:02.8848034Z and with 2D inputs, this class 2024-08-06T21:20:02.8848111Z 2024-08-06T21:20:02.8848417Z * with ``mode="sum"`` is equivalent to :class:`~torch.nn.Embedding` followed by ``torch.sum(dim=1)``, 2024-08-06T21:20:02.8848772Z * with ``mode="mean"`` is equivalent to :class:`~torch.nn.Embedding` followed by ``torch.mean(dim=1)``, 2024-08-06T21:20:02.8849074Z * with ``mode="max"`` is equivalent to :class:`~torch.nn.Embedding` followed by ``torch.max(dim=1)``. 2024-08-06T21:20:02.8849157Z 2024-08-06T21:20:02.8849520Z However, :class:`~torch.nn.EmbeddingBag` is much more time and memory efficient than using a chain of these 2024-08-06T21:20:02.8849610Z operations. 2024-08-06T21:20:02.8849691Z 2024-08-06T21:20:02.8849961Z EmbeddingBag also supports per-sample weights as an argument to the forward 2024-08-06T21:20:02.8850201Z pass. This scales the output of the Embedding before performing a weighted 2024-08-06T21:20:02.8850454Z reduction as specified by ``mode``. If :attr:`per_sample_weights` is passed, the 2024-08-06T21:20:02.8850702Z only supported ``mode`` is ``"sum"``, which computes a weighted sum according to 2024-08-06T21:20:02.8850811Z :attr:`per_sample_weights`. 2024-08-06T21:20:02.8850902Z 2024-08-06T21:20:02.8850987Z Args: 2024-08-06T21:20:02.8851172Z num_embeddings (int): size of the dictionary of embeddings 2024-08-06T21:20:02.8851347Z embedding_dim (int): the size of each embedding vector 2024-08-06T21:20:02.8851660Z max_norm (float, optional): If given, each embedding vector with norm larger than :attr:`max_norm` 2024-08-06T21:20:02.8851815Z is renormalized to have norm :attr:`max_norm`. 2024-08-06T21:20:02.8852163Z norm_type (float, optional): The p of the p-norm to compute for the :attr:`max_norm` option. Default ``2``. 2024-08-06T21:20:02.8852493Z scale_grad_by_freq (bool, optional): if given, this will scale gradients by the inverse of frequency of 2024-08-06T21:20:02.8852657Z the words in the mini-batch. Default ``False``. 2024-08-06T21:20:02.8852884Z Note: this option is not supported when ``mode="max"``. 2024-08-06T21:20:02.8853138Z mode (str, optional): ``"sum"``, ``"mean"`` or ``"max"``. Specifies the way to reduce the bag. 2024-08-06T21:20:02.8853368Z ``"sum"`` computes the weighted sum, taking :attr:`per_sample_weights` 2024-08-06T21:20:02.8853586Z into consideration. ``"mean"`` computes the average of the values 2024-08-06T21:20:02.8853762Z in the bag, ``"max"`` computes the max value over each bag. 2024-08-06T21:20:02.8853885Z Default: ``"mean"`` 2024-08-06T21:20:02.8854206Z sparse (bool, optional): if ``True``, gradient w.r.t. :attr:`weight` matrix will be a sparse tensor. See 2024-08-06T21:20:02.8854674Z Notes for more details regarding sparse gradients. Note: this option is not 2024-08-06T21:20:02.8854822Z supported when ``mode="max"``. 2024-08-06T21:20:02.8855252Z include_last_offset (bool, optional): if ``True``, :attr:`offsets` has one additional element, where the last element 2024-08-06T21:20:02.8855490Z is equivalent to the size of `indices`. This matches the CSR format. 2024-08-06T21:20:02.8855821Z padding_idx (int, optional): If specified, the entries at :attr:`padding_idx` do not contribute to the 2024-08-06T21:20:02.8856094Z gradient; therefore, the embedding vector at :attr:`padding_idx` is not updated 2024-08-06T21:20:02.8856347Z during training, i.e. it remains as a fixed "pad". For a newly constructed 2024-08-06T21:20:02.8856612Z EmbeddingBag, the embedding vector at :attr:`padding_idx` will default to all 2024-08-06T21:20:02.8856883Z zeros, but can be updated to another value to be used as the padding vector. 2024-08-06T21:20:02.8857146Z Note that the embedding vector at :attr:`padding_idx` is excluded from the 2024-08-06T21:20:02.8857251Z reduction. 2024-08-06T21:20:02.8857345Z 2024-08-06T21:20:02.8857436Z Attributes: 2024-08-06T21:20:02.8857753Z weight (Tensor): the learnable weights of the module of shape `(num_embeddings, embedding_dim)` 2024-08-06T21:20:02.8857911Z initialized from :math:`\mathcal{N}(0, 1)`. 2024-08-06T21:20:02.8857993Z 2024-08-06T21:20:02.8858107Z Examples:: 2024-08-06T21:20:02.8858199Z 2024-08-06T21:20:02.8858403Z >>> # an EmbeddingBag module containing 10 tensors of size 3 2024-08-06T21:20:02.8858564Z >>> embedding_sum = nn.EmbeddingBag(10, 3, mode='sum') 2024-08-06T21:20:02.8858708Z >>> # a batch of 2 samples of 4 indices each 2024-08-06T21:20:02.8879520Z >>> input = torch.tensor([1, 2, 4, 5, 4, 3, 2, 9], dtype=torch.long) 2024-08-06T21:20:02.8879746Z >>> offsets = torch.tensor([0, 4], dtype=torch.long) 2024-08-06T21:20:02.8879896Z >>> # xdoctest: +IGNORE_WANT("non-deterministic") 2024-08-06T21:20:02.8880004Z >>> embedding_sum(input, offsets) 2024-08-06T21:20:02.8880107Z tensor([[-0.8861, -5.4350, -0.0523], 2024-08-06T21:20:02.8880208Z [ 1.1306, -2.5798, -1.0044]]) 2024-08-06T21:20:02.8880282Z 2024-08-06T21:20:02.8880391Z >>> # Example with padding_idx 2024-08-06T21:20:02.8880593Z >>> embedding_sum = nn.EmbeddingBag(10, 3, mode='sum', padding_idx=2) 2024-08-06T21:20:02.8880770Z >>> input = torch.tensor([2, 2, 2, 2, 4, 3, 2, 9], dtype=torch.long) 2024-08-06T21:20:02.8880916Z >>> offsets = torch.tensor([0, 4], dtype=torch.long) 2024-08-06T21:20:02.8881111Z >>> embedding_sum(input, offsets) 2024-08-06T21:20:02.8881208Z tensor([[ 0.0000, 0.0000, 0.0000], 2024-08-06T21:20:02.8881312Z [-0.7082, 3.2145, -2.6251]]) 2024-08-06T21:20:02.8881386Z 2024-08-06T21:20:02.8881554Z >>> # An EmbeddingBag can be loaded from an Embedding like so 2024-08-06T21:20:02.8881697Z >>> embedding = nn.Embedding(10, 3, padding_idx=2) 2024-08-06T21:20:02.8881847Z >>> embedding_sum = nn.EmbeddingBag.from_pretrained( 2024-08-06T21:20:02.8881945Z embedding.weight, 2024-08-06T21:20:02.8882072Z padding_idx=embedding.padding_idx, 2024-08-06T21:20:02.8882160Z mode='sum') 2024-08-06T21:20:02.8882236Z 2024-08-06T21:20:02.8882487Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8882563Z 2024-08-06T21:20:02.8882660Z warnings.warn(msg) 2024-08-06T21:20:02.8882735Z 2024-08-06T21:20:02.8882965Z --- Parse Warning: 81 / 100 --- 2024-08-06T21:20:02.8884057Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=DistributedDataParallel.join in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py line=1745. 2024-08-06T21:20:02.8884315Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8884396Z 2024-08-06T21:20:02.8884625Z Context manager for training with uneven inputs across processes in DDP. 2024-08-06T21:20:02.8884704Z 2024-08-06T21:20:02.8884920Z This context manager will keep track of already-joined DDP processes, 2024-08-06T21:20:02.8885118Z and "shadow" the forward and backward passes by inserting collective 2024-08-06T21:20:02.8885349Z communication operations to match with the ones created by non-joined 2024-08-06T21:20:02.8885644Z DDP processes. This will ensure each collective call has a corresponding 2024-08-06T21:20:02.8885859Z call by already-joined DDP processes, preventing hangs or errors that 2024-08-06T21:20:02.8886063Z would otherwise happen when training with uneven inputs across 2024-08-06T21:20:02.8886294Z processes. Alternatively, if the flag ``throw_on_early_termination`` is 2024-08-06T21:20:02.8886496Z specified to be ``True``, all trainers will throw an error once one rank 2024-08-06T21:20:02.8886695Z runs out of inputs, allowing these errors to be caught and handled 2024-08-06T21:20:02.8886801Z according to application logic. 2024-08-06T21:20:02.8886874Z 2024-08-06T21:20:02.8887089Z Once all DDP processes have joined, the context manager will broadcast 2024-08-06T21:20:02.8887307Z the model corresponding to the last joined process to all processes to 2024-08-06T21:20:02.8887452Z ensure the model is the same across all processes 2024-08-06T21:20:02.8887554Z (which is guaranteed by DDP). 2024-08-06T21:20:02.8887630Z 2024-08-06T21:20:02.8887833Z To use this to enable training with uneven inputs across processes, 2024-08-06T21:20:02.8888048Z simply wrap this context manager around your training loop. No further 2024-08-06T21:20:02.8888217Z modifications to the model or data loading is required. 2024-08-06T21:20:02.8888296Z 2024-08-06T21:20:02.8888385Z .. warning:: 2024-08-06T21:20:02.8888582Z If the model or training loop this context manager is wrapped around 2024-08-06T21:20:02.8888766Z has additional distributed collective operations, such as 2024-08-06T21:20:02.8888944Z ``SyncBatchNorm`` in the model's forward pass, then the flag 2024-08-06T21:20:02.8889141Z ``throw_on_early_termination`` must be enabled. This is because this 2024-08-06T21:20:02.8889351Z context manager is not aware of non-DDP collective communication. 2024-08-06T21:20:02.8889514Z This flag will cause all ranks to throw when any one rank 2024-08-06T21:20:02.8889719Z exhausts inputs, allowing these errors to be caught and recovered 2024-08-06T21:20:02.8889846Z from across all ranks. 2024-08-06T21:20:02.8889920Z 2024-08-06T21:20:02.8889997Z Args: 2024-08-06T21:20:02.8890185Z divide_by_initial_world_size (bool): If ``True``, will divide 2024-08-06T21:20:02.8890381Z gradients by the initial ``world_size`` DDP training was launched 2024-08-06T21:20:02.8890545Z with. If ``False``, will compute the effective world size 2024-08-06T21:20:02.8890724Z (number of ranks that have not depleted their inputs yet) and 2024-08-06T21:20:02.8890862Z divide gradients by that during allreduce. Set 2024-08-06T21:20:02.8891039Z ``divide_by_initial_world_size=True`` to ensure every input 2024-08-06T21:20:02.8891240Z sample including the uneven inputs have equal weight in terms of 2024-08-06T21:20:02.8891402Z how much they contribute to the global gradient. This is 2024-08-06T21:20:02.8891574Z achieved by always dividing the gradient by the initial 2024-08-06T21:20:02.8891754Z ``world_size`` even when we encounter uneven inputs. If you set 2024-08-06T21:20:02.8891976Z this to ``False``, we divide the gradient by the remaining 2024-08-06T21:20:02.8892171Z number of nodes. This ensures parity with training on a smaller 2024-08-06T21:20:02.8892346Z ``world_size`` although it also means the uneven inputs would 2024-08-06T21:20:02.8892538Z contribute more towards the global gradient. Typically, you 2024-08-06T21:20:02.8892719Z would want to set this to ``True`` for cases where the last few 2024-08-06T21:20:02.8892907Z inputs of your training job are uneven. In extreme cases, where 2024-08-06T21:20:02.8893092Z there is a large discrepancy in the number of inputs, setting 2024-08-06T21:20:02.8893228Z this to ``False`` might provide better results. 2024-08-06T21:20:02.8893455Z enable (bool): Whether to enable uneven input detection or not. Pass 2024-08-06T21:20:02.8893630Z in ``enable=False`` to disable in cases where you know that 2024-08-06T21:20:02.8893813Z inputs are even across participating processes. Default is 2024-08-06T21:20:02.8893893Z ``True``. 2024-08-06T21:20:02.8894075Z throw_on_early_termination (bool): Whether to throw an error 2024-08-06T21:20:02.8894243Z or continue training when at least one rank has exhausted 2024-08-06T21:20:02.8894486Z inputs. If ``True``, will throw upon the first rank reaching end 2024-08-06T21:20:02.8894658Z of data. If ``False``, will continue training with a smaller 2024-08-06T21:20:02.8894844Z effective world size until all ranks are joined. Note that if 2024-08-06T21:20:02.8894966Z this flag is specified, then the flag 2024-08-06T21:20:02.8895132Z ``divide_by_initial_world_size`` would be ignored. Default 2024-08-06T21:20:02.8895220Z is ``False``. 2024-08-06T21:20:02.8895303Z 2024-08-06T21:20:02.8895378Z 2024-08-06T21:20:02.8895463Z Example:: 2024-08-06T21:20:02.8895545Z 2024-08-06T21:20:02.8895659Z >>> # xdoctest: +SKIP("Distributed") 2024-08-06T21:20:02.8895746Z >>> import torch 2024-08-06T21:20:02.8895864Z >>> import torch.distributed as dist 2024-08-06T21:20:02.8895948Z >>> import os 2024-08-06T21:20:02.8896065Z >>> import torch.multiprocessing as mp 2024-08-06T21:20:02.8896165Z >>> import torch.nn as nn 2024-08-06T21:20:02.8896277Z >>> # On each spawned worker 2024-08-06T21:20:02.8896369Z >>> def worker(rank): 2024-08-06T21:20:02.8896539Z >>> dist.init_process_group("nccl", rank=rank, world_size=2) 2024-08-06T21:20:02.8896663Z >>> torch.cuda.set_device(rank) 2024-08-06T21:20:02.8896792Z >>> model = nn.Linear(1, 1, bias=False).to(rank) 2024-08-06T21:20:02.8896961Z >>> model = torch.nn.parallel.DistributedDataParallel( 2024-08-06T21:20:02.8897139Z >>> model, device_ids=[rank], output_device=rank 2024-08-06T21:20:02.8897220Z >>> ) 2024-08-06T21:20:02.8897354Z >>> # Rank 1 gets one more input than rank 0. 2024-08-06T21:20:02.8897538Z >>> inputs = [torch.tensor([1]).float() for _ in range(10 + rank)] 2024-08-06T21:20:02.8897635Z >>> with model.join(): 2024-08-06T21:20:02.8897744Z >>> for _ in range(5): 2024-08-06T21:20:02.8897844Z >>> for inp in inputs: 2024-08-06T21:20:02.8897953Z >>> loss = model(inp).sum() 2024-08-06T21:20:02.8898066Z >>> loss.backward() 2024-08-06T21:20:02.8898250Z >>> # Without the join() API, the below synchronization will hang 2024-08-06T21:20:02.8898388Z >>> # blocking for rank 1's allreduce to complete. 2024-08-06T21:20:02.8898521Z >>> torch.cuda.synchronize(device=rank) 2024-08-06T21:20:02.8898598Z 2024-08-06T21:20:02.8898850Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8898937Z 2024-08-06T21:20:02.8899076Z warnings.warn(msg) 2024-08-06T21:20:02.8899160Z 2024-08-06T21:20:02.8899372Z --- Parse Warning: 82 / 100 --- 2024-08-06T21:20:02.8900464Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=DistributedDataParallel._register_fused_optim in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/parallel/distributed.py line=2036. 2024-08-06T21:20:02.8900732Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8900813Z 2024-08-06T21:20:02.8901121Z Register an optimizer in DDP to optimize parameter immediately after its gradient reduction. 2024-08-06T21:20:02.8901213Z 2024-08-06T21:20:02.8901442Z Registers an optimizer with DDP such that the optimization for a 2024-08-06T21:20:02.8901653Z parameter will run immediately when that parameter's gradient is 2024-08-06T21:20:02.8901866Z finished with reduction, instead of waiting for all parameters' 2024-08-06T21:20:02.8902081Z gradients to finish reduction. This can result in a training speedup 2024-08-06T21:20:02.8902294Z depending on your workload since the optimizer can run while gradient 2024-08-06T21:20:02.8902530Z reduction for other parameters are still ongoing. In addition, this has 2024-08-06T21:20:02.8902752Z the potential to reduce peak memory consumption during training, as it 2024-08-06T21:20:02.8902949Z only needs to load the per-parameter optimizer states of a single 2024-08-06T21:20:02.8903168Z parameter at a time, instead of loading all per-parameter optimizer 2024-08-06T21:20:02.8903256Z states at once. 2024-08-06T21:20:02.8903346Z 2024-08-06T21:20:02.8903425Z Args: 2024-08-06T21:20:02.8903623Z optim (Type): a ``torch.optim.Optimizer`` class to be registered 2024-08-06T21:20:02.8903731Z as a fused optimizer. 2024-08-06T21:20:02.8903892Z *args (Sequence[Any]): Arguments to forward to `optim`. 2024-08-06T21:20:02.8904104Z optim_params (Optional[Iterable[torch.Tensor]]): Set of parameters 2024-08-06T21:20:02.8904335Z to optimize, similar to `params` argument of traditional `torch.optim` 2024-08-06T21:20:02.8904534Z Optimizers. If this is omitted, all DDP model parameters will be 2024-08-06T21:20:02.8904621Z optimized. 2024-08-06T21:20:02.8904823Z **kwargs: (Dict[str, Any]): Keyword arguments to forward to `optim`. 2024-08-06T21:20:02.8904901Z 2024-08-06T21:20:02.8904992Z .. warning :: 2024-08-06T21:20:02.8905207Z _register_fused_optim should only be called once on a DDP instance, 2024-08-06T21:20:02.8905410Z and registering multiple fused optimizers for the same DDP model 2024-08-06T21:20:02.8905538Z is not currently supported. Please ping 2024-08-06T21:20:02.8905807Z https://github.com/pytorch/pytorch/issues/71595 if this is necessary 2024-08-06T21:20:02.8905898Z for your use case. 2024-08-06T21:20:02.8905978Z 2024-08-06T21:20:02.8906079Z .. warning :: 2024-08-06T21:20:02.8906268Z _register_fused_optim and register_comm_hook currently do not 2024-08-06T21:20:02.8906495Z compose together, meaning that custom DDP communication hooks are 2024-08-06T21:20:02.8906663Z not supported with overlapped optimizers. Please ping 2024-08-06T21:20:02.8906885Z https://github.com/pytorch/pytorch/issues/71595 if this is necessary 2024-08-06T21:20:02.8906990Z for your use case. 2024-08-06T21:20:02.8907070Z 2024-08-06T21:20:02.8907157Z .. warning :: 2024-08-06T21:20:02.8907387Z Gradient accumulation and DDP `no_sync` are currently not supported 2024-08-06T21:20:02.8907509Z with overlapped optimizer. Please ping 2024-08-06T21:20:02.8907733Z https://github.com/pytorch/pytorch/issues/71595 if this is necessary 2024-08-06T21:20:02.8907835Z for your use case. 2024-08-06T21:20:02.8907912Z 2024-08-06T21:20:02.8908000Z Example:: 2024-08-06T21:20:02.8908090Z 2024-08-06T21:20:02.8908263Z >>> # xdoctest: +SKIP("No rendezvous handler") 2024-08-06T21:20:02.8908562Z >>> torch.distributed.init_process_group(backend='nccl', world_size=4, init_method='...') 2024-08-06T21:20:02.8908763Z >>> net = torch.nn.parallel.DistributedDataParallel(model, pg) 2024-08-06T21:20:02.8908849Z >>> lr = 1e-2 2024-08-06T21:20:02.8908938Z >>> betas = (0.9, 0.99) 2024-08-06T21:20:02.8909036Z >>> eps = 1e-6 2024-08-06T21:20:02.8909258Z >>> net._register_fused_optim(torch.optim.Adam, lr, betas=betas, eps=eps) 2024-08-06T21:20:02.8909375Z >>> # Example with subset of parameters 2024-08-06T21:20:02.8909516Z >>> params_to_opt = [list(net.parameters())[0]] 2024-08-06T21:20:02.8909646Z >>> net._register_fused_optim( 2024-08-06T21:20:02.8909888Z ... torch.optim.Adam, lr, optim_params=params_to_opt, betas=betas, eps=eps 2024-08-06T21:20:02.8909968Z ... ) 2024-08-06T21:20:02.8910047Z 2024-08-06T21:20:02.8910312Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8910389Z 2024-08-06T21:20:02.8910485Z warnings.warn(msg) 2024-08-06T21:20:02.8910574Z 2024-08-06T21:20:02.8910759Z --- Parse Warning: 83 / 100 --- 2024-08-06T21:20:02.8911755Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=convert_conv2d_weight_memory_format in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/memory_format.py line=6. 2024-08-06T21:20:02.8912025Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8912239Z Convert ``memory_format`` of ``nn.Conv2d.weight`` to ``memory_format``. 2024-08-06T21:20:02.8912323Z 2024-08-06T21:20:02.8912611Z The conversion recursively applies to nested ``nn.Module``, including ``module``. 2024-08-06T21:20:02.8912887Z Note that it only changes the memory_format, but not the semantics of each dimensions. 2024-08-06T21:20:02.8913154Z This function is used to facilitate the computation to adopt NHWC kernels, which 2024-08-06T21:20:02.8913458Z provides considerable speed up for fp16 data on CUDA devices with compute capability >= 7.0 2024-08-06T21:20:02.8913539Z 2024-08-06T21:20:02.8913641Z .. note:: 2024-08-06T21:20:02.8913872Z Calling ``model.to(memory_format=torch.channels_last)`` is more aggressive 2024-08-06T21:20:02.8914093Z than the utility function ``convert_conv2d_weight_memory_format``. Any 2024-08-06T21:20:02.8914312Z layer with 4d weight will be affected by ``model.to``, which does not 2024-08-06T21:20:02.8914536Z necessarily benefit from conversion to specified ``memory_format``. 2024-08-06T21:20:02.8914787Z One place we are confident in is that NHWC(channels_last) conversion for 2024-08-06T21:20:02.8915015Z convolution in cuDNN, As it is beneficial to run convolution in NHWC, 2024-08-06T21:20:02.8915219Z even in cases where we have to apply permutation to input tensors. 2024-08-06T21:20:02.8915299Z 2024-08-06T21:20:02.8915532Z Hence our strategy here is to convert only the weight of convolution to 2024-08-06T21:20:02.8915646Z channels_last. This ensures that; 2024-08-06T21:20:02.8915872Z 1. Fast convolution kernels will be used, the benefit of which could 2024-08-06T21:20:02.8916096Z outweigh overhead of permutation (if input is not in the same format) 2024-08-06T21:20:02.8916327Z 2. No unnecessary permutations are applied on layers that do not benefit 2024-08-06T21:20:02.8916451Z from memory_format conversion. 2024-08-06T21:20:02.8916534Z 2024-08-06T21:20:02.8916759Z The optimal case is that, layers between convolution layers are channels 2024-08-06T21:20:02.8917005Z last compatible. Input tensor would be permuted to channels last when it 2024-08-06T21:20:02.8917279Z encounters the first convolution layer and stay in that memory format. 2024-08-06T21:20:02.8917517Z Hence following convolutions will not need to permute its input tensor. 2024-08-06T21:20:02.8917607Z 2024-08-06T21:20:02.8917828Z In case where a channels last incompatible layer is between convolution 2024-08-06T21:20:02.8918034Z layers, we need to permute the input tensor back to contiguous format 2024-08-06T21:20:02.8918259Z for that layer. The input tensor will go through the remaining layers in 2024-08-06T21:20:02.8918475Z contiguous format and be permuted to channels last when it encounters 2024-08-06T21:20:02.8918694Z another convolution layer. There's no point in propagating that 2024-08-06T21:20:02.8918945Z permutation to an earlier layer, as most layers are quite agnostic to 2024-08-06T21:20:02.8919041Z ``memory_format``. 2024-08-06T21:20:02.8919131Z 2024-08-06T21:20:02.8919364Z This claim might change when PyTorch supports fusion of permutation, as 2024-08-06T21:20:02.8919579Z there might have been a better spot to fuse the permutation other than 2024-08-06T21:20:02.8919707Z immediately before a convolution. 2024-08-06T21:20:02.8919788Z 2024-08-06T21:20:02.8919869Z Args: 2024-08-06T21:20:02.8920092Z module (nn.Module): ``nn.Conv2d`` & ``nn.ConvTranspose2d`` or container 2024-08-06T21:20:02.8920191Z ``nn.Module`` 2024-08-06T21:20:02.8920338Z memory_format: user specified ``memory_format``, 2024-08-06T21:20:02.8920523Z e.g. ``torch.channels_last`` or ``torch.contiguous_format`` 2024-08-06T21:20:02.8920602Z 2024-08-06T21:20:02.8920688Z Returns: 2024-08-06T21:20:02.8920837Z The original module with updated ``nn.Conv2d`` 2024-08-06T21:20:02.8920912Z 2024-08-06T21:20:02.8921008Z Example: 2024-08-06T21:20:02.8921143Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:20:02.8921296Z >>> # xdoctest: +REQUIRES(env:CUBLAS_WORKSPACE_CONFIG) 2024-08-06T21:20:02.8921531Z >>> input = torch.randint(1, 10, (2, 8, 4, 4), dtype=torch.float16, device="cuda") 2024-08-06T21:20:02.8921634Z >>> model = nn.Sequential( 2024-08-06T21:20:02.8921749Z >>> nn.Conv2d(8, 4, 3)).cuda().half() 2024-08-06T21:20:02.8921864Z >>> # This is identical to: 2024-08-06T21:20:02.8922102Z >>> # nn.utils.convert_conv2d_weight_memory_format(model, torch.channels_last) 2024-08-06T21:20:02.8922363Z >>> model = nn.utils.convert_conv2d_weight_memory_format(model, torch.channels_last) 2024-08-06T21:20:02.8922473Z >>> out = model(input) 2024-08-06T21:20:02.8922589Z 2024-08-06T21:20:02.8922842Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8922934Z 2024-08-06T21:20:02.8923029Z warnings.warn(msg) 2024-08-06T21:20:02.8923109Z 2024-08-06T21:20:02.8923307Z --- Parse Warning: 84 / 100 --- 2024-08-06T21:20:02.8924314Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=convert_conv3d_weight_memory_format in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/memory_format.py line=81. 2024-08-06T21:20:02.8924583Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8924795Z Convert ``memory_format`` of ``nn.Conv3d.weight`` to ``memory_format`` 2024-08-06T21:20:02.8925065Z The conversion recursively applies to nested ``nn.Module``, including ``module``. 2024-08-06T21:20:02.8925349Z Note that it only changes the memory_format, but not the semantics of each dimensions. 2024-08-06T21:20:02.8925602Z This function is used to facilitate the computation to adopt NHWC kernels, which 2024-08-06T21:20:02.8925962Z provides considerable speed up for fp16 data on CUDA devices with compute capability >= 7.0 2024-08-06T21:20:02.8926057Z 2024-08-06T21:20:02.8926142Z .. note:: 2024-08-06T21:20:02.8926374Z Calling ``model.to(memory_format=torch.channels_last)`` is more aggressive 2024-08-06T21:20:02.8926604Z than the utility function ``convert_conv3d_weight_memory_format``. Any 2024-08-06T21:20:02.8926811Z layer with 4d weight will be affected by ``model.to``, which does not 2024-08-06T21:20:02.8927040Z necessarily benefit from conversion to specified ``memory_format``. 2024-08-06T21:20:02.8927261Z One place we are confident in is that NHWC(channels_last) conversion for 2024-08-06T21:20:02.8927500Z convolution in cuDNN, As it is beneficial to run convolution in NHWC, 2024-08-06T21:20:02.8927710Z even in cases where we have to apply permutation to input tensors. 2024-08-06T21:20:02.8927788Z 2024-08-06T21:20:02.8928016Z Hence our strategy here is to convert only the weight of convolution to 2024-08-06T21:20:02.8928142Z channels_last. This ensures that; 2024-08-06T21:20:02.8928354Z 1. Fast convolution kernels will be used, the benefit of which could 2024-08-06T21:20:02.8928580Z outweigh overhead of permutation (if input is not in the same format) 2024-08-06T21:20:02.8928823Z 2. No unnecessary permutations are applied on layers that do not benefit 2024-08-06T21:20:02.8928932Z from memory_format conversion. 2024-08-06T21:20:02.8929010Z 2024-08-06T21:20:02.8929242Z The optimal case is that, layers between convolution layers are channels 2024-08-06T21:20:02.8929475Z last compatible. Input tensor would be permuted to channels last when it 2024-08-06T21:20:02.8929717Z encounters the first convolution layer and stay in that memory format. 2024-08-06T21:20:02.8929958Z Hence following convolutions will not need to permute its input tensor. 2024-08-06T21:20:02.8930037Z 2024-08-06T21:20:02.8930263Z In case where a channels last incompatible layer is between convolution 2024-08-06T21:20:02.8930474Z layers, we need to permute the input tensor back to contiguous format 2024-08-06T21:20:02.8930692Z for that layer. The input tensor will go through the remaining layers in 2024-08-06T21:20:02.8930923Z contiguous format and be permuted to channels last when it encounters 2024-08-06T21:20:02.8931129Z another convolution layer. There's no point in propagating that 2024-08-06T21:20:02.8931344Z permutation to an earlier layer, as most layers are quite agnostic to 2024-08-06T21:20:02.8931449Z ``memory_format``. 2024-08-06T21:20:02.8931528Z 2024-08-06T21:20:02.8931779Z This claim might change when PyTorch supports fusion of permutation, as 2024-08-06T21:20:02.8932013Z there might have been a better spot to fuse the permutation other than 2024-08-06T21:20:02.8932131Z immediately before a convolution. 2024-08-06T21:20:02.8932219Z 2024-08-06T21:20:02.8932304Z Args: 2024-08-06T21:20:02.8932515Z module (nn.Module): ``nn.Conv3d`` & ``nn.ConvTranspose3d`` or container 2024-08-06T21:20:02.8932625Z ``nn.Module`` 2024-08-06T21:20:02.8932773Z memory_format: user specified ``memory_format``, 2024-08-06T21:20:02.8932945Z e.g. ``torch.channels_last`` or ``torch.contiguous_format`` 2024-08-06T21:20:02.8933030Z 2024-08-06T21:20:02.8933116Z Returns: 2024-08-06T21:20:02.8933254Z The original module with updated ``nn.Conv3d`` 2024-08-06T21:20:02.8933347Z 2024-08-06T21:20:02.8933433Z Example: 2024-08-06T21:20:02.8933566Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CUDA) 2024-08-06T21:20:02.8933730Z >>> # xdoctest: +REQUIRES(env:CUBLAS_WORKSPACE_CONFIG) 2024-08-06T21:20:02.8934004Z >>> input = torch.randint(1, 10, (2, 8, 4, 4, 4), dtype=torch.float16, device="cuda") 2024-08-06T21:20:02.8934105Z >>> model = nn.Sequential( 2024-08-06T21:20:02.8934228Z >>> nn.Conv3d(8, 4, 3)).cuda().half() 2024-08-06T21:20:02.8934426Z >>> # This is identical to: 2024-08-06T21:20:02.8934669Z >>> # nn.utils.convert_conv3d_weight_memory_format(model, torch.channels_last) 2024-08-06T21:20:02.8934958Z >>> model = nn.utils.convert_conv3d_weight_memory_format(model, torch.channels_last_3d) 2024-08-06T21:20:02.8935054Z >>> out = model(input) 2024-08-06T21:20:02.8935148Z 2024-08-06T21:20:02.8935401Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8935513Z 2024-08-06T21:20:02.8935622Z warnings.warn(msg) 2024-08-06T21:20:02.8935701Z 2024-08-06T21:20:02.8935892Z --- Parse Warning: 85 / 100 --- 2024-08-06T21:20:02.8936803Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=random_structured in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=937. 2024-08-06T21:20:02.8937066Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8937292Z Prune tensor by removing random channels along the specified dimension. 2024-08-06T21:20:02.8937385Z 2024-08-06T21:20:02.8937615Z Prunes tensor corresponding to parameter called ``name`` in ``module`` 2024-08-06T21:20:02.8937824Z by removing the specified ``amount`` of (currently unpruned) channels 2024-08-06T21:20:02.8937980Z along the specified ``dim`` selected at random. 2024-08-06T21:20:02.8938176Z Modifies module in place (and also return the modified module) 2024-08-06T21:20:02.8938270Z by: 2024-08-06T21:20:02.8938349Z 2024-08-06T21:20:02.8938556Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:20:02.8938783Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:20:02.8938995Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:20:02.8939199Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:20:02.8939300Z ``name+'_orig'``. 2024-08-06T21:20:02.8939380Z 2024-08-06T21:20:02.8939461Z Args: 2024-08-06T21:20:02.8939648Z module (nn.Module): module containing the tensor to prune 2024-08-06T21:20:02.8939827Z name (str): parameter name within ``module`` on which pruning 2024-08-06T21:20:02.8939912Z will act. 2024-08-06T21:20:02.8940092Z amount (int or float): quantity of parameters to prune. 2024-08-06T21:20:02.8940291Z If ``float``, should be between 0.0 and 1.0 and represent the 2024-08-06T21:20:02.8940493Z fraction of parameters to prune. If ``int``, it represents the 2024-08-06T21:20:02.8940635Z absolute number of parameters to prune. 2024-08-06T21:20:02.8940831Z dim (int): index of the dim along which we define channels to prune. 2024-08-06T21:20:02.8940923Z 2024-08-06T21:20:02.8941008Z Returns: 2024-08-06T21:20:02.8941222Z module (nn.Module): modified (i.e. pruned) version of the input module 2024-08-06T21:20:02.8941310Z 2024-08-06T21:20:02.8941398Z Examples: 2024-08-06T21:20:02.8941496Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.8941619Z >>> m = prune.random_structured( 2024-08-06T21:20:02.8941753Z ... nn.Linear(5, 3), 'weight', amount=3, dim=1 2024-08-06T21:20:02.8941833Z ... ) 2024-08-06T21:20:02.8942024Z >>> columns_pruned = int(sum(torch.sum(m.weight, dim=0) == 0)) 2024-08-06T21:20:02.8942134Z >>> print(columns_pruned) 2024-08-06T21:20:02.8942216Z 3 2024-08-06T21:20:02.8942305Z 2024-08-06T21:20:02.8942604Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8942681Z 2024-08-06T21:20:02.8942785Z warnings.warn(msg) 2024-08-06T21:20:02.8942862Z 2024-08-06T21:20:02.8943041Z --- Parse Warning: 86 / 100 --- 2024-08-06T21:20:02.8943921Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ln_structured in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=978. 2024-08-06T21:20:02.8944182Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8944487Z Prune tensor by removing channels with the lowest L\ ``n``-norm along the specified dimension. 2024-08-06T21:20:02.8944603Z 2024-08-06T21:20:02.8944833Z Prunes tensor corresponding to parameter called ``name`` in ``module`` 2024-08-06T21:20:02.8945060Z by removing the specified ``amount`` of (currently unpruned) channels 2024-08-06T21:20:02.8945235Z along the specified ``dim`` with the lowest L\ ``n``-norm. 2024-08-06T21:20:02.8945432Z Modifies module in place (and also return the modified module) 2024-08-06T21:20:02.8945514Z by: 2024-08-06T21:20:02.8945593Z 2024-08-06T21:20:02.8945803Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:20:02.8946019Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:20:02.8946234Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:20:02.8946438Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:20:02.8946534Z ``name+'_orig'``. 2024-08-06T21:20:02.8946621Z 2024-08-06T21:20:02.8946704Z Args: 2024-08-06T21:20:02.8946877Z module (nn.Module): module containing the tensor to prune 2024-08-06T21:20:02.8947066Z name (str): parameter name within ``module`` on which pruning 2024-08-06T21:20:02.8947155Z will act. 2024-08-06T21:20:02.8947325Z amount (int or float): quantity of parameters to prune. 2024-08-06T21:20:02.8947498Z If ``float``, should be between 0.0 and 1.0 and represent the 2024-08-06T21:20:02.8947696Z fraction of parameters to prune. If ``int``, it represents the 2024-08-06T21:20:02.8947823Z absolute number of parameters to prune. 2024-08-06T21:20:02.8948018Z n (int, float, inf, -inf, 'fro', 'nuc'): See documentation of valid 2024-08-06T21:20:02.8948170Z entries for argument ``p`` in :func:`torch.norm`. 2024-08-06T21:20:02.8948366Z dim (int): index of the dim along which we define channels to prune. 2024-08-06T21:20:02.8948636Z importance_scores (torch.Tensor): tensor of importance scores (of same 2024-08-06T21:20:02.8948823Z shape as module parameter) used to compute mask for pruning. 2024-08-06T21:20:02.8949054Z The values in this tensor indicate the importance of the corresponding 2024-08-06T21:20:02.8949180Z elements in the parameter being pruned. 2024-08-06T21:20:02.8949402Z If unspecified or None, the module parameter will be used in its place. 2024-08-06T21:20:02.8949489Z 2024-08-06T21:20:02.8949573Z Returns: 2024-08-06T21:20:02.8949787Z module (nn.Module): modified (i.e. pruned) version of the input module 2024-08-06T21:20:02.8949876Z 2024-08-06T21:20:02.8949961Z Examples: 2024-08-06T21:20:02.8950079Z >>> from torch.nn.utils import prune 2024-08-06T21:20:02.8950189Z >>> m = prune.ln_structured( 2024-08-06T21:20:02.8950380Z ... nn.Conv2d(5, 3, 2), 'weight', amount=0.3, dim=1, n=float('-inf') 2024-08-06T21:20:02.8950464Z ... ) 2024-08-06T21:20:02.8950552Z 2024-08-06T21:20:02.8950869Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8950948Z 2024-08-06T21:20:02.8951051Z warnings.warn(msg) 2024-08-06T21:20:02.8951130Z 2024-08-06T21:20:02.8951312Z --- Parse Warning: 87 / 100 --- 2024-08-06T21:20:02.8952226Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=global_unstructured in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=1025. 2024-08-06T21:20:02.8952486Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8952579Z 2024-08-06T21:20:02.8953008Z Globally prunes tensors corresponding to all parameters in ``parameters`` by applying the specified ``pruning_method``. 2024-08-06T21:20:02.8953126Z 2024-08-06T21:20:02.8953239Z Modifies modules in place by: 2024-08-06T21:20:02.8953318Z 2024-08-06T21:20:02.8953527Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:20:02.8953755Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:20:02.8953961Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:20:02.8954163Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:20:02.8954262Z ``name+'_orig'``. 2024-08-06T21:20:02.8954340Z 2024-08-06T21:20:02.8954421Z Args: 2024-08-06T21:20:02.8954624Z parameters (Iterable of (module, name) tuples): parameters of 2024-08-06T21:20:02.8954808Z the model to prune in a global fashion, i.e. by aggregating all 2024-08-06T21:20:02.8955012Z weights prior to deciding which ones to prune. module must be of 2024-08-06T21:20:02.8955168Z type :class:`nn.Module`, and name must be a string. 2024-08-06T21:20:02.8955390Z pruning_method (function): a valid pruning function from this module, 2024-08-06T21:20:02.8955567Z or a custom one implemented by the user that satisfies the 2024-08-06T21:20:02.8955793Z implementation guidelines and has ``PRUNING_TYPE='unstructured'``. 2024-08-06T21:20:02.8956022Z importance_scores (dict): a dictionary mapping (module, name) tuples to 2024-08-06T21:20:02.8956248Z the corresponding parameter's importance scores tensor. The tensor 2024-08-06T21:20:02.8956454Z should be the same shape as the parameter, and is used for computing 2024-08-06T21:20:02.8956550Z mask for pruning. 2024-08-06T21:20:02.8956764Z If unspecified or None, the parameter will be used in place of its 2024-08-06T21:20:02.8956860Z importance scores. 2024-08-06T21:20:02.8956982Z kwargs: other keyword arguments such as: 2024-08-06T21:20:02.8957186Z amount (int or float): quantity of parameters to prune across the 2024-08-06T21:20:02.8957313Z specified parameters. 2024-08-06T21:20:02.8957482Z If ``float``, should be between 0.0 and 1.0 and represent the 2024-08-06T21:20:02.8957687Z fraction of parameters to prune. If ``int``, it represents the 2024-08-06T21:20:02.8957812Z absolute number of parameters to prune. 2024-08-06T21:20:02.8957899Z 2024-08-06T21:20:02.8957979Z Raises: 2024-08-06T21:20:02.8958124Z TypeError: if ``PRUNING_TYPE != 'unstructured'`` 2024-08-06T21:20:02.8958209Z 2024-08-06T21:20:02.8958288Z Note: 2024-08-06T21:20:02.8958497Z Since global structured pruning doesn't make much sense unless the 2024-08-06T21:20:02.8958701Z norm is normalized by the size of the parameter, we now limit the 2024-08-06T21:20:02.8958846Z scope of global pruning to unstructured methods. 2024-08-06T21:20:02.8958924Z 2024-08-06T21:20:02.8959020Z Examples: 2024-08-06T21:20:02.8959137Z >>> from torch.nn.utils import prune 2024-08-06T21:20:02.8959257Z >>> from collections import OrderedDict 2024-08-06T21:20:02.8959377Z >>> net = nn.Sequential(OrderedDict([ 2024-08-06T21:20:02.8959528Z ... ('first', nn.Linear(10, 4)), 2024-08-06T21:20:02.8959634Z ... ('second', nn.Linear(4, 1)), 2024-08-06T21:20:02.8959722Z ... ])) 2024-08-06T21:20:02.8959824Z >>> parameters_to_prune = ( 2024-08-06T21:20:02.8959924Z ... (net.first, 'weight'), 2024-08-06T21:20:02.8960030Z ... (net.second, 'weight'), 2024-08-06T21:20:02.8960111Z ... ) 2024-08-06T21:20:02.8960219Z >>> prune.global_unstructured( 2024-08-06T21:20:02.8960326Z ... parameters_to_prune, 2024-08-06T21:20:02.8960455Z ... pruning_method=prune.L1Unstructured, 2024-08-06T21:20:02.8960543Z ... amount=10, 2024-08-06T21:20:02.8960627Z ... ) 2024-08-06T21:20:02.8960871Z >>> print(sum(torch.nn.utils.parameters_to_vector(net.buffers()) == 0)) 2024-08-06T21:20:02.8960958Z tensor(10) 2024-08-06T21:20:02.8961043Z 2024-08-06T21:20:02.8961122Z 2024-08-06T21:20:02.8961377Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8961464Z 2024-08-06T21:20:02.8961558Z warnings.warn(msg) 2024-08-06T21:20:02.8961635Z 2024-08-06T21:20:02.8961821Z --- Parse Warning: 88 / 100 --- 2024-08-06T21:20:02.8962705Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=custom_from_mask in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/prune.py line=1144. 2024-08-06T21:20:02.8963182Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8963577Z Prune tensor corresponding to parameter called ``name`` in ``module`` by applying the pre-computed mask in ``mask``. 2024-08-06T21:20:02.8963659Z 2024-08-06T21:20:02.8963882Z Modifies module in place (and also return the modified module) by: 2024-08-06T21:20:02.8963962Z 2024-08-06T21:20:02.8964172Z 1) adding a named buffer called ``name+'_mask'`` corresponding to the 2024-08-06T21:20:02.8964403Z binary mask applied to the parameter ``name`` by the pruning method. 2024-08-06T21:20:02.8964609Z 2) replacing the parameter ``name`` by its pruned version, while the 2024-08-06T21:20:02.8964817Z original (unpruned) parameter is stored in a new parameter named 2024-08-06T21:20:02.8964918Z ``name+'_orig'``. 2024-08-06T21:20:02.8964999Z 2024-08-06T21:20:02.8965089Z Args: 2024-08-06T21:20:02.8965261Z module (nn.Module): module containing the tensor to prune 2024-08-06T21:20:02.8965442Z name (str): parameter name within ``module`` on which pruning 2024-08-06T21:20:02.8965538Z will act. 2024-08-06T21:20:02.8965893Z mask (Tensor): binary mask to be applied to the parameter. 2024-08-06T21:20:02.8966043Z 2024-08-06T21:20:02.8966136Z Returns: 2024-08-06T21:20:02.8966352Z module (nn.Module): modified (i.e. pruned) version of the input module 2024-08-06T21:20:02.8966435Z 2024-08-06T21:20:02.8966530Z Examples: 2024-08-06T21:20:02.8966648Z >>> from torch.nn.utils import prune 2024-08-06T21:20:02.8966759Z >>> m = prune.custom_from_mask( 2024-08-06T21:20:02.8966936Z ... nn.Linear(5, 3), name='bias', mask=torch.tensor([0, 1, 0]) 2024-08-06T21:20:02.8967017Z ... ) 2024-08-06T21:20:02.8967115Z >>> print(m.bias_mask) 2024-08-06T21:20:02.8967216Z tensor([0., 1., 0.]) 2024-08-06T21:20:02.8967295Z 2024-08-06T21:20:02.8967376Z 2024-08-06T21:20:02.8967635Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8967711Z 2024-08-06T21:20:02.8967808Z warnings.warn(msg) 2024-08-06T21:20:02.8967899Z 2024-08-06T21:20:02.8968094Z --- Parse Warning: 89 / 100 --- 2024-08-06T21:20:02.8969057Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=AveragedModel in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/swa_utils.py line=106. 2024-08-06T21:20:02.8969323Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8969684Z Implements averaged model for Stochastic Weight Averaging (SWA) and Exponential Moving Average (EMA). 2024-08-06T21:20:02.8969771Z 2024-08-06T21:20:02.8970009Z Stochastic Weight Averaging was proposed in `Averaging Weights Leads to 2024-08-06T21:20:02.8970220Z Wider Optima and Better Generalization`_ by Pavel Izmailov, Dmitrii 2024-08-06T21:20:02.8970446Z Podoprikhin, Timur Garipov, Dmitry Vetrov and Andrew Gordon Wilson 2024-08-06T21:20:02.8970568Z (UAI 2018). 2024-08-06T21:20:02.8970647Z 2024-08-06T21:20:02.8970867Z Exponential Moving Average is a variation of `Polyak averaging`_, 2024-08-06T21:20:02.8971105Z but using exponential weights instead of equal weights across iterations. 2024-08-06T21:20:02.8971189Z 2024-08-06T21:20:02.8971427Z AveragedModel class creates a copy of the provided module :attr:`model` 2024-08-06T21:20:02.8971647Z on the device :attr:`device` and allows to compute running averages of the 2024-08-06T21:20:02.8971759Z parameters of the :attr:`model`. 2024-08-06T21:20:02.8971845Z 2024-08-06T21:20:02.8971926Z Args: 2024-08-06T21:20:02.8972080Z model (torch.nn.Module): model to use with SWA/EMA 2024-08-06T21:20:02.8972321Z device (torch.device, optional): if provided, the averaged model will be 2024-08-06T21:20:02.8972427Z stored on the :attr:`device` 2024-08-06T21:20:02.8972635Z avg_fn (function, optional): the averaging function used to update 2024-08-06T21:20:02.8972836Z parameters; the function must take in the current value of the 2024-08-06T21:20:02.8973055Z :class:`AveragedModel` parameter, the current value of :attr:`model` 2024-08-06T21:20:02.8975395Z parameter, and the number of models already averaged; if None, 2024-08-06T21:20:02.8975587Z an equally weighted average is used (default: None) 2024-08-06T21:20:02.8975813Z multi_avg_fn (function, optional): the averaging function used to update 2024-08-06T21:20:02.8976059Z parameters inplace; the function must take in the current values of the 2024-08-06T21:20:02.8976325Z :class:`AveragedModel` parameters as a list, the current values of :attr:`model` 2024-08-06T21:20:02.8976551Z parameters as a list, and the number of models already averaged; if None, 2024-08-06T21:20:02.8976720Z an equally weighted average is used (default: None) 2024-08-06T21:20:02.8976923Z use_buffers (bool): if ``True``, it will compute running averages for 2024-08-06T21:20:02.8977185Z both the parameters and the buffers of the model. (default: ``False``) 2024-08-06T21:20:02.8977276Z 2024-08-06T21:20:02.8977358Z Example: 2024-08-06T21:20:02.8977514Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8977642Z >>> loader, optimizer, model, loss_fn = ... 2024-08-06T21:20:02.8977820Z >>> swa_model = torch.optim.swa_utils.AveragedModel(model) 2024-08-06T21:20:02.8978036Z >>> scheduler = torch.optim.lr_scheduler.CosineAnnealingLR(optimizer, 2024-08-06T21:20:02.8978145Z >>> T_max=300) 2024-08-06T21:20:02.8978247Z >>> swa_start = 160 2024-08-06T21:20:02.8978386Z >>> swa_scheduler = SWALR(optimizer, swa_lr=0.05) 2024-08-06T21:20:02.8978483Z >>> for i in range(300): 2024-08-06T21:20:02.8978606Z >>> for input, target in loader: 2024-08-06T21:20:02.8978717Z >>> optimizer.zero_grad() 2024-08-06T21:20:02.8978847Z >>> loss_fn(model(input), target).backward() 2024-08-06T21:20:02.8978989Z >>> optimizer.step() 2024-08-06T21:20:02.8979090Z >>> if i > swa_start: 2024-08-06T21:20:02.8979219Z >>> swa_model.update_parameters(model) 2024-08-06T21:20:02.8979336Z >>> swa_scheduler.step() 2024-08-06T21:20:02.8979425Z >>> else: 2024-08-06T21:20:02.8979539Z >>> scheduler.step() 2024-08-06T21:20:02.8979621Z >>> 2024-08-06T21:20:02.8979772Z >>> # Update bn statistics for the swa_model at the end 2024-08-06T21:20:02.8979939Z >>> torch.optim.swa_utils.update_bn(loader, swa_model) 2024-08-06T21:20:02.8980020Z 2024-08-06T21:20:02.8980318Z You can also use custom averaging functions with the `avg_fn` or `multi_avg_fn` parameters. 2024-08-06T21:20:02.8980547Z If no averaging function is provided, the default is to compute 2024-08-06T21:20:02.8980691Z equally-weighted average of the weights (SWA). 2024-08-06T21:20:02.8980768Z 2024-08-06T21:20:02.8980865Z Example: 2024-08-06T21:20:02.8980998Z >>> # xdoctest: +SKIP("undefined variables") 2024-08-06T21:20:02.8981200Z >>> # Compute exponential moving averages of the weights and buffers 2024-08-06T21:20:02.8981374Z >>> ema_model = torch.optim.swa_utils.AveragedModel(model, 2024-08-06T21:20:02.8981590Z >>> torch.optim.swa_utils.get_ema_multi_avg_fn(0.9), use_buffers=True) 2024-08-06T21:20:02.8981668Z 2024-08-06T21:20:02.8981769Z .. note:: 2024-08-06T21:20:02.8981991Z When using SWA/EMA with models containing Batch Normalization you may 2024-08-06T21:20:02.8982194Z need to update the activation statistics for Batch Normalization. 2024-08-06T21:20:02.8982435Z This can be done either by using the :meth:`torch.optim.swa_utils.update_bn` 2024-08-06T21:20:02.8982660Z or by setting :attr:`use_buffers` to `True`. The first approach updates the 2024-08-06T21:20:02.8982911Z statistics in a post-training step by passing data through the model. The 2024-08-06T21:20:02.8983209Z second does it during the parameter update phase by averaging all buffers. 2024-08-06T21:20:02.8983455Z Empirical evidence has shown that updating the statistics in normalization 2024-08-06T21:20:02.8983686Z layers increases accuracy, but you may wish to empirically test which 2024-08-06T21:20:02.8983838Z approach yields the best results in your problem. 2024-08-06T21:20:02.8983916Z 2024-08-06T21:20:02.8984010Z .. note:: 2024-08-06T21:20:02.8984265Z :attr:`avg_fn` and `multi_avg_fn` are not saved in the :meth:`state_dict` of the model. 2024-08-06T21:20:02.8984343Z 2024-08-06T21:20:02.8984432Z .. note:: 2024-08-06T21:20:02.8984653Z When :meth:`update_parameters` is called for the first time (i.e. 2024-08-06T21:20:02.8984833Z :attr:`n_averaged` is `0`) the parameters of `model` are copied 2024-08-06T21:20:02.8985045Z to the parameters of :class:`AveragedModel`. For every subsequent 2024-08-06T21:20:02.8985232Z call of :meth:`update_parameters` the function `avg_fn` is used 2024-08-06T21:20:02.8985347Z to update the parameters. 2024-08-06T21:20:02.8985423Z 2024-08-06T21:20:02.8985646Z .. _Averaging Weights Leads to Wider Optima and Better Generalization: 2024-08-06T21:20:02.8985775Z https://arxiv.org/abs/1803.05407 2024-08-06T21:20:02.8986009Z .. _There Are Many Consistent Explanations of Unlabeled Data: Why You Should 2024-08-06T21:20:02.8986092Z Average: 2024-08-06T21:20:02.8986212Z https://arxiv.org/abs/1806.05594 2024-08-06T21:20:02.8986410Z .. _SWALP: Stochastic Weight Averaging in Low-Precision Training: 2024-08-06T21:20:02.8986526Z https://arxiv.org/abs/1904.11943 2024-08-06T21:20:02.8986754Z .. _Stochastic Weight Averaging in Parallel: Large-Batch Training That 2024-08-06T21:20:02.8986888Z Generalizes Well: 2024-08-06T21:20:02.8987001Z https://arxiv.org/abs/2001.02312 2024-08-06T21:20:02.8987104Z .. _Polyak averaging: 2024-08-06T21:20:02.8987267Z https://paperswithcode.com/method/polyak-averaging 2024-08-06T21:20:02.8987349Z 2024-08-06T21:20:02.8987602Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8987680Z 2024-08-06T21:20:02.8987774Z warnings.warn(msg) 2024-08-06T21:20:02.8987860Z 2024-08-06T21:20:02.8988086Z --- Parse Warning: 90 / 100 --- 2024-08-06T21:20:02.8988944Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=SWALR in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/optim/swa_utils.py line=357. 2024-08-06T21:20:02.8989233Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8989448Z Anneals the learning rate in each parameter group to a fixed value. 2024-08-06T21:20:02.8989534Z 2024-08-06T21:20:02.8989764Z This learning rate scheduler is meant to be used with Stochastic Weight 2024-08-06T21:20:02.8989973Z Averaging (SWA) method (see `torch.optim.swa_utils.AveragedModel`). 2024-08-06T21:20:02.8990061Z 2024-08-06T21:20:02.8990142Z Args: 2024-08-06T21:20:02.8990308Z optimizer (torch.optim.Optimizer): wrapped optimizer 2024-08-06T21:20:02.8990521Z swa_lrs (float or list): the learning rate value for all param groups 2024-08-06T21:20:02.8990644Z together or separately for each group. 2024-08-06T21:20:02.8990842Z annealing_epochs (int): number of epochs in the annealing phase 2024-08-06T21:20:02.8990950Z (default: 10) 2024-08-06T21:20:02.8991160Z annealing_strategy (str): "cos" or "linear"; specifies the annealing 2024-08-06T21:20:02.8991377Z strategy: "cos" for cosine annealing, "linear" for linear annealing 2024-08-06T21:20:02.8991513Z (default: "cos") 2024-08-06T21:20:02.8991691Z last_epoch (int): the index of the last epoch (default: -1) 2024-08-06T21:20:02.8991778Z 2024-08-06T21:20:02.8991950Z The :class:`SWALR` scheduler can be used together with other 2024-08-06T21:20:02.8992165Z schedulers to switch to a constant learning rate late in the training 2024-08-06T21:20:02.8992274Z as in the example below. 2024-08-06T21:20:02.8992352Z 2024-08-06T21:20:02.8992435Z Example: 2024-08-06T21:20:02.8992570Z >>> # xdoctest: +SKIP("Undefined variables") 2024-08-06T21:20:02.8992683Z >>> loader, optimizer, model = ... 2024-08-06T21:20:02.8992791Z >>> lr_lambda = lambda epoch: 0.9 2024-08-06T21:20:02.8993044Z >>> scheduler = torch.optim.lr_scheduler.MultiplicativeLR(optimizer, 2024-08-06T21:20:02.8993148Z >>> lr_lambda=lr_lambda) 2024-08-06T21:20:02.8993315Z >>> swa_scheduler = torch.optim.swa_utils.SWALR(optimizer, 2024-08-06T21:20:02.8993499Z >>> anneal_strategy="linear", anneal_epochs=20, swa_lr=0.05) 2024-08-06T21:20:02.8993589Z >>> swa_start = 160 2024-08-06T21:20:02.8993686Z >>> for i in range(300): 2024-08-06T21:20:02.8993804Z >>> for input, target in loader: 2024-08-06T21:20:02.8993915Z >>> optimizer.zero_grad() 2024-08-06T21:20:02.8994057Z >>> loss_fn(model(input), target).backward() 2024-08-06T21:20:02.8994159Z >>> optimizer.step() 2024-08-06T21:20:02.8994254Z >>> if i > swa_start: 2024-08-06T21:20:02.8994366Z >>> swa_scheduler.step() 2024-08-06T21:20:02.8994457Z >>> else: 2024-08-06T21:20:02.8994558Z >>> scheduler.step() 2024-08-06T21:20:02.8994642Z 2024-08-06T21:20:02.8994888Z .. _Averaging Weights Leads to Wider Optima and Better Generalization: 2024-08-06T21:20:02.8995003Z https://arxiv.org/abs/1803.05407 2024-08-06T21:20:02.8995093Z 2024-08-06T21:20:02.8995340Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.8995417Z 2024-08-06T21:20:02.8995520Z warnings.warn(msg) 2024-08-06T21:20:02.8995598Z 2024-08-06T21:20:02.8995783Z --- Parse Warning: 91 / 100 --- 2024-08-06T21:20:02.8996692Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=assert_close in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/testing/_comparison.py line=1274. 2024-08-06T21:20:02.8996951Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.8997122Z Asserts that ``actual`` and ``expected`` are close. 2024-08-06T21:20:02.8997206Z 2024-08-06T21:20:02.8997572Z If ``actual`` and ``expected`` are strided, non-quantized, real-valued, and finite, they are considered close if 2024-08-06T21:20:02.8997659Z 2024-08-06T21:20:02.8997747Z .. math:: 2024-08-06T21:20:02.8997825Z 2024-08-06T21:20:02.8998190Z \lvert \text{actual} - \text{expected} \rvert \le \texttt{atol} + \texttt{rtol} \cdot \lvert \text{expected} \rvert 2024-08-06T21:20:02.8998269Z 2024-08-06T21:20:02.8998608Z Non-finite values (``-inf`` and ``inf``) are only considered close if and only if they are equal. ``NaN``'s are 2024-08-06T21:20:02.8998819Z only considered equal to each other if ``equal_nan`` is ``True``. 2024-08-06T21:20:02.8998896Z 2024-08-06T21:20:02.8999091Z In addition, they are only considered close if they have the same 2024-08-06T21:20:02.8999181Z 2024-08-06T21:20:02.8999377Z - :attr:`~torch.Tensor.device` (if ``check_device`` is ``True``), 2024-08-06T21:20:02.8999503Z - ``dtype`` (if ``check_dtype`` is ``True``), 2024-08-06T21:20:02.8999650Z - ``layout`` (if ``check_layout`` is ``True``), and 2024-08-06T21:20:02.8999799Z - stride (if ``check_stride`` is ``True``). 2024-08-06T21:20:02.8999878Z 2024-08-06T21:20:02.9000183Z If either ``actual`` or ``expected`` is a meta tensor, only the attribute checks will be performed. 2024-08-06T21:20:02.9000263Z 2024-08-06T21:20:02.9000624Z If ``actual`` and ``expected`` are sparse (either having COO, CSR, CSC, BSR, or BSC layout), their strided members are 2024-08-06T21:20:02.9000992Z checked individually. Indices, namely ``indices`` for COO, ``crow_indices`` and ``col_indices`` for CSR and BSR, 2024-08-06T21:20:02.9001218Z or ``ccol_indices`` and ``row_indices`` for CSC and BSC layouts, respectively, 2024-08-06T21:20:02.9001607Z are always checked for equality whereas the values are checked for closeness according to the definition above. 2024-08-06T21:20:02.9001711Z 2024-08-06T21:20:02.9001989Z If ``actual`` and ``expected`` are quantized, they are considered close if they have the same 2024-08-06T21:20:02.9002349Z :meth:`~torch.Tensor.qscheme` and the result of :meth:`~torch.Tensor.dequantize` is close according to the 2024-08-06T21:20:02.9002447Z definition above. 2024-08-06T21:20:02.9002526Z 2024-08-06T21:20:02.9002833Z ``actual`` and ``expected`` can be :class:`~torch.Tensor`'s or any tensor-or-scalar-likes from which 2024-08-06T21:20:02.9003207Z :class:`torch.Tensor`'s can be constructed with :func:`torch.as_tensor`. Except for Python scalars the input types 2024-08-06T21:20:02.9003575Z have to be directly related. In addition, ``actual`` and ``expected`` can be :class:`~collections.abc.Sequence`'s 2024-08-06T21:20:02.9003950Z or :class:`~collections.abc.Mapping`'s in which case they are considered close if their structure matches and all 2024-08-06T21:20:02.9004178Z their elements are considered close according to the above definition. 2024-08-06T21:20:02.9004265Z 2024-08-06T21:20:02.9004376Z .. note:: 2024-08-06T21:20:02.9004453Z 2024-08-06T21:20:02.9004794Z Python scalars are an exception to the type relation requirement, because their :func:`type`, i.e. 2024-08-06T21:20:02.9005114Z :class:`int`, :class:`float`, and :class:`complex`, is equivalent to the ``dtype`` of a tensor-like. Thus, 2024-08-06T21:20:02.9005389Z Python scalars of different types can be checked, but require ``check_dtype=False``. 2024-08-06T21:20:02.9005475Z 2024-08-06T21:20:02.9005559Z Args: 2024-08-06T21:20:02.9005665Z actual (Any): Actual input. 2024-08-06T21:20:02.9005783Z expected (Any): Expected input. 2024-08-06T21:20:02.9006139Z allow_subclasses (bool): If ``True`` (default) and except for Python scalars, inputs of directly related types 2024-08-06T21:20:02.9006329Z are allowed. Otherwise type equality is required. 2024-08-06T21:20:02.9006690Z rtol (Optional[float]): Relative tolerance. If specified ``atol`` must also be specified. If omitted, default 2024-08-06T21:20:02.9006952Z values based on the :attr:`~torch.Tensor.dtype` are selected with the below table. 2024-08-06T21:20:02.9007317Z atol (Optional[float]): Absolute tolerance. If specified ``rtol`` must also be specified. If omitted, default 2024-08-06T21:20:02.9007571Z values based on the :attr:`~torch.Tensor.dtype` are selected with the below table. 2024-08-06T21:20:02.9007819Z equal_nan (Union[bool, str]): If ``True``, two ``NaN`` values will be considered equal. 2024-08-06T21:20:02.9008111Z check_device (bool): If ``True`` (default), asserts that corresponding tensors are on the same 2024-08-06T21:20:02.9008355Z :attr:`~torch.Tensor.device`. If this check is disabled, tensors on different 2024-08-06T21:20:02.9008596Z :attr:`~torch.Tensor.device`'s are moved to the CPU before being compared. 2024-08-06T21:20:02.9008974Z check_dtype (bool): If ``True`` (default), asserts that corresponding tensors have the same ``dtype``. If this 2024-08-06T21:20:02.9009317Z check is disabled, tensors with different ``dtype``'s are promoted to a common ``dtype`` (according to 2024-08-06T21:20:02.9009481Z :func:`torch.promote_types`) before being compared. 2024-08-06T21:20:02.9009836Z check_layout (bool): If ``True`` (default), asserts that corresponding tensors have the same ``layout``. If this 2024-08-06T21:20:02.9010173Z check is disabled, tensors with different ``layout``'s are converted to strided tensors before being 2024-08-06T21:20:02.9010275Z compared. 2024-08-06T21:20:02.9010637Z check_stride (bool): If ``True`` and corresponding tensors are strided, asserts that they have the same stride. 2024-08-06T21:20:02.9011024Z msg (Optional[Union[str, Callable[[str], str]]]): Optional error message to use in case a failure occurs during 2024-08-06T21:20:02.9011378Z the comparison. Can also passed as callable in which case it will be called with the generated message and 2024-08-06T21:20:02.9011494Z should return the new message. 2024-08-06T21:20:02.9011584Z 2024-08-06T21:20:02.9011665Z Raises: 2024-08-06T21:20:02.9011891Z ValueError: If no :class:`torch.Tensor` can be constructed from an input. 2024-08-06T21:20:02.9012061Z ValueError: If only ``rtol`` or ``atol`` is specified. 2024-08-06T21:20:02.9012381Z AssertionError: If corresponding inputs are not Python scalars and are not directly related. 2024-08-06T21:20:02.9012742Z AssertionError: If ``allow_subclasses`` is ``False``, but corresponding inputs are not Python scalars and have 2024-08-06T21:20:02.9012854Z different types. 2024-08-06T21:20:02.9013214Z AssertionError: If the inputs are :class:`~collections.abc.Sequence`'s, but their length does not match. 2024-08-06T21:20:02.9013611Z AssertionError: If the inputs are :class:`~collections.abc.Mapping`'s, but their set of keys do not match. 2024-08-06T21:20:02.9013924Z AssertionError: If corresponding tensors do not have the same :attr:`~torch.Tensor.shape`. 2024-08-06T21:20:02.9014215Z AssertionError: If ``check_layout`` is ``True``, but corresponding tensors do not have the same 2024-08-06T21:20:02.9014417Z :attr:`~torch.Tensor.layout`. 2024-08-06T21:20:02.9014643Z AssertionError: If only one of corresponding tensors is quantized. 2024-08-06T21:20:02.9015042Z AssertionError: If corresponding tensors are quantized, but have different :meth:`~torch.Tensor.qscheme`'s. 2024-08-06T21:20:02.9015367Z AssertionError: If ``check_device`` is ``True``, but corresponding tensors are not on the same 2024-08-06T21:20:02.9015498Z :attr:`~torch.Tensor.device`. 2024-08-06T21:20:02.9015832Z AssertionError: If ``check_dtype`` is ``True``, but corresponding tensors do not have the same ``dtype``. 2024-08-06T21:20:02.9016190Z AssertionError: If ``check_stride`` is ``True``, but corresponding strided tensors do not have the same stride. 2024-08-06T21:20:02.9016563Z AssertionError: If the values of corresponding tensors are not close according to the definition above. 2024-08-06T21:20:02.9016644Z 2024-08-06T21:20:02.9017001Z The following table displays the default ``rtol`` and ``atol`` for different ``dtype``'s. In case of mismatching 2024-08-06T21:20:02.9017162Z ``dtype``'s, the maximum of both tolerances is used. 2024-08-06T21:20:02.9017244Z 2024-08-06T21:20:02.9017374Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9017512Z | ``dtype`` | ``rtol`` | ``atol`` | 2024-08-06T21:20:02.9017622Z +===========================+============+==========+ 2024-08-06T21:20:02.9017773Z | :attr:`~torch.float16` | ``1e-3`` | ``1e-5`` | 2024-08-06T21:20:02.9017925Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9018063Z | :attr:`~torch.bfloat16` | ``1.6e-2`` | ``1e-5`` | 2024-08-06T21:20:02.9018198Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9018331Z | :attr:`~torch.float32` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:20:02.9018454Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9018594Z | :attr:`~torch.float64` | ``1e-7`` | ``1e-7`` | 2024-08-06T21:20:02.9018716Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9018849Z | :attr:`~torch.complex32` | ``1e-3`` | ``1e-5`` | 2024-08-06T21:20:02.9018985Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9019155Z | :attr:`~torch.complex64` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:20:02.9019273Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9019417Z | :attr:`~torch.complex128` | ``1e-7`` | ``1e-7`` | 2024-08-06T21:20:02.9019540Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9019683Z | :attr:`~torch.quint8` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:20:02.9019803Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9019936Z | :attr:`~torch.quint2x4` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:20:02.9020070Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9020203Z | :attr:`~torch.quint4x2` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:20:02.9020324Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9020471Z | :attr:`~torch.qint8` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:20:02.9020593Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9020725Z | :attr:`~torch.qint32` | ``1.3e-6`` | ``1e-5`` | 2024-08-06T21:20:02.9020914Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9021034Z | other | ``0.0`` | ``0.0`` | 2024-08-06T21:20:02.9021151Z +---------------------------+------------+----------+ 2024-08-06T21:20:02.9021242Z 2024-08-06T21:20:02.9021330Z .. note:: 2024-08-06T21:20:02.9021410Z 2024-08-06T21:20:02.9021798Z :func:`~torch.testing.assert_close` is highly configurable with strict default settings. Users are encouraged 2024-08-06T21:20:02.9022150Z to :func:`~functools.partial` it to fit their use case. For example, if an equality check is needed, one might 2024-08-06T21:20:02.9022422Z define an ``assert_equal`` that uses zero tolerances for every ``dtype`` by default: 2024-08-06T21:20:02.9022528Z 2024-08-06T21:20:02.9022625Z >>> import functools 2024-08-06T21:20:02.9022890Z >>> assert_equal = functools.partial(torch.testing.assert_close, rtol=0, atol=0) 2024-08-06T21:20:02.9022997Z >>> assert_equal(1e-9, 1e-10) 2024-08-06T21:20:02.9023115Z Traceback (most recent call last): 2024-08-06T21:20:02.9023207Z ... 2024-08-06T21:20:02.9023329Z AssertionError: Scalars are not equal! 2024-08-06T21:20:02.9023420Z 2024-08-06T21:20:02.9023537Z Expected 1e-10 but got 1e-09. 2024-08-06T21:20:02.9023661Z Absolute difference: 9.000000000000001e-10 2024-08-06T21:20:02.9023766Z Relative difference: 9.0 2024-08-06T21:20:02.9023855Z 2024-08-06T21:20:02.9023942Z Examples: 2024-08-06T21:20:02.9024055Z >>> # tensor to tensor comparison 2024-08-06T21:20:02.9024190Z >>> expected = torch.tensor([1e0, 1e-1, 1e-2]) 2024-08-06T21:20:02.9024320Z >>> actual = torch.acos(torch.cos(expected)) 2024-08-06T21:20:02.9024464Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:20:02.9024551Z 2024-08-06T21:20:02.9024663Z >>> # scalar to scalar comparison 2024-08-06T21:20:02.9024764Z >>> import math 2024-08-06T21:20:02.9024895Z >>> expected = math.sqrt(2.0) 2024-08-06T21:20:02.9025001Z >>> actual = 2.0 / math.sqrt(2.0) 2024-08-06T21:20:02.9025148Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:20:02.9025228Z 2024-08-06T21:20:02.9025353Z >>> # numpy array to numpy array comparison 2024-08-06T21:20:02.9025465Z >>> import numpy as np 2024-08-06T21:20:02.9025587Z >>> expected = np.array([1e0, 1e-1, 1e-2]) 2024-08-06T21:20:02.9025711Z >>> actual = np.arccos(np.cos(expected)) 2024-08-06T21:20:02.9025860Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:20:02.9025943Z 2024-08-06T21:20:02.9026090Z >>> # sequence to sequence comparison 2024-08-06T21:20:02.9026199Z >>> import numpy as np 2024-08-06T21:20:02.9026453Z >>> # The types of the sequences do not have to match. They only have to have the same 2024-08-06T21:20:02.9026582Z >>> # length and their elements have to match. 2024-08-06T21:20:02.9026744Z >>> expected = [torch.tensor([1.0]), 2.0, np.array(3.0)] 2024-08-06T21:20:02.9026849Z >>> actual = tuple(expected) 2024-08-06T21:20:02.9026987Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:20:02.9027077Z 2024-08-06T21:20:02.9027195Z >>> # mapping to mapping comparison 2024-08-06T21:20:02.9027312Z >>> from collections import OrderedDict 2024-08-06T21:20:02.9027422Z >>> import numpy as np 2024-08-06T21:20:02.9027523Z >>> foo = torch.tensor(1.0) 2024-08-06T21:20:02.9027624Z >>> bar = 2.0 2024-08-06T21:20:02.9027722Z >>> baz = np.array(3.0) 2024-08-06T21:20:02.9027974Z >>> # The types and a possible ordering of mappings do not have to match. They only 2024-08-06T21:20:02.9028208Z >>> # have to have the same set of keys and their elements have to match. 2024-08-06T21:20:02.9028414Z >>> expected = OrderedDict([("foo", foo), ("bar", bar), ("baz", baz)]) 2024-08-06T21:20:02.9028548Z >>> actual = {"baz": baz, "bar": bar, "foo": foo} 2024-08-06T21:20:02.9028703Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:20:02.9028783Z 2024-08-06T21:20:02.9028904Z >>> expected = torch.tensor([1.0, 2.0, 3.0]) 2024-08-06T21:20:02.9029024Z >>> actual = expected.clone() 2024-08-06T21:20:02.9029188Z >>> # By default, directly related instances can be compared 2024-08-06T21:20:02.9029404Z >>> torch.testing.assert_close(torch.nn.Parameter(actual), expected) 2024-08-06T21:20:02.9029631Z >>> # This check can be made more strict with allow_subclasses=False 2024-08-06T21:20:02.9029748Z >>> torch.testing.assert_close( 2024-08-06T21:20:02.9029945Z ... torch.nn.Parameter(actual), expected, allow_subclasses=False 2024-08-06T21:20:02.9030038Z ... ) 2024-08-06T21:20:02.9030156Z Traceback (most recent call last): 2024-08-06T21:20:02.9030249Z ... 2024-08-06T21:20:02.9030453Z TypeError: No comparison pair was able to handle inputs of type 2024-08-06T21:20:02.9030665Z and . 2024-08-06T21:20:02.9030898Z >>> # If the inputs are not directly related, they are never considered close 2024-08-06T21:20:02.9031066Z >>> torch.testing.assert_close(actual.numpy(), expected) 2024-08-06T21:20:02.9031178Z Traceback (most recent call last): 2024-08-06T21:20:02.9031270Z ... 2024-08-06T21:20:02.9031561Z TypeError: No comparison pair was able to handle inputs of type 2024-08-06T21:20:02.9031663Z and . 2024-08-06T21:20:02.9031939Z >>> # Exceptions to these rules are Python scalars. They can be checked regardless of 2024-08-06T21:20:02.9032080Z >>> # their type if check_dtype=False. 2024-08-06T21:20:02.9032248Z >>> torch.testing.assert_close(1.0, 1, check_dtype=False) 2024-08-06T21:20:02.9032337Z 2024-08-06T21:20:02.9032437Z >>> # NaN != NaN by default. 2024-08-06T21:20:02.9032556Z >>> expected = torch.tensor(float("Nan")) 2024-08-06T21:20:02.9032678Z >>> actual = expected.clone() 2024-08-06T21:20:02.9032818Z >>> torch.testing.assert_close(actual, expected) 2024-08-06T21:20:02.9032942Z Traceback (most recent call last): 2024-08-06T21:20:02.9033026Z ... 2024-08-06T21:20:02.9033148Z AssertionError: Scalars are not close! 2024-08-06T21:20:02.9033250Z 2024-08-06T21:20:02.9033385Z Expected nan but got nan. 2024-08-06T21:20:02.9033524Z Absolute difference: nan (up to 1e-05 allowed) 2024-08-06T21:20:02.9033679Z Relative difference: nan (up to 1.3e-06 allowed) 2024-08-06T21:20:02.9033878Z >>> torch.testing.assert_close(actual, expected, equal_nan=True) 2024-08-06T21:20:02.9033957Z 2024-08-06T21:20:02.9034087Z >>> expected = torch.tensor([1.0, 2.0, 3.0]) 2024-08-06T21:20:02.9034204Z >>> actual = torch.tensor([1.0, 4.0, 5.0]) 2024-08-06T21:20:02.9034343Z >>> # The default error message can be overwritten. 2024-08-06T21:20:02.9034639Z >>> torch.testing.assert_close(actual, expected, msg="Argh, the tensors are not close!") 2024-08-06T21:20:02.9034754Z Traceback (most recent call last): 2024-08-06T21:20:02.9034835Z ... 2024-08-06T21:20:02.9034992Z AssertionError: Argh, the tensors are not close! 2024-08-06T21:20:02.9035215Z >>> # If msg is a callable, it can be used to augment the generated message with 2024-08-06T21:20:02.9035323Z >>> # extra information 2024-08-06T21:20:02.9035461Z >>> torch.testing.assert_close( 2024-08-06T21:20:02.9035659Z ... actual, expected, msg=lambda msg: f"Header\n\n{msg}\n\nFooter" 2024-08-06T21:20:02.9035747Z ... ) 2024-08-06T21:20:02.9035860Z Traceback (most recent call last): 2024-08-06T21:20:02.9035942Z ... 2024-08-06T21:20:02.9036052Z AssertionError: Header 2024-08-06T21:20:02.9036140Z 2024-08-06T21:20:02.9036246Z Tensor-likes are not close! 2024-08-06T21:20:02.9036345Z 2024-08-06T21:20:02.9036455Z Mismatched elements: 2 / 3 (66.7%) 2024-08-06T21:20:02.9036679Z Greatest absolute difference: 2.0 at index (1,) (up to 1e-05 allowed) 2024-08-06T21:20:02.9036938Z Greatest relative difference: 1.0 at index (1,) (up to 1.3e-06 allowed) 2024-08-06T21:20:02.9037028Z 2024-08-06T21:20:02.9037112Z Footer 2024-08-06T21:20:02.9037200Z 2024-08-06T21:20:02.9037452Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9037532Z 2024-08-06T21:20:02.9037639Z warnings.warn(msg) 2024-08-06T21:20:02.9037718Z 2024-08-06T21:20:02.9037926Z --- Parse Warning: 92 / 100 --- 2024-08-06T21:20:02.9038855Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=register_pytree_node in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/_cxx_pytree.py line=111. 2024-08-06T21:20:02.9039117Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9039270Z Register a container-like type as pytree node. 2024-08-06T21:20:02.9039352Z 2024-08-06T21:20:02.9039435Z Args: 2024-08-06T21:20:02.9039635Z cls (type): A Python type to treat as an internal pytree node. 2024-08-06T21:20:02.9039905Z flatten_fn (callable): A function to be used during flattening, taking an instance of 2024-08-06T21:20:02.9040186Z ``cls`` and returning a pair, with (1) an iterable for the children to be flattened 2024-08-06T21:20:02.9040488Z recursively, and (2) some hashable auxiliary data to be stored in the treespec and to be 2024-08-06T21:20:02.9040603Z passed to the ``unflatten_fn``. 2024-08-06T21:20:02.9040878Z unflatten_fn (callable): A function taking two arguments: the auxiliary data that was 2024-08-06T21:20:02.9041148Z returned by ``flatten_fn`` and stored in the treespec, and the unflattened children. 2024-08-06T21:20:02.9041303Z The function should return an instance of ``cls``. 2024-08-06T21:20:02.9041578Z serialized_type_name (str, optional): A keyword argument used to specify the fully 2024-08-06T21:20:02.9041767Z qualified name used when serializing the tree spec. 2024-08-06T21:20:02.9042076Z to_dumpable_context (callable, optional): An optional keyword argument to custom specify how 2024-08-06T21:20:02.9042365Z to convert the context of the pytree to a custom json dumpable representation. This is 2024-08-06T21:20:02.9042635Z used for json serialization, which is being used in :mod:`torch.export` right now. 2024-08-06T21:20:02.9042934Z from_dumpable_context (callable, optional): An optional keyword argument to custom specify 2024-08-06T21:20:02.9043206Z how to convert the custom json dumpable representation of the context back to the 2024-08-06T21:20:02.9043462Z original context. This is used for json deserialization, which is being used in 2024-08-06T21:20:02.9043578Z :mod:`torch.export` right now. 2024-08-06T21:20:02.9043668Z 2024-08-06T21:20:02.9043760Z Example:: 2024-08-06T21:20:02.9043841Z 2024-08-06T21:20:02.9043950Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.9044092Z >>> # Registry a Python type with lambda functions 2024-08-06T21:20:02.9044230Z >>> register_pytree_node( 2024-08-06T21:20:02.9044319Z ... set, 2024-08-06T21:20:02.9044441Z ... lambda s: (sorted(s), None, None), 2024-08-06T21:20:02.9044574Z ... lambda children, _: set(children), 2024-08-06T21:20:02.9044656Z ... ) 2024-08-06T21:20:02.9044738Z 2024-08-06T21:20:02.9045002Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9045083Z 2024-08-06T21:20:02.9045178Z warnings.warn(msg) 2024-08-06T21:20:02.9045270Z 2024-08-06T21:20:02.9045457Z --- Parse Warning: 93 / 100 --- 2024-08-06T21:20:02.9046558Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=SelectiveCheckpointContext in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py line=1199. 2024-08-06T21:20:02.9046868Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9046946Z 2024-08-06T21:20:02.9047160Z Context passed to policy function during selective checkpointing. 2024-08-06T21:20:02.9047249Z 2024-08-06T21:20:02.9047478Z This class is used to pass relevant metadata to the policy function during 2024-08-06T21:20:02.9047742Z selective checkpointing. The metadata includes whether the current invocation 2024-08-06T21:20:02.9047915Z of the policy function is during recomputation or not. 2024-08-06T21:20:02.9047996Z 2024-08-06T21:20:02.9048094Z Example: 2024-08-06T21:20:02.9048195Z >>> # xdoctest: +SKIP(stub) 2024-08-06T21:20:02.9048278Z >>> 2024-08-06T21:20:02.9048417Z >>> def policy_fn(ctx, op, *args, **kwargs): 2024-08-06T21:20:02.9048523Z >>> print(ctx.is_recompute) 2024-08-06T21:20:02.9048607Z >>> 2024-08-06T21:20:02.9048894Z >>> context_fn = functools.partial(create_selective_checkpoint_contexts, policy_fn) 2024-08-06T21:20:02.9048978Z >>> 2024-08-06T21:20:02.9049162Z >>> out = torch.utils.checkpoint.checkpoint( 2024-08-06T21:20:02.9049266Z >>> fn, x, y, 2024-08-06T21:20:02.9049364Z >>> use_reentrant=False, 2024-08-06T21:20:02.9049466Z >>> context_fn=context_fn, 2024-08-06T21:20:02.9049556Z >>> ) 2024-08-06T21:20:02.9049634Z 2024-08-06T21:20:02.9049885Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9049977Z 2024-08-06T21:20:02.9050075Z warnings.warn(msg) 2024-08-06T21:20:02.9050155Z 2024-08-06T21:20:02.9050350Z --- Parse Warning: 94 / 100 --- 2024-08-06T21:20:02.9051344Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=create_selective_checkpoint_contexts in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/checkpoint.py line=1333. 2024-08-06T21:20:02.9051636Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9051724Z 2024-08-06T21:20:02.9051961Z Helper to avoid recomputing certain ops during activation checkpointing. 2024-08-06T21:20:02.9052052Z 2024-08-06T21:20:02.9052262Z Use this with `torch.utils.checkpoint.checkpoint` to control which 2024-08-06T21:20:02.9052422Z operations are recomputed during the backward pass. 2024-08-06T21:20:02.9052509Z 2024-08-06T21:20:02.9052588Z Args: 2024-08-06T21:20:02.9052706Z policy_fn_or_list (Callable or List): 2024-08-06T21:20:02.9052880Z - If a policy function is provided, it should accept a 2024-08-06T21:20:02.9053119Z :class:`SelectiveCheckpointContext`, the :class:`OpOverload`, args and 2024-08-06T21:20:02.9053325Z kwargs to the op, and return a :class:`CheckpointPolicy` enum value 2024-08-06T21:20:02.9053578Z indicating whether the execution of the op should be recomputed or not. 2024-08-06T21:20:02.9053804Z - If a list of operations is provided, it is equivalent to a policy 2024-08-06T21:20:02.9053988Z returning `CheckpointPolicy.MUST_SAVE` for the specified 2024-08-06T21:20:02.9054213Z operations and `CheckpointPolicy.PREFER_RECOMPUTE` for all other 2024-08-06T21:20:02.9054362Z operations. 2024-08-06T21:20:02.9054580Z allow_cache_entry_mutation (bool, optional): By default, an error is 2024-08-06T21:20:02.9054798Z raised if any tensors cached by selective activation checkpoint are 2024-08-06T21:20:02.9055006Z mutated in order to ensure correctness. If set to `True`, this check 2024-08-06T21:20:02.9055109Z is disabled. 2024-08-06T21:20:02.9055190Z Returns: 2024-08-06T21:20:02.9055345Z A tuple of two context managers. 2024-08-06T21:20:02.9055437Z 2024-08-06T21:20:02.9055518Z Example: 2024-08-06T21:20:02.9055620Z >>> # xdoctest: +REQUIRES(LINUX) 2024-08-06T21:20:02.9055724Z >>> import functools 2024-08-06T21:20:02.9055806Z >>> 2024-08-06T21:20:02.9055931Z >>> x = torch.rand(10, 10, requires_grad=True) 2024-08-06T21:20:02.9056064Z >>> y = torch.rand(10, 10, requires_grad=True) 2024-08-06T21:20:02.9056144Z >>> 2024-08-06T21:20:02.9056237Z >>> ops_to_save = [ 2024-08-06T21:20:02.9056361Z >>> torch.ops.aten.mm.default, 2024-08-06T21:20:02.9056442Z >>> ] 2024-08-06T21:20:02.9056522Z >>> 2024-08-06T21:20:02.9056658Z >>> def policy_fn(ctx, op, *args, **kwargs): 2024-08-06T21:20:02.9056755Z >>> if op in ops_to_save: 2024-08-06T21:20:02.9056877Z >>> return CheckpointPolicy.MUST_SAVE 2024-08-06T21:20:02.9056972Z >>> else: 2024-08-06T21:20:02.9057111Z >>> return CheckpointPolicy.PREFER_RECOMPUTE 2024-08-06T21:20:02.9057192Z >>> 2024-08-06T21:20:02.9057472Z >>> context_fn = functools.partial(create_selective_checkpoint_contexts, policy_fn) 2024-08-06T21:20:02.9057553Z >>> 2024-08-06T21:20:02.9057646Z >>> # or equivalently 2024-08-06T21:20:02.9057956Z >>> context_fn = functools.partial(create_selective_checkpoint_contexts, ops_to_save) 2024-08-06T21:20:02.9058038Z >>> 2024-08-06T21:20:02.9058125Z >>> def fn(x, y): 2024-08-06T21:20:02.9058334Z >>> return torch.sigmoid(torch.matmul(torch.matmul(x, y), y)) * y 2024-08-06T21:20:02.9058413Z >>> 2024-08-06T21:20:02.9058551Z >>> out = torch.utils.checkpoint.checkpoint( 2024-08-06T21:20:02.9058647Z >>> fn, x, y, 2024-08-06T21:20:02.9058747Z >>> use_reentrant=False, 2024-08-06T21:20:02.9058860Z >>> context_fn=context_fn, 2024-08-06T21:20:02.9058942Z >>> ) 2024-08-06T21:20:02.9059023Z 2024-08-06T21:20:02.9059314Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9059393Z 2024-08-06T21:20:02.9059493Z warnings.warn(msg) 2024-08-06T21:20:02.9059585Z 2024-08-06T21:20:02.9059778Z --- Parse Warning: 95 / 100 --- 2024-08-06T21:20:02.9060680Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=CppExtension in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=925. 2024-08-06T21:20:02.9060949Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9061027Z 2024-08-06T21:20:02.9061168Z Create a :class:`setuptools.Extension` for C++. 2024-08-06T21:20:02.9061254Z 2024-08-06T21:20:02.9061495Z Convenience method that creates a :class:`setuptools.Extension` with the 2024-08-06T21:20:02.9061718Z bare minimum (but often sufficient) arguments to build a C++ extension. 2024-08-06T21:20:02.9061807Z 2024-08-06T21:20:02.9062015Z All arguments are forwarded to the :class:`setuptools.Extension` 2024-08-06T21:20:02.9062162Z constructor. Full list arguments can be found at 2024-08-06T21:20:02.9062529Z https://setuptools.pypa.io/en/latest/userguide/ext_modules.html#extension-api-reference 2024-08-06T21:20:02.9062607Z 2024-08-06T21:20:02.9062701Z Example: 2024-08-06T21:20:02.9062959Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.9063109Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:20:02.9063232Z >>> from setuptools import setup 2024-08-06T21:20:02.9063449Z >>> from torch.utils.cpp_extension import BuildExtension, CppExtension 2024-08-06T21:20:02.9063533Z >>> setup( 2024-08-06T21:20:02.9063640Z ... name='extension', 2024-08-06T21:20:02.9063732Z ... ext_modules=[ 2024-08-06T21:20:02.9063828Z ... CppExtension( 2024-08-06T21:20:02.9063997Z ... name='extension', 2024-08-06T21:20:02.9064117Z ... sources=['extension.cpp'], 2024-08-06T21:20:02.9064235Z ... extra_compile_args=['-g'], 2024-08-06T21:20:02.9064400Z ... extra_link_flags=['-Wl,--no-as-needed', '-lm']) 2024-08-06T21:20:02.9064487Z ... ], 2024-08-06T21:20:02.9064577Z ... cmdclass={ 2024-08-06T21:20:02.9064703Z ... 'build_ext': BuildExtension 2024-08-06T21:20:02.9064787Z ... }) 2024-08-06T21:20:02.9064867Z 2024-08-06T21:20:02.9065127Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9065210Z 2024-08-06T21:20:02.9065305Z warnings.warn(msg) 2024-08-06T21:20:02.9065393Z 2024-08-06T21:20:02.9065757Z --- Parse Warning: 96 / 100 --- 2024-08-06T21:20:02.9066668Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=CUDAExtension in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=976. 2024-08-06T21:20:02.9066946Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9067028Z 2024-08-06T21:20:02.9067195Z Create a :class:`setuptools.Extension` for CUDA/C++. 2024-08-06T21:20:02.9067329Z 2024-08-06T21:20:02.9067573Z Convenience method that creates a :class:`setuptools.Extension` with the 2024-08-06T21:20:02.9067782Z bare minimum (but often sufficient) arguments to build a CUDA/C++ 2024-08-06T21:20:02.9068013Z extension. This includes the CUDA include path, library path and runtime 2024-08-06T21:20:02.9068097Z library. 2024-08-06T21:20:02.9068182Z 2024-08-06T21:20:02.9068389Z All arguments are forwarded to the :class:`setuptools.Extension` 2024-08-06T21:20:02.9068534Z constructor. Full list arguments can be found at 2024-08-06T21:20:02.9068867Z https://setuptools.pypa.io/en/latest/userguide/ext_modules.html#extension-api-reference 2024-08-06T21:20:02.9068987Z 2024-08-06T21:20:02.9069072Z Example: 2024-08-06T21:20:02.9069177Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.9069325Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:20:02.9069435Z >>> from setuptools import setup 2024-08-06T21:20:02.9069665Z >>> from torch.utils.cpp_extension import BuildExtension, CUDAExtension 2024-08-06T21:20:02.9069748Z >>> setup( 2024-08-06T21:20:02.9069848Z ... name='cuda_extension', 2024-08-06T21:20:02.9069952Z ... ext_modules=[ 2024-08-06T21:20:02.9070050Z ... CUDAExtension( 2024-08-06T21:20:02.9070162Z ... name='cuda_extension', 2024-08-06T21:20:02.9070337Z ... sources=['extension.cpp', 'extension_kernel.cu'], 2024-08-06T21:20:02.9070467Z ... extra_compile_args={'cxx': ['-g'], 2024-08-06T21:20:02.9070594Z ... 'nvcc': ['-O2']}, 2024-08-06T21:20:02.9070753Z ... extra_link_flags=['-Wl,--no-as-needed', '-lcuda']) 2024-08-06T21:20:02.9070837Z ... ], 2024-08-06T21:20:02.9070940Z ... cmdclass={ 2024-08-06T21:20:02.9071088Z ... 'build_ext': BuildExtension 2024-08-06T21:20:02.9071176Z ... }) 2024-08-06T21:20:02.9071263Z 2024-08-06T21:20:02.9071362Z Compute capabilities: 2024-08-06T21:20:02.9071442Z 2024-08-06T21:20:02.9071753Z By default the extension will be compiled to run on all archs of the cards visible during the 2024-08-06T21:20:02.9072048Z building process of the extension, plus PTX. If down the road a new card is installed the 2024-08-06T21:20:02.9072341Z extension may need to be recompiled. If a visible card has a compute capability (CC) that's 2024-08-06T21:20:02.9072652Z newer than the newest version for which your nvcc can build fully-compiled binaries, Pytorch 2024-08-06T21:20:02.9072965Z will make nvcc fall back to building kernels with the newest version of PTX your nvcc does 2024-08-06T21:20:02.9073097Z support (see below for details on PTX). 2024-08-06T21:20:02.9073177Z 2024-08-06T21:20:02.9073492Z You can override the default behavior using `TORCH_CUDA_ARCH_LIST` to explicitly specify which 2024-08-06T21:20:02.9073619Z CCs you want the extension to support: 2024-08-06T21:20:02.9073697Z 2024-08-06T21:20:02.9073885Z ``TORCH_CUDA_ARCH_LIST="6.1 8.6" python build_my_extension.py`` 2024-08-06T21:20:02.9074121Z ``TORCH_CUDA_ARCH_LIST="5.2 6.0 6.1 7.0 7.5 8.0 8.6+PTX" python build_my_extension.py`` 2024-08-06T21:20:02.9074201Z 2024-08-06T21:20:02.9074517Z The +PTX option causes extension kernel binaries to include PTX instructions for the specified 2024-08-06T21:20:02.9074840Z CC. PTX is an intermediate representation that allows kernels to runtime-compile for any CC >= 2024-08-06T21:20:02.9075142Z the specified CC (for example, 8.6+PTX generates PTX that can runtime-compile for any GPU with 2024-08-06T21:20:02.9075436Z CC >= 8.6). This improves your binary's forward compatibility. However, relying on older PTX to 2024-08-06T21:20:02.9075769Z provide forward compat by runtime-compiling for newer CCs can modestly reduce performance on 2024-08-06T21:20:02.9076072Z those newer CCs. If you know exact CC(s) of the GPUs you want to target, you're always better 2024-08-06T21:20:02.9076404Z off specifying them individually. For example, if you want your extension to run on 8.0 and 8.6, 2024-08-06T21:20:02.9076726Z "8.0+PTX" would work functionally because it includes PTX that can runtime-compile for 8.6, but 2024-08-06T21:20:02.9076822Z "8.0 8.6" would be better. 2024-08-06T21:20:02.9076915Z 2024-08-06T21:20:02.9077215Z Note that while it's possible to include all supported archs, the more archs get included the 2024-08-06T21:20:02.9077505Z slower the building process will be, as it will build a separate kernel image for each arch. 2024-08-06T21:20:02.9077629Z 2024-08-06T21:20:02.9077960Z Note that CUDA-11.5 nvcc will hit internal compiler error while parsing torch/extension.h on Windows. 2024-08-06T21:20:02.9078176Z To workaround the issue, move python binding logic to pure C++ file. 2024-08-06T21:20:02.9078269Z 2024-08-06T21:20:02.9078361Z Example use: 2024-08-06T21:20:02.9078460Z #include 2024-08-06T21:20:02.9078629Z at::Tensor SigmoidAlphaBlendForwardCuda(....) 2024-08-06T21:20:02.9078712Z 2024-08-06T21:20:02.9078802Z Instead of: 2024-08-06T21:20:02.9078927Z #include 2024-08-06T21:20:02.9079083Z torch::Tensor SigmoidAlphaBlendForwardCuda(...) 2024-08-06T21:20:02.9079177Z 2024-08-06T21:20:02.9079452Z Currently open issue for nvcc bug: https://github.com/pytorch/pytorch/issues/69460 2024-08-06T21:20:02.9079964Z Complete workaround code example: https://github.com/facebookresearch/pytorch3d/commit/cb170ac024a949f1f9614ffe6af1c38d972f7d48 2024-08-06T21:20:02.9080062Z 2024-08-06T21:20:02.9080173Z Relocatable device code linking: 2024-08-06T21:20:02.9080252Z 2024-08-06T21:20:02.9080576Z If you want to reference device symbols across compilation units (across object files), 2024-08-06T21:20:02.9080837Z the object files need to be built with `relocatable device code` (-rdc=true or -dc). 2024-08-06T21:20:02.9081197Z An exception to this rule is "dynamic parallelism" (nested kernel launches) which is not used a lot anymore. 2024-08-06T21:20:02.9081543Z `Relocatable device code` is less optimized so it needs to be used only on object files that need it. 2024-08-06T21:20:02.9081869Z Using `-dlto` (Device Link Time Optimization) at the device code compilation step and `dlink` step 2024-08-06T21:20:02.9082045Z help reduce the protentional perf degradation of `-rdc`. 2024-08-06T21:20:02.9082228Z Note that it needs to be used at both steps to be useful. 2024-08-06T21:20:02.9082349Z 2024-08-06T21:20:02.9082727Z If you have `rdc` objects you need to have an extra `-dlink` (device linking) step before the CPU symbol linking step. 2024-08-06T21:20:02.9082901Z There is also a case where `-dlink` is used without `-rdc`: 2024-08-06T21:20:02.9083160Z when an extension is linked against a static lib containing rdc-compiled objects 2024-08-06T21:20:02.9083384Z like the [NVSHMEM library](https://developer.nvidia.com/nvshmem). 2024-08-06T21:20:02.9083468Z 2024-08-06T21:20:02.9083671Z Note: Ninja is required to build a CUDA Extension with RDC linking. 2024-08-06T21:20:02.9083766Z 2024-08-06T21:20:02.9083856Z Example: 2024-08-06T21:20:02.9083952Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.9084110Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:20:02.9084209Z >>> CUDAExtension( 2024-08-06T21:20:02.9084312Z ... name='cuda_extension', 2024-08-06T21:20:02.9084481Z ... sources=['extension.cpp', 'extension_kernel.cu'], 2024-08-06T21:20:02.9084578Z ... dlink=True, 2024-08-06T21:20:02.9084694Z ... dlink_libraries=["dlink_lib"], 2024-08-06T21:20:02.9084827Z ... extra_compile_args={'cxx': ['-g'], 2024-08-06T21:20:02.9084954Z ... 'nvcc': ['-O2', '-rdc=true']}) 2024-08-06T21:20:02.9085060Z 2024-08-06T21:20:02.9085326Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9085407Z 2024-08-06T21:20:02.9085514Z warnings.warn(msg) 2024-08-06T21:20:02.9085594Z 2024-08-06T21:20:02.9085800Z --- Parse Warning: 97 / 100 --- 2024-08-06T21:20:02.9086681Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=load in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=1234. 2024-08-06T21:20:02.9086944Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9087058Z 2024-08-06T21:20:02.9087212Z Load a PyTorch C++ extension just-in-time (JIT). 2024-08-06T21:20:02.9087292Z 2024-08-06T21:20:02.9087500Z To load an extension, a Ninja build file is emitted, which is used to 2024-08-06T21:20:02.9087716Z compile the given sources into a dynamic library. This library is 2024-08-06T21:20:02.9087937Z subsequently loaded into the current Python process as a module and 2024-08-06T21:20:02.9088066Z returned from this function, ready for use. 2024-08-06T21:20:02.9088155Z 2024-08-06T21:20:02.9088362Z By default, the directory to which the build file is emitted and the 2024-08-06T21:20:02.9088594Z resulting library compiled to is ``/torch_extensions/``, where 2024-08-06T21:20:02.9088807Z ```` is the temporary folder on the current platform and ```` 2024-08-06T21:20:02.9089022Z the name of the extension. This location can be overridden in two ways. 2024-08-06T21:20:02.9089239Z First, if the ``TORCH_EXTENSIONS_DIR`` environment variable is set, it 2024-08-06T21:20:02.9089458Z replaces ``/torch_extensions`` and all extensions will be compiled 2024-08-06T21:20:02.9089701Z into subfolders of this directory. Second, if the ``build_directory`` 2024-08-06T21:20:02.9089947Z argument to this function is supplied, it overrides the entire path, i.e. 2024-08-06T21:20:02.9090111Z the library will be compiled into that folder directly. 2024-08-06T21:20:02.9090192Z 2024-08-06T21:20:02.9090416Z To compile the sources, the default system compiler (``c++``) is used, 2024-08-06T21:20:02.9090653Z which can be overridden by setting the ``CXX`` environment variable. To pass 2024-08-06T21:20:02.9090877Z additional arguments to the compilation process, ``extra_cflags`` or 2024-08-06T21:20:02.9091107Z ``extra_ldflags`` can be provided. For example, to compile your extension 2024-08-06T21:20:02.9091320Z with optimizations, pass ``extra_cflags=['-O3']``. You can also use 2024-08-06T21:20:02.9091510Z ``extra_cflags`` to pass further include directories. 2024-08-06T21:20:02.9091590Z 2024-08-06T21:20:02.9091826Z CUDA support with mixed compilation is provided. Simply pass CUDA source 2024-08-06T21:20:02.9092019Z files (``.cu`` or ``.cuh``) along with other sources. Such files will be 2024-08-06T21:20:02.9092258Z detected and compiled with nvcc rather than the C++ compiler. This includes 2024-08-06T21:20:02.9092468Z passing the CUDA lib64 directory as a library directory, and linking 2024-08-06T21:20:02.9092625Z ``cudart``. You can pass additional flags to nvcc via 2024-08-06T21:20:02.9092829Z ``extra_cuda_cflags``, just like with ``extra_cflags`` for C++. Various 2024-08-06T21:20:02.9093061Z heuristics for finding the CUDA install directory are used, which usually 2024-08-06T21:20:02.9093281Z work fine. If not, setting the ``CUDA_HOME`` environment variable is the 2024-08-06T21:20:02.9093374Z safest option. 2024-08-06T21:20:02.9093455Z 2024-08-06T21:20:02.9093551Z Args: 2024-08-06T21:20:02.9093763Z name: The name of the extension to build. This MUST be the same as the 2024-08-06T21:20:02.9093870Z name of the pybind11 module! 2024-08-06T21:20:02.9094108Z sources: A list of relative or absolute paths to C++ source files. 2024-08-06T21:20:02.9094425Z extra_cflags: optional list of compiler flags to forward to the build. 2024-08-06T21:20:02.9094661Z extra_cuda_cflags: optional list of compiler flags to forward to nvcc 2024-08-06T21:20:02.9094770Z when building CUDA sources. 2024-08-06T21:20:02.9094989Z extra_ldflags: optional list of linker flags to forward to the build. 2024-08-06T21:20:02.9095220Z extra_include_paths: optional list of include directories to forward 2024-08-06T21:20:02.9095313Z to the build. 2024-08-06T21:20:02.9095493Z build_directory: optional path to use as build workspace. 2024-08-06T21:20:02.9095686Z verbose: If ``True``, turns on verbose logging of load steps. 2024-08-06T21:20:02.9095937Z with_cuda: Determines whether CUDA headers and libraries are added to 2024-08-06T21:20:02.9096097Z the build. If set to ``None`` (default), this value is 2024-08-06T21:20:02.9096313Z automatically determined based on the existence of ``.cu`` or 2024-08-06T21:20:02.9096483Z ``.cuh`` in ``sources``. Set it to `True`` to force CUDA headers 2024-08-06T21:20:02.9096592Z and libraries to be included. 2024-08-06T21:20:02.9096803Z is_python_module: If ``True`` (default), imports the produced shared 2024-08-06T21:20:02.9096991Z library as a Python module. If ``False``, behavior depends on 2024-08-06T21:20:02.9097101Z ``is_standalone``. 2024-08-06T21:20:02.9097300Z is_standalone: If ``False`` (default) loads the constructed extension 2024-08-06T21:20:02.9097496Z into the process as a plain dynamic library. If ``True``, build a 2024-08-06T21:20:02.9097612Z standalone executable. 2024-08-06T21:20:02.9097691Z 2024-08-06T21:20:02.9097777Z Returns: 2024-08-06T21:20:02.9097900Z If ``is_python_module`` is ``True``: 2024-08-06T21:20:02.9098098Z Returns the loaded PyTorch extension as a Python module. 2024-08-06T21:20:02.9098182Z 2024-08-06T21:20:02.9098391Z If ``is_python_module`` is ``False`` and ``is_standalone`` is ``False``: 2024-08-06T21:20:02.9098601Z Returns nothing. (The shared library is loaded into the process as 2024-08-06T21:20:02.9098695Z a side effect.) 2024-08-06T21:20:02.9098785Z 2024-08-06T21:20:02.9098897Z If ``is_standalone`` is ``True``. 2024-08-06T21:20:02.9099097Z Return the path to the executable. (On Windows, TORCH_LIB_PATH is 2024-08-06T21:20:02.9099280Z added to the PATH environment variable as a side effect.) 2024-08-06T21:20:02.9099360Z 2024-08-06T21:20:02.9099470Z Example: 2024-08-06T21:20:02.9099577Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.9099716Z >>> from torch.utils.cpp_extension import load 2024-08-06T21:20:02.9099810Z >>> module = load( 2024-08-06T21:20:02.9099921Z ... name='extension', 2024-08-06T21:20:02.9100082Z ... sources=['extension.cpp', 'extension_kernel.cu'], 2024-08-06T21:20:02.9100197Z ... extra_cflags=['-O2'], 2024-08-06T21:20:02.9100291Z ... verbose=True) 2024-08-06T21:20:02.9100372Z 2024-08-06T21:20:02.9100637Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9100716Z 2024-08-06T21:20:02.9100815Z warnings.warn(msg) 2024-08-06T21:20:02.9100907Z 2024-08-06T21:20:02.9101106Z --- Parse Warning: 98 / 100 --- 2024-08-06T21:20:02.9102000Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=load_inline in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/cpp_extension.py line=1523. 2024-08-06T21:20:02.9102277Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9102358Z 2024-08-06T21:20:02.9102568Z Load a PyTorch C++ extension just-in-time (JIT) from string sources. 2024-08-06T21:20:02.9102660Z 2024-08-06T21:20:02.9102925Z This function behaves exactly like :func:`load`, but takes its sources as 2024-08-06T21:20:02.9103150Z strings rather than filenames. These strings are stored to files in the 2024-08-06T21:20:02.9103372Z build directory, after which the behavior of :func:`load_inline` is 2024-08-06T21:20:02.9103473Z identical to :func:`load`. 2024-08-06T21:20:02.9103552Z 2024-08-06T21:20:02.9103647Z See `the 2024-08-06T21:20:02.9103971Z tests `_ 2024-08-06T21:20:02.9104106Z for good examples of using this function. 2024-08-06T21:20:02.9104188Z 2024-08-06T21:20:02.9104420Z Sources may omit two required parts of a typical non-inline C++ extension: 2024-08-06T21:20:02.9104697Z the necessary header includes, as well as the (pybind11) binding code. More 2024-08-06T21:20:02.9104941Z precisely, strings passed to ``cpp_sources`` are first concatenated into a 2024-08-06T21:20:02.9105131Z single ``.cpp`` file. This file is then prepended with ``#include 2024-08-06T21:20:02.9105242Z ``. 2024-08-06T21:20:02.9105329Z 2024-08-06T21:20:02.9105552Z Furthermore, if the ``functions`` argument is supplied, bindings will be 2024-08-06T21:20:02.9105793Z automatically generated for each function specified. ``functions`` can 2024-08-06T21:20:02.9106012Z either be a list of function names, or a dictionary mapping from function 2024-08-06T21:20:02.9106235Z names to docstrings. If a list is given, the name of each function is used 2024-08-06T21:20:02.9106339Z as its docstring. 2024-08-06T21:20:02.9106423Z 2024-08-06T21:20:02.9106635Z The sources in ``cuda_sources`` are concatenated into a separate ``.cu`` 2024-08-06T21:20:02.9106823Z file and prepended with ``torch/types.h``, ``cuda.h`` and 2024-08-06T21:20:02.9107062Z ``cuda_runtime.h`` includes. The ``.cpp`` and ``.cu`` files are compiled 2024-08-06T21:20:02.9107298Z separately, but ultimately linked into a single library. Note that no 2024-08-06T21:20:02.9107532Z bindings are generated for functions in ``cuda_sources`` per se. To bind 2024-08-06T21:20:02.9107748Z to a CUDA kernel, you must create a C++ function that calls it, and either 2024-08-06T21:20:02.9107967Z declare or define this C++ function in one of the ``cpp_sources`` (and 2024-08-06T21:20:02.9108075Z include its name in ``functions``). 2024-08-06T21:20:02.9108156Z 2024-08-06T21:20:02.9108347Z See :func:`load` for a description of arguments omitted below. 2024-08-06T21:20:02.9108427Z 2024-08-06T21:20:02.9108509Z Args: 2024-08-06T21:20:02.9108756Z cpp_sources: A string, or list of strings, containing C++ source code. 2024-08-06T21:20:02.9108979Z cuda_sources: A string, or list of strings, containing CUDA source code. 2024-08-06T21:20:02.9109184Z functions: A list of function names for which to generate function 2024-08-06T21:20:02.9109404Z bindings. If a dictionary is given, it should map function names to 2024-08-06T21:20:02.9109585Z docstrings (which are otherwise just the function names). 2024-08-06T21:20:02.9109805Z with_cuda: Determines whether CUDA headers and libraries are added to 2024-08-06T21:20:02.9109970Z the build. If set to ``None`` (default), this value is 2024-08-06T21:20:02.9110173Z automatically determined based on whether ``cuda_sources`` is 2024-08-06T21:20:02.9110336Z provided. Set it to ``True`` to force CUDA headers 2024-08-06T21:20:02.9110443Z and libraries to be included. 2024-08-06T21:20:02.9110655Z with_pytorch_error_handling: Determines whether pytorch error and 2024-08-06T21:20:02.9110863Z warning macros are handled by pytorch instead of pybind. To do 2024-08-06T21:20:02.9111081Z this, each function ``foo`` is called via an intermediary ``_safe_foo`` 2024-08-06T21:20:02.9111307Z function. This redirection might cause issues in obscure cases 2024-08-06T21:20:02.9111503Z of cpp. This flag should be set to ``False`` when this redirect 2024-08-06T21:20:02.9111597Z causes issues. 2024-08-06T21:20:02.9111679Z 2024-08-06T21:20:02.9111776Z Example: 2024-08-06T21:20:02.9111923Z >>> # xdoctest: +REQUIRES(env:TORCH_DOCTEST_CPP_EXT) 2024-08-06T21:20:02.9112080Z >>> from torch.utils.cpp_extension import load_inline 2024-08-06T21:20:02.9112179Z >>> source = """ 2024-08-06T21:20:02.9112323Z at::Tensor sin_add(at::Tensor x, at::Tensor y) { 2024-08-06T21:20:02.9112435Z return x.sin() + y.sin(); 2024-08-06T21:20:02.9112521Z } 2024-08-06T21:20:02.9112629Z """ 2024-08-06T21:20:02.9112781Z >>> module = load_inline(name='inline_extension', 2024-08-06T21:20:02.9112899Z ... cpp_sources=[source], 2024-08-06T21:20:02.9113017Z ... functions=['sin_add']) 2024-08-06T21:20:02.9113110Z 2024-08-06T21:20:02.9113198Z .. note:: 2024-08-06T21:20:02.9113396Z By default, the Ninja backend uses #CPUS + 2 workers to build the 2024-08-06T21:20:02.9113613Z extension. This may use up too many resources on some systems. One 2024-08-06T21:20:02.9113835Z can control the number of workers by setting the `MAX_JOBS` environment 2024-08-06T21:20:02.9113952Z variable to a non-negative number. 2024-08-06T21:20:02.9114049Z 2024-08-06T21:20:02.9114301Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9114383Z 2024-08-06T21:20:02.9114495Z warnings.warn(msg) 2024-08-06T21:20:02.9114577Z 2024-08-06T21:20:02.9114770Z --- Parse Warning: 99 / 100 --- 2024-08-06T21:20:02.9115815Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=ThroughputBenchmark in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/throughput_benchmark.py line=61. 2024-08-06T21:20:02.9116080Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9116175Z 2024-08-06T21:20:02.9116468Z This class is a wrapper around a c++ component throughput_benchmark::ThroughputBenchmark. 2024-08-06T21:20:02.9116549Z 2024-08-06T21:20:02.9116860Z This wrapper on the throughput_benchmark::ThroughputBenchmark component is responsible 2024-08-06T21:20:02.9117112Z for executing a PyTorch module (nn.Module or ScriptModule) under an inference 2024-08-06T21:20:02.9117344Z server like load. It can emulate multiple calling threads to a single module 2024-08-06T21:20:02.9117620Z provided. In the future we plan to enhance this component to support inter and 2024-08-06T21:20:02.9117869Z intra-op parallelism as well as multiple models running in a single process. 2024-08-06T21:20:02.9117950Z 2024-08-06T21:20:02.9118214Z Please note that even though nn.Module is supported, it might incur an overhead 2024-08-06T21:20:02.9118436Z from the need to hold GIL every time we execute Python code or pass around 2024-08-06T21:20:02.9118685Z inputs as Python objects. As soon as you have a ScriptModule version of your 2024-08-06T21:20:02.9118918Z model for inference deployment it is better to switch to using it in this 2024-08-06T21:20:02.9119005Z benchmark. 2024-08-06T21:20:02.9119098Z 2024-08-06T21:20:02.9119186Z Example:: 2024-08-06T21:20:02.9119266Z 2024-08-06T21:20:02.9119396Z >>> # xdoctest: +SKIP("undefined vars") 2024-08-06T21:20:02.9119535Z >>> from torch.utils import ThroughputBenchmark 2024-08-06T21:20:02.9119663Z >>> bench = ThroughputBenchmark(my_module) 2024-08-06T21:20:02.9119832Z >>> # Pre-populate benchmark's data set with the inputs 2024-08-06T21:20:02.9119931Z >>> for input in inputs: 2024-08-06T21:20:02.9120151Z ... # Both args and kwargs work, same as any PyTorch Module / ScriptModule 2024-08-06T21:20:02.9120330Z ... bench.add_input(input[0], x2=input[1]) 2024-08-06T21:20:02.9120524Z >>> # Inputs supplied above are randomly used during the execution 2024-08-06T21:20:02.9120627Z >>> stats = bench.benchmark( 2024-08-06T21:20:02.9120738Z ... num_calling_threads=4, 2024-08-06T21:20:02.9120838Z ... num_warmup_iters = 100, 2024-08-06T21:20:02.9120934Z ... num_iters = 1000, 2024-08-06T21:20:02.9121029Z ... ) 2024-08-06T21:20:02.9121206Z >>> print("Avg latency (ms): {}".format(stats.latency_avg_ms)) 2024-08-06T21:20:02.9121378Z >>> print("Number of iterations: {}".format(stats.num_iters)) 2024-08-06T21:20:02.9121474Z 2024-08-06T21:20:02.9121749Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9121843Z 2024-08-06T21:20:02.9121941Z warnings.warn(msg) 2024-08-06T21:20:02.9122023Z 2024-08-06T21:20:02.9122221Z --- Parse Warning: 100 / 100 --- 2024-08-06T21:20:02.9123175Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/xdoctest/core.py:423: UserWarning: Cannot scrape callname=DistributedSampler in modpath=/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/utils/data/distributed.py line=17. 2024-08-06T21:20:02.9123436Z Caused by: DoctestParseError('Failed to parse doctest in _label_docsrc_lines') 2024-08-06T21:20:02.9123649Z Sampler that restricts data loading to a subset of the dataset. 2024-08-06T21:20:02.9123730Z 2024-08-06T21:20:02.9123862Z It is especially useful in conjunction with 2024-08-06T21:20:02.9124119Z :class:`torch.nn.parallel.DistributedDataParallel`. In such a case, each 2024-08-06T21:20:02.9124383Z process can pass a :class:`~torch.utils.data.DistributedSampler` instance as a 2024-08-06T21:20:02.9124609Z :class:`~torch.utils.data.DataLoader` sampler, and load a subset of the 2024-08-06T21:20:02.9124772Z original dataset that is exclusive to it. 2024-08-06T21:20:02.9124855Z 2024-08-06T21:20:02.9124943Z .. note:: 2024-08-06T21:20:02.9125186Z Dataset is assumed to be of constant size and that any instance of it always 2024-08-06T21:20:02.9125321Z returns the same elements in the same order. 2024-08-06T21:20:02.9125412Z 2024-08-06T21:20:02.9125496Z Args: 2024-08-06T21:20:02.9125614Z dataset: Dataset used for sampling. 2024-08-06T21:20:02.9125839Z num_replicas (int, optional): Number of processes participating in 2024-08-06T21:20:02.9126085Z distributed training. By default, :attr:`world_size` is retrieved from the 2024-08-06T21:20:02.9126222Z current distributed group. 2024-08-06T21:20:02.9126473Z rank (int, optional): Rank of the current process within :attr:`num_replicas`. 2024-08-06T21:20:02.9126672Z By default, :attr:`rank` is retrieved from the current distributed 2024-08-06T21:20:02.9126758Z group. 2024-08-06T21:20:02.9126993Z shuffle (bool, optional): If ``True`` (default), sampler will shuffle the 2024-08-06T21:20:02.9127082Z indices. 2024-08-06T21:20:02.9127277Z seed (int, optional): random seed used to shuffle the sampler if 2024-08-06T21:20:02.9127484Z :attr:`shuffle=True`. This number should be identical across all 2024-08-06T21:20:02.9127647Z processes in the distributed group. Default: ``0``. 2024-08-06T21:20:02.9127874Z drop_last (bool, optional): if ``True``, then the sampler will drop the 2024-08-06T21:20:02.9128069Z tail of the data to make it evenly divisible across the number of 2024-08-06T21:20:02.9128267Z replicas. If ``False``, the sampler will add extra indices to make 2024-08-06T21:20:02.9128491Z the data evenly divisible across the replicas. Default: ``False``. 2024-08-06T21:20:02.9128572Z 2024-08-06T21:20:02.9128661Z .. warning:: 2024-08-06T21:20:02.9128884Z In distributed mode, calling the :meth:`set_epoch` method at 2024-08-06T21:20:02.9129136Z the beginning of each epoch **before** creating the :class:`DataLoader` iterator 2024-08-06T21:20:02.9129395Z is necessary to make shuffling work properly across multiple epochs. Otherwise, 2024-08-06T21:20:02.9129530Z the same ordering will be always used. 2024-08-06T21:20:02.9129609Z 2024-08-06T21:20:02.9129699Z Example:: 2024-08-06T21:20:02.9129790Z 2024-08-06T21:20:02.9129889Z >>> # xdoctest: +SKIP 2024-08-06T21:20:02.9130105Z >>> sampler = DistributedSampler(dataset) if is_distributed else None 2024-08-06T21:20:02.9130292Z >>> loader = DataLoader(dataset, shuffle=(sampler is None), 2024-08-06T21:20:02.9130435Z ... sampler=sampler) 2024-08-06T21:20:02.9130580Z >>> for epoch in range(start_epoch, n_epochs): 2024-08-06T21:20:02.9130683Z ... if is_distributed: 2024-08-06T21:20:02.9130799Z ... sampler.set_epoch(epoch) 2024-08-06T21:20:02.9130907Z ... train(loader) 2024-08-06T21:20:02.9130990Z 2024-08-06T21:20:02.9131242Z Original Error: TokenError('unexpected EOF in multi-line statement', (1, 0)) 2024-08-06T21:20:02.9131334Z 2024-08-06T21:20:02.9131432Z warnings.warn(msg) 2024-08-06T21:20:02.9131511Z 2024-08-06T21:20:02.9131634Z  2024-08-06T21:20:02.9131806Z === Found 9 run-time warnings === 2024-08-06T21:20:02.9131978Z --- Runtime Warning: 1 / 9 --- 2024-08-06T21:20:02.9132250Z example = 2024-08-06T21:20:02.9133622Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/_tensor.py:1250: UserWarning: Named tensors and all their associated APIs are an experimental feature and subject to change. Please do not use them for anything important until they are released as stable. (Triggered internally at /var/lib/jenkins/workspace/c10/core/TensorImpl.h:1931.) 2024-08-06T21:20:02.9133738Z return super().refine_names(names) 2024-08-06T21:20:02.9133833Z 2024-08-06T21:20:02.9134003Z --- Runtime Warning: 2 / 9 --- 2024-08-06T21:20:02.9134410Z example = 2024-08-06T21:20:02.9135045Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/library.py:250: UserWarning: Warning only once for all operators, other operators may also be overridden. 2024-08-06T21:20:02.9135354Z Overriding a previously registered kernel for the same operator and the same dispatch key 2024-08-06T21:20:02.9135605Z operator: aten::div.Tensor(Tensor self, Tensor other) -> Tensor 2024-08-06T21:20:02.9135903Z registered at /var/lib/jenkins/workspace/build/aten/src/ATen/RegisterSchema.cpp:6 2024-08-06T21:20:02.9136001Z dispatch key: CPU 2024-08-06T21:20:02.9136451Z previous kernel: registered at /var/lib/jenkins/workspace/aten/src/ATen/LegacyBatchingRegistrations.cpp:1079 2024-08-06T21:20:02.9137002Z new kernel: registered at /dev/null:811 (Triggered internally at /var/lib/jenkins/workspace/aten/src/ATen/core/dispatch/OperatorEntry.cpp:162.) 2024-08-06T21:20:02.9137171Z impl_fn(self.ns, name.split("::")[-1], dispatch_key) 2024-08-06T21:20:02.9137251Z 2024-08-06T21:20:02.9137429Z --- Runtime Warning: 3 / 9 --- 2024-08-06T21:20:02.9137673Z example = 2024-08-06T21:20:02.9138757Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nested/__init__.py:106: UserWarning: The PyTorch API of nested tensors is in prototype stage and will change in the near future. (Triggered internally at /var/lib/jenkins/workspace/aten/src/ATen/NestedTensorImpl.cpp:180.) 2024-08-06T21:20:02.9139005Z return torch._nested_tensor_from_tensor_list(ts, dtype, None, device, None) 2024-08-06T21:20:02.9139098Z 2024-08-06T21:20:02.9139294Z --- Runtime Warning: 4 / 9 --- 2024-08-06T21:20:02.9139543Z example = 2024-08-06T21:20:02.9141165Z :1: UserWarning: Sparse CSR tensor support is in beta state. If you miss a functionality in the sparse tensor support, please submit a feature request to https://github.com/pytorch/pytorch/issues. (Triggered internally at /var/lib/jenkins/workspace/aten/src/ATen/SparseCsrTensorImpl.cpp:55.) 2024-08-06T21:20:02.9141248Z 2024-08-06T21:20:02.9141431Z --- Runtime Warning: 5 / 9 --- 2024-08-06T21:20:02.9141762Z example = 2024-08-06T21:20:02.9143276Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/fx/experimental/const_fold.py:252: UserWarning: Attempted to insert a get_attr Node with no underlying reference in the owning GraphModule! Call GraphModule.add_submodule to add the necessary submodule, GraphModule.add_parameter to add the necessary Parameter, or nn.Module.register_buffer to add the necessary buffer 2024-08-06T21:20:02.9143439Z new_node = root_const_gm.graph.get_attr(in_node.target) 2024-08-06T21:20:02.9143519Z 2024-08-06T21:20:02.9143704Z --- Runtime Warning: 6 / 9 --- 2024-08-06T21:20:02.9143988Z example = 2024-08-06T21:20:02.9145066Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py:379: UserWarning: enable_nested_tensor is True, but self.use_nested_tensor is False because encoder_layer.self_attn.batch_first was not True(use batch_first for better inference performance) 2024-08-06T21:20:02.9145176Z warnings.warn( 2024-08-06T21:20:02.9145286Z 2024-08-06T21:20:02.9145471Z --- Runtime Warning: 7 / 9 --- 2024-08-06T21:20:02.9145801Z example = 2024-08-06T21:20:02.9146876Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/modules/transformer.py:379: UserWarning: enable_nested_tensor is True, but self.use_nested_tensor is False because encoder_layer.self_attn.batch_first was not True(use batch_first for better inference performance) 2024-08-06T21:20:02.9146982Z warnings.warn( 2024-08-06T21:20:02.9147061Z 2024-08-06T21:20:02.9147232Z --- Runtime Warning: 8 / 9 --- 2024-08-06T21:20:02.9147520Z example = 2024-08-06T21:20:02.9148361Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/weight_norm.py:143: FutureWarning: `torch.nn.utils.weight_norm` is deprecated in favor of `torch.nn.utils.parametrizations.weight_norm`. 2024-08-06T21:20:02.9148492Z WeightNorm.apply(module, name, dim) 2024-08-06T21:20:02.9148574Z 2024-08-06T21:20:02.9148747Z --- Runtime Warning: 9 / 9 --- 2024-08-06T21:20:02.9149060Z example = 2024-08-06T21:20:02.9149865Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/nn/utils/weight_norm.py:143: FutureWarning: `torch.nn.utils.weight_norm` is deprecated in favor of `torch.nn.utils.parametrizations.weight_norm`. 2024-08-06T21:20:02.9149985Z WeightNorm.apply(module, name, dim) 2024-08-06T21:20:02.9150075Z 2024-08-06T21:20:02.9150369Z === 334 passed, 360 skipped, 109 warnings in 12.05 seconds === 2024-08-06T21:20:02.9150606Z Running test_cpp_extensions_aot_no_ninja 1/1 ... [2024-08-06 21:20:02.775725] 2024-08-06T21:20:05.0082352Z running install 2024-08-06T21:20:05.0091434Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. 2024-08-06T21:20:05.0092419Z !! 2024-08-06T21:20:05.0092551Z 2024-08-06T21:20:05.0092677Z ******************************************************************************** 2024-08-06T21:20:05.0093069Z Please avoid running ``setup.py`` directly. 2024-08-06T21:20:05.0093481Z Instead, use pypa/build, pypa/installer or other 2024-08-06T21:20:05.0093848Z standards-based tools. 2024-08-06T21:20:05.0094047Z 2024-08-06T21:20:05.0094416Z See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. 2024-08-06T21:20:05.0094958Z ******************************************************************************** 2024-08-06T21:20:05.0095206Z 2024-08-06T21:20:05.0095361Z !! 2024-08-06T21:20:05.0095585Z self.initialize_options() 2024-08-06T21:20:05.0204308Z running build 2024-08-06T21:20:05.0204550Z running build_py 2024-08-06T21:20:05.0272385Z creating build 2024-08-06T21:20:05.0273302Z creating build/lib.linux-x86_64-cpython-312 2024-08-06T21:20:05.0274457Z creating build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:05.0275259Z copying torch_test_cpp_extension/__init__.py -> build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:05.0282845Z running build_ext 2024-08-06T21:20:05.0323478Z building 'torch_test_cpp_extension.cpp' extension 2024-08-06T21:20:05.0324228Z creating build/temp.linux-x86_64-cpython-312 2024-08-06T21:20:05.0331570Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c extension.cpp -o build/temp.linux-x86_64-cpython-312/extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=cpp -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:06.4371251Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/Exceptions.h:12, 2024-08-06T21:20:06.4372269Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include/torch/python.h:11, 2024-08-06T21:20:06.4373134Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/extension.h:9, 2024-08-06T21:20:06.4373868Z from extension.cpp:1: 2024-08-06T21:20:06.4375446Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h: In instantiation of ‘class pybind11::class_’: 2024-08-06T21:20:06.4376294Z extension.cpp:45:53: required from here 2024-08-06T21:20:06.4378043Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h:1588:7: warning: ‘pybind11::class_’ declared with greater visibility than its base ‘pybind11::detail::generic_type’ [-Wattributes] 2024-08-06T21:20:06.4379418Z 1588 | class class_ : public detail::generic_type { 2024-08-06T21:20:06.4379778Z | ^~~~~~ 2024-08-06T21:20:06.4381531Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h: In instantiation of ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]’: 2024-08-06T21:20:06.4383007Z extension.cpp:45:53: required from here 2024-08-06T21:20:06.4386621Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h:1648:28: warning: ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]::’ declared with greater visibility than the type of its field ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]::::’ [-Wattributes] 2024-08-06T21:20:06.4389551Z 1648 | with_internals([&](internals &internals) { 2024-08-06T21:20:06.4389989Z | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:06.4390507Z 1649 | auto &instances = record.module_local ? get_local_internals().registered_types_cpp 2024-08-06T21:20:06.4391212Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:06.4391728Z 1650 | : internals.registered_types_cpp; 2024-08-06T21:20:06.4392129Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:06.4392607Z 1651 | instances[std::type_index(typeid(type_alias))] 2024-08-06T21:20:06.4393063Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:06.4393453Z 1652 | = instances[std::type_index(typeid(type))]; 2024-08-06T21:20:06.4393897Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:06.4394228Z 1653 | }); 2024-08-06T21:20:06.4394490Z | ~ 2024-08-06T21:20:06.4397138Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:06.8231010Z building 'torch_test_cpp_extension.maia' extension 2024-08-06T21:20:06.8235159Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c maia_extension.cpp -o build/temp.linux-x86_64-cpython-312/maia_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=maia -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:08.1709237Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/maia_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:08.5319305Z building 'torch_test_cpp_extension.rng' extension 2024-08-06T21:20:08.5323442Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c rng_extension.cpp -o build/temp.linux-x86_64-cpython-312/rng_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=rng -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:10.0327766Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:10.0328763Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:10.0329634Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:10.0330654Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:10.0331335Z from rng_extension.cpp:6: 2024-08-06T21:20:10.0332262Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1106: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:10.0333203Z 1106 | # pragma unroll 2024-08-06T21:20:10.0333573Z | 2024-08-06T21:20:10.0334170Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1141, 2024-08-06T21:20:10.0335189Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:10.0336194Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:10.0337045Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:10.0338023Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:10.0338762Z from rng_extension.cpp:6: 2024-08-06T21:20:10.0339607Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_n.h:59: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:10.0340431Z 59 | #pragma unroll 2024-08-06T21:20:10.0340796Z | 2024-08-06T21:20:10.0341534Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_n.h:72: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:10.0342354Z 72 | #pragma unroll 2024-08-06T21:20:10.0342693Z | 2024-08-06T21:20:10.0343295Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1142, 2024-08-06T21:20:10.0344253Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:10.0345126Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:10.0345980Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:10.0346995Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:10.0347717Z from rng_extension.cpp:6: 2024-08-06T21:20:10.0348590Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_mask.h:131: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:10.0349447Z 131 | #pragma unroll 2024-08-06T21:20:10.0349681Z | 2024-08-06T21:20:10.0352216Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/rng_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:10.4106423Z running install_lib 2024-08-06T21:20:10.4181465Z creating install 2024-08-06T21:20:10.4181989Z creating install/opt 2024-08-06T21:20:10.4183000Z creating install/opt/conda 2024-08-06T21:20:10.4183476Z creating install/opt/conda/envs 2024-08-06T21:20:10.4183904Z creating install/opt/conda/envs/py_3.12 2024-08-06T21:20:10.4184395Z creating install/opt/conda/envs/py_3.12/lib 2024-08-06T21:20:10.4185254Z creating install/opt/conda/envs/py_3.12/lib/python3.12 2024-08-06T21:20:10.4185948Z creating install/opt/conda/envs/py_3.12/lib/python3.12/site-packages 2024-08-06T21:20:10.4187074Z creating install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:10.4188381Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/__init__.py -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:10.4190072Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:10.4270447Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:10.4349137Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:10.4438607Z byte-compiling ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension/__init__.py to __init__.cpython-312.pyc 2024-08-06T21:20:10.4440714Z running install_egg_info 2024-08-06T21:20:10.4600019Z running egg_info 2024-08-06T21:20:10.4600386Z creating torch_test_cpp_extension.egg-info 2024-08-06T21:20:10.4660204Z writing torch_test_cpp_extension.egg-info/PKG-INFO 2024-08-06T21:20:10.4663675Z writing dependency_links to torch_test_cpp_extension.egg-info/dependency_links.txt 2024-08-06T21:20:10.4675498Z writing entry points to torch_test_cpp_extension.egg-info/entry_points.txt 2024-08-06T21:20:10.4677403Z writing top-level names to torch_test_cpp_extension.egg-info/top_level.txt 2024-08-06T21:20:10.4678549Z writing manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:10.4737614Z reading manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:10.4742719Z writing manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:10.4744199Z Copying torch_test_cpp_extension.egg-info to ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension-0.0.0-py3.12.egg-info 2024-08-06T21:20:10.4750614Z running install_scripts 2024-08-06T21:20:12.3337982Z running install 2024-08-06T21:20:12.3339279Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. 2024-08-06T21:20:12.3340101Z !! 2024-08-06T21:20:12.3340230Z 2024-08-06T21:20:12.3340377Z ******************************************************************************** 2024-08-06T21:20:12.3340775Z Please avoid running ``setup.py`` directly. 2024-08-06T21:20:12.3341174Z Instead, use pypa/build, pypa/installer or other 2024-08-06T21:20:12.3341558Z standards-based tools. 2024-08-06T21:20:12.3341744Z 2024-08-06T21:20:12.3342259Z See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. 2024-08-06T21:20:12.3342785Z ******************************************************************************** 2024-08-06T21:20:12.3343041Z 2024-08-06T21:20:12.3343124Z !! 2024-08-06T21:20:12.3343351Z self.initialize_options() 2024-08-06T21:20:12.3451868Z running build 2024-08-06T21:20:12.3452312Z running build_ext 2024-08-06T21:20:12.3769247Z building 'no_python_abi_suffix_test' extension 2024-08-06T21:20:12.3770137Z creating /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build 2024-08-06T21:20:12.3771229Z creating /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build/temp.linux-x86_64-cpython-312 2024-08-06T21:20:12.4062014Z Emitting ninja build file /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build/temp.linux-x86_64-cpython-312/build.ninja... 2024-08-06T21:20:12.4063088Z Compiling objects... 2024-08-06T21:20:12.4063411Z Using envvar MAX_JOBS (6) as the number of workers... 2024-08-06T21:20:12.5184610Z [1/1] c++ -MMD -MF /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build/temp.linux-x86_64-cpython-312/no_python_abi_suffix_test.o.d -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -I/opt/conda/envs/py_3.12/include/python3.12 -c -c /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/no_python_abi_suffix_test.cpp -o /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build/temp.linux-x86_64-cpython-312/no_python_abi_suffix_test.o -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_clang"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1002"' -DTORCH_EXTENSION_NAME=no_python_abi_suffix_test -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:12.5223164Z creating build/lib.linux-x86_64-cpython-312 2024-08-06T21:20:12.5226471Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build/temp.linux-x86_64-cpython-312/no_python_abi_suffix_test.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/no_python_abi_suffix_test.so 2024-08-06T21:20:12.5769902Z running install_lib 2024-08-06T21:20:12.5831555Z creating install 2024-08-06T21:20:12.5832361Z creating install/opt 2024-08-06T21:20:12.5833043Z creating install/opt/conda 2024-08-06T21:20:12.5833547Z creating install/opt/conda/envs 2024-08-06T21:20:12.5834124Z creating install/opt/conda/envs/py_3.12 2024-08-06T21:20:12.5834775Z creating install/opt/conda/envs/py_3.12/lib 2024-08-06T21:20:12.5835519Z creating install/opt/conda/envs/py_3.12/lib/python3.12 2024-08-06T21:20:12.5836500Z creating install/opt/conda/envs/py_3.12/lib/python3.12/site-packages 2024-08-06T21:20:12.5837356Z copying build/lib.linux-x86_64-cpython-312/no_python_abi_suffix_test.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages 2024-08-06T21:20:12.5842211Z running install_egg_info 2024-08-06T21:20:12.5991521Z running egg_info 2024-08-06T21:20:12.5992152Z creating no_python_abi_suffix_test.egg-info 2024-08-06T21:20:12.6050918Z writing no_python_abi_suffix_test.egg-info/PKG-INFO 2024-08-06T21:20:12.6054824Z writing dependency_links to no_python_abi_suffix_test.egg-info/dependency_links.txt 2024-08-06T21:20:12.6056625Z writing top-level names to no_python_abi_suffix_test.egg-info/top_level.txt 2024-08-06T21:20:12.6057911Z writing manifest file 'no_python_abi_suffix_test.egg-info/SOURCES.txt' 2024-08-06T21:20:12.6119648Z reading manifest file 'no_python_abi_suffix_test.egg-info/SOURCES.txt' 2024-08-06T21:20:12.6124497Z writing manifest file 'no_python_abi_suffix_test.egg-info/SOURCES.txt' 2024-08-06T21:20:12.6126155Z Copying no_python_abi_suffix_test.egg-info to ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/no_python_abi_suffix_test-0.0.0-py3.12.egg-info 2024-08-06T21:20:12.6131062Z running install_scripts 2024-08-06T21:20:12.9666782Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cpp_extensions_aot_no_ninja.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:20:12.966100] 2024-08-06T21:20:17.1912248Z 2024-08-06T21:20:17.1913360Z test_cpp_extensions_aot_no_ninja 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cpp_extensions_aot_no_ninja_1.1_9813ad27b0014fa5_.log 2024-08-06T21:20:17.1920693Z Running 17 items in this shard: test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_backward, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_cublas_extension, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_cuda_dlink_libs, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_cuda_extension, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_cusolver_extension, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_extension_function, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_extension_module, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_mps_extension, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_no_python_abi_suffix_sets_the_correct_library_name, test/test_cpp_extensions_aot_no_ninja.py::TestCppExtensionAOT::test_optional, test/test_cpp_extensions_aot_no_ninja.py::TestPybindTypeCasters::test_pybind_return_types, test/test_cpp_extensions_aot_no_ninja.py::TestMAIATensor::test_add, test/test_cpp_extensions_aot_no_ninja.py::TestMAIATensor::test_conv_backend_override, test/test_cpp_extensions_aot_no_ninja.py::TestMAIATensor::test_unregistered, test/test_cpp_extensions_aot_no_ninja.py::TestMAIATensor::test_zeros, test/test_cpp_extensions_aot_no_ninja.py::TestRNGExtension::test_rng, test/test_cpp_extensions_aot_no_ninja.py::TestTorchLibrary::test_torch_library 2024-08-06T21:20:17.1926873Z 2024-08-06T21:20:17.1927073Z Running test_autoload_enable 1/1 ... [2024-08-06 21:20:17.191577] 2024-08-06T21:20:19.5590213Z running install 2024-08-06T21:20:19.5591556Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. 2024-08-06T21:20:19.5592405Z !! 2024-08-06T21:20:19.5592527Z 2024-08-06T21:20:19.5592653Z ******************************************************************************** 2024-08-06T21:20:19.5593048Z Please avoid running ``setup.py`` directly. 2024-08-06T21:20:19.5593453Z Instead, use pypa/build, pypa/installer or other 2024-08-06T21:20:19.5593820Z standards-based tools. 2024-08-06T21:20:19.5594016Z 2024-08-06T21:20:19.5594325Z See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. 2024-08-06T21:20:19.5594864Z ******************************************************************************** 2024-08-06T21:20:19.5595109Z 2024-08-06T21:20:19.5595190Z !! 2024-08-06T21:20:19.5595415Z self.initialize_options() 2024-08-06T21:20:19.5708274Z running build 2024-08-06T21:20:19.5708534Z running build_py 2024-08-06T21:20:19.5774103Z creating build 2024-08-06T21:20:19.5774731Z creating build/lib.linux-x86_64-cpython-312 2024-08-06T21:20:19.5775647Z creating build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:19.5776850Z copying torch_test_cpp_extension/__init__.py -> build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:19.5780654Z running build_ext 2024-08-06T21:20:19.5796516Z building 'torch_test_cpp_extension.cpp' extension 2024-08-06T21:20:19.5797253Z creating build/temp.linux-x86_64-cpython-312 2024-08-06T21:20:19.5804542Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c extension.cpp -o build/temp.linux-x86_64-cpython-312/extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=cpp -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:20.6335374Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/Exceptions.h:12, 2024-08-06T21:20:20.6336510Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include/torch/python.h:11, 2024-08-06T21:20:20.6337560Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/extension.h:9, 2024-08-06T21:20:20.6338338Z from extension.cpp:1: 2024-08-06T21:20:20.6340227Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h: In instantiation of ‘class pybind11::class_’: 2024-08-06T21:20:20.6341768Z extension.cpp:45:53: required from here 2024-08-06T21:20:20.6344398Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h:1588:7: warning: ‘pybind11::class_’ declared with greater visibility than its base ‘pybind11::detail::generic_type’ [-Wattributes] 2024-08-06T21:20:20.6346347Z 1588 | class class_ : public detail::generic_type { 2024-08-06T21:20:20.6346707Z | ^~~~~~ 2024-08-06T21:20:20.6348545Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h: In instantiation of ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]’: 2024-08-06T21:20:20.6350081Z extension.cpp:45:53: required from here 2024-08-06T21:20:20.6353466Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h:1648:28: warning: ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]::’ declared with greater visibility than the type of its field ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]::::’ [-Wattributes] 2024-08-06T21:20:20.6356401Z 1648 | with_internals([&](internals &internals) { 2024-08-06T21:20:20.6356815Z | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:20.6357363Z 1649 | auto &instances = record.module_local ? get_local_internals().registered_types_cpp 2024-08-06T21:20:20.6357992Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:20.6358498Z 1650 | : internals.registered_types_cpp; 2024-08-06T21:20:20.6358978Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:20.6359498Z 1651 | instances[std::type_index(typeid(type_alias))] 2024-08-06T21:20:20.6359941Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:20.6360338Z 1652 | = instances[std::type_index(typeid(type))]; 2024-08-06T21:20:20.6360776Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:20.6361090Z 1653 | }); 2024-08-06T21:20:20.6361344Z | ~ 2024-08-06T21:20:20.6364078Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:21.0000345Z building 'torch_test_cpp_extension.maia' extension 2024-08-06T21:20:21.0006268Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c maia_extension.cpp -o build/temp.linux-x86_64-cpython-312/maia_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=maia -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:21.9974831Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/maia_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:22.3655883Z building 'torch_test_cpp_extension.rng' extension 2024-08-06T21:20:22.3660274Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c rng_extension.cpp -o build/temp.linux-x86_64-cpython-312/rng_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=rng -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:23.6916176Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:23.6917153Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:23.6918152Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:23.6919323Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:23.6920291Z from rng_extension.cpp:6: 2024-08-06T21:20:23.6921667Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1106: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:23.6922878Z 1106 | # pragma unroll 2024-08-06T21:20:23.6923245Z | 2024-08-06T21:20:23.6924235Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1141, 2024-08-06T21:20:23.6926066Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:23.6927113Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:23.6927923Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:23.6929009Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:23.6929677Z from rng_extension.cpp:6: 2024-08-06T21:20:23.6930475Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_n.h:59: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:23.6931247Z 59 | #pragma unroll 2024-08-06T21:20:23.6931521Z | 2024-08-06T21:20:23.6932188Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_n.h:72: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:23.6932957Z 72 | #pragma unroll 2024-08-06T21:20:23.6933201Z | 2024-08-06T21:20:23.6933837Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1142, 2024-08-06T21:20:23.6934849Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:23.6935663Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:23.6936447Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:23.6937362Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:23.6938109Z from rng_extension.cpp:6: 2024-08-06T21:20:23.6938916Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_mask.h:131: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:23.6939713Z 131 | #pragma unroll 2024-08-06T21:20:23.6939963Z | 2024-08-06T21:20:23.6942241Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/rng_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:24.1267359Z running install_lib 2024-08-06T21:20:24.1336833Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:24.1432944Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:24.1526413Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:24.1627726Z running install_egg_info 2024-08-06T21:20:24.1773634Z running egg_info 2024-08-06T21:20:24.1828891Z writing torch_test_cpp_extension.egg-info/PKG-INFO 2024-08-06T21:20:24.1832633Z writing dependency_links to torch_test_cpp_extension.egg-info/dependency_links.txt 2024-08-06T21:20:24.1834323Z writing entry points to torch_test_cpp_extension.egg-info/entry_points.txt 2024-08-06T21:20:24.1836175Z writing top-level names to torch_test_cpp_extension.egg-info/top_level.txt 2024-08-06T21:20:24.1896766Z reading manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:24.1902156Z writing manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:24.1903978Z removing './install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension-0.0.0-py3.12.egg-info' (and everything under it) 2024-08-06T21:20:24.1905799Z Copying torch_test_cpp_extension.egg-info to ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension-0.0.0-py3.12.egg-info 2024-08-06T21:20:24.1911113Z running install_scripts 2024-08-06T21:20:26.7263062Z 2024-08-06T21:20:26.7263641Z Running tests... 2024-08-06T21:20:26.7264250Z ---------------------------------------------------------------------- 2024-08-06T21:20:26.9910128Z . 2024-08-06T21:20:26.9910519Z ---------------------------------------------------------------------- 2024-08-06T21:20:26.9910929Z Ran 1 test in 0.265s 2024-08-06T21:20:26.9911118Z 2024-08-06T21:20:26.9911211Z OK 2024-08-06T21:20:26.9911331Z 2024-08-06T21:20:26.9911438Z Generating XML reports... 2024-08-06T21:20:27.5473464Z Running test_autoload_disable 1/1 ... [2024-08-06 21:20:27.546998] 2024-08-06T21:20:30.0303570Z running install 2024-08-06T21:20:30.0304893Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. 2024-08-06T21:20:30.0306213Z !! 2024-08-06T21:20:30.0306405Z 2024-08-06T21:20:30.0306596Z ******************************************************************************** 2024-08-06T21:20:30.0307202Z Please avoid running ``setup.py`` directly. 2024-08-06T21:20:30.0307822Z Instead, use pypa/build, pypa/installer or other 2024-08-06T21:20:30.0308435Z standards-based tools. 2024-08-06T21:20:30.0308714Z 2024-08-06T21:20:30.0309192Z See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. 2024-08-06T21:20:30.0310179Z ******************************************************************************** 2024-08-06T21:20:30.0310602Z 2024-08-06T21:20:30.0310729Z !! 2024-08-06T21:20:30.0311052Z self.initialize_options() 2024-08-06T21:20:30.0431142Z running build 2024-08-06T21:20:30.0431424Z running build_py 2024-08-06T21:20:30.0501412Z creating build 2024-08-06T21:20:30.0501811Z creating build/lib.linux-x86_64-cpython-312 2024-08-06T21:20:30.0502408Z creating build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:30.0503261Z copying torch_test_cpp_extension/__init__.py -> build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:30.0507298Z running build_ext 2024-08-06T21:20:30.0524415Z building 'torch_test_cpp_extension.cpp' extension 2024-08-06T21:20:30.0525306Z creating build/temp.linux-x86_64-cpython-312 2024-08-06T21:20:30.0532352Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c extension.cpp -o build/temp.linux-x86_64-cpython-312/extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=cpp -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:31.2043926Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/Exceptions.h:12, 2024-08-06T21:20:31.2044943Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include/torch/python.h:11, 2024-08-06T21:20:31.2046035Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/extension.h:9, 2024-08-06T21:20:31.2046578Z from extension.cpp:1: 2024-08-06T21:20:31.2047904Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h: In instantiation of ‘class pybind11::class_’: 2024-08-06T21:20:31.2048789Z extension.cpp:45:53: required from here 2024-08-06T21:20:31.2050354Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h:1588:7: warning: ‘pybind11::class_’ declared with greater visibility than its base ‘pybind11::detail::generic_type’ [-Wattributes] 2024-08-06T21:20:31.2051604Z 1588 | class class_ : public detail::generic_type { 2024-08-06T21:20:31.2051964Z | ^~~~~~ 2024-08-06T21:20:31.2053572Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h: In instantiation of ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]’: 2024-08-06T21:20:31.2055058Z extension.cpp:45:53: required from here 2024-08-06T21:20:31.2058434Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/pybind11/pybind11.h:1648:28: warning: ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]::’ declared with greater visibility than the type of its field ‘pybind11::class_< , >::class_(pybind11::handle, const char*, const Extra& ...) [with Extra = {}; type_ = MatrixMultiplier; options = {}]::::’ [-Wattributes] 2024-08-06T21:20:31.2061116Z 1648 | with_internals([&](internals &internals) { 2024-08-06T21:20:31.2061566Z | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:31.2062101Z 1649 | auto &instances = record.module_local ? get_local_internals().registered_types_cpp 2024-08-06T21:20:31.2062673Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:31.2063327Z 1650 | : internals.registered_types_cpp; 2024-08-06T21:20:31.2063745Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:31.2064175Z 1651 | instances[std::type_index(typeid(type_alias))] 2024-08-06T21:20:31.2064578Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:31.2065003Z 1652 | = instances[std::type_index(typeid(type))]; 2024-08-06T21:20:31.2065397Z | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2024-08-06T21:20:31.2065719Z 1653 | }); 2024-08-06T21:20:31.2065978Z | ~ 2024-08-06T21:20:31.2068405Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:31.7075074Z building 'torch_test_cpp_extension.maia' extension 2024-08-06T21:20:31.7079144Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c maia_extension.cpp -o build/temp.linux-x86_64-cpython-312/maia_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=maia -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:32.8234957Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/maia_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:33.3005584Z building 'torch_test_cpp_extension.rng' extension 2024-08-06T21:20:33.3009897Z gcc -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -Iself_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c rng_extension.cpp -o build/temp.linux-x86_64-cpython-312/rng_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE=\"_clang\" -DPYBIND11_STDLIB=\"_libstdcpp\" -DPYBIND11_BUILD_ABI=\"_cxxabi1002\" -DTORCH_EXTENSION_NAME=rng -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:34.6060244Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:34.6061204Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:34.6062009Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:34.6063096Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:34.6063786Z from rng_extension.cpp:6: 2024-08-06T21:20:34.6064612Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1106: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:34.6065424Z 1106 | # pragma unroll 2024-08-06T21:20:34.6065680Z | 2024-08-06T21:20:34.6066227Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1141, 2024-08-06T21:20:34.6067581Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:34.6068464Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:34.6069262Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:34.6070185Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:34.6070853Z from rng_extension.cpp:6: 2024-08-06T21:20:34.6071656Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_n.h:59: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:34.6072516Z 59 | #pragma unroll 2024-08-06T21:20:34.6072756Z | 2024-08-06T21:20:34.6073446Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_n.h:72: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:34.6074222Z 72 | #pragma unroll 2024-08-06T21:20:34.6074462Z | 2024-08-06T21:20:34.6075009Z In file included from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_base.h:1142, 2024-08-06T21:20:34.6075929Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec256/vec256.h:8, 2024-08-06T21:20:34.6076753Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec.h:6, 2024-08-06T21:20:34.6077551Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/Loops.h:37, 2024-08-06T21:20:34.6078483Z from /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/native/cpu/DistributionTemplates.h:9, 2024-08-06T21:20:34.6079167Z from rng_extension.cpp:6: 2024-08-06T21:20:34.6080023Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/ATen/cpu/vec/vec_mask.h:131: warning: ignoring #pragma unroll [-Wunknown-pragmas] 2024-08-06T21:20:34.6080824Z 131 | #pragma unroll 2024-08-06T21:20:34.6081072Z | 2024-08-06T21:20:34.6083351Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib build/temp.linux-x86_64-cpython-312/rng_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:35.0973764Z running install_lib 2024-08-06T21:20:35.1043981Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:35.1141910Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:35.1237943Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:35.1346859Z running install_egg_info 2024-08-06T21:20:35.1492054Z running egg_info 2024-08-06T21:20:35.1547106Z writing torch_test_cpp_extension.egg-info/PKG-INFO 2024-08-06T21:20:35.1550646Z writing dependency_links to torch_test_cpp_extension.egg-info/dependency_links.txt 2024-08-06T21:20:35.1553027Z writing entry points to torch_test_cpp_extension.egg-info/entry_points.txt 2024-08-06T21:20:35.1554998Z writing top-level names to torch_test_cpp_extension.egg-info/top_level.txt 2024-08-06T21:20:35.1616217Z reading manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:35.1622143Z writing manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:35.1623807Z removing './install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension-0.0.0-py3.12.egg-info' (and everything under it) 2024-08-06T21:20:35.1625910Z Copying torch_test_cpp_extension.egg-info to ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension-0.0.0-py3.12.egg-info 2024-08-06T21:20:35.1632024Z running install_scripts 2024-08-06T21:20:37.7127370Z 2024-08-06T21:20:37.7127799Z Running tests... 2024-08-06T21:20:37.7128174Z ---------------------------------------------------------------------- 2024-08-06T21:20:37.9583446Z . 2024-08-06T21:20:37.9583802Z ---------------------------------------------------------------------- 2024-08-06T21:20:37.9584472Z Ran 1 test in 0.246s 2024-08-06T21:20:37.9584629Z 2024-08-06T21:20:37.9584729Z OK 2024-08-06T21:20:37.9584840Z 2024-08-06T21:20:37.9584956Z Generating XML reports... 2024-08-06T21:20:38.4346658Z Running test_cpp_extensions_aot_ninja 1/1 ... [2024-08-06 21:20:38.434295] 2024-08-06T21:20:40.8281343Z running install 2024-08-06T21:20:40.8282815Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. 2024-08-06T21:20:40.8284167Z !! 2024-08-06T21:20:40.8284387Z 2024-08-06T21:20:40.8284616Z ******************************************************************************** 2024-08-06T21:20:40.8285313Z Please avoid running ``setup.py`` directly. 2024-08-06T21:20:40.8286056Z Instead, use pypa/build, pypa/installer or other 2024-08-06T21:20:40.8286724Z standards-based tools. 2024-08-06T21:20:40.8287098Z 2024-08-06T21:20:40.8287664Z See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. 2024-08-06T21:20:40.8288650Z ******************************************************************************** 2024-08-06T21:20:40.8289377Z 2024-08-06T21:20:40.8289521Z !! 2024-08-06T21:20:40.8289903Z self.initialize_options() 2024-08-06T21:20:40.8404636Z running build 2024-08-06T21:20:40.8405064Z running build_py 2024-08-06T21:20:40.8468313Z creating build 2024-08-06T21:20:40.8469047Z creating build/lib.linux-x86_64-cpython-312 2024-08-06T21:20:40.8469849Z creating build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:40.8471058Z copying torch_test_cpp_extension/__init__.py -> build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension 2024-08-06T21:20:40.8475674Z running build_ext 2024-08-06T21:20:40.8799167Z building 'torch_test_cpp_extension.cpp' extension 2024-08-06T21:20:40.8799849Z creating /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312 2024-08-06T21:20:40.9103508Z Emitting ninja build file /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/build.ninja... 2024-08-06T21:20:40.9104346Z Compiling objects... 2024-08-06T21:20:40.9104685Z Using envvar MAX_JOBS (6) as the number of workers... 2024-08-06T21:20:41.7086943Z [1/1] c++ -MMD -MF /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/extension.o.d -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -I/var/lib/jenkins/workspace/test/cpp_extensions/self_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c -c /var/lib/jenkins/workspace/test/cpp_extensions/extension.cpp -o /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_clang"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1002"' -DTORCH_EXTENSION_NAME=cpp -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:41.7188680Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:41.9823251Z building 'torch_test_cpp_extension.maia' extension 2024-08-06T21:20:42.0128804Z Emitting ninja build file /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/build.ninja... 2024-08-06T21:20:42.0137325Z Compiling objects... 2024-08-06T21:20:42.0137691Z Using envvar MAX_JOBS (6) as the number of workers... 2024-08-06T21:20:42.7999136Z [1/1] c++ -MMD -MF /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/maia_extension.o.d -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -I/var/lib/jenkins/workspace/test/cpp_extensions/self_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c -c /var/lib/jenkins/workspace/test/cpp_extensions/maia_extension.cpp -o /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/maia_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_clang"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1002"' -DTORCH_EXTENSION_NAME=maia -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:42.8047275Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/maia_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:43.0441211Z building 'torch_test_cpp_extension.rng' extension 2024-08-06T21:20:43.0744836Z Emitting ninja build file /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/build.ninja... 2024-08-06T21:20:43.0745695Z Compiling objects... 2024-08-06T21:20:43.0746086Z Using envvar MAX_JOBS (6) as the number of workers... 2024-08-06T21:20:44.0708494Z [1/1] c++ -MMD -MF /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/rng_extension.o.d -pthread -B /opt/conda/envs/py_3.12/compiler_compat -fno-strict-overflow -DNDEBUG -O2 -Wall -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -O2 -isystem /opt/conda/envs/py_3.12/include -fPIC -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/torch/csrc/api/include -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/TH -I/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/include/THC -I/var/lib/jenkins/workspace/test/cpp_extensions/self_compiler_include_dirs_test -I/opt/conda/envs/py_3.12/include/python3.12 -c -c /var/lib/jenkins/workspace/test/cpp_extensions/rng_extension.cpp -o /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/rng_extension.o -g -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_clang"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1002"' -DTORCH_EXTENSION_NAME=rng -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17 2024-08-06T21:20:44.0759387Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib /var/lib/jenkins/workspace/test/cpp_extensions/build/temp.linux-x86_64-cpython-312/rng_extension.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so 2024-08-06T21:20:44.3476304Z running install_lib 2024-08-06T21:20:44.3547629Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/cpp.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:44.3592988Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/maia.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:44.3638551Z copying build/lib.linux-x86_64-cpython-312/torch_test_cpp_extension/rng.cpython-312-x86_64-linux-gnu.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension 2024-08-06T21:20:44.3691657Z running install_egg_info 2024-08-06T21:20:44.3835488Z running egg_info 2024-08-06T21:20:44.3891074Z writing torch_test_cpp_extension.egg-info/PKG-INFO 2024-08-06T21:20:44.3895218Z writing dependency_links to torch_test_cpp_extension.egg-info/dependency_links.txt 2024-08-06T21:20:44.3897692Z writing entry points to torch_test_cpp_extension.egg-info/entry_points.txt 2024-08-06T21:20:44.3900202Z writing top-level names to torch_test_cpp_extension.egg-info/top_level.txt 2024-08-06T21:20:44.3961356Z reading manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:44.3967916Z writing manifest file 'torch_test_cpp_extension.egg-info/SOURCES.txt' 2024-08-06T21:20:44.3969560Z removing './install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension-0.0.0-py3.12.egg-info' (and everything under it) 2024-08-06T21:20:44.3971726Z Copying torch_test_cpp_extension.egg-info to ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch_test_cpp_extension-0.0.0-py3.12.egg-info 2024-08-06T21:20:44.3979241Z running install_scripts 2024-08-06T21:20:46.3697149Z running install 2024-08-06T21:20:46.3698364Z /opt/conda/envs/py_3.12/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. 2024-08-06T21:20:46.3699195Z !! 2024-08-06T21:20:46.3699308Z 2024-08-06T21:20:46.3699439Z ******************************************************************************** 2024-08-06T21:20:46.3699832Z Please avoid running ``setup.py`` directly. 2024-08-06T21:20:46.3700239Z Instead, use pypa/build, pypa/installer or other 2024-08-06T21:20:46.3700602Z standards-based tools. 2024-08-06T21:20:46.3700802Z 2024-08-06T21:20:46.3701108Z See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. 2024-08-06T21:20:46.3701645Z ******************************************************************************** 2024-08-06T21:20:46.3701883Z 2024-08-06T21:20:46.3701977Z !! 2024-08-06T21:20:46.3702192Z self.initialize_options() 2024-08-06T21:20:46.3813720Z running build 2024-08-06T21:20:46.3814188Z running build_ext 2024-08-06T21:20:46.4141281Z building 'no_python_abi_suffix_test' extension 2024-08-06T21:20:46.4447589Z Emitting ninja build file /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build/temp.linux-x86_64-cpython-312/build.ninja... 2024-08-06T21:20:46.4448443Z Compiling objects... 2024-08-06T21:20:46.4448772Z Using envvar MAX_JOBS (6) as the number of workers... 2024-08-06T21:20:46.4709336Z ninja: no work to do. 2024-08-06T21:20:46.4752671Z g++ -pthread -B /opt/conda/envs/py_3.12/compiler_compat -shared -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib -Wl,-rpath,/opt/conda/envs/py_3.12/lib -Wl,-rpath-link,/opt/conda/envs/py_3.12/lib -L/opt/conda/envs/py_3.12/lib /var/lib/jenkins/workspace/test/cpp_extensions/no_python_abi_suffix_test/build/temp.linux-x86_64-cpython-312/no_python_abi_suffix_test.o -L/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib -lc10 -ltorch -ltorch_cpu -ltorch_python -o build/lib.linux-x86_64-cpython-312/no_python_abi_suffix_test.so 2024-08-06T21:20:46.5345446Z running install_lib 2024-08-06T21:20:46.5409857Z copying build/lib.linux-x86_64-cpython-312/no_python_abi_suffix_test.so -> ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages 2024-08-06T21:20:46.5415055Z running install_egg_info 2024-08-06T21:20:46.5563538Z running egg_info 2024-08-06T21:20:46.5617576Z writing no_python_abi_suffix_test.egg-info/PKG-INFO 2024-08-06T21:20:46.5621317Z writing dependency_links to no_python_abi_suffix_test.egg-info/dependency_links.txt 2024-08-06T21:20:46.5632495Z writing top-level names to no_python_abi_suffix_test.egg-info/top_level.txt 2024-08-06T21:20:46.5696256Z reading manifest file 'no_python_abi_suffix_test.egg-info/SOURCES.txt' 2024-08-06T21:20:46.5701346Z writing manifest file 'no_python_abi_suffix_test.egg-info/SOURCES.txt' 2024-08-06T21:20:46.5711052Z removing './install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/no_python_abi_suffix_test-0.0.0-py3.12.egg-info' (and everything under it) 2024-08-06T21:20:46.5712793Z Copying no_python_abi_suffix_test.egg-info to ./install/opt/conda/envs/py_3.12/lib/python3.12/site-packages/no_python_abi_suffix_test-0.0.0-py3.12.egg-info 2024-08-06T21:20:46.5717730Z running install_scripts 2024-08-06T21:20:46.9727898Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cpp_extensions_aot_ninja.py', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:20:46.972394] 2024-08-06T21:20:51.1697183Z 2024-08-06T21:20:51.1698201Z test_cpp_extensions_aot_ninja 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cpp_extensions_aot_ninja_1.1_f90024e079a3a2ca_.log 2024-08-06T21:20:51.1704905Z Running 17 items in this shard: test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_backward, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_cublas_extension, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_cuda_dlink_libs, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_cuda_extension, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_cusolver_extension, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_extension_function, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_extension_module, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_mps_extension, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_no_python_abi_suffix_sets_the_correct_library_name, test/test_cpp_extensions_aot_ninja.py::TestCppExtensionAOT::test_optional, test/test_cpp_extensions_aot_ninja.py::TestPybindTypeCasters::test_pybind_return_types, test/test_cpp_extensions_aot_ninja.py::TestMAIATensor::test_add, test/test_cpp_extensions_aot_ninja.py::TestMAIATensor::test_conv_backend_override, test/test_cpp_extensions_aot_ninja.py::TestMAIATensor::test_unregistered, test/test_cpp_extensions_aot_ninja.py::TestMAIATensor::test_zeros, test/test_cpp_extensions_aot_ninja.py::TestRNGExtension::test_rng, test/test_cpp_extensions_aot_ninja.py::TestTorchLibrary::test_torch_library 2024-08-06T21:20:51.1713270Z 2024-08-06T21:20:51.1713611Z Running dynamo/test_dynamic_shapes 1/1 ... [2024-08-06 21:20:51.169878] 2024-08-06T21:20:51.1714979Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_dynamic_shapes.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:20:51.170188] 2024-08-06T21:20:55.3168863Z 2024-08-06T21:20:55.3169926Z dynamo/test_dynamic_shapes 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_dynamic_shapes_1.1_cba18b6d7bc2f72f_.log 2024-08-06T21:20:55.3170826Z 2024-08-06T21:20:55.3171613Z Running dynamo/test_frame_init 1/1 ... [2024-08-06 21:20:55.317025] 2024-08-06T21:20:55.3175189Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_frame_init.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:20:55.317308] 2024-08-06T21:20:57.6259886Z 2024-08-06T21:20:57.6260889Z dynamo/test_frame_init 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_frame_init_1.1_7a5be7c1b2945eb7_.log 2024-08-06T21:20:57.6261719Z 2024-08-06T21:20:57.6262445Z Running dynamo/test_interop 1/1 ... [2024-08-06 21:20:57.626079] 2024-08-06T21:20:57.6266233Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_interop.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:20:57.626404] 2024-08-06T21:20:59.9458999Z 2024-08-06T21:20:59.9459928Z dynamo/test_interop 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_interop_1.1_1b111f8f2f9c1349_.log 2024-08-06T21:20:59.9460829Z 2024-08-06T21:20:59.9462032Z Running test_matmul_cuda 1/1 ... [2024-08-06 21:20:59.946049] 2024-08-06T21:20:59.9465898Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_matmul_cuda.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:20:59.946376] 2024-08-06T21:21:02.4684438Z 2024-08-06T21:21:02.4685306Z test_matmul_cuda 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_matmul_cuda_1.1_5a3cb7cfb29a3b1e_.log 2024-08-06T21:21:02.4686125Z Running 0 items in this shard: 2024-08-06T21:21:02.4686376Z 2024-08-06T21:21:02.4687257Z Running dynamo/test_global 1/1 ... [2024-08-06 21:21:02.468566] 2024-08-06T21:21:02.4691140Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_global.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:02.468853] 2024-08-06T21:21:04.6794673Z 2024-08-06T21:21:04.6795696Z dynamo/test_global 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_global_1.1_ac80d6d7f8f64229_.log 2024-08-06T21:21:04.6796532Z 2024-08-06T21:21:04.6798588Z Running dynamo/test_exceptions 1/1 ... [2024-08-06 21:21:04.679550] 2024-08-06T21:21:04.6800865Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_exceptions.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:04.679861] 2024-08-06T21:21:06.8776908Z 2024-08-06T21:21:06.8777920Z dynamo/test_exceptions 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_exceptions_1.1_14290a5699b66c7f_.log 2024-08-06T21:21:06.8778685Z 2024-08-06T21:21:06.8779268Z Running dynamo/test_subgraphs 1/1 ... [2024-08-06 21:21:06.877786] 2024-08-06T21:21:06.8783101Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_subgraphs.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:06.878065] 2024-08-06T21:21:09.0669451Z 2024-08-06T21:21:09.0670457Z dynamo/test_subgraphs 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_subgraphs_1.1_acd05ae8039dd7ed_.log 2024-08-06T21:21:09.0671210Z 2024-08-06T21:21:09.0671716Z Running dynamo/test_modes 1/1 ... [2024-08-06 21:21:09.067026] 2024-08-06T21:21:09.0675184Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_modes.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:09.067313] 2024-08-06T21:21:11.2552251Z 2024-08-06T21:21:11.2553459Z dynamo/test_modes 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_modes_1.1_b7cbdced7b0e3472_.log 2024-08-06T21:21:11.2554160Z 2024-08-06T21:21:11.2555634Z Running dynamo/test_higher_order_ops 1/1 ... [2024-08-06 21:21:11.255364] 2024-08-06T21:21:11.2559235Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_higher_order_ops.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:11.255662] 2024-08-06T21:21:13.5470730Z 2024-08-06T21:21:13.5472045Z dynamo/test_higher_order_ops 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_higher_order_ops_1.1_e82d96ca19b1c0e2_.log 2024-08-06T21:21:13.5472915Z 2024-08-06T21:21:13.5473849Z Running dynamo/test_functions 1/1 ... [2024-08-06 21:21:13.547195] 2024-08-06T21:21:13.5477499Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_functions.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:13.547492] 2024-08-06T21:21:15.8317556Z 2024-08-06T21:21:15.8318478Z dynamo/test_functions 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_functions_1.1_c7264332cfc4c852_.log 2024-08-06T21:21:15.8319169Z 2024-08-06T21:21:15.8320456Z Running dynamo/test_modules 1/1 ... [2024-08-06 21:21:15.831888] 2024-08-06T21:21:15.8323927Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_modules.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:15.832179] 2024-08-06T21:21:18.1764623Z 2024-08-06T21:21:18.1765903Z dynamo/test_modules 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_modules_1.1_6261e73b09cdd9e6_.log 2024-08-06T21:21:18.1766622Z 2024-08-06T21:21:18.1767512Z Running dynamo/test_model_output 1/1 ... [2024-08-06 21:21:18.176574] 2024-08-06T21:21:18.1771105Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_model_output.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:18.176871] 2024-08-06T21:21:20.3705783Z 2024-08-06T21:21:20.3707247Z dynamo/test_model_output 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_model_output_1.1_46fc28943eb6f5bc_.log 2024-08-06T21:21:20.3708439Z 2024-08-06T21:21:20.3709257Z Running dynamo/test_export 1/1 ... [2024-08-06 21:21:20.370758] 2024-08-06T21:21:20.3714996Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_export.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:20.371143] 2024-08-06T21:21:22.6950359Z 2024-08-06T21:21:22.6951322Z dynamo/test_export 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_export_1.1_c32581cf0d1dc773_.log 2024-08-06T21:21:22.6951980Z 2024-08-06T21:21:22.6953581Z Running dynamo/test_ctx_manager 1/1 ... [2024-08-06 21:21:22.695191] 2024-08-06T21:21:22.6957063Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_ctx_manager.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:22.695504] 2024-08-06T21:21:24.9753421Z 2024-08-06T21:21:24.9754868Z dynamo/test_ctx_manager 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_ctx_manager_1.1_ec978f8e54737a9e_.log 2024-08-06T21:21:24.9755953Z 2024-08-06T21:21:24.9757371Z Running functorch/test_ac 1/1 ... [2024-08-06 21:21:24.975559] 2024-08-06T21:21:24.9762534Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'functorch/test_ac.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:24.975944] 2024-08-06T21:21:27.2145488Z 2024-08-06T21:21:27.2146480Z functorch/test_ac 1/1 was successful, full logs can be found in artifacts with path test/test-reports/functorch.test_ac_1.1_8f2c17ddf488a7fd_.log 2024-08-06T21:21:27.2147179Z 2024-08-06T21:21:27.2148620Z Running dynamo/test_profiler 1/1 ... [2024-08-06 21:21:27.214701] 2024-08-06T21:21:27.2152468Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_profiler.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:27.215026] 2024-08-06T21:21:29.3962381Z 2024-08-06T21:21:29.3963541Z dynamo/test_profiler 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_profiler_1.1_adbc232fa76c33b1_.log 2024-08-06T21:21:29.3964251Z 2024-08-06T21:21:29.3965828Z Running dynamo/test_activation_checkpointing 1/1 ... [2024-08-06 21:21:29.396424] 2024-08-06T21:21:29.3969811Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_activation_checkpointing.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:29.396753] 2024-08-06T21:21:31.6568928Z 2024-08-06T21:21:31.6570094Z dynamo/test_activation_checkpointing 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_activation_checkpointing_1.1_a1ff5c53689059a8_.log 2024-08-06T21:21:31.6570988Z 2024-08-06T21:21:31.6572420Z Running dynamo/test_trace_rules 1/1 ... [2024-08-06 21:21:31.657080] 2024-08-06T21:21:31.6576273Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_trace_rules.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:31.657417] 2024-08-06T21:21:33.8550710Z 2024-08-06T21:21:33.8551739Z dynamo/test_trace_rules 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_trace_rules_1.1_d9d20fe0d41d7678_.log 2024-08-06T21:21:33.8552535Z 2024-08-06T21:21:33.8553783Z Running dynamo/test_unspec 1/1 ... [2024-08-06 21:21:33.855229] 2024-08-06T21:21:33.8557943Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_unspec.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:33.855557] 2024-08-06T21:21:36.0743074Z 2024-08-06T21:21:36.0744306Z dynamo/test_unspec 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_unspec_1.1_da5681320e63b222_.log 2024-08-06T21:21:36.0744984Z 2024-08-06T21:21:36.0745629Z Running dynamo/test_input_attr_tracking 1/1 ... [2024-08-06 21:21:36.074391] 2024-08-06T21:21:36.0749362Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_input_attr_tracking.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:36.074676] 2024-08-06T21:21:38.5172102Z 2024-08-06T21:21:38.5173163Z dynamo/test_input_attr_tracking 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_input_attr_tracking_1.1_bef2972e289ecc09_.log 2024-08-06T21:21:38.5174112Z 2024-08-06T21:21:38.5174816Z Running dynamo/test_recompile_ux 1/1 ... [2024-08-06 21:21:38.517336] 2024-08-06T21:21:38.5178945Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_recompile_ux.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:38.517652] 2024-08-06T21:21:41.0110561Z 2024-08-06T21:21:41.0111822Z dynamo/test_recompile_ux 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_recompile_ux_1.1_582abc3cdabc204b_.log 2024-08-06T21:21:41.0112561Z 2024-08-06T21:21:41.0113787Z Running dynamo/test_structured_trace 1/1 ... [2024-08-06 21:21:41.011191] 2024-08-06T21:21:41.0118163Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_structured_trace.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:41.011495] 2024-08-06T21:21:43.5387246Z 2024-08-06T21:21:43.5388552Z dynamo/test_structured_trace 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_structured_trace_1.1_6554b3a68d66dc87_.log 2024-08-06T21:21:43.5389312Z 2024-08-06T21:21:43.5390216Z Running test_cuda_sanitizer 1/1 ... [2024-08-06 21:21:43.538851] 2024-08-06T21:21:43.5394140Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda_sanitizer.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:43.539162] 2024-08-06T21:21:46.1112140Z 2024-08-06T21:21:46.1113411Z test_cuda_sanitizer 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_sanitizer_1.1_13e6027a5fedddee_.log 2024-08-06T21:21:46.1114190Z Running 0 items in this shard: 2024-08-06T21:21:46.1114426Z 2024-08-06T21:21:46.1114717Z Running test_cuda 1/1 ... [2024-08-06 21:21:46.111325] 2024-08-06T21:21:46.1118568Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:46.111655] 2024-08-06T21:21:49.6262022Z 2024-08-06T21:21:49.6263128Z test_cuda 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_1.1_1f97b3ac2e83b2f0_.log 2024-08-06T21:21:49.6263836Z Running 0 items in this shard: 2024-08-06T21:21:49.6264063Z 2024-08-06T21:21:49.6264329Z Running test_cuda_multigpu 1/1 ... [2024-08-06 21:21:49.626264] 2024-08-06T21:21:49.6268351Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda_multigpu.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:49.626574] 2024-08-06T21:21:52.3216144Z 2024-08-06T21:21:52.3217336Z test_cuda_multigpu 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_multigpu_1.1_abdacf7385acd304_.log 2024-08-06T21:21:52.3218148Z Running 0 items in this shard: 2024-08-06T21:21:52.3218342Z 2024-08-06T21:21:52.3218882Z Running test_quantization 3/6 ... [2024-08-06 21:21:52.321712] 2024-08-06T21:21:52.3222579Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_quantization.py', '-m', 'serial', '--shard-id=3', '--num-shards=6', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:52.322023] 2024-08-06T21:21:56.7433453Z 2024-08-06T21:21:56.7434625Z test_quantization 3/6 was successful, full logs can be found in artifacts with path test/test-reports/test_quantization_3.6_0e0e7ee3feba1546_.log 2024-08-06T21:21:56.7435709Z Running 0 items in this shard: 2024-08-06T21:21:56.7436013Z 2024-08-06T21:21:56.7437082Z Running optim/test_lrscheduler 1/1 ... [2024-08-06 21:21:56.743448] 2024-08-06T21:21:56.7440411Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'optim/test_lrscheduler.py', '-m', 'serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:56.743800] 2024-08-06T21:21:59.4702613Z 2024-08-06T21:21:59.4703633Z optim/test_lrscheduler 1/1 was successful, full logs can be found in artifacts with path test/test-reports/optim.test_lrscheduler_1.1_e0817f6e8a1b9438_.log 2024-08-06T21:21:59.4704392Z 2024-08-06T21:21:59.4768838Z Running dynamo/test_dynamic_shapes 1/1 ... [2024-08-06 21:21:59.476504] 2024-08-06T21:21:59.4770217Z Running dynamo/test_frame_init 1/1 ... [2024-08-06 21:21:59.476746] 2024-08-06T21:21:59.4772605Z Running dynamo/test_interop 1/1 ... [2024-08-06 21:21:59.477024] 2024-08-06T21:21:59.4774565Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_dynamic_shapes.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:59.477081] 2024-08-06T21:21:59.4777109Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_frame_init.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:59.477205] 2024-08-06T21:21:59.4779256Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_interop.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:21:59.477491] 2024-08-06T21:22:02.2129057Z 2024-08-06T21:22:02.2130388Z dynamo/test_interop 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_interop_1.1_fd3edb849c1e5503_.log 2024-08-06T21:22:02.2131436Z 2024-08-06T21:22:02.2271913Z 2024-08-06T21:22:02.2273114Z dynamo/test_frame_init 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_frame_init_1.1_8648641a1f90ff95_.log 2024-08-06T21:22:02.2273838Z 2024-08-06T21:22:03.9857216Z 2024-08-06T21:22:03.9858345Z dynamo/test_dynamic_shapes 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_dynamic_shapes_1.1_f242bb0d24d882cd_.log 2024-08-06T21:22:03.9859173Z 2024-08-06T21:22:05.1472694Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:05.2238780Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:05.2966727Z Running test_matmul_cuda 1/1 ... [2024-08-06 21:22:05.296198] 2024-08-06T21:22:05.2967502Z Running dynamo/test_global 1/1 ... [2024-08-06 21:22:05.296330] 2024-08-06T21:22:05.2969944Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_matmul_cuda.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:05.296616] 2024-08-06T21:22:05.2971938Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_global.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:05.296699] 2024-08-06T21:22:06.8886571Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:06.9490157Z Running dynamo/test_exceptions 1/1 ... [2024-08-06 21:22:06.948623] 2024-08-06T21:22:06.9493537Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_exceptions.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:06.949046] 2024-08-06T21:22:08.1490645Z 2024-08-06T21:22:08.1492142Z dynamo/test_global 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_global_1.1_6b5a1f7617fe7b3e_.log 2024-08-06T21:22:08.1493271Z 2024-08-06T21:22:08.3525597Z 2024-08-06T21:22:08.3527005Z test_matmul_cuda 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_matmul_cuda_1.1_695bb3fda8e5edb1_.log 2024-08-06T21:22:08.3527856Z Running 0 items in this shard: 2024-08-06T21:22:08.3528067Z 2024-08-06T21:22:09.7454329Z 2024-08-06T21:22:09.7456076Z dynamo/test_exceptions 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_exceptions_1.1_f689a82905d8e6e6_.log 2024-08-06T21:22:09.7456838Z 2024-08-06T21:22:10.9656293Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:11.0244038Z Running dynamo/test_subgraphs 1/1 ... [2024-08-06 21:22:11.024024] 2024-08-06T21:22:11.0247009Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_subgraphs.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:11.024376] 2024-08-06T21:22:11.1278096Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:11.1857841Z Running dynamo/test_modes 1/1 ... [2024-08-06 21:22:11.185519] 2024-08-06T21:22:11.1861365Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_modes.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:11.185850] 2024-08-06T21:22:12.2862406Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:12.3439924Z Running dynamo/test_higher_order_ops 1/1 ... [2024-08-06 21:22:12.343627] 2024-08-06T21:22:12.3443478Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_higher_order_ops.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:12.343983] 2024-08-06T21:22:13.4365093Z 2024-08-06T21:22:13.4366227Z dynamo/test_subgraphs 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_subgraphs_1.1_de5be4139251c550_.log 2024-08-06T21:22:13.4366927Z 2024-08-06T21:22:13.6128947Z 2024-08-06T21:22:13.6130168Z dynamo/test_modes 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_modes_1.1_618f7a4e2255963a_.log 2024-08-06T21:22:13.6130828Z 2024-08-06T21:22:14.9090766Z 2024-08-06T21:22:14.9092238Z dynamo/test_higher_order_ops 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_higher_order_ops_1.1_36e789b121f5db3f_.log 2024-08-06T21:22:14.9093364Z 2024-08-06T21:22:15.9281306Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:15.9877850Z Running dynamo/test_functions 1/1 ... [2024-08-06 21:22:15.987312] 2024-08-06T21:22:15.9880348Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_functions.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:15.987681] 2024-08-06T21:22:16.2096230Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:16.2698586Z Running dynamo/test_modules 1/1 ... [2024-08-06 21:22:16.269481] 2024-08-06T21:22:16.2702110Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_modules.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:16.269895] 2024-08-06T21:22:17.4823526Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:17.5429684Z Running dynamo/test_model_output 1/1 ... [2024-08-06 21:22:17.542558] 2024-08-06T21:22:17.5432694Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_model_output.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:17.542938] 2024-08-06T21:22:18.6899187Z 2024-08-06T21:22:18.6900723Z dynamo/test_functions 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_functions_1.1_174dec2245a92eff_.log 2024-08-06T21:22:18.6901581Z 2024-08-06T21:22:19.0640826Z 2024-08-06T21:22:19.0642358Z dynamo/test_modules 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_modules_1.1_3e105c3a8c0ad27a_.log 2024-08-06T21:22:19.0643529Z 2024-08-06T21:22:20.1958696Z 2024-08-06T21:22:20.1960723Z dynamo/test_model_output 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_model_output_1.1_68fe9298f97bda96_.log 2024-08-06T21:22:20.1963002Z 2024-08-06T21:22:21.4021203Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:21.4605969Z Running dynamo/test_export 1/1 ... [2024-08-06 21:22:21.460197] 2024-08-06T21:22:21.4609000Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_export.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:21.460567] 2024-08-06T21:22:21.7330818Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:21.7917461Z Running dynamo/test_ctx_manager 1/1 ... [2024-08-06 21:22:21.791358] 2024-08-06T21:22:21.7920524Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_ctx_manager.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:21.791727] 2024-08-06T21:22:22.8159232Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:22.8744895Z Running functorch/test_ac 1/1 ... [2024-08-06 21:22:22.874129] 2024-08-06T21:22:22.8747874Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'functorch/test_ac.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:22.874482] 2024-08-06T21:22:24.0669455Z 2024-08-06T21:22:24.0670525Z dynamo/test_export 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_export_1.1_455ccffb84f4f781_.log 2024-08-06T21:22:24.0671222Z 2024-08-06T21:22:24.3035893Z 2024-08-06T21:22:24.3037296Z dynamo/test_ctx_manager 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_ctx_manager_1.1_a1ca81a277314579_.log 2024-08-06T21:22:24.3038344Z 2024-08-06T21:22:25.5086793Z 2024-08-06T21:22:25.5087902Z functorch/test_ac 1/1 was successful, full logs can be found in artifacts with path test/test-reports/functorch.test_ac_1.1_e75d871d04dcbd46_.log 2024-08-06T21:22:25.5088653Z 2024-08-06T21:22:26.8187568Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:26.8800256Z Running dynamo/test_profiler 1/1 ... [2024-08-06 21:22:26.879598] 2024-08-06T21:22:26.8803279Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_profiler.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:26.879992] 2024-08-06T21:22:27.1800402Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:27.2419935Z Running dynamo/test_activation_checkpointing 1/1 ... [2024-08-06 21:22:27.241422] 2024-08-06T21:22:27.2421956Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_activation_checkpointing.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:27.241816] 2024-08-06T21:22:28.4248040Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:28.4859865Z Running dynamo/test_trace_rules 1/1 ... [2024-08-06 21:22:28.485537] 2024-08-06T21:22:28.4863636Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_trace_rules.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:28.485959] 2024-08-06T21:22:29.7142224Z 2024-08-06T21:22:29.7143757Z dynamo/test_profiler 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_profiler_1.1_a4a7cfeaeaf610ec_.log 2024-08-06T21:22:30.2256530Z 2024-08-06T21:22:30.2256553Z 2024-08-06T21:22:30.2258276Z dynamo/test_activation_checkpointing 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_activation_checkpointing_1.1_5f43019db8ae5c3f_.log 2024-08-06T21:22:30.2259791Z 2024-08-06T21:22:31.3567978Z 2024-08-06T21:22:31.3569485Z dynamo/test_trace_rules 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_trace_rules_1.1_74a2e0c2ac3c1fdd_.log 2024-08-06T21:22:31.3570447Z 2024-08-06T21:22:32.6420735Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:32.7041594Z Running dynamo/test_unspec 1/1 ... [2024-08-06 21:22:32.703715] 2024-08-06T21:22:32.7044938Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_unspec.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:32.704123] 2024-08-06T21:22:33.2105669Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:33.2733367Z Running dynamo/test_input_attr_tracking 1/1 ... [2024-08-06 21:22:33.272861] 2024-08-06T21:22:33.2735860Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_input_attr_tracking.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:33.273260] 2024-08-06T21:22:34.2815313Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:34.3422920Z Running dynamo/test_recompile_ux 1/1 ... [2024-08-06 21:22:34.341830] 2024-08-06T21:22:34.3425706Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_recompile_ux.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:34.342204] 2024-08-06T21:22:35.5991838Z 2024-08-06T21:22:35.5993224Z dynamo/test_unspec 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_unspec_1.1_ba688c53c1f5bc2d_.log 2024-08-06T21:22:35.5994388Z 2024-08-06T21:22:36.0155288Z 2024-08-06T21:22:36.0156581Z dynamo/test_input_attr_tracking 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_input_attr_tracking_1.1_76abf94ca34fdd60_.log 2024-08-06T21:22:36.0157395Z 2024-08-06T21:22:37.0219279Z 2024-08-06T21:22:37.0220460Z dynamo/test_recompile_ux 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_recompile_ux_1.1_15d4ef01b37af4c2_.log 2024-08-06T21:22:37.0221185Z 2024-08-06T21:22:38.2720424Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:38.3308423Z Running dynamo/test_structured_trace 1/1 ... [2024-08-06 21:22:38.330450] 2024-08-06T21:22:38.3310775Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'dynamo/test_structured_trace.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:38.330802] 2024-08-06T21:22:38.6581997Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:38.7167134Z Running test_cuda_sanitizer 1/1 ... [2024-08-06 21:22:38.716376] 2024-08-06T21:22:38.7170035Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda_sanitizer.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:38.716724] 2024-08-06T21:22:39.5301988Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:39.5885962Z Running test_cuda 1/1 ... [2024-08-06 21:22:39.588243] 2024-08-06T21:22:39.5888999Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:39.588618] 2024-08-06T21:22:40.7878654Z 2024-08-06T21:22:40.7879988Z dynamo/test_structured_trace 1/1 was successful, full logs can be found in artifacts with path test/test-reports/dynamo.test_structured_trace_1.1_3ad758bbea12e2a9_.log 2024-08-06T21:22:40.7880816Z 2024-08-06T21:22:41.3247410Z 2024-08-06T21:22:41.3248866Z test_cuda_sanitizer 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_sanitizer_1.1_1cc1fd0939c50659_.log 2024-08-06T21:22:41.3249848Z Running 0 items in this shard: 2024-08-06T21:22:41.3250046Z 2024-08-06T21:22:43.2442066Z 2024-08-06T21:22:43.2443306Z test_cuda 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_1.1_87bce44515201a06_.log 2024-08-06T21:22:43.2444008Z Running 0 items in this shard: 2024-08-06T21:22:43.2444199Z 2024-08-06T21:22:43.3176661Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:43.3778392Z Running test_cuda_multigpu 1/1 ... [2024-08-06 21:22:43.377551] 2024-08-06T21:22:43.3781877Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_cuda_multigpu.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:43.377930] 2024-08-06T21:22:43.7940622Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:43.8989618Z Running test_quantization 3/6 ... [2024-08-06 21:22:43.898561] 2024-08-06T21:22:43.8992602Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'test_quantization.py', '-m', 'not serial', '--shard-id=3', '--num-shards=6', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:43.898936] 2024-08-06T21:22:45.7663878Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:45.8267262Z Running optim/test_lrscheduler 1/1 ... [2024-08-06 21:22:45.826330] 2024-08-06T21:22:45.8270435Z Executing ['/opt/conda/envs/py_3.12/bin/python', '-bb', 'optim/test_lrscheduler.py', '-m', 'not serial', '--shard-id=1', '--num-shards=1', '-v', '-vv', '-rfEX', '-p', 'no:xdist', '--use-pytest', '-x', '--reruns=2', '--import-slow-tests', '--import-disabled-tests'] ... [2024-08-06 21:22:45.826735] 2024-08-06T21:22:46.0761662Z 2024-08-06T21:22:46.0763466Z test_cuda_multigpu 1/1 was successful, full logs can be found in artifacts with path test/test-reports/test_cuda_multigpu_1.1_13ebe0016c53d21a_.log 2024-08-06T21:22:46.0764765Z Running 0 items in this shard: 2024-08-06T21:22:46.0765055Z 2024-08-06T21:22:48.4823115Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:22:48.5602906Z 2024-08-06T21:22:48.5604701Z optim/test_lrscheduler 1/1 was successful, full logs can be found in artifacts with path test/test-reports/optim.test_lrscheduler_1.1_377ffa34a7b3232c_.log 2024-08-06T21:22:48.5606435Z 2024-08-06T21:22:50.9654436Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:30:09.3362048Z 2024-08-06T21:30:09.3363241Z test_quantization 3/6 was successful, full logs can be found in artifacts with path test/test-reports/test_quantization_3.6_fd8505b300850402_.log 2024-08-06T21:30:09.3515390Z Running 200 items in this shard: test/test_quantization.py::TestQuantizedOps::test_batch_norm_relu, test/test_quantization.py::TestQuantizedOps::test_equal, test/test_quantization.py::TestQuantizedOps::test_interpolate, test/test_quantization.py::TestQuantizedOps::test_max_pool2d_cudnn, test/test_quantization.py::TestQuantizedOps::test_max_pool3d, test/test_quantization.py::TestQuantizedOps::test_max_pool3d_nhwc, test/test_quantization.py::TestQNNPackOps::test_adaptive_avg_pool2d, test/test_quantization.py::TestQuantizedLinear::test_qlinear_leaky_relu, test/test_quantization.py::TestQuantizedConv::test_benchmark, test/test_quantization.py::TestQuantizedConv::test_conv_reorder_issue_onednn, test/test_quantization.py::TestQuantizedConv::test_qconv2d_relu_cudnn, test/test_quantization.py::TestQuantizedConv::test_qconv2d_sum_relu_float_output_pt2e, test/test_quantization.py::TestQuantizedConv::test_qconv_transpose1d, test/test_quantization.py::TestDynamicQuantizedOps::test_dynamic_conv1d, test/test_quantization.py::TestDynamicQuantizedOps::test_dynamic_conv2d, test/test_quantization.py::TestDynamicQuantizedOps::test_qlinear_dynamic_fp16, test/test_quantization.py::TestQuantizedEmbeddingOps::test_embedding, test/test_quantization.py::TestQuantizedEmbeddingOps::test_embedding_bag_4bit, test/test_quantization.py::TestFakeQuantizeOps::test_backward_per_channel_cachemask_cpu, test/test_quantization.py::TestFakeQuantizeOps::test_backward_per_tensor_cachemask_cuda, test/test_quantization.py::TestFakeQuantizeOps::test_forward_per_tensor_half_precision_numerics, test/test_quantization.py::TestFakeQuantizeOps::test_fq_module_per_tensor, test/test_quantization.py::TestFakeQuantizeOps::test_learnable_backward_per_tensor_cuda, test/test_quantization.py::TestFakeQuantizeOps::test_learnable_forward_per_tensor_cuda, test/test_quantization.py::TestQuantizedTensor::test_bfp16_quantize, test/test_quantization.py::TestQuantizedTensor::test_choose_qparams, test/test_quantization.py::TestQuantizedTensor::test_decomposed_dynamic_quant_pattern, test/test_quantization.py::TestQuantizedTensor::test_decomposed_quantize_per_channel_group, test/test_quantization.py::TestQuantizedTensor::test_qtensor_channel_float_assignment, test/test_quantization.py::TestQuantizedTensor::test_qtensor_fill_per_channel, test/test_quantization.py::TestQuantizedTensor::test_qtensor_index_select_cuda, test/test_quantization.py::TestQuantizedTensor::test_qtensor_load_save, test/test_quantization.py::TestQuantizedTensor::test_qtensor_per_channel_permute, test/test_quantization.py::TestQuantizedTensor::test_quant_pin_memory, test/test_quantization.py::TestQuantizedTensor::test_repeat, test/test_quantization.py::TestFakeQuantize::test_quant_min_max_override, test/test_quantization.py::TestObserver::test_histogram_observer_consistent_buffer_shape, test/test_quantization.py::TestObserver::test_state_dict_respects_device_affinity, test/test_quantization.py::TestStaticQuantizedModule::test_conv1d_relu_api, test/test_quantization.py::TestStaticQuantizedModule::test_conv2d_add, test/test_quantization.py::TestStaticQuantizedModule::test_leaky_relu, test/test_quantization.py::TestStaticQuantizedModule::test_linear, test/test_quantization.py::TestStaticQuantizedModule::test_prelu, test/test_quantization.py::TestRecordHistogramObserver::test_observer_scriptable, test/test_quantization.py::TestDistributed::test_fake_quant_preserves_buffers, test/test_quantization.py::TestUtils::test_get_fqn_to_example_inputs_simple, test/test_quantization.py::TestUtils::test_quantize_weight_clamping_per_tensor, test/test_quantization.py::TestQuantizationDocs::test_quantization_doc_ptdq, test/test_quantization.py::TestQuantizationDocs::test_quantization_doc_ptsq, test/test_quantization.py::TestQuantizeEagerPTQStatic::test_nested2, test/test_quantization.py::TestQuantizeEagerPTQStatic::test_skip_quant, test/test_quantization.py::TestQuantizeEagerPTQStatic::test_two_layers, test/test_quantization.py::TestQuantizeEagerPTQDynamic::test_per_channel_linear_quantize, test/test_quantization.py::TestQuantizeEagerPTQDynamic::test_two_layers, test/test_quantization.py::TestQuantizeEagerOps::test_conv_3d, test/test_quantization.py::TestQuantizeEagerOps::test_relu, test/test_quantization.py::TestQuantizeEagerQAT::test_dynamic_qat_linear, test/test_quantization.py::TestQuantizeEagerQAT::test_eval_only_fake_quant, test/test_quantization.py::TestQuantizeEagerQAT::test_manual, test/test_quantization.py::TestQuantizeEagerQATNumerics::test_conv_bn_relu, test/test_quantization.py::TestQuantizeEagerQATNumerics::test_fixed_qparam_ops, test/test_quantization.py::TestFuseEager::test_fuse_module_eval, test/test_quantization.py::TestFuseEager::test_fuse_modules_with_nested_hooks, test/test_quantization.py::TestFuseEager::test_fusion_sequential_model_eval, test/test_quantization.py::TestNumericSuiteEager::test_compare_model_outputs_linear_static, test/test_quantization.py::TestNumericSuiteEager::test_compare_model_stub_linear_static, test/test_quantization.py::TestNumericSuiteEager::test_compare_weights_linear_static, test/test_quantization.py::TestEqualizeEager::test_equalize_fused_convrelu, test/test_quantization.py::TestFuseFx::test_fuse_addtional_fuser_method, test/test_quantization.py::TestFuseFx::test_fuse_linear_bn_eval, test/test_quantization.py::TestFuseFx::test_fuse_linear_tanh_for_onednn_backend, test/test_quantization.py::TestFuseFx::test_fuse_module_relu, test/test_quantization.py::TestFuseFx::test_fusion_pattern_with_matchallnode, test/test_quantization.py::TestFuseFx::test_qconfig_fused_module, test/test_quantization.py::TestQuantizeFx::test_conv_linear_not_reference, test/test_quantization.py::TestQuantizeFx::test_conv_lowering, test/test_quantization.py::TestQuantizeFx::test_convert_custom_config_from_dict, test/test_quantization.py::TestQuantizeFx::test_convert_custom_config_set_observed_to_quantized_mapping, test/test_quantization.py::TestQuantizeFx::test_default_qconfig_mapping_override_global, test/test_quantization.py::TestQuantizeFx::test_get_executorch_backend_config, test/test_quantization.py::TestQuantizeFx::test_linear_shape_view, test/test_quantization.py::TestQuantizeFx::test_match_pattern_with_multiple_args, test/test_quantization.py::TestQuantizeFx::test_prepare_custom_config_set_input_quantized_indexes, test/test_quantization.py::TestQuantizeFx::test_prepare_custom_config_set_non_traceable_module_names, test/test_quantization.py::TestQuantizeFx::test_prepare_custom_config_set_output_quantized_indexes, test/test_quantization.py::TestQuantizeFx::test_preserve_attributes, test/test_quantization.py::TestQuantizeFx::test_qat_and_script, test/test_quantization.py::TestQuantizeFx::test_qat_skip_untraced, test/test_quantization.py::TestQuantizeFx::test_qconfig_dict_setup, test/test_quantization.py::TestQuantizeFx::test_qconfig_mapping_repr, test/test_quantization.py::TestQuantizeFx::test_qconfig_mapping_set_global, test/test_quantization.py::TestQuantizeFx::test_qconfig_mapping_set_module_name_object_type_order, test/test_quantization.py::TestQuantizeFx::test_qconfig_mapping_to_dict, test/test_quantization.py::TestQuantizeFx::test_quant_output_always_observed, test/test_quantization.py::TestQuantizeFx::test_size_nontensor_args_not_observed, test/test_quantization.py::TestQuantizeFx::test_static_lstm_with_custom_fixed_qparams, test/test_quantization.py::TestQuantizeFx::test_trace_quantize_per_tensor, test/test_quantization.py::TestQuantizeFxOps::test_bmm, test/test_quantization.py::TestQuantizeFxOps::test_clamp, test/test_quantization.py::TestQuantizeFxOps::test_fixed_qparams_ops_wrong_qconfig, test/test_quantization.py::TestQuantizeFxOps::test_functional_conv, test/test_quantization.py::TestQuantizeFxOps::test_functional_linear, test/test_quantization.py::TestQuantizeFxOps::test_getitem, test/test_quantization.py::TestQuantizeFxOps::test_narrow, test/test_quantization.py::TestQuantizeFxOps::test_pixel_unshuffle, test/test_quantization.py::TestQuantizeFxOps::test_ref_pattern_multi_use, test/test_quantization.py::TestQuantizeFxModels::test_model_dropout, test/test_quantization.py::TestQuantizeFxModels::test_torchvision, test/test_quantization.py::TestGraphUtils::test_customized_equivalet_types_dict, test/test_quantization.py::TestMetaDataPorting::test_metadata_porting_for_two_dq, test/test_quantization.py::TestMetaDataPorting::test_no_metadata_porting_through_unknown_ops, test/test_quantization.py::TestNumericDebugger::test_simple, test/test_quantization.py::TestQuantizePT2E::test_allow_implicit_sharing, test/test_quantization.py::TestQuantizePT2E::test_composable_quantizer_transform_for_annotation, test/test_quantization.py::TestQuantizePT2E::test_fixed_qparams_qspec_observer_dedup, test/test_quantization.py::TestQuantizePT2E::test_fold_quantize, test/test_quantization.py::TestQuantizePT2E::test_fold_quantize_per_channel, test/test_quantization.py::TestQuantizePT2E::test_groupwise_per_channel_quant, test/test_quantization.py::TestQuantizePT2E::test_quantization_dtype_float32_int16, test/test_quantization.py::TestQuantizePT2E::test_save_load, test/test_quantization.py::TestQuantizePT2E::test_transform_for_annotation, test/test_quantization.py::TestQuantizePT2E::test_wo_annotate_conv_output_quantizer, test/test_quantization.py::TestXNNPACKQuantizer::test_add_mul_long, test/test_quantization.py::TestXNNPACKQuantizer::test_linear_gru, test/test_quantization.py::TestXNNPACKQuantizer::test_linear_relu, test/test_quantization.py::TestXNNPACKQuantizer::test_linear_with_dynamic_shape, test/test_quantization.py::TestXNNPACKQuantizer::test_mul_float32_max, test/test_quantization.py::TestXNNPACKQuantizer::test_set_module_type_case_2, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_conv2d, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_filter_maxpool2d_recipe, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_linear_binary_dynamic, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_linear_binary_qat, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_linear_binary_unary, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_linear_unary_qat, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_qat_conv2d, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_qat_conv2d_binary2, test/test_quantization.py::TestQuantizePT2EX86Inductor::test_qat_conv2d_unary, test/test_quantization.py::TestQuantizePT2EQAT_ConvBn1d::test_prepare_qat_conv_bn_fusion_getitem_placeholder, test/test_quantization.py::TestQuantizePT2EQAT_ConvBn1d::test_qat_conv_bn_bias_derived_qspec, test/test_quantization.py::TestQuantizePT2EQAT_ConvBn1d::test_qat_conv_bn_fusion_no_conv_bias, test/test_quantization.py::TestQuantizePT2EQAT_ConvBn2d::test_qat_conv_bn_fusion_no_conv_bias, test/test_quantization.py::TestQuantizePT2EQAT_ConvBn2d::test_qat_conv_transpose_bn, test/test_quantization.py::TestQuantizePT2EQAT_ConvBn2d::test_qat_per_channel_weight_custom_dtype, test/test_quantization.py::TestFXGraphMatcher::test_op_relationship_mapping, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_add_shadow_loggers_fun_qat, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_extract_weights_conv_fun_ptq, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_int8_shadows_int8_mod, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_linear_fp16_shadow_activations, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_linear_fp16_vs_linear_fp16_shadow_activations, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_linear_kwargs_shadow, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_match_activations_fun_qat, test/test_quantization.py::TestFXNumericSuiteCoreAPIs::test_shadow_activations_fqn, test/test_quantization.py::TestFXNumericSuiteNShadows::test_add_loggers_functions, test/test_quantization.py::TestFXNumericSuiteNShadows::test_extract_weights_linear, test/test_quantization.py::TestFXNumericSuiteNShadows::test_linear_mod, test/test_quantization.py::TestFXNumericSuiteNShadows::test_logger_enabled_and_save_activations_flags, test/test_quantization.py::TestFXNumericSuiteNShadows::test_mobilenet_v2, test/test_quantization.py::TestFXNumericSuiteNShadows::test_qconfig_multi_mapping_from_list, test/test_quantization.py::TestFXNumericSuiteNShadows::test_qconfig_multi_mapping_repr, test/test_quantization.py::TestFXNumericSuiteCoreAPIsModels::test_compare_activations_conv, test/test_quantization.py::TestFXNumericSuiteCoreAPIsModels::test_compare_shadow_activations_conv, test/test_quantization.py::TestFXNumericSuiteCoreAPIsModels::test_compare_shadow_activations_linear, test/test_quantization.py::TestFXNumericSuiteCoreAPIsModels::test_resnet18, test/test_quantization.py::TestFxDetectInputWeightEqualization::test_input_weight_equalization_report_gen_empty, test/test_quantization.py::TestFxDetectOutliers::test_multiple_run_consistent_spike_outlier_report_gen, test/test_quantization.py::TestFxModelReportVisualizer::test_generate_tables_no_match, test/test_quantization.py::TestEqualizeFx::test_input_weight_eq_observer, test/test_quantization.py::TestEqualizeFx::test_input_weight_equalization_results, test/test_quantization.py::TestSerialization::test_linear_relu_package_quantization_transforms, test/test_quantization.py::TestQuantizeJit::test_conv_bn, test/test_quantization.py::TestQuantizeJit::test_single_linear, test/test_quantization.py::TestQuantizeJit::test_single_linear_dynamic, test/test_quantization.py::TestQuantizeJitPasses::test_foldbn_complex_cases, test/test_quantization.py::TestQuantizeJitPasses::test_inplace_option, test/test_quantization.py::TestQuantizeJitPasses::test_insert_observers_child_qconfig, test/test_quantization.py::TestQuantizeJitPasses::test_insert_observers_for_reused_weight, test/test_quantization.py::TestQuantizeJitPasses::test_insert_observers_skip_values, test/test_quantization.py::TestQuantizeJitPasses::test_replicate_dequant_same_value, test/test_quantization.py::TestQuantizeJitOps::test_group_norm, test/test_quantization.py::TestQuantizeJitOps::test_qbatch_norm_relu_BNRelu, test/test_quantization.py::TestQuantizeJitOps::test_quantized_conv, test/test_quantization.py::TestQuantizeJitOps::test_quantized_conv_relu, test/test_quantization.py::TestQuantizeJitOps::test_quantized_mul_scalar, test/test_quantization.py::TestQuantizeDynamicJitPasses::test_convert_dynamic_fp16, test/test_quantization.py::TestQuantizeDynamicJitPasses::test_dynamic_shared_weights, test/test_quantization.py::TestDeprecatedJitQuantized::test_rnn_quantized, test/test_quantization.py::TestAOMigrationQuantization::test_function_import_qconfig, test/test_quantization.py::TestAOMigrationQuantization::test_function_import_quant_type, test/test_quantization.py::TestAOMigrationQuantization::test_function_import_quantize_jit, test/test_quantization.py::TestAOMigrationQuantization::test_function_import_utils, test/test_quantization.py::TestAOMigrationNNQuantized::test_modules_utils, test/test_quantization.py::TestAOMigrationNNIntrinsic::test_modules_import_nn_intrinsic_qat, test/test_quantization.py::TestAOMigrationNNIntrinsic::test_modules_intrinsic_qat_linear_relu, test/test_quantization.py::TestAOMigrationQuantizationFx::test_function_import_fx_convert, test/test_quantization.py::TestAOMigrationQuantizationFx::test_function_import_fx_fusion_patterns, test/test_quantization.py::TestFloat8DtypeCPU::test_cast_round_trip_extremes_cpu_float8_e4m3fnuz, test/test_quantization.py::TestFloat8DtypeCPU::test_cast_round_trip_extremes_cpu_float8_e5m2, test/test_quantization.py::TestFloat8DtypeCPU::test_cast_round_trip_rte_cpu_float8_e4m3fn, test/test_quantization.py::TestFloat8DtypeCPU::test_creation_with_zeros_cpu_float8_e4m3fnuz, test/test_quantization.py::TestFloat8DtypeCPUOnlyCPU::test_mul_cpu_float8_e4m3fn 2024-08-06T21:30:09.3619057Z 2024-08-06T21:30:10.5427248Z 2024-08-06T21:30:10.5427707Z real 65m48.711s 2024-08-06T21:30:10.5428030Z user 95m28.667s 2024-08-06T21:30:10.5428255Z sys 8m9.256s 2024-08-06T21:30:10.5428485Z + assert_git_not_dirty 2024-08-06T21:30:10.5428813Z + [[ linux-focal-py3.12-clang10 != *rocm* ]] 2024-08-06T21:30:10.5447936Z + [[ linux-focal-py3.12-clang10 != *xla* ]] 2024-08-06T21:30:10.5454544Z ++ git status --porcelain 2024-08-06T21:30:10.5455133Z ++ grep -v '?? third_party' 2024-08-06T21:30:32.9093738Z ++ true 2024-08-06T21:30:32.9095288Z + git_status= 2024-08-06T21:30:32.9095712Z + [[ -n '' ]] 2024-08-06T21:30:32.9096034Z + [[ 1 == 1 ]] 2024-08-06T21:30:32.9096308Z + test_aten 2024-08-06T21:30:32.9096609Z + echo 'Running ATen tests with pytorch lib' 2024-08-06T21:30:32.9097055Z Running ATen tests with pytorch lib 2024-08-06T21:30:32.9097609Z + [[ -n '' ]] 2024-08-06T21:30:32.9097913Z + echo 'Running test with the build folder' 2024-08-06T21:30:32.9098588Z Running test with the build folder 2024-08-06T21:30:32.9099123Z + TEST_BASE_DIR=build/bin 2024-08-06T21:30:32.9099622Z + ln -sf /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libc10.so build/bin 2024-08-06T21:30:32.9154008Z + ln -sf '/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libcaffe2*' build/bin 2024-08-06T21:30:32.9163706Z + ln -sf '/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libmkldnn*' build/bin 2024-08-06T21:30:32.9173139Z + ln -sf '/opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libnccl*' build/bin 2024-08-06T21:30:32.9183452Z + ln -sf /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libtorch.so /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libtorch_cpu.so /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libtorch_global_deps.so /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libtorch_python.so /opt/conda/envs/py_3.12/lib/python3.12/site-packages/torch/lib/libtorchbind_test.so build/bin 2024-08-06T21:30:32.9190761Z + ls build/bin 2024-08-06T21:30:32.9264094Z BackoffTest cpu_rng_test 2024-08-06T21:30:32.9264854Z CMakeFiles dispatch_key_set_test 2024-08-06T21:30:32.9265412Z CTestTestfile.cmake dlconvertor_test 2024-08-06T21:30:32.9265981Z CppSignature_test example_allreduce 2024-08-06T21:30:32.9266413Z Dict_test extension_backend_test 2024-08-06T21:30:32.9266737Z Dimname_test half_test 2024-08-06T21:30:32.9267066Z FileStoreTest inline_container_test 2024-08-06T21:30:32.9267417Z HashStoreTest ivalue_test 2024-08-06T21:30:32.9267791Z IListRef_test kernel_function_legacy_test 2024-08-06T21:30:32.9268251Z KernelFunction_test kernel_function_test 2024-08-06T21:30:32.9268633Z List_test kernel_lambda_legacy_test 2024-08-06T21:30:32.9268968Z Makefile kernel_lambda_test 2024-08-06T21:30:32.9269313Z MaybeOwned_test kernel_stackbased_test 2024-08-06T21:30:32.9269678Z NamedTensor_test lazy_tensor_test 2024-08-06T21:30:32.9270034Z ProcessGroupGlooTest legacy_vmap_test 2024-08-06T21:30:32.9270396Z StorageUtils_test libc10.so 2024-08-06T21:30:32.9270738Z TCPStoreTest 'libcaffe2*' 2024-08-06T21:30:32.9271062Z aot_model_compiler_test 'libmkldnn*' 2024-08-06T21:30:32.9271486Z apply_utils_test 'libnccl*' 2024-08-06T21:30:32.9271798Z atest libtorch.so 2024-08-06T21:30:32.9272100Z backend_fallback_test libtorch_cpu.so 2024-08-06T21:30:32.9272466Z basic libtorch_global_deps.so 2024-08-06T21:30:32.9272816Z broadcast_test libtorch_python.so 2024-08-06T21:30:32.9273162Z c10_Bitset_test libtorchbind_test.so 2024-08-06T21:30:32.9273659Z c10_CompileTimeFunctionPointer_test make_boxed_from_unboxed_functor_test 2024-08-06T21:30:32.9274171Z c10_ConstexprCrc_test math_kernel_test 2024-08-06T21:30:32.9274570Z c10_DeadlockDetection_test memory_format_test 2024-08-06T21:30:32.9274981Z c10_DeviceGuard_test memory_overlapping_test 2024-08-06T21:30:32.9275428Z c10_Device_test mobile_memory_cleanup 2024-08-06T21:30:32.9275792Z c10_DispatchKeySet_test native_test 2024-08-06T21:30:32.9276124Z c10_Half_test op_allowlist_test 2024-08-06T21:30:32.9276511Z c10_InlineDeviceGuard_test op_registration_test 2024-08-06T21:30:32.9276944Z c10_InlineStreamGuard_test operator_name_test 2024-08-06T21:30:32.9277320Z c10_LeftRight_test operators_test 2024-08-06T21:30:32.9277728Z c10_Metaprogramming_test packedtensoraccessor_test 2024-08-06T21:30:32.9278141Z c10_Scalar_test parallel_benchmark 2024-08-06T21:30:32.9278477Z c10_SizesAndStrides_test pow_test 2024-08-06T21:30:32.9278808Z c10_StreamGuard_test protoc 2024-08-06T21:30:32.9279130Z c10_SymInt_test protoc-3.13.0.0 2024-08-06T21:30:32.9279464Z c10_Synchronized_test quantized_test 2024-08-06T21:30:32.9279827Z c10_ThreadLocal_test reduce_ops_test 2024-08-06T21:30:32.9280193Z c10_TypeIndex_test reportMemoryUsage_test 2024-08-06T21:30:32.9280578Z c10_TypeList_test scalar_tensor_test 2024-08-06T21:30:32.9280927Z c10_TypeTraits_test scalar_test 2024-08-06T21:30:32.9281268Z c10_accumulate_test static_runtime_bench 2024-08-06T21:30:32.9281642Z c10_bfloat16_test static_runtime_test 2024-08-06T21:30:32.9282059Z c10_bit_cast_test stride_properties_test 2024-08-06T21:30:32.9282434Z c10_complex_math_test tensor_iterator_test 2024-08-06T21:30:32.9282791Z c10_complex_test test_api 2024-08-06T21:30:32.9283096Z c10_cow_test test_cpp_rpc 2024-08-06T21:30:32.9283412Z c10_exception_test test_dist_autograd 2024-08-06T21:30:32.9283787Z c10_flags_test test_edge_op_registration 2024-08-06T21:30:32.9284147Z c10_generic_math_test test_jit 2024-08-06T21:30:32.9284474Z c10_intrusive_ptr_benchmark test_lazy 2024-08-06T21:30:32.9284838Z c10_intrusive_ptr_test test_mobile_nnc 2024-08-06T21:30:32.9285184Z c10_irange_test test_parallel 2024-08-06T21:30:32.9285495Z c10_lazy_test test_tensorexpr 2024-08-06T21:30:32.9285873Z c10_logging_test thread_init_test 2024-08-06T21:30:32.9286220Z c10_optional_test torch_shm_manager 2024-08-06T21:30:32.9286611Z c10_ordered_preserving_dict_test tutorial_tensorexpr 2024-08-06T21:30:32.9287015Z c10_registry_test type_ptr_test 2024-08-06T21:30:32.9287343Z c10_small_vector_test type_test 2024-08-06T21:30:32.9287675Z c10_ssize_test undefined_tensor_test 2024-08-06T21:30:32.9288060Z c10_string_util_test vec_test_all_types_AVX2 2024-08-06T21:30:32.9288473Z c10_string_view_test vec_test_all_types_AVX512 2024-08-06T21:30:32.9288873Z c10_tempfile_test vec_test_all_types_DEFAULT 2024-08-06T21:30:32.9289265Z c10_typeid_test verify_api_visibility 2024-08-06T21:30:32.9289623Z cmake_install.cmake weakref_test 2024-08-06T21:30:32.9289950Z cpu_allocator_test wrapdim_test 2024-08-06T21:30:32.9290295Z cpu_generator_test xla_tensor_test 2024-08-06T21:30:32.9290637Z cpu_profiling_allocator_test 2024-08-06T21:30:32.9290929Z + aten/tools/run_tests.sh build/bin 2024-08-06T21:30:32.9318693Z + set -e 2024-08-06T21:30:32.9321161Z ++ dirname aten/tools/run_tests.sh 2024-08-06T21:30:32.9329502Z + VALGRIND_SUP=/var/lib/jenkins/workspace/aten/tools/valgrind.sup 2024-08-06T21:30:32.9329999Z + export CPP_TESTS_DIR=build/bin 2024-08-06T21:30:32.9330419Z + CPP_TESTS_DIR=build/bin 2024-08-06T21:30:32.9330735Z + VALGRIND=ON 2024-08-06T21:30:32.9332632Z + python test/run_test.py --cpp --verbose -i cpp/basic cpp/atest cpp/scalar_test cpp/broadcast_test cpp/wrapdim_test cpp/apply_utils_test cpp/dlconvertor_test cpp/native_test cpp/scalar_tensor_test cpp/undefined_tensor_test cpp/extension_backend_test cpp/lazy_tensor_test cpp/tensor_iterator_test cpp/Dimname_test cpp/Dict_test cpp/NamedTensor_test cpp/cpu_generator_test cpp/legacy_vmap_test cpp/operators_test 2024-08-06T21:30:33.0341629Z /var/lib/jenkins/workspace/test/run_test.py:21: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html 2024-08-06T21:30:33.0342862Z import pkg_resources 2024-08-06T21:30:34.9455753Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:30:35.9176588Z Downloading https://ossci-metrics.s3.amazonaws.com/slow-tests.json to /var/lib/jenkins/workspace/test/.pytorch-slow-tests.json 2024-08-06T21:30:35.9177833Z Downloading https://ossci-metrics.s3.amazonaws.com/disabled-tests-condensed.json to /var/lib/jenkins/workspace/test/.pytorch-disabled-tests.json 2024-08-06T21:30:35.9286722Z Found test times from artifacts 2024-08-06T21:30:35.9716056Z Found test times from artifacts 2024-08-06T21:30:35.9731720Z Running all tests 2024-08-06T21:30:35.9736315Z Running parallel tests on 3 processes 2024-08-06T21:30:35.9738411Z Name: tests to run (est. time: 0.0min) 2024-08-06T21:30:35.9738874Z Serial tests (0): 2024-08-06T21:30:35.9739202Z Parallel tests (19): 2024-08-06T21:30:35.9739503Z cpp/Dict_test 1/1 2024-08-06T21:30:35.9739763Z cpp/Dimname_test 1/1 2024-08-06T21:30:35.9740027Z cpp/NamedTensor_test 1/1 2024-08-06T21:30:35.9740318Z cpp/apply_utils_test 1/1 2024-08-06T21:30:35.9740604Z cpp/atest 1/1 2024-08-06T21:30:35.9740826Z cpp/basic 1/1 2024-08-06T21:30:35.9741241Z cpp/broadcast_test 1/1 2024-08-06T21:30:35.9741532Z cpp/cpu_generator_test 1/1 2024-08-06T21:30:35.9741814Z cpp/dlconvertor_test 1/1 2024-08-06T21:30:35.9742111Z cpp/extension_backend_test 1/1 2024-08-06T21:30:35.9742422Z cpp/lazy_tensor_test 1/1 2024-08-06T21:30:35.9742695Z cpp/legacy_vmap_test 1/1 2024-08-06T21:30:35.9742973Z cpp/native_test 1/1 2024-08-06T21:30:35.9743234Z cpp/operators_test 1/1 2024-08-06T21:30:35.9743501Z cpp/scalar_tensor_test 1/1 2024-08-06T21:30:35.9743785Z cpp/scalar_test 1/1 2024-08-06T21:30:35.9744052Z cpp/tensor_iterator_test 1/1 2024-08-06T21:30:35.9744347Z cpp/undefined_tensor_test 1/1 2024-08-06T21:30:35.9744727Z cpp/wrapdim_test 1/1 2024-08-06T21:30:35.9745011Z Name: excluded (est. time: 0.0min) 2024-08-06T21:30:35.9745299Z Serial tests (0): 2024-08-06T21:30:35.9745546Z Parallel tests (0): 2024-08-06T21:30:35.9745916Z Starting test batch 'tests to run' 0.0 seconds after initiating testing 2024-08-06T21:30:35.9803590Z Running cpp/Dict_test 1/1 ... [2024-08-06 21:30:35.979934] 2024-08-06T21:30:35.9816763Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/Dict_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-1f101d25d4ab673c.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:35.981193] 2024-08-06T21:30:38.4064803Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:30:38.6762035Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:30:38.7406585Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:30:38.9528787Z 2024-08-06T21:30:38.9530542Z cpp/Dict_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.Dict_test_1.1_fa48829e9ff1e05f_.log 2024-08-06T21:30:38.9531202Z 2024-08-06T21:30:38.9531403Z Running cpp/Dimname_test 1/1 ... [2024-08-06 21:30:38.952831] 2024-08-06T21:30:38.9534387Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/Dimname_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-6536473cead3effd.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:38.953176] 2024-08-06T21:30:40.6714008Z 2024-08-06T21:30:40.6715125Z cpp/Dimname_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.Dimname_test_1.1_218f248f4d27b227_.log 2024-08-06T21:30:40.6715792Z 2024-08-06T21:30:40.6716253Z Running cpp/NamedTensor_test 1/1 ... [2024-08-06 21:30:40.670848] 2024-08-06T21:30:40.6717732Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/NamedTensor_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-5ef51e481e7fdd5e.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:40.671189] 2024-08-06T21:30:42.4393204Z 2024-08-06T21:30:42.4394359Z cpp/NamedTensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.NamedTensor_test_1.1_8a4359bddd9f0122_.log 2024-08-06T21:30:42.4395124Z 2024-08-06T21:30:42.4395326Z Running cpp/apply_utils_test 1/1 ... [2024-08-06 21:30:42.438952] 2024-08-06T21:30:42.4396650Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/apply_utils_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-6def1c97d6909f15.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:42.439294] 2024-08-06T21:30:44.2579775Z 2024-08-06T21:30:44.2581183Z cpp/apply_utils_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.apply_utils_test_1.1_c9ec93a88c72d8d8_.log 2024-08-06T21:30:44.2582404Z 2024-08-06T21:30:44.2582660Z Running cpp/atest 1/1 ... [2024-08-06 21:30:44.257626] 2024-08-06T21:30:44.2584513Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/atest', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-ee55cbd1972b6755.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:44.257967] 2024-08-06T21:30:45.9758590Z 2024-08-06T21:30:45.9759490Z cpp/atest 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.atest_1.1_e5b6fd3d5ea810e3_.log 2024-08-06T21:30:45.9760079Z 2024-08-06T21:30:45.9760248Z Running cpp/basic 1/1 ... [2024-08-06 21:30:45.975670] 2024-08-06T21:30:45.9763971Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/basic', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-eb319fb9aaf266db.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:45.976105] 2024-08-06T21:30:47.6944603Z 2024-08-06T21:30:47.6945892Z cpp/basic 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.basic_1.1_0ea88f2d5fdfa1ed_.log 2024-08-06T21:30:47.6946880Z 2024-08-06T21:30:47.6947205Z Running cpp/broadcast_test 1/1 ... [2024-08-06 21:30:47.694065] 2024-08-06T21:30:47.6948696Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/broadcast_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-48b6bba4b19c7db7.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:47.694404] 2024-08-06T21:30:49.3623192Z 2024-08-06T21:30:49.3624481Z cpp/broadcast_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.broadcast_test_1.1_0645bfe66bdd119e_.log 2024-08-06T21:30:49.3625211Z 2024-08-06T21:30:49.3625580Z Running cpp/cpu_generator_test 1/1 ... [2024-08-06 21:30:49.362139] 2024-08-06T21:30:49.3628085Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/cpu_generator_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-1789df2dc2bc3dab.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:49.362490] 2024-08-06T21:30:50.9800112Z 2024-08-06T21:30:50.9801708Z cpp/cpu_generator_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.cpu_generator_test_1.1_68e87522499891ba_.log 2024-08-06T21:30:50.9802597Z 2024-08-06T21:30:50.9802913Z Running cpp/dlconvertor_test 1/1 ... [2024-08-06 21:30:50.979791] 2024-08-06T21:30:50.9805210Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/dlconvertor_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-e9c11487e929cb3a.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:50.980184] 2024-08-06T21:30:52.5980762Z 2024-08-06T21:30:52.5982067Z cpp/dlconvertor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.dlconvertor_test_1.1_bbdd48cf658c250c_.log 2024-08-06T21:30:52.5982751Z 2024-08-06T21:30:52.5983021Z Running cpp/extension_backend_test 1/1 ... [2024-08-06 21:30:52.597924] 2024-08-06T21:30:52.5985645Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/extension_backend_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-42639e7c5afb82a5.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:52.598275] 2024-08-06T21:30:54.2157842Z 2024-08-06T21:30:54.2159249Z cpp/extension_backend_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.extension_backend_test_1.1_6920854c264b8f99_.log 2024-08-06T21:30:54.2160053Z 2024-08-06T21:30:54.2160290Z Running cpp/lazy_tensor_test 1/1 ... [2024-08-06 21:30:54.215591] 2024-08-06T21:30:54.2162273Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/lazy_tensor_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-1f0c7355ef818acf.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:54.215938] 2024-08-06T21:30:55.8335880Z 2024-08-06T21:30:55.8336866Z cpp/lazy_tensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.lazy_tensor_test_1.1_2cc2df29b57506c7_.log 2024-08-06T21:30:55.8337702Z 2024-08-06T21:30:55.8337927Z Running cpp/legacy_vmap_test 1/1 ... [2024-08-06 21:30:55.833316] 2024-08-06T21:30:55.8339328Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/legacy_vmap_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-ccdb8b0178562883.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:55.833684] 2024-08-06T21:30:57.5019326Z 2024-08-06T21:30:57.5020530Z cpp/legacy_vmap_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.legacy_vmap_test_1.1_084141cdb74d1fc5_.log 2024-08-06T21:30:57.5021628Z 2024-08-06T21:30:57.5021855Z Running cpp/native_test 1/1 ... [2024-08-06 21:30:57.501321] 2024-08-06T21:30:57.5023233Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/native_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-bd8b6c6144a93211.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:57.501654] 2024-08-06T21:30:59.1700016Z 2024-08-06T21:30:59.1701329Z cpp/native_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.native_test_1.1_4abcaed2e5f42da3_.log 2024-08-06T21:30:59.1702359Z 2024-08-06T21:30:59.1702567Z Running cpp/operators_test 1/1 ... [2024-08-06 21:30:59.169626] 2024-08-06T21:30:59.1703879Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/operators_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-46119c912941a7ad.xml', '-x', '--reruns=2'] ... [2024-08-06 21:30:59.169988] 2024-08-06T21:31:00.8374531Z 2024-08-06T21:31:00.8376444Z cpp/operators_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.operators_test_1.1_9c5fab689dbf2bd4_.log 2024-08-06T21:31:00.8377343Z 2024-08-06T21:31:00.8377611Z Running cpp/scalar_tensor_test 1/1 ... [2024-08-06 21:31:00.837293] 2024-08-06T21:31:00.8379474Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/scalar_tensor_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-92627857be959c6b.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:00.837637] 2024-08-06T21:31:02.5052644Z 2024-08-06T21:31:02.5053703Z cpp/scalar_tensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.scalar_tensor_test_1.1_cc8712dee8e4ba04_.log 2024-08-06T21:31:02.5054823Z 2024-08-06T21:31:02.5055048Z Running cpp/scalar_test 1/1 ... [2024-08-06 21:31:02.505126] 2024-08-06T21:31:02.5057408Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/scalar_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-f8b94e9a274531ba.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:02.505481] 2024-08-06T21:31:04.1728720Z 2024-08-06T21:31:04.1729718Z cpp/scalar_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.scalar_test_1.1_3508a0177f6d6f8b_.log 2024-08-06T21:31:04.1730353Z 2024-08-06T21:31:04.1730589Z Running cpp/tensor_iterator_test 1/1 ... [2024-08-06 21:31:04.172735] 2024-08-06T21:31:04.1733422Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/tensor_iterator_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-6845da4979e152d0.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:04.173096] 2024-08-06T21:31:05.7905864Z 2024-08-06T21:31:05.7906952Z cpp/tensor_iterator_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.tensor_iterator_test_1.1_912aaac3de2a95d2_.log 2024-08-06T21:31:05.7907668Z 2024-08-06T21:31:05.7908127Z Running cpp/undefined_tensor_test 1/1 ... [2024-08-06 21:31:05.790391] 2024-08-06T21:31:05.7910256Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/undefined_tensor_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-1bafbf312daa1bb8.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:05.790782] 2024-08-06T21:31:07.3581613Z 2024-08-06T21:31:07.3583098Z cpp/undefined_tensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.undefined_tensor_test_1.1_c0b9c2becee866a4_.log 2024-08-06T21:31:07.3584310Z 2024-08-06T21:31:07.3584631Z Running cpp/wrapdim_test 1/1 ... [2024-08-06 21:31:07.358006] 2024-08-06T21:31:07.3587216Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/wrapdim_test', '-m', 'serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-6c4fd889d93bc7b0.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:07.358401] 2024-08-06T21:31:08.9259983Z 2024-08-06T21:31:08.9260903Z cpp/wrapdim_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.wrapdim_test_1.1_f4db2aab14d10db8_.log 2024-08-06T21:31:08.9261567Z 2024-08-06T21:31:08.9272228Z Running cpp/Dict_test 1/1 ... [2024-08-06 21:31:08.926954] 2024-08-06T21:31:08.9274367Z Running cpp/Dimname_test 1/1 ... [2024-08-06 21:31:08.927125] 2024-08-06T21:31:08.9275465Z Running cpp/NamedTensor_test 1/1 ... [2024-08-06 21:31:08.927308] 2024-08-06T21:31:08.9279665Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/Dict_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-88042279c052c28a.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:08.927595] 2024-08-06T21:31:08.9283476Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/Dimname_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-c79a3239df92a808.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:08.927689] 2024-08-06T21:31:08.9285640Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/NamedTensor_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-deab095db12da25e.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:08.927927] 2024-08-06T21:31:12.6502583Z 2024-08-06T21:31:12.6506477Z cpp/Dimname_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.Dimname_test_1.1_89c5f1d5ea7df539_.log 2024-08-06T21:31:12.6507926Z 2024-08-06T21:31:13.6732631Z 2024-08-06T21:31:13.6734206Z cpp/NamedTensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.NamedTensor_test_1.1_7b6fee24de1abefb_.log 2024-08-06T21:31:13.6735804Z 2024-08-06T21:31:15.5575896Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:15.6189429Z Running cpp/apply_utils_test 1/1 ... [2024-08-06 21:31:15.618486] 2024-08-06T21:31:15.6195143Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/apply_utils_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-46296b6f048c3e80.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:15.619033] 2024-08-06T21:31:16.6865615Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:16.7932148Z Running cpp/atest 1/1 ... [2024-08-06 21:31:16.792542] 2024-08-06T21:31:16.7938662Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/atest', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-239fb6b07374107c.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:16.793277] 2024-08-06T21:31:19.4420220Z 2024-08-06T21:31:19.4421970Z cpp/apply_utils_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.apply_utils_test_1.1_5c5cc8fe26a083bb_.log 2024-08-06T21:31:19.4423229Z 2024-08-06T21:31:20.2651996Z 2024-08-06T21:31:20.2653954Z cpp/Dict_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.Dict_test_1.1_310c14aef74685f0_.log 2024-08-06T21:31:20.2655049Z 2024-08-06T21:31:22.0273070Z 2024-08-06T21:31:22.0275063Z cpp/atest 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.atest_1.1_ebd6afb234ab41c1_.log 2024-08-06T21:31:22.0276058Z 2024-08-06T21:31:22.5895307Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:22.6495786Z Running cpp/basic 1/1 ... [2024-08-06 21:31:22.649206] 2024-08-06T21:31:22.6500226Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/basic', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-01b4a041b77e4fa9.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:22.649689] 2024-08-06T21:31:23.2074278Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:23.2672068Z Running cpp/broadcast_test 1/1 ... [2024-08-06 21:31:23.266782] 2024-08-06T21:31:23.2677849Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/broadcast_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-b4b0247484d0b2a7.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:23.267251] 2024-08-06T21:31:25.0064782Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:25.0679107Z Running cpp/cpu_generator_test 1/1 ... [2024-08-06 21:31:25.066796] 2024-08-06T21:31:25.0681857Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/cpu_generator_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-0e5565a6c527a1e2.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:25.067400] 2024-08-06T21:31:26.0975062Z 2024-08-06T21:31:26.0976802Z cpp/broadcast_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.broadcast_test_1.1_45ea71dfd2d839d0_.log 2024-08-06T21:31:26.0978085Z 2024-08-06T21:31:26.1253045Z 2024-08-06T21:31:26.1254369Z cpp/basic 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.basic_1.1_f1ed358828f2cca5_.log 2024-08-06T21:31:26.1255764Z 2024-08-06T21:31:28.6597350Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:28.7639448Z Running cpp/dlconvertor_test 1/1 ... [2024-08-06 21:31:28.763515] 2024-08-06T21:31:28.7644720Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/dlconvertor_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-8c243b5d3122687f.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:28.764092] 2024-08-06T21:31:28.9736709Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:29.0330763Z Running cpp/extension_backend_test 1/1 ... [2024-08-06 21:31:29.032552] 2024-08-06T21:31:29.0336044Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/extension_backend_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-dec83b82346510a1.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:29.033021] 2024-08-06T21:31:29.6915384Z 2024-08-06T21:31:29.6916728Z cpp/cpu_generator_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.cpu_generator_test_1.1_67a80a4dfda0c5d5_.log 2024-08-06T21:31:29.6921237Z 2024-08-06T21:31:31.3876414Z 2024-08-06T21:31:31.3877851Z cpp/dlconvertor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.dlconvertor_test_1.1_ac4f996b33539aef_.log 2024-08-06T21:31:31.3878829Z 2024-08-06T21:31:31.6025023Z 2024-08-06T21:31:31.6026417Z cpp/extension_backend_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.extension_backend_test_1.1_2708deefee781e02_.log 2024-08-06T21:31:31.6027641Z 2024-08-06T21:31:32.7182590Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:32.7778426Z Running cpp/lazy_tensor_test 1/1 ... [2024-08-06 21:31:32.777494] 2024-08-06T21:31:32.7782434Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/lazy_tensor_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-c49424fdeabc9c93.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:32.777924] 2024-08-06T21:31:34.0990372Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:34.1010674Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:34.1588742Z Running cpp/legacy_vmap_test 1/1 ... [2024-08-06 21:31:34.158476] 2024-08-06T21:31:34.1593287Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/legacy_vmap_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-8e026d8e0aefa4ec.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:34.158953] 2024-08-06T21:31:34.1707696Z Running cpp/native_test 1/1 ... [2024-08-06 21:31:34.170464] 2024-08-06T21:31:34.1713407Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/native_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-0d65c3f2638354e7.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:34.170948] 2024-08-06T21:31:35.4483091Z 2024-08-06T21:31:35.4484550Z cpp/lazy_tensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.lazy_tensor_test_1.1_3a4e71a7ae310b41_.log 2024-08-06T21:31:35.4485835Z 2024-08-06T21:31:36.9508092Z 2024-08-06T21:31:36.9509781Z cpp/native_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.native_test_1.1_f7282389195ebebe_.log 2024-08-06T21:31:36.9510988Z 2024-08-06T21:31:38.3167342Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:38.3778448Z Running cpp/operators_test 1/1 ... [2024-08-06 21:31:38.377257] 2024-08-06T21:31:38.3782811Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/operators_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-7b2abe24bf6c61fd.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:38.377780] 2024-08-06T21:31:40.0495932Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:40.1095487Z Running cpp/scalar_tensor_test 1/1 ... [2024-08-06 21:31:40.109117] 2024-08-06T21:31:40.1100116Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/scalar_tensor_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-b3d878ed3330e5ac.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:40.109637] 2024-08-06T21:31:40.3946796Z 2024-08-06T21:31:40.3948316Z cpp/legacy_vmap_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.legacy_vmap_test_1.1_f6197761832916ba_.log 2024-08-06T21:31:40.3949620Z 2024-08-06T21:31:41.3482403Z 2024-08-06T21:31:41.3484168Z cpp/operators_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.operators_test_1.1_51db315d9a98ceb6_.log 2024-08-06T21:31:41.3485448Z 2024-08-06T21:31:42.6288687Z 2024-08-06T21:31:42.6290080Z cpp/scalar_tensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.scalar_tensor_test_1.1_b73cc60a3af971e0_.log 2024-08-06T21:31:42.6290904Z 2024-08-06T21:31:43.1865717Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:43.2460656Z Running cpp/scalar_test 1/1 ... [2024-08-06 21:31:43.245731] 2024-08-06T21:31:43.2465392Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/scalar_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-8652c9ebc78e3260.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:43.246144] 2024-08-06T21:31:43.8949422Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:43.9546783Z Running cpp/tensor_iterator_test 1/1 ... [2024-08-06 21:31:43.954132] 2024-08-06T21:31:43.9550576Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/tensor_iterator_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-b055f5bb10a4367d.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:43.954571] 2024-08-06T21:31:45.3194949Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:45.4249598Z Running cpp/undefined_tensor_test 1/1 ... [2024-08-06 21:31:45.424427] 2024-08-06T21:31:45.4255591Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/undefined_tensor_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-d7bad92aa93227e1.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:45.425026] 2024-08-06T21:31:46.5169557Z 2024-08-06T21:31:46.5170935Z cpp/scalar_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.scalar_test_1.1_b3a7f9bb16e3d122_.log 2024-08-06T21:31:46.5172238Z 2024-08-06T21:31:48.3464113Z 2024-08-06T21:31:48.3465276Z cpp/undefined_tensor_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.undefined_tensor_test_1.1_e79bc4b0f393029c_.log 2024-08-06T21:31:48.3466119Z 2024-08-06T21:31:49.5110060Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:49.5721227Z Running cpp/wrapdim_test 1/1 ... [2024-08-06 21:31:49.571609] 2024-08-06T21:31:49.5726066Z Executing ['pytest', '/var/lib/jenkins/workspace/build/bin/wrapdim_test', '-m', 'not serial', '-v', '-vv', '-rfEX', '-n', '3', '--junit-xml-reruns', 'test-reports/python-pytest/test.run_test/test.run_test-f453361be270e409.xml', '-x', '--reruns=2'] ... [2024-08-06 21:31:49.572135] 2024-08-06T21:31:51.7384425Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:52.3425986Z 2024-08-06T21:31:52.3427209Z cpp/wrapdim_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.wrapdim_test_1.1_45e23e328349d7a0_.log 2024-08-06T21:31:52.3428282Z 2024-08-06T21:31:54.8553619Z Unable to import boto3. Will not be emitting metrics.... Reason: No module named 'botocore.vendored.six.moves' 2024-08-06T21:31:55.9041791Z 2024-08-06T21:31:55.9042985Z cpp/tensor_iterator_test 1/1 was successful, full logs can be found in artifacts with path test/test-reports/cpp.tensor_iterator_test_1.1_969a14262801f463_.log 2024-08-06T21:31:55.9044014Z 2024-08-06T21:31:56.7211288Z + run_if_exists tensor_interop_test 2024-08-06T21:31:56.7211902Z + local test_name=tensor_interop_test 2024-08-06T21:31:56.7212393Z + [[ -x build/bin/tensor_interop_test ]] 2024-08-06T21:31:56.7212952Z + echo 'Warning: tensor_interop_test does not exist.' 2024-08-06T21:31:56.7214626Z Warning: tensor_interop_test does not exist. 2024-08-06T21:31:56.7215233Z + run_if_exists cudnn_test 2024-08-06T21:31:56.7215639Z + local test_name=cudnn_test 2024-08-06T21:31:56.7216053Z + [[ -x build/bin/cudnn_test ]] 2024-08-06T21:31:56.7216512Z + echo 'Warning: cudnn_test does not exist.' 2024-08-06T21:31:56.7217038Z Warning: cudnn_test does not exist. 2024-08-06T21:31:56.7217484Z + run_if_exists cuda_generator_test 2024-08-06T21:31:56.7217983Z + local test_name=cuda_generator_test 2024-08-06T21:31:56.7218528Z + [[ -x build/bin/cuda_generator_test ]] 2024-08-06T21:31:56.7219115Z + echo 'Warning: cuda_generator_test does not exist.' 2024-08-06T21:31:56.7219742Z Warning: cuda_generator_test does not exist. 2024-08-06T21:31:56.7220289Z + run_if_exists apply_test 2024-08-06T21:31:56.7220920Z + local test_name=apply_test 2024-08-06T21:31:56.7221397Z + [[ -x build/bin/apply_test ]] 2024-08-06T21:31:56.7221925Z + echo 'Warning: apply_test does not exist.' 2024-08-06T21:31:56.7222521Z Warning: apply_test does not exist. 2024-08-06T21:31:56.7223081Z + run_if_exists stream_test 2024-08-06T21:31:56.7223570Z + local test_name=stream_test 2024-08-06T21:31:56.7224135Z + [[ -x build/bin/stream_test ]] 2024-08-06T21:31:56.7224753Z + echo 'Warning: stream_test does not exist.' 2024-08-06T21:31:56.7225423Z Warning: stream_test does not exist. 2024-08-06T21:31:56.7226055Z + run_if_exists cuda_half_test 2024-08-06T21:31:56.7226599Z + local test_name=cuda_half_test 2024-08-06T21:31:56.7227103Z + [[ -x build/bin/cuda_half_test ]] 2024-08-06T21:31:56.7227687Z + echo 'Warning: cuda_half_test does not exist.' 2024-08-06T21:31:56.7228412Z Warning: cuda_half_test does not exist. 2024-08-06T21:31:56.7229006Z + run_if_exists cuda_vectorized_test 2024-08-06T21:31:56.7229565Z + local test_name=cuda_vectorized_test 2024-08-06T21:31:56.7230144Z + [[ -x build/bin/cuda_vectorized_test ]] 2024-08-06T21:31:56.7230802Z + echo 'Warning: cuda_vectorized_test does not exist.' 2024-08-06T21:31:56.7231676Z Warning: cuda_vectorized_test does not exist. 2024-08-06T21:31:56.7232367Z + run_if_exists cuda_distributions_test 2024-08-06T21:31:56.7232988Z + local test_name=cuda_distributions_test 2024-08-06T21:31:56.7233540Z + [[ -x build/bin/cuda_distributions_test ]] 2024-08-06T21:31:56.7234261Z + echo 'Warning: cuda_distributions_test does not exist.' 2024-08-06T21:31:56.7235074Z Warning: cuda_distributions_test does not exist. 2024-08-06T21:31:56.7235745Z + run_if_exists cuda_optional_test 2024-08-06T21:31:56.7236365Z + local test_name=cuda_optional_test 2024-08-06T21:31:56.7236931Z + [[ -x build/bin/cuda_optional_test ]] 2024-08-06T21:31:56.7237550Z + echo 'Warning: cuda_optional_test does not exist.' 2024-08-06T21:31:56.7238399Z Warning: cuda_optional_test does not exist. 2024-08-06T21:31:56.7239010Z + run_if_exists cuda_tensor_interop_test 2024-08-06T21:31:56.7239602Z + local test_name=cuda_tensor_interop_test 2024-08-06T21:31:56.7240170Z + [[ -x build/bin/cuda_tensor_interop_test ]] 2024-08-06T21:31:56.7240820Z + echo 'Warning: cuda_tensor_interop_test does not exist.' 2024-08-06T21:31:56.7241509Z Warning: cuda_tensor_interop_test does not exist. 2024-08-06T21:31:56.7242099Z + run_if_exists cuda_complex_test 2024-08-06T21:31:56.7242594Z + local test_name=cuda_complex_test 2024-08-06T21:31:56.7243096Z + [[ -x build/bin/cuda_complex_test ]] 2024-08-06T21:31:56.7243673Z + echo 'Warning: cuda_complex_test does not exist.' 2024-08-06T21:31:56.7244287Z Warning: cuda_complex_test does not exist. 2024-08-06T21:31:56.7244855Z + run_if_exists cuda_complex_math_test 2024-08-06T21:31:56.7245395Z + local test_name=cuda_complex_math_test 2024-08-06T21:31:56.7245947Z + [[ -x build/bin/cuda_complex_math_test ]] 2024-08-06T21:31:56.7246558Z + echo 'Warning: cuda_complex_math_test does not exist.' 2024-08-06T21:31:56.7247238Z Warning: cuda_complex_math_test does not exist. 2024-08-06T21:31:56.7247800Z + run_if_exists cuda_cub_test 2024-08-06T21:31:56.7248248Z + local test_name=cuda_cub_test 2024-08-06T21:31:56.7248701Z + [[ -x build/bin/cuda_cub_test ]] 2024-08-06T21:31:56.7249343Z + echo 'Warning: cuda_cub_test does not exist.' 2024-08-06T21:31:56.7249951Z Warning: cuda_cub_test does not exist. 2024-08-06T21:31:56.7250524Z + run_if_exists cuda_atomic_ops_test 2024-08-06T21:31:56.7251075Z + local test_name=cuda_atomic_ops_test 2024-08-06T21:31:56.7251659Z + [[ -x build/bin/cuda_atomic_ops_test ]] 2024-08-06T21:31:56.7252344Z + echo 'Warning: cuda_atomic_ops_test does not exist.' 2024-08-06T21:31:56.7253047Z Warning: cuda_atomic_ops_test does not exist. 2024-08-06T21:31:56.7253638Z + '[' ON == ON ']' 2024-08-06T21:31:56.7255026Z + valgrind --suppressions=/var/lib/jenkins/workspace/aten/tools/valgrind.sup --error-exitcode=1 build/bin/basic '--gtest_filter=-*CUDA' 2024-08-06T21:31:56.7531995Z ==5343== Memcheck, a memory error detector 2024-08-06T21:31:56.7532718Z ==5343== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al. 2024-08-06T21:31:56.7533323Z ==5343== Using Valgrind-3.20.0 and LibVEX; rerun with -h for copyright info 2024-08-06T21:31:56.7533831Z ==5343== Command: build/bin/basic --gtest_filter=-*CUDA 2024-08-06T21:31:56.7534259Z ==5343== 2024-08-06T21:32:25.3691696Z Running main() from /var/lib/jenkins/workspace/third_party/googletest/googletest/src/gtest_main.cc 2024-08-06T21:32:25.3902860Z Note: Google Test filter = -*CUDA 2024-08-06T21:32:25.3953089Z [==========] Running 4 tests from 1 test suite. 2024-08-06T21:32:25.3978940Z [----------] Global test environment set-up. 2024-08-06T21:32:25.4016974Z [----------] 4 tests from BasicTest 2024-08-06T21:32:25.4037687Z [ RUN ] BasicTest.BasicTestCPU 2024-08-06T21:32:26.7906851Z 373 ms 2024-08-06T21:32:26.8732707Z 52 ms 2024-08-06T21:32:26.9467442Z 65 ms 2024-08-06T21:32:27.5711350Z [ OK ] BasicTest.BasicTestCPU (2165 ms) 2024-08-06T21:32:27.5745204Z [ RUN ] BasicTest.BasicTestHalfCPU 2024-08-06T21:32:27.7187626Z 100 ms 2024-08-06T21:32:27.7676244Z 44 ms 2024-08-06T21:32:27.8333005Z 63 ms 2024-08-06T21:32:27.8868630Z [ OK ] BasicTest.BasicTestHalfCPU (311 ms) 2024-08-06T21:32:27.8870456Z [ RUN ] BasicTest.FactoryMethodsTest 2024-08-06T21:32:27.9240681Z [ OK ] BasicTest.FactoryMethodsTest (36 ms) 2024-08-06T21:32:27.9241185Z [ RUN ] BasicTest.BasicStdTestCPU 2024-08-06T21:32:27.9663893Z Simple example: called once 2024-08-06T21:32:28.0990855Z throw: call_once will retry 2024-08-06T21:32:28.1004862Z Didn't throw, call_once will not attempt again 2024-08-06T21:32:28.1432866Z [ OK ] BasicTest.BasicStdTestCPU (219 ms) 2024-08-06T21:32:28.1454635Z [----------] 4 tests from BasicTest (2740 ms total) 2024-08-06T21:32:28.1455232Z 2024-08-06T21:32:28.1466450Z [----------] Global test environment tear-down 2024-08-06T21:32:28.1497968Z [==========] 4 tests from 1 test suite ran. (2760 ms total) 2024-08-06T21:32:28.1508675Z [ PASSED ] 4 tests. 2024-08-06T21:32:29.9073065Z ==5343== 2024-08-06T21:32:29.9075962Z ==5343== HEAP SUMMARY: 2024-08-06T21:32:29.9076576Z ==5343== in use at exit: 239,952 bytes in 3,997 blocks 2024-08-06T21:32:29.9077290Z ==5343== total heap usage: 731,144 allocs, 727,147 frees, 213,119,788 bytes allocated 2024-08-06T21:32:29.9077753Z ==5343== 2024-08-06T21:32:29.9444678Z ==5343== LEAK SUMMARY: 2024-08-06T21:32:29.9445141Z ==5343== definitely lost: 0 bytes in 0 blocks 2024-08-06T21:32:29.9447500Z ==5343== indirectly lost: 0 bytes in 0 blocks 2024-08-06T21:32:29.9448238Z ==5343== possibly lost: 0 bytes in 0 blocks 2024-08-06T21:32:29.9448624Z ==5343== still reachable: 239,952 bytes in 3,997 blocks 2024-08-06T21:32:29.9449018Z ==5343== suppressed: 0 bytes in 0 blocks 2024-08-06T21:32:29.9449481Z ==5343== Rerun with --leak-check=full to see details of leaked memory 2024-08-06T21:32:29.9449890Z ==5343== 2024-08-06T21:32:29.9450215Z ==5343== For lists of detected and suppressed errors, rerun with: -s 2024-08-06T21:32:29.9450750Z ==5343== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) 2024-08-06T21:32:29.9878813Z + [[ -x build/bin/tensor_interop_test ]] 2024-08-06T21:32:29.9880608Z + [[ -n '' ]] 2024-08-06T21:32:29.9881023Z + assert_git_not_dirty 2024-08-06T21:32:29.9881539Z + [[ linux-focal-py3.12-clang10 != *rocm* ]] 2024-08-06T21:32:29.9881904Z + [[ linux-focal-py3.12-clang10 != *xla* ]] 2024-08-06T21:32:29.9887685Z ++ git status --porcelain 2024-08-06T21:32:29.9888338Z ++ grep -v '?? third_party' 2024-08-06T21:32:30.1651828Z ++ true 2024-08-06T21:32:30.1652875Z + git_status= 2024-08-06T21:32:30.1653237Z + [[ -n '' ]] 2024-08-06T21:32:30.1654862Z + cleanup_workspace 2024-08-06T21:32:30.1655702Z + echo 'sudo may print the following warning message that can be ignored. The chown command will still run.' 2024-08-06T21:32:30.1658058Z sudo may print the following warning message that can be ignored. The chown command will still run. 2024-08-06T21:32:30.1658754Z + echo ' sudo: setrlimit(RLIMIT_STACK): Operation not permitted' 2024-08-06T21:32:30.1659247Z sudo: setrlimit(RLIMIT_STACK): Operation not permitted 2024-08-06T21:32:30.1659803Z + echo 'For more details refer to https://github.com/sudo-project/sudo/issues/42' 2024-08-06T21:32:30.1660421Z For more details refer to https://github.com/sudo-project/sudo/issues/42 2024-08-06T21:32:30.1660910Z + sudo chown -R 1000 /var/lib/jenkins/workspace 2024-08-06T21:32:32.9088029Z ##[group]Run cat test/**/*_toprint.log || true 2024-08-06T21:32:32.9088527Z cat test/**/*_toprint.log || true 2024-08-06T21:32:32.9159974Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:32.9160375Z env: 2024-08-06T21:32:32.9160594Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:32.9161080Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:32.9161603Z ##[endgroup] 2024-08-06T21:32:32.9234840Z cat: 'test/**/*_toprint.log': No such file or directory 2024-08-06T21:32:32.9270141Z ##[group]Run kill "$MONITOR_SCRIPT_PID" 2024-08-06T21:32:32.9270512Z kill "$MONITOR_SCRIPT_PID" 2024-08-06T21:32:32.9276303Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:32.9276700Z env: 2024-08-06T21:32:32.9286716Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:32.9287212Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:32.9287746Z MONITOR_SCRIPT_PID: 173965 2024-08-06T21:32:32.9288032Z ##[endgroup] 2024-08-06T21:32:32.9432041Z Prepare all required actions 2024-08-06T21:32:32.9432473Z Getting action download info 2024-08-06T21:32:33.1456192Z Download action repository 'actions/upload-artifact@v3' (SHA:a8a3f3ad30e3422c9c7b888a15615d19a852ae32) 2024-08-06T21:32:33.3567100Z ##[group]Run ./.github/actions/upload-test-artifacts 2024-08-06T21:32:33.3567484Z with: 2024-08-06T21:32:33.3567799Z file-suffix: test-dynamo-1-3-amz2023.linux.2xlarge_28427540862 2024-08-06T21:32:33.3568221Z s3-bucket: gha-artifacts 2024-08-06T21:32:33.3568485Z env: 2024-08-06T21:32:33.3568688Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:33.3569156Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:33.3569662Z ##[endgroup] 2024-08-06T21:32:33.3600183Z ##[group]Run # Remove any previous test jsons if they exist 2024-08-06T21:32:33.3600658Z # Remove any previous test jsons if they exist 2024-08-06T21:32:33.3601038Z rm -f test-jsons-*.zip 2024-08-06T21:32:33.3601481Z zip -r "test-jsons-${FILE_SUFFIX}.zip" test -i '*.json' 2024-08-06T21:32:33.3606982Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:33.3607375Z env: 2024-08-06T21:32:33.3607600Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:33.3608071Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:33.3608693Z FILE_SUFFIX: test-dynamo-1-3-amz2023.linux.2xlarge_28427540862 2024-08-06T21:32:33.3609101Z ##[endgroup] 2024-08-06T21:32:33.3839175Z adding: test/allowlist_for_publicAPI.json (deflated 79%) 2024-08-06T21:32:33.3866817Z adding: test/benchmark_utils/callgrind_artifacts.json (deflated 92%) 2024-08-06T21:32:33.3867348Z adding: test/minioptest_failures_dict.json (deflated 70%) 2024-08-06T21:32:33.3873407Z adding: test/profiler/profiler_utils_mock_events.json (deflated 87%) 2024-08-06T21:32:33.3875526Z adding: test/test-reports/td_exclusions-0ef62f8d6f492620ad91.json (deflated 81%) 2024-08-06T21:32:33.3876205Z adding: test/test-reports/td_exclusions-10d50ffac67de0699101.json (deflated 73%) 2024-08-06T21:32:33.3876766Z adding: test/.pytorch-slow-tests.json (deflated 66%) 2024-08-06T21:32:33.3889244Z adding: test/.pytorch-disabled-tests.json (deflated 89%) 2024-08-06T21:32:33.3921276Z ##[group]Run # Remove any previous test reports if they exist 2024-08-06T21:32:33.3921831Z # Remove any previous test reports if they exist 2024-08-06T21:32:33.3922215Z rm -f test-reports-*.zip 2024-08-06T21:32:33.3922659Z zip -r "test-reports-${FILE_SUFFIX}.zip" test -i '*.xml' -i '*.csv' 2024-08-06T21:32:33.3927901Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:33.3928273Z env: 2024-08-06T21:32:33.3928501Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:33.3928974Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:33.3929581Z FILE_SUFFIX: test-dynamo-1-3-amz2023.linux.2xlarge_28427540862 2024-08-06T21:32:33.3929997Z ##[endgroup] 2024-08-06T21:32:33.4134502Z adding: test/test-reports/python-pytest/test_native_mha/test_native_mha-c67a80f36ff0e85c.xml (deflated 95%) 2024-08-06T21:32:33.4168745Z adding: test/test-reports/python-pytest/test_nn/test_nn-bafc72a6751895fe.xml (deflated 96%) 2024-08-06T21:32:33.4227098Z adding: test/test-reports/python-pytest/test_cpp_api_parity/test_cpp_api_parity-95073a2b3d62c638.xml (deflated 99%) 2024-08-06T21:32:33.4260527Z adding: test/test-reports/python-pytest/test_torch/test_torch-b0951c037b46a4ef.xml (deflated 95%) 2024-08-06T21:32:33.4261409Z adding: test/test-reports/python-pytest/test_jit_disabled/test_jit_disabled-7d943cd1fab30629.xml (deflated 56%) 2024-08-06T21:32:33.4262365Z adding: test/test-reports/python-pytest/test_tensorexpr/test_tensorexpr-564597ed9fafa41c.xml (deflated 95%) 2024-08-06T21:32:33.4263427Z adding: test/test-reports/python-pytest/test_autocast/test_autocast-a269bd2b910da8f9.xml (deflated 83%) 2024-08-06T21:32:33.4266328Z adding: test/test-reports/python-pytest/test_cpp_extensions_jit/test_cpp_extensions_jit-19bc9f37acded712.xml (deflated 89%) 2024-08-06T21:32:33.4269113Z adding: test/test-reports/python-pytest/test_sort_and_select/test_sort_and_select-17135416e379b16b.xml (deflated 92%) 2024-08-06T21:32:33.4274262Z adding: test/test-reports/python-pytest/test_python_dispatch/test_python_dispatch-9e6597e611e8a949.xml (deflated 92%) 2024-08-06T21:32:33.4373638Z adding: test/test-reports/python-pytest/test_reductions/test_reductions-c87b035cab1759c5.xml (deflated 98%) 2024-08-06T21:32:33.4391030Z adding: test/test-reports/python-pytest/nn.test_convolution/nn.test_convolution-32ec4ad047cea400.xml (deflated 97%) 2024-08-06T21:32:33.4393328Z adding: test/test-reports/python-pytest/nn.test_pooling/nn.test_pooling-39ba70fbccd5bf13.xml (deflated 89%) 2024-08-06T21:32:33.4395515Z adding: test/test-reports/python-pytest/test_multiprocessing/test_multiprocessing-4dd2b77348f16487.xml (deflated 89%) 2024-08-06T21:32:33.4396562Z adding: test/test-reports/python-pytest/test_mobile_optimizer/test_mobile_optimizer-f366d045ff744a57.xml (deflated 58%) 2024-08-06T21:32:33.4397643Z adding: test/test-reports/python-pytest/test_multiprocessing_spawn/test_multiprocessing_spawn-6ad8dd3462498a35.xml (deflated 77%) 2024-08-06T21:32:33.4404456Z adding: test/test-reports/python-pytest/test_spectral_ops/test_spectral_ops-b0e5c31eb67a3dcc.xml (deflated 95%) 2024-08-06T21:32:33.4408005Z adding: test/test-reports/python-pytest/distributions.test_distributions/distributions.test_distributions-5458129ba324e0b4.xml (deflated 94%) 2024-08-06T21:32:33.4410371Z adding: test/test-reports/python-pytest/distributions.test_distributions/distributions.test_distributions-89f035d6844ec6a1.xml (deflated 93%) 2024-08-06T21:32:33.4411611Z adding: test/test-reports/python-pytest/test_cpp_extensions_aot_no_ninja/test_cpp_extensions_aot_no_ninja-a24de8772c88cb0e.xml (deflated 85%) 2024-08-06T21:32:33.4412773Z adding: test/test-reports/python-pytest/test_cpp_extensions_aot_ninja/test_cpp_extensions_aot_ninja-ab78aac601dc9dea.xml (deflated 85%) 2024-08-06T21:32:33.4413866Z adding: test/test-reports/python-pytest/test_matmul_cuda/test_matmul_cuda-83de9b1ef9f30953.xml (deflated 28%) 2024-08-06T21:32:33.4414810Z adding: test/test-reports/python-pytest/test_matmul_cuda/test_matmul_cuda-b9e846607552fd2b.xml (deflated 28%) 2024-08-06T21:32:33.4415898Z adding: test/test-reports/python-pytest/test_cuda_sanitizer/test_cuda_sanitizer-927de4f8798041e5.xml (deflated 28%) 2024-08-06T21:32:33.4416862Z adding: test/test-reports/python-pytest/test_cuda_sanitizer/test_cuda_sanitizer-9c9531fc9b8c776e.xml (deflated 28%) 2024-08-06T21:32:33.4417755Z adding: test/test-reports/python-pytest/test_cuda/test_cuda-f3cc41ff0218b384.xml (deflated 28%) 2024-08-06T21:32:33.4418554Z adding: test/test-reports/python-pytest/test_cuda/test_cuda-e458107b5d931d93.xml (deflated 28%) 2024-08-06T21:32:33.4419435Z adding: test/test-reports/python-pytest/test_cuda_multigpu/test_cuda_multigpu-9f4119bbb95a07e0.xml (deflated 28%) 2024-08-06T21:32:33.4420386Z adding: test/test-reports/python-pytest/test_cuda_multigpu/test_cuda_multigpu-5806ebc71ee7927a.xml (deflated 28%) 2024-08-06T21:32:33.4421349Z adding: test/test-reports/python-pytest/test_quantization/test_quantization-0773600ccd1fe6b4.xml (deflated 28%) 2024-08-06T21:32:33.4440899Z adding: test/test-reports/python-pytest/test_quantization/test_quantization-536cb64da9f2129f.xml (deflated 95%) 2024-08-06T21:32:33.4441807Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-1f101d25d4ab673c.xml (deflated 29%) 2024-08-06T21:32:33.4442677Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-6536473cead3effd.xml (deflated 29%) 2024-08-06T21:32:33.4443545Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-5ef51e481e7fdd5e.xml (deflated 29%) 2024-08-06T21:32:33.4444419Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-6def1c97d6909f15.xml (deflated 29%) 2024-08-06T21:32:33.4461122Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-ee55cbd1972b6755.xml (deflated 29%) 2024-08-06T21:32:33.4461995Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-eb319fb9aaf266db.xml (deflated 29%) 2024-08-06T21:32:33.4463654Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-48b6bba4b19c7db7.xml (deflated 29%) 2024-08-06T21:32:33.4464579Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-1789df2dc2bc3dab.xml (deflated 29%) 2024-08-06T21:32:33.4465425Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-e9c11487e929cb3a.xml (deflated 29%) 2024-08-06T21:32:33.4466269Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-42639e7c5afb82a5.xml (deflated 29%) 2024-08-06T21:32:33.4467109Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-1f0c7355ef818acf.xml (deflated 29%) 2024-08-06T21:32:33.4467966Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-ccdb8b0178562883.xml (deflated 29%) 2024-08-06T21:32:33.4468802Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-bd8b6c6144a93211.xml (deflated 29%) 2024-08-06T21:32:33.4469667Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-46119c912941a7ad.xml (deflated 29%) 2024-08-06T21:32:33.4470513Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-92627857be959c6b.xml (deflated 29%) 2024-08-06T21:32:33.4471365Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-f8b94e9a274531ba.xml (deflated 29%) 2024-08-06T21:32:33.4472203Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-6845da4979e152d0.xml (deflated 29%) 2024-08-06T21:32:33.4473055Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-1bafbf312daa1bb8.xml (deflated 29%) 2024-08-06T21:32:33.4473910Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-6c4fd889d93bc7b0.xml (deflated 29%) 2024-08-06T21:32:33.4474756Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-c79a3239df92a808.xml (deflated 57%) 2024-08-06T21:32:33.4475604Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-deab095db12da25e.xml (deflated 72%) 2024-08-06T21:32:33.4476451Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-46296b6f048c3e80.xml (deflated 67%) 2024-08-06T21:32:33.4477385Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-88042279c052c28a.xml (deflated 83%) 2024-08-06T21:32:33.4478233Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-239fb6b07374107c.xml (deflated 79%) 2024-08-06T21:32:33.4479078Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-b4b0247484d0b2a7.xml (deflated 37%) 2024-08-06T21:32:33.4479926Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-01b4a041b77e4fa9.xml (deflated 60%) 2024-08-06T21:32:33.4480762Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-0e5565a6c527a1e2.xml (deflated 79%) 2024-08-06T21:32:33.4481615Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-8c243b5d3122687f.xml (deflated 50%) 2024-08-06T21:32:33.4482464Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-dec83b82346510a1.xml (deflated 35%) 2024-08-06T21:32:33.4483310Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-c49424fdeabc9c93.xml (deflated 46%) 2024-08-06T21:32:33.4484162Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-0d65c3f2638354e7.xml (deflated 46%) 2024-08-06T21:32:33.4485010Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-8e026d8e0aefa4ec.xml (deflated 83%) 2024-08-06T21:32:33.4485862Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-7b2abe24bf6c61fd.xml (deflated 58%) 2024-08-06T21:32:33.4486705Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-b3d878ed3330e5ac.xml (deflated 57%) 2024-08-06T21:32:33.4487632Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-8652c9ebc78e3260.xml (deflated 59%) 2024-08-06T21:32:33.4488478Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-d7bad92aa93227e1.xml (deflated 37%) 2024-08-06T21:32:33.4489320Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-f453361be270e409.xml (deflated 36%) 2024-08-06T21:32:33.4490211Z adding: test/test-reports/python-pytest/test.run_test/test.run_test-b055f5bb10a4367d.xml (deflated 90%) 2024-08-06T21:32:33.4491180Z adding: test/test-reports/python-unittest/test_autoload/TEST-TestDeviceBackendAutoload-20240806212026.xml (deflated 43%) 2024-08-06T21:32:33.4492255Z adding: test/test-reports/python-unittest/test_autoload/TEST-TestDeviceBackendAutoload-20240806212037.xml (deflated 43%) 2024-08-06T21:32:33.4520771Z ##[group]Run # Remove any previous usage logs if they exist 2024-08-06T21:32:33.4521245Z # Remove any previous usage logs if they exist 2024-08-06T21:32:33.4521622Z rm -f logs-*.zip 2024-08-06T21:32:33.4522098Z # this workflow is also run in bazel build test, but we dont generate usage reports for it 2024-08-06T21:32:33.4522656Z # so check to see if the file exists first 2024-08-06T21:32:33.4523022Z if [ -f 'usage_log.txt' ]; then 2024-08-06T21:32:33.4523392Z  zip "logs-${FILE_SUFFIX}.zip" 'usage_log.txt' 2024-08-06T21:32:33.4523756Z fi 2024-08-06T21:32:33.4524024Z if ls test/**/*.log 1> /dev/null 2>&1; then 2024-08-06T21:32:33.4524424Z  zip -r "logs-${FILE_SUFFIX}.zip" test -i '*.log' 2024-08-06T21:32:33.4524786Z fi 2024-08-06T21:32:33.4532458Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:33.4532836Z env: 2024-08-06T21:32:33.4533293Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:33.4533976Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:33.4534644Z FILE_SUFFIX: test-dynamo-1-3-amz2023.linux.2xlarge_28427540862 2024-08-06T21:32:33.4535200Z ##[endgroup] 2024-08-06T21:32:33.4606932Z adding: usage_log.txt (deflated 92%) 2024-08-06T21:32:33.4846008Z adding: test/test-reports/test_native_mha_1.1_86c437c4aceebe01_.log (deflated 90%) 2024-08-06T21:32:33.4879643Z adding: test/test-reports/test_nn_2.2_dfb2e48638b1bd6d_.log (deflated 94%) 2024-08-06T21:32:33.4891403Z adding: test/test-reports/test_cpp_api_parity_1.1_449b4843a34b6876_.log (deflated 95%) 2024-08-06T21:32:33.4929462Z adding: test/test-reports/test_torch_1.1_fb57c01b119f1cd5_.log (deflated 92%) 2024-08-06T21:32:33.4930347Z adding: test/test-reports/test_jit_disabled_1.1_95f8ab8fb62f6169_.log (deflated 58%) 2024-08-06T21:32:33.4931700Z adding: test/test-reports/test_tensorexpr_1.1_a81e32ff379cf4d0_.log (deflated 90%) 2024-08-06T21:32:33.4932533Z adding: test/test-reports/test_autocast_1.1_656dbc3e08c3f6ec_.log (deflated 76%) 2024-08-06T21:32:33.4935097Z adding: test/test-reports/test_cpp_extensions_jit_1.1_9ddaa61fa6b6bad0_.log (deflated 88%) 2024-08-06T21:32:33.4941888Z adding: test/test-reports/test_sort_and_select_1.1_fa287030bcba41f3_.log (deflated 93%) 2024-08-06T21:32:33.4945873Z adding: test/test-reports/test_python_dispatch_1.1_390bc56a505375ff_.log (deflated 86%) 2024-08-06T21:32:33.5036638Z adding: test/test-reports/test_reductions_1.1_22bac506f5e7b1df_.log (deflated 96%) 2024-08-06T21:32:33.5037479Z adding: test/test-reports/test_cuda_primary_ctx_1.1_89531fdd9210bd52_.log (deflated 16%) 2024-08-06T21:32:33.5038328Z adding: test/test-reports/test_cuda_nvml_based_avail_1.1_e8e6aa674472367e_.log (deflated 16%) 2024-08-06T21:32:33.5052308Z adding: test/test-reports/nn.test_convolution_1.1_32bbc2bd00d53342_.log (deflated 95%) 2024-08-06T21:32:33.5057024Z adding: test/test-reports/nn.test_pooling_1.1_25fe998d2b9b881c_.log (deflated 88%) 2024-08-06T21:32:33.5058771Z adding: test/test-reports/test_multiprocessing_1.1_d0df063a85adaf99_.log (deflated 84%) 2024-08-06T21:32:33.5059878Z adding: test/test-reports/test_mobile_optimizer_1.1_33fcd034fda762b5_.log (deflated 68%) 2024-08-06T21:32:33.5061200Z adding: test/test-reports/test_multiprocessing_spawn_1.1_7460be971b54be8d_.log (deflated 82%) 2024-08-06T21:32:33.5070158Z adding: test/test-reports/test_spectral_ops_1.1_067df589b9279000_.log (deflated 93%) 2024-08-06T21:32:33.5073984Z adding: test/test-reports/distributions.test_distributions_1.2_7804f54d6056f400_.log (deflated 90%) 2024-08-06T21:32:33.5077029Z adding: test/test-reports/distributions.test_distributions_2.2_d6fff7bb9f4ad0cc_.log (deflated 89%) 2024-08-06T21:32:33.5078127Z adding: test/test-reports/test_cpp_extensions_aot_no_ninja_1.1_9813ad27b0014fa5_.log (deflated 77%) 2024-08-06T21:32:33.5079197Z adding: test/test-reports/test_cpp_extensions_aot_ninja_1.1_f90024e079a3a2ca_.log (deflated 76%) 2024-08-06T21:32:33.5080289Z adding: test/test-reports/dynamo.test_dynamic_shapes_1.1_cba18b6d7bc2f72f_.log (deflated 14%) 2024-08-06T21:32:33.5081547Z adding: test/test-reports/dynamo.test_frame_init_1.1_7a5be7c1b2945eb7_.log (stored 0%) 2024-08-06T21:32:33.5082452Z adding: test/test-reports/dynamo.test_interop_1.1_1b111f8f2f9c1349_.log (stored 0%) 2024-08-06T21:32:33.5083303Z adding: test/test-reports/test_matmul_cuda_1.1_5a3cb7cfb29a3b1e_.log (deflated 49%) 2024-08-06T21:32:33.5084195Z adding: test/test-reports/dynamo.test_global_1.1_ac80d6d7f8f64229_.log (stored 0%) 2024-08-06T21:32:33.5085151Z adding: test/test-reports/dynamo.test_exceptions_1.1_14290a5699b66c7f_.log (stored 0%) 2024-08-06T21:32:33.5086205Z adding: test/test-reports/dynamo.test_subgraphs_1.1_acd05ae8039dd7ed_.log (stored 0%) 2024-08-06T21:32:33.5087277Z adding: test/test-reports/dynamo.test_modes_1.1_b7cbdced7b0e3472_.log (stored 0%) 2024-08-06T21:32:33.5088283Z adding: test/test-reports/dynamo.test_higher_order_ops_1.1_e82d96ca19b1c0e2_.log (stored 0%) 2024-08-06T21:32:33.5089204Z adding: test/test-reports/dynamo.test_functions_1.1_c7264332cfc4c852_.log (stored 0%) 2024-08-06T21:32:33.5089977Z adding: test/test-reports/dynamo.test_modules_1.1_6261e73b09cdd9e6_.log (stored 0%) 2024-08-06T21:32:33.5090816Z adding: test/test-reports/dynamo.test_model_output_1.1_46fc28943eb6f5bc_.log (stored 0%) 2024-08-06T21:32:33.5091623Z adding: test/test-reports/dynamo.test_export_1.1_c32581cf0d1dc773_.log (stored 0%) 2024-08-06T21:32:33.5092530Z adding: test/test-reports/dynamo.test_ctx_manager_1.1_ec978f8e54737a9e_.log (stored 0%) 2024-08-06T21:32:33.5093440Z adding: test/test-reports/functorch.test_ac_1.1_8f2c17ddf488a7fd_.log (stored 0%) 2024-08-06T21:32:33.5094421Z adding: test/test-reports/dynamo.test_profiler_1.1_adbc232fa76c33b1_.log (stored 0%) 2024-08-06T21:32:33.5095298Z adding: test/test-reports/dynamo.test_activation_checkpointing_1.1_a1ff5c53689059a8_.log (stored 0%) 2024-08-06T21:32:33.5096107Z adding: test/test-reports/dynamo.test_trace_rules_1.1_d9d20fe0d41d7678_.log (stored 0%) 2024-08-06T21:32:33.5096933Z adding: test/test-reports/dynamo.test_unspec_1.1_da5681320e63b222_.log (stored 0%) 2024-08-06T21:32:33.5097818Z adding: test/test-reports/dynamo.test_input_attr_tracking_1.1_bef2972e289ecc09_.log (stored 0%) 2024-08-06T21:32:33.5098594Z adding: test/test-reports/dynamo.test_recompile_ux_1.1_582abc3cdabc204b_.log (stored 0%) 2024-08-06T21:32:33.5099475Z adding: test/test-reports/dynamo.test_structured_trace_1.1_6554b3a68d66dc87_.log (stored 0%) 2024-08-06T21:32:33.5100298Z adding: test/test-reports/test_cuda_sanitizer_1.1_13e6027a5fedddee_.log (deflated 49%) 2024-08-06T21:32:33.5101062Z adding: test/test-reports/test_cuda_1.1_1f97b3ac2e83b2f0_.log (deflated 48%) 2024-08-06T21:32:33.5101783Z adding: test/test-reports/test_cuda_multigpu_1.1_abdacf7385acd304_.log (deflated 49%) 2024-08-06T21:32:33.5102577Z adding: test/test-reports/test_quantization_3.6_0e0e7ee3feba1546_.log (deflated 55%) 2024-08-06T21:32:33.5103392Z adding: test/test-reports/optim.test_lrscheduler_1.1_e0817f6e8a1b9438_.log (deflated 7%) 2024-08-06T21:32:33.5104158Z adding: test/test-reports/dynamo.test_interop_1.1_fd3edb849c1e5503_.log (stored 0%) 2024-08-06T21:32:33.5105052Z adding: test/test-reports/dynamo.test_frame_init_1.1_8648641a1f90ff95_.log (stored 0%) 2024-08-06T21:32:33.5105878Z adding: test/test-reports/dynamo.test_dynamic_shapes_1.1_f242bb0d24d882cd_.log (stored 0%) 2024-08-06T21:32:33.5106709Z adding: test/test-reports/dynamo.test_global_1.1_6b5a1f7617fe7b3e_.log (stored 0%) 2024-08-06T21:32:33.5107516Z adding: test/test-reports/test_matmul_cuda_1.1_695bb3fda8e5edb1_.log (deflated 49%) 2024-08-06T21:32:33.5108311Z adding: test/test-reports/dynamo.test_exceptions_1.1_f689a82905d8e6e6_.log (stored 0%) 2024-08-06T21:32:33.5109126Z adding: test/test-reports/dynamo.test_subgraphs_1.1_de5be4139251c550_.log (stored 0%) 2024-08-06T21:32:33.5109857Z adding: test/test-reports/dynamo.test_modes_1.1_618f7a4e2255963a_.log (stored 0%) 2024-08-06T21:32:33.5110851Z adding: test/test-reports/dynamo.test_higher_order_ops_1.1_36e789b121f5db3f_.log (stored 0%) 2024-08-06T21:32:33.5111781Z adding: test/test-reports/dynamo.test_functions_1.1_174dec2245a92eff_.log (stored 0%) 2024-08-06T21:32:33.5112594Z adding: test/test-reports/dynamo.test_modules_1.1_3e105c3a8c0ad27a_.log (stored 0%) 2024-08-06T21:32:33.5113407Z adding: test/test-reports/dynamo.test_model_output_1.1_68fe9298f97bda96_.log (stored 0%) 2024-08-06T21:32:33.5114162Z adding: test/test-reports/dynamo.test_export_1.1_455ccffb84f4f781_.log (stored 0%) 2024-08-06T21:32:33.5114925Z adding: test/test-reports/dynamo.test_ctx_manager_1.1_a1ca81a277314579_.log (stored 0%) 2024-08-06T21:32:33.5115689Z adding: test/test-reports/functorch.test_ac_1.1_e75d871d04dcbd46_.log (stored 0%) 2024-08-06T21:32:33.5116428Z adding: test/test-reports/dynamo.test_profiler_1.1_a4a7cfeaeaf610ec_.log (stored 0%) 2024-08-06T21:32:33.5117267Z adding: test/test-reports/dynamo.test_activation_checkpointing_1.1_5f43019db8ae5c3f_.log (stored 0%) 2024-08-06T21:32:33.5118107Z adding: test/test-reports/dynamo.test_trace_rules_1.1_74a2e0c2ac3c1fdd_.log (stored 0%) 2024-08-06T21:32:33.5118839Z adding: test/test-reports/dynamo.test_unspec_1.1_ba688c53c1f5bc2d_.log (stored 0%) 2024-08-06T21:32:33.5119608Z adding: test/test-reports/dynamo.test_input_attr_tracking_1.1_76abf94ca34fdd60_.log (stored 0%) 2024-08-06T21:32:33.5120346Z adding: test/test-reports/dynamo.test_recompile_ux_1.1_15d4ef01b37af4c2_.log (stored 0%) 2024-08-06T21:32:33.5121192Z adding: test/test-reports/dynamo.test_structured_trace_1.1_3ad758bbea12e2a9_.log (stored 0%) 2024-08-06T21:32:33.5121996Z adding: test/test-reports/test_cuda_sanitizer_1.1_1cc1fd0939c50659_.log (deflated 49%) 2024-08-06T21:32:33.5122688Z adding: test/test-reports/test_cuda_1.1_87bce44515201a06_.log (deflated 48%) 2024-08-06T21:32:33.5123397Z adding: test/test-reports/test_cuda_multigpu_1.1_13ebe0016c53d21a_.log (deflated 49%) 2024-08-06T21:32:33.5124164Z adding: test/test-reports/optim.test_lrscheduler_1.1_377ffa34a7b3232c_.log (deflated 7%) 2024-08-06T21:32:33.5124908Z adding: test/test-reports/test_quantization_3.6_fd8505b300850402_.log (deflated 91%) 2024-08-06T21:32:33.5125637Z adding: test/test-reports/cpp.Dict_test_1.1_fa48829e9ff1e05f_.log (deflated 49%) 2024-08-06T21:32:33.5126353Z adding: test/test-reports/cpp.Dimname_test_1.1_218f248f4d27b227_.log (deflated 49%) 2024-08-06T21:32:33.5127108Z adding: test/test-reports/cpp.NamedTensor_test_1.1_8a4359bddd9f0122_.log (deflated 49%) 2024-08-06T21:32:33.5127874Z adding: test/test-reports/cpp.apply_utils_test_1.1_c9ec93a88c72d8d8_.log (deflated 49%) 2024-08-06T21:32:33.5128595Z adding: test/test-reports/cpp.atest_1.1_e5b6fd3d5ea810e3_.log (deflated 49%) 2024-08-06T21:32:33.5129206Z adding: test/test-reports/cpp.basic_1.1_0ea88f2d5fdfa1ed_.log (deflated 49%) 2024-08-06T21:32:33.5129866Z adding: test/test-reports/cpp.broadcast_test_1.1_0645bfe66bdd119e_.log (deflated 49%) 2024-08-06T21:32:33.5130627Z adding: test/test-reports/cpp.cpu_generator_test_1.1_68e87522499891ba_.log (deflated 49%) 2024-08-06T21:32:33.5131329Z adding: test/test-reports/cpp.dlconvertor_test_1.1_bbdd48cf658c250c_.log (deflated 49%) 2024-08-06T21:32:33.5132146Z adding: test/test-reports/cpp.extension_backend_test_1.1_6920854c264b8f99_.log (deflated 49%) 2024-08-06T21:32:33.5132877Z adding: test/test-reports/cpp.lazy_tensor_test_1.1_2cc2df29b57506c7_.log (deflated 49%) 2024-08-06T21:32:33.5133690Z adding: test/test-reports/cpp.legacy_vmap_test_1.1_084141cdb74d1fc5_.log (deflated 49%) 2024-08-06T21:32:33.5134886Z adding: test/test-reports/cpp.native_test_1.1_4abcaed2e5f42da3_.log (deflated 49%) 2024-08-06T21:32:33.5135842Z adding: test/test-reports/cpp.operators_test_1.1_9c5fab689dbf2bd4_.log (deflated 49%) 2024-08-06T21:32:33.5136552Z adding: test/test-reports/cpp.scalar_tensor_test_1.1_cc8712dee8e4ba04_.log (deflated 48%) 2024-08-06T21:32:33.5137235Z adding: test/test-reports/cpp.scalar_test_1.1_3508a0177f6d6f8b_.log (deflated 49%) 2024-08-06T21:32:33.5137940Z adding: test/test-reports/cpp.tensor_iterator_test_1.1_912aaac3de2a95d2_.log (deflated 49%) 2024-08-06T21:32:33.5138693Z adding: test/test-reports/cpp.undefined_tensor_test_1.1_c0b9c2becee866a4_.log (deflated 49%) 2024-08-06T21:32:33.5139400Z adding: test/test-reports/cpp.wrapdim_test_1.1_f4db2aab14d10db8_.log (deflated 49%) 2024-08-06T21:32:33.5140075Z adding: test/test-reports/cpp.Dimname_test_1.1_89c5f1d5ea7df539_.log (deflated 60%) 2024-08-06T21:32:33.5140775Z adding: test/test-reports/cpp.NamedTensor_test_1.1_7b6fee24de1abefb_.log (deflated 72%) 2024-08-06T21:32:33.5141477Z adding: test/test-reports/cpp.apply_utils_test_1.1_5c5cc8fe26a083bb_.log (deflated 66%) 2024-08-06T21:32:33.5142152Z adding: test/test-reports/cpp.Dict_test_1.1_310c14aef74685f0_.log (deflated 84%) 2024-08-06T21:32:33.5142787Z adding: test/test-reports/cpp.atest_1.1_ebd6afb234ab41c1_.log (deflated 74%) 2024-08-06T21:32:33.5143441Z adding: test/test-reports/cpp.broadcast_test_1.1_45ea71dfd2d839d0_.log (deflated 50%) 2024-08-06T21:32:33.5144083Z adding: test/test-reports/cpp.basic_1.1_f1ed358828f2cca5_.log (deflated 62%) 2024-08-06T21:32:33.5144750Z adding: test/test-reports/cpp.cpu_generator_test_1.1_67a80a4dfda0c5d5_.log (deflated 78%) 2024-08-06T21:32:33.5145468Z adding: test/test-reports/cpp.dlconvertor_test_1.1_ac4f996b33539aef_.log (deflated 56%) 2024-08-06T21:32:33.5146189Z adding: test/test-reports/cpp.extension_backend_test_1.1_2708deefee781e02_.log (deflated 50%) 2024-08-06T21:32:33.5146969Z adding: test/test-reports/cpp.lazy_tensor_test_1.1_3a4e71a7ae310b41_.log (deflated 55%) 2024-08-06T21:32:33.5147658Z adding: test/test-reports/cpp.native_test_1.1_f7282389195ebebe_.log (deflated 54%) 2024-08-06T21:32:33.5148325Z adding: test/test-reports/cpp.legacy_vmap_test_1.1_f6197761832916ba_.log (deflated 81%) 2024-08-06T21:32:33.5149015Z adding: test/test-reports/cpp.operators_test_1.1_51db315d9a98ceb6_.log (deflated 62%) 2024-08-06T21:32:33.5149724Z adding: test/test-reports/cpp.scalar_tensor_test_1.1_b73cc60a3af971e0_.log (deflated 61%) 2024-08-06T21:32:33.5150418Z adding: test/test-reports/cpp.scalar_test_1.1_b3a7f9bb16e3d122_.log (deflated 60%) 2024-08-06T21:32:33.5151124Z adding: test/test-reports/cpp.undefined_tensor_test_1.1_e79bc4b0f393029c_.log (deflated 50%) 2024-08-06T21:32:33.5151833Z adding: test/test-reports/cpp.wrapdim_test_1.1_45e23e328349d7a0_.log (deflated 50%) 2024-08-06T21:32:33.5152541Z adding: test/test-reports/cpp.tensor_iterator_test_1.1_969a14262801f463_.log (deflated 89%) 2024-08-06T21:32:33.5181577Z ##[group]Run # Remove any previous debugging artifacts if they exist 2024-08-06T21:32:33.5182104Z # Remove any previous debugging artifacts if they exist 2024-08-06T21:32:33.5182503Z rm -f debug-*.zip 2024-08-06T21:32:33.5182791Z if [ -d 'test/debug' ]; then 2024-08-06T21:32:33.5183152Z  zip -r "debug-${FILE_SUFFIX}.zip" test/debug 2024-08-06T21:32:33.5183489Z fi 2024-08-06T21:32:33.5188459Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:33.5188868Z env: 2024-08-06T21:32:33.5189077Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:33.5189679Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:33.5190292Z FILE_SUFFIX: test-dynamo-1-3-amz2023.linux.2xlarge_28427540862 2024-08-06T21:32:33.5190685Z ##[endgroup] 2024-08-06T21:32:33.5273145Z ##[group]Run seemethere/upload-artifact-s3@v5 2024-08-06T21:32:33.5273555Z with: 2024-08-06T21:32:33.5273774Z s3-bucket: gha-artifacts 2024-08-06T21:32:33.5274101Z s3-prefix: pytorch/pytorch/10273124344/1/artifact 2024-08-06T21:32:33.5274459Z retention-days: 14 2024-08-06T21:32:33.5274700Z if-no-files-found: warn 2024-08-06T21:32:33.5274978Z path: test-jsons-*.zip 2024-08-06T21:32:33.5275239Z name: artifact 2024-08-06T21:32:33.5275457Z region: us-east-1 2024-08-06T21:32:33.5275686Z env: 2024-08-06T21:32:33.5275902Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:33.5276355Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:33.5276861Z ##[endgroup] 2024-08-06T21:32:33.8944773Z NOTE: s3-prefix specified, ignoring name parameter 2024-08-06T21:32:33.8945580Z With the provided path, there will be 1 file uploaded 2024-08-06T21:32:33.8946295Z Uploading to s3 prefix: pytorch/pytorch/10273124344/1/artifact 2024-08-06T21:32:33.9074284Z Starting upload of test-jsons-test-dynamo-1-3-amz2023.linux.2xlarge_28427540862.zip 2024-08-06T21:32:34.0054226Z Finished upload of test-jsons-test-dynamo-1-3-amz2023.linux.2xlarge_28427540862.zip 2024-08-06T21:32:34.0249554Z ##[group]Run seemethere/upload-artifact-s3@v5 2024-08-06T21:32:34.0249893Z with: 2024-08-06T21:32:34.0250128Z s3-bucket: gha-artifacts 2024-08-06T21:32:34.0250465Z s3-prefix: pytorch/pytorch/10273124344/1/artifact 2024-08-06T21:32:34.0250819Z retention-days: 14 2024-08-06T21:32:34.0251086Z if-no-files-found: error 2024-08-06T21:32:34.0251377Z path: test-reports-*.zip 2024-08-06T21:32:34.0251639Z name: artifact 2024-08-06T21:32:34.0251874Z region: us-east-1 2024-08-06T21:32:34.0252114Z env: 2024-08-06T21:32:34.0252319Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:34.0252804Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:34.0253313Z ##[endgroup] 2024-08-06T21:32:34.3621961Z NOTE: s3-prefix specified, ignoring name parameter 2024-08-06T21:32:34.3622610Z With the provided path, there will be 1 file uploaded 2024-08-06T21:32:34.3623342Z Uploading to s3 prefix: pytorch/pytorch/10273124344/1/artifact 2024-08-06T21:32:34.3661461Z Starting upload of test-reports-test-dynamo-1-3-amz2023.linux.2xlarge_28427540862.zip 2024-08-06T21:32:34.6223676Z Finished upload of test-reports-test-dynamo-1-3-amz2023.linux.2xlarge_28427540862.zip 2024-08-06T21:32:34.6415161Z ##[group]Run seemethere/upload-artifact-s3@v5 2024-08-06T21:32:34.6415513Z with: 2024-08-06T21:32:34.6415734Z s3-bucket: gha-artifacts 2024-08-06T21:32:34.6416072Z s3-prefix: pytorch/pytorch/10273124344/1/artifact 2024-08-06T21:32:34.6416438Z retention-days: 14 2024-08-06T21:32:34.6416689Z if-no-files-found: ignore 2024-08-06T21:32:34.6416989Z path: logs-*.zip 2024-08-06T21:32:34.6417230Z name: artifact 2024-08-06T21:32:34.6417455Z region: us-east-1 2024-08-06T21:32:34.6417692Z env: 2024-08-06T21:32:34.6417909Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:34.6418366Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:34.6418896Z ##[endgroup] 2024-08-06T21:32:34.9800944Z NOTE: s3-prefix specified, ignoring name parameter 2024-08-06T21:32:34.9801636Z With the provided path, there will be 1 file uploaded 2024-08-06T21:32:34.9802143Z Uploading to s3 prefix: pytorch/pytorch/10273124344/1/artifact 2024-08-06T21:32:34.9840591Z Starting upload of logs-test-dynamo-1-3-amz2023.linux.2xlarge_28427540862.zip 2024-08-06T21:32:35.2102076Z Finished upload of logs-test-dynamo-1-3-amz2023.linux.2xlarge_28427540862.zip 2024-08-06T21:32:35.2288524Z ##[group]Run seemethere/upload-artifact-s3@v5 2024-08-06T21:32:35.2288879Z with: 2024-08-06T21:32:35.2289099Z s3-bucket: gha-artifacts 2024-08-06T21:32:35.2289574Z s3-prefix: pytorch/pytorch/10273124344/1/artifact 2024-08-06T21:32:35.2289943Z retention-days: 14 2024-08-06T21:32:35.2290191Z if-no-files-found: ignore 2024-08-06T21:32:35.2290472Z path: debug-*.zip 2024-08-06T21:32:35.2290716Z name: artifact 2024-08-06T21:32:35.2291003Z region: us-east-1 2024-08-06T21:32:35.2291242Z env: 2024-08-06T21:32:35.2291467Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:35.2291926Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:35.2292440Z ##[endgroup] 2024-08-06T21:32:35.5616258Z No files were found with the provided path: debug-*.zip. No artifacts will be uploaded. 2024-08-06T21:32:35.5802118Z ##[group]Run # shellcheck disable=SC2156 2024-08-06T21:32:35.5802489Z # shellcheck disable=SC2156 2024-08-06T21:32:35.5803092Z find . -iname "core.[1-9]*" -exec docker exec "${DOCKER_CONTAINER_ID}" sh -c "gdb python {} -ex 'bt' -ex 'q'" \; 2024-08-06T21:32:35.5808886Z shell: /usr/bin/bash -e {0} 2024-08-06T21:32:35.5809161Z env: 2024-08-06T21:32:35.5809387Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:35.5809861Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:35.5810367Z ##[endgroup] 2024-08-06T21:32:35.7984819Z ##[group]Run pytorch/test-infra/.github/actions/teardown-linux@main 2024-08-06T21:32:35.7985272Z with: 2024-08-06T21:32:35.7985474Z env: 2024-08-06T21:32:35.7985699Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:35.7986185Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:35.7986688Z ##[endgroup] 2024-08-06T21:32:35.8010862Z ##[group]Run set -eou pipefail 2024-08-06T21:32:35.8011191Z set -eou pipefail 2024-08-06T21:32:35.8011455Z  2024-08-06T21:32:35.8011831Z echo "Holding runner for 2 hours until all ssh sessions have logged out" 2024-08-06T21:32:35.8012310Z for _ in $(seq 1440); do 2024-08-06T21:32:35.8012638Z  # Break if no ssh session exists anymore 2024-08-06T21:32:35.8012997Z  if [ "$(who)" = "" ]; then 2024-08-06T21:32:35.8013301Z  break 2024-08-06T21:32:35.8013530Z  fi 2024-08-06T21:32:35.8013903Z  echo "." 2024-08-06T21:32:35.8014153Z  sleep 5 2024-08-06T21:32:35.8014405Z done 2024-08-06T21:32:35.8019832Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:35.8020208Z env: 2024-08-06T21:32:35.8020433Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:35.8020903Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:35.8021402Z ##[endgroup] 2024-08-06T21:32:35.8043004Z Holding runner for 2 hours until all ssh sessions have logged out 2024-08-06T21:32:35.8116362Z ##[group]Run # ignore expansion of "docker ps -q" since it could be empty 2024-08-06T21:32:35.8116935Z # ignore expansion of "docker ps -q" since it could be empty 2024-08-06T21:32:35.8117362Z # shellcheck disable=SC2046 2024-08-06T21:32:35.8117710Z docker stop $(docker ps -q) || true 2024-08-06T21:32:35.8118070Z # Prune all of the docker images 2024-08-06T21:32:35.8118395Z docker system prune -af 2024-08-06T21:32:35.8123537Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:35.8123942Z env: 2024-08-06T21:32:35.8124152Z GIT_DEFAULT_BRANCH: main 2024-08-06T21:32:35.8124630Z DOCKER_CONTAINER_ID: 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:35.8125140Z ##[endgroup] 2024-08-06T21:32:36.3349776Z 38c9753a9a29 2024-08-06T21:32:36.8379806Z Deleted Containers: 2024-08-06T21:32:36.8380333Z 38c9753a9a295602a6d9c5b18e2006804571c2c3ff5ab5eb5cdfc3fdc21d8633 2024-08-06T21:32:36.8380718Z 2024-08-06T21:32:41.2504105Z Deleted Images: 2024-08-06T21:32:41.2505210Z untagged: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10:02ec4fbd5adcb3fb91cf5ce431dec18b633de7d9 2024-08-06T21:32:41.2506539Z untagged: 308535385114.dkr.ecr.us-east-1.amazonaws.com/pytorch/pytorch-linux-focal-py3.12-clang10@sha256:23992c65342e016e38c0d53a2566219b4cc3d16d20e9c923ad93c35946fb362b 2024-08-06T21:32:41.2507625Z deleted: sha256:7572c787a966437be85abe02d1578158976ce242058ff35a46097c5cce747b65 2024-08-06T21:32:41.2508455Z deleted: sha256:bb0e3a9f2e72853c2b52f7793f050008c489cfc06052e7b2e9368bb7210e5bbb 2024-08-06T21:32:41.2509140Z deleted: sha256:fd2ca1576d8f195a1592df62ba1bc1e3d1146a6f3b7d28f30d0bdeabcfd33ea4 2024-08-06T21:32:41.2509884Z deleted: sha256:43c8c30ff8298411dca3520537415b6911bba864a4a9b7ed3c5275e83feda0d6 2024-08-06T21:32:41.2510550Z deleted: sha256:9f1bee6a1d17a0e7704f2a852a487daa53695fdca7b556d2a682d833d0d9b4ad 2024-08-06T21:32:41.2511203Z deleted: sha256:8063d326b8d7b3d44c0c7a78c78c6097c18186cb439e2351e7ca994a8f97625c 2024-08-06T21:32:41.2511865Z deleted: sha256:135a922ee1aad062d91b3c30b932c479b7a5d927a5981aa50410ad7d641e6e74 2024-08-06T21:32:41.2512536Z deleted: sha256:e899efe1ea37fa4152513b267ed22b6d4c71e066251c93c1b5c5d1ebcb24e1f2 2024-08-06T21:32:41.2513226Z deleted: sha256:4fc01322e6b32a157e1452a369ee0c82e9286d48e66fb34fe4294a54d9d9ae06 2024-08-06T21:32:41.2514056Z deleted: sha256:583f01f544fab76ea373bfc5bd3acc1df37871eb745d90aa9e762d70c500b535 2024-08-06T21:32:41.2514744Z deleted: sha256:8bcbb4dd21ab5b130cf1d50944ff6712c8ee73dfe82190c10e2ab1a4a7d23d42 2024-08-06T21:32:41.2515500Z deleted: sha256:494850ecdee8376a1b4fd1975be6e41c33a341a7237d3cc8edb3d2194766a725 2024-08-06T21:32:41.2516170Z deleted: sha256:82eb0525ec30cac0af513d3d2cf701ee59a3b6064b4d2d9a32d024f5e2b913fb 2024-08-06T21:32:41.2516839Z deleted: sha256:1f2098157e393dd57fd7b1d7d1e66850ab46364c979fc3371e37a3be1a0516f4 2024-08-06T21:32:41.2517498Z deleted: sha256:971c655a6227201d5d74ad70392bdfba72fce5713d19625f7af82faaf3a36a29 2024-08-06T21:32:41.2518187Z deleted: sha256:a68f33065f54ccab1a688345a0d00076ed3e23b4ffefd5b8e2509997c4e72e56 2024-08-06T21:32:41.2518853Z deleted: sha256:47066e6e2c48cb9edd51aa4ff78317b00192b2fb99e0f3e449e5859f7a685a26 2024-08-06T21:32:41.2519516Z deleted: sha256:dd2bed95d0a699f300f22790df630a8ac73545433b47a03f48659f5ea066ce41 2024-08-06T21:32:41.2520169Z deleted: sha256:26a421d94fe9efd74524fded9baec1d0017a23047e54e24fb4d6b22151993d8f 2024-08-06T21:32:41.2520842Z deleted: sha256:2c12027b892f33f7861b6f562ba33d6cd5bc8502d337b624bc6e1a8e9cef7585 2024-08-06T21:32:41.2521617Z deleted: sha256:6f4911d33a571eb7d838f1c4f2a739925217f0a13707e11ffb8f5e6b22a5cc33 2024-08-06T21:32:41.2522273Z deleted: sha256:c8f34dd3ce804c3968ffd4934f604d9be689888f3157cbbc49499ff353121a75 2024-08-06T21:32:41.2522944Z deleted: sha256:f9d32c05527fe495e1c62f1e15c89f426d3d2e7f57cba0d7e38043badf50789f 2024-08-06T21:32:41.2523620Z deleted: sha256:a1bee46e6e12efd7c9f28b99fa687b78f78dc8c56f599b6d9b9c86fc1a6debf5 2024-08-06T21:32:41.2524279Z deleted: sha256:7b1ab0256fa60e2bd966fe3e4a45229b250c24b60442eac3a0f2054d5ac3dbd5 2024-08-06T21:32:41.2524949Z deleted: sha256:d278f4d3a7f9d40759dcb529478fa8e42fde571dcc26547ee6171625b288621e 2024-08-06T21:32:41.2525614Z deleted: sha256:a928aeab5e98dfc42a2d162493fe3414f177b6f3698fc30efd994c55a00ec347 2024-08-06T21:32:41.2526465Z deleted: sha256:6d7cf9c4d31545fb7630a6ff4753dd0348009b2f889292e44b06b479636356b5 2024-08-06T21:32:41.2527138Z deleted: sha256:5e649d48223b42bee7d62c581c8b9c1a6e818131c6c30b69ac6ee17015db8e60 2024-08-06T21:32:41.2527798Z deleted: sha256:3633e21e4a32efa25374a1ab2da845855d788f6ba285a2245673470c0936d04a 2024-08-06T21:32:41.2528453Z deleted: sha256:d521b09511f261f6277d618a3ba48550c47e03eef7a7a0db9502e181ade86459 2024-08-06T21:32:41.2529103Z deleted: sha256:e1c0c5f35b52fc4d5ba63601b2a58aa2450c0f4d646d83dd361dfeb6f2939fea 2024-08-06T21:32:41.2529777Z deleted: sha256:f87cb6ce7e3f6dbc5c51b7454e069c645c1048a1928fdd3afea4ff115f736ee5 2024-08-06T21:32:41.2530447Z deleted: sha256:c8707d661f83c99b33d34badbafbaf7792a2b3385af6f0cf041425c4c8df1a7c 2024-08-06T21:32:41.2531107Z deleted: sha256:a6ada2b705c29054acf840ac7ffed75c31ed617bf9ff8889d2308d28035d4921 2024-08-06T21:32:41.2531776Z deleted: sha256:a82f6159b0558ab4311f84f73db388afc594194e731edc11dbdc93443c19d21e 2024-08-06T21:32:41.2532440Z deleted: sha256:fb4e04a1bcf9d527edf2b494c9d91288e4286954068b4e2aac3fe93a70780e50 2024-08-06T21:32:41.2533107Z deleted: sha256:8db68b6ed74a77c4a7df6def4fd7db5097956bf6f30d7c7a34d3a7903e0b9b38 2024-08-06T21:32:41.2533985Z deleted: sha256:d1df62103bc20cc06601621663a7ea5612352aea5eef7aac658f8a9bfc211042 2024-08-06T21:32:41.2534655Z deleted: sha256:1b209feeb09466eadc7f27696cb565314488baece9c41716ba2d11de3cf01d85 2024-08-06T21:32:41.2535319Z deleted: sha256:1449b3e654decdaf71d1a4fa8c5b0aad474ef2dcc6f1d30f8f4c4cdbef2ff718 2024-08-06T21:32:41.2536043Z deleted: sha256:fb81d07a4104d298c3e63d86522207df6411727f1e0fcdd74d15f5b08095e5b9 2024-08-06T21:32:41.2536707Z deleted: sha256:4b1cd8aa66b63fc6e43b1c5e31a6e77ac603d388bfe87d124f61a915a1c07c6f 2024-08-06T21:32:41.2537375Z deleted: sha256:07b980ed0f9fb521994e72330c1a547b026ecd9b304bfdb7f37227f10a57a7ee 2024-08-06T21:32:41.2538025Z deleted: sha256:6b5cc45be885ac0469a2efc8b9cc05245ff1aa2ff9382d39244a02fb215e97dd 2024-08-06T21:32:41.2538696Z deleted: sha256:60261334f433752487fad34e43bd7ed613bca82de0c0a4e6388cfd274ab7c01f 2024-08-06T21:32:41.2539398Z deleted: sha256:8e812c5303fa64b6b994ff15a7aa81c3112e6b154be3c6670f7fd13d973eaa29 2024-08-06T21:32:41.2540202Z deleted: sha256:2cbf2c69d3a945161aaf4c1f99c310924f14985918955e8016c37e14d98de0df 2024-08-06T21:32:41.2540915Z deleted: sha256:455cab1c3315a7f4080d5a2ed6facee8d19472b506c1a621eb8d105e3592e518 2024-08-06T21:32:41.2541802Z deleted: sha256:fc58117873fbeee89f1825faef298f55ba1b578438bb148f170e4cfafdca9fca 2024-08-06T21:32:41.2542463Z deleted: sha256:f71faa66aeea94e83b000411a86b2462c9f1c04829f22837d5eead0ad8141742 2024-08-06T21:32:41.2543128Z deleted: sha256:b08bd6f1dbe977a60e1764f6a3e56ea5b17c2c54f7a179481c13d75557250e6b 2024-08-06T21:32:41.2543797Z deleted: sha256:4b9c4689c32af71935cce10cf16d466fb7fc46cdf07048b3dcb23e88ccfbca5a 2024-08-06T21:32:41.2544452Z deleted: sha256:6310d1a1f2cde3804f0c8361f2fe00c90edead7714f75943e3e262e477c73bad 2024-08-06T21:32:41.2545121Z deleted: sha256:f45345503dd11db6c3d008a3baa8537e63badc745280eaaf0a323155a541fb79 2024-08-06T21:32:41.2545794Z deleted: sha256:f80eb7523f787694a7988edcf63a82ae78113f6bfab2488ce2a67492b528ba57 2024-08-06T21:32:41.2546450Z deleted: sha256:86f8ff1a8938907179bd2346a4d592b123aed52d4ad193b89b397c9ea72f67f2 2024-08-06T21:32:41.2547114Z deleted: sha256:87658a992cc2a3979a131c6d551e07c91abcb762bb692abdd9be05c25aba0e1c 2024-08-06T21:32:41.2547832Z deleted: sha256:93df85c64e37d536e57d38e5ea4ec0f398877625083a1a4cd257d2a563ab2929 2024-08-06T21:32:41.2548482Z deleted: sha256:8c33ef600542ba11961b7bf84802078730c8d370467a910b01b75839ee46e21d 2024-08-06T21:32:41.2549128Z deleted: sha256:801a3e15fbdfd4e4da84bbfb3cce45ca254a351a189d15b75c45426504d7b2d8 2024-08-06T21:32:41.2549806Z deleted: sha256:4a7b9fe6a4ed87be8a6155b8c7cce370d05ea50adc191ebb32a71607f195ceb8 2024-08-06T21:32:41.2550468Z deleted: sha256:0eaa24b375f5605c7872dd187166e174652965674d895ebf7b142fd8ca4f76e9 2024-08-06T21:32:41.2551106Z deleted: sha256:e752f52149d7e490b0bd5d90229c271e1201d43f774534be86344d49294bd394 2024-08-06T21:32:41.2551948Z deleted: sha256:4fcb5f1f9e265b1c1ea6bb033600327cca752e62c0cd532b0fd113ce8b0e1306 2024-08-06T21:32:41.2553060Z deleted: sha256:e4c39ceec6fd4e54a6da0d41c7b2142315c1cc952917c33ea61d60717f8f1fa7 2024-08-06T21:32:41.2554107Z deleted: sha256:5ed87f50324daf8f419317b593afcfcdc548586a0f5215ae8fd13bc987b040f7 2024-08-06T21:32:41.2554855Z deleted: sha256:125060c9133638854ce4197eff07f8f90409d34464c6eb51d8367c36f0f650e2 2024-08-06T21:32:41.2555506Z deleted: sha256:3bb1659b45fb1b020106721592bc537914f97a82480a85b51eb07ba4220da365 2024-08-06T21:32:41.2556146Z deleted: sha256:cca03c4ef500e153a50a593f659544293ca29cb00ea641e18d717e725450f0e7 2024-08-06T21:32:41.2556814Z deleted: sha256:67aa254196e18ff2bf679ebe626ab5c7cdcf679bb5f2e0907cb49a66f0892138 2024-08-06T21:32:41.2557491Z deleted: sha256:feedd0fba5fc3f95164214e310625ffd06d20b75aaf58427a87df04eb5b43fed 2024-08-06T21:32:41.2558166Z deleted: sha256:85b3ae2d4a5a74121fba0088d4886f5f31445c0baa35082a9f5f85f4e41c05e4 2024-08-06T21:32:41.2558811Z deleted: sha256:a13dd42095b212a368004fa11e28a4a7bdf337ab7e589c0668086378ad598c37 2024-08-06T21:32:41.2559470Z deleted: sha256:807b826a774e38c6099ccf659f13f628270ea702dd18806dd7d5464bb1756cd5 2024-08-06T21:32:41.2560139Z deleted: sha256:a44dd1d32348d1eef77e014cd011de7e694d25906ea3de019dbb9a0aae5311a1 2024-08-06T21:32:41.2560884Z deleted: sha256:e926dce32434862a2a168a244413844b4559b9a20ed36d7d8b27784cbeabbc01 2024-08-06T21:32:41.2561551Z deleted: sha256:a2798d21b21a05b54861ac1792bdca9fa00e9c4debc5f45ef44b5bb141a2798d 2024-08-06T21:32:41.2562216Z deleted: sha256:b9723887346739ff3ec21056b0842230809d0cff2999803b73a3b92abe40cf99 2024-08-06T21:32:41.2563061Z deleted: sha256:d9edadab69fd31f596bb7d6be6ecf19911d1d2c144261553e2d3a7e29ddb3d1d 2024-08-06T21:32:41.2563743Z deleted: sha256:aca6e63c76016c7be11fd96796203c8eb0dc57524d14f4f3cf98c39223925799 2024-08-06T21:32:41.2564413Z deleted: sha256:aac8cd083409c0620213ccef733e97828d4166fd1e7ca77eb36cd2261ff41481 2024-08-06T21:32:41.2565063Z deleted: sha256:55fc6c741a0f7256864186364c08139eaadd8edab76b066c05a63f503780e256 2024-08-06T21:32:41.2565732Z deleted: sha256:ccc15dcb8e8917cd767d8531148f7a2fe2d91289ab5f1205683ec6c5c79ac28e 2024-08-06T21:32:41.2566523Z deleted: sha256:2a0f3a21dbc3155bce5cac6d1626dc716c164469c93cc0da34deeb4132e22e7c 2024-08-06T21:32:41.2567205Z deleted: sha256:73ffac9a0e867aab16c39898b00d1e77beb8cfc751f870163a5743c0d3a47d23 2024-08-06T21:32:41.2567867Z deleted: sha256:623f77bbd0ea6d47ccbe173536133f0147a2ee2a78290475e95f4e8fe8b67c2e 2024-08-06T21:32:41.2568528Z deleted: sha256:b973963abc383b75847c44b8ad94d09dd5482d9375a15db9c6154a266721aecd 2024-08-06T21:32:41.2569185Z deleted: sha256:3ec34108beaf68071b79cd2213edbae2f961cfbadb43559e44910b205823c1f5 2024-08-06T21:32:41.2569841Z deleted: sha256:75dbffdb205995a8a0895685b5e6fb4cbeb58551c7442cd0e9b471e505517dab 2024-08-06T21:32:41.2570494Z deleted: sha256:a1d367057c0495c08e4264788f24b07744871f34894bece2e4f5767a7a3c1b6e 2024-08-06T21:32:41.2571145Z deleted: sha256:c7eaa7b400aafe95d7334fe536116203dce98c4ac9f5955c28c464692fd17568 2024-08-06T21:32:41.2571808Z deleted: sha256:3ec3ded77c0ce89e931f92aed086b2a2c774a6fbd51617853decc8afa4e1087a 2024-08-06T21:32:41.2572214Z 2024-08-06T21:32:41.2572349Z Total reclaimed space: 9.621GB 2024-08-06T21:32:41.2643880Z Post job cleanup. 2024-08-06T21:32:41.2702017Z Post job cleanup. 2024-08-06T21:32:41.3584944Z [command]/usr/bin/git version 2024-08-06T21:32:41.3656768Z git version 2.40.1 2024-08-06T21:32:41.3697685Z Temporarily overriding HOME='/home/ec2-user/actions-runner/_work/_temp/e5f6242b-d405-49a2-a945-0464f3760784' before making global git config changes 2024-08-06T21:32:41.3698689Z Adding repository directory to the temporary git global config as a safe directory 2024-08-06T21:32:41.3703345Z [command]/usr/bin/git config --global --add safe.directory /home/ec2-user/actions-runner/_work/pytorch/pytorch 2024-08-06T21:32:41.3742891Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand 2024-08-06T21:32:41.3774938Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :" 2024-08-06T21:32:41.4084469Z Entering 'android/libs/fbjni' 2024-08-06T21:32:41.4135247Z Entering 'third_party/FP16' 2024-08-06T21:32:41.4185321Z Entering 'third_party/FXdiv' 2024-08-06T21:32:41.4234083Z Entering 'third_party/NNPACK' 2024-08-06T21:32:41.4282513Z Entering 'third_party/VulkanMemoryAllocator' 2024-08-06T21:32:41.4331250Z Entering 'third_party/XNNPACK' 2024-08-06T21:32:41.4396625Z Entering 'third_party/benchmark' 2024-08-06T21:32:41.4446351Z Entering 'third_party/cpp-httplib' 2024-08-06T21:32:41.4494361Z Entering 'third_party/cpuinfo' 2024-08-06T21:32:41.4543342Z Entering 'third_party/cudnn_frontend' 2024-08-06T21:32:41.4592527Z Entering 'third_party/cutlass' 2024-08-06T21:32:41.4649156Z Entering 'third_party/eigen' 2024-08-06T21:32:41.4701271Z Entering 'third_party/fbgemm' 2024-08-06T21:32:41.4750799Z Entering 'third_party/fbgemm/third_party/asmjit' 2024-08-06T21:32:41.4799197Z Entering 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T21:32:41.4848517Z Entering 'third_party/fbgemm/third_party/cutlass' 2024-08-06T21:32:41.4903921Z Entering 'third_party/fbgemm/third_party/googletest' 2024-08-06T21:32:41.4952575Z Entering 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T21:32:41.5002772Z Entering 'third_party/flatbuffers' 2024-08-06T21:32:41.5055875Z Entering 'third_party/fmt' 2024-08-06T21:32:41.5104559Z Entering 'third_party/foxi' 2024-08-06T21:32:41.5152844Z Entering 'third_party/gemmlowp/gemmlowp' 2024-08-06T21:32:41.5201433Z Entering 'third_party/gloo' 2024-08-06T21:32:41.5250694Z Entering 'third_party/googletest' 2024-08-06T21:32:41.5299825Z Entering 'third_party/ideep' 2024-08-06T21:32:41.5347457Z Entering 'third_party/ideep/mkl-dnn' 2024-08-06T21:32:41.5405163Z Entering 'third_party/ittapi' 2024-08-06T21:32:41.5453966Z Entering 'third_party/kineto' 2024-08-06T21:32:41.5504481Z Entering 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T21:32:41.5552525Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T21:32:41.5601830Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T21:32:41.5649118Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T21:32:41.5697993Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T21:32:41.5744479Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T21:32:41.5794922Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T21:32:41.5843050Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T21:32:41.5891614Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T21:32:41.5940514Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T21:32:41.5992119Z Entering 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T21:32:41.6039841Z Entering 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T21:32:41.6088918Z Entering 'third_party/mimalloc' 2024-08-06T21:32:41.6138457Z Entering 'third_party/nccl/nccl' 2024-08-06T21:32:41.6186905Z Entering 'third_party/nlohmann' 2024-08-06T21:32:41.6236569Z Entering 'third_party/onnx' 2024-08-06T21:32:41.6300938Z Entering 'third_party/onnx/third_party/benchmark' 2024-08-06T21:32:41.6349640Z Entering 'third_party/onnx/third_party/pybind11' 2024-08-06T21:32:41.6400593Z Entering 'third_party/opentelemetry-cpp' 2024-08-06T21:32:41.6451014Z Entering 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T21:32:41.6500718Z Entering 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T21:32:41.6548250Z Entering 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T21:32:41.6596069Z Entering 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T21:32:41.6645357Z Entering 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T21:32:41.6692707Z Entering 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T21:32:41.6740211Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T21:32:41.6786972Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T21:32:41.6838135Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T21:32:41.6888134Z Entering 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T21:32:41.6959477Z Entering 'third_party/pocketfft' 2024-08-06T21:32:41.7010295Z Entering 'third_party/protobuf' 2024-08-06T21:32:41.7061986Z Entering 'third_party/protobuf/third_party/benchmark' 2024-08-06T21:32:41.7110206Z Entering 'third_party/protobuf/third_party/googletest' 2024-08-06T21:32:41.7159862Z Entering 'third_party/psimd' 2024-08-06T21:32:41.7208445Z Entering 'third_party/pthreadpool' 2024-08-06T21:32:41.7256933Z Entering 'third_party/pybind11' 2024-08-06T21:32:41.7309934Z Entering 'third_party/python-peachpy' 2024-08-06T21:32:41.7358137Z Entering 'third_party/sleef' 2024-08-06T21:32:41.7407538Z Entering 'third_party/tensorpipe' 2024-08-06T21:32:41.7456245Z Entering 'third_party/tensorpipe/third_party/googletest' 2024-08-06T21:32:41.7504409Z Entering 'third_party/tensorpipe/third_party/libnop' 2024-08-06T21:32:41.7551516Z Entering 'third_party/tensorpipe/third_party/libuv' 2024-08-06T21:32:41.7599578Z Entering 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T21:32:41.7646000Z Entering 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T21:32:41.7714566Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader 2024-08-06T21:32:41.7741193Z http.https://github.com/.extraheader 2024-08-06T21:32:41.7749260Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader 2024-08-06T21:32:41.7783361Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :" 2024-08-06T21:32:41.8050115Z Entering 'android/libs/fbjni' 2024-08-06T21:32:41.8082920Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8113090Z Entering 'third_party/FP16' 2024-08-06T21:32:41.8145963Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8176762Z Entering 'third_party/FXdiv' 2024-08-06T21:32:41.8209276Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8238509Z Entering 'third_party/NNPACK' 2024-08-06T21:32:41.8270677Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8300172Z Entering 'third_party/VulkanMemoryAllocator' 2024-08-06T21:32:41.8332046Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8361287Z Entering 'third_party/XNNPACK' 2024-08-06T21:32:41.8393853Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8439584Z Entering 'third_party/benchmark' 2024-08-06T21:32:41.8471744Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8501083Z Entering 'third_party/cpp-httplib' 2024-08-06T21:32:41.8532921Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8561859Z Entering 'third_party/cpuinfo' 2024-08-06T21:32:41.8594660Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8623998Z Entering 'third_party/cudnn_frontend' 2024-08-06T21:32:41.8656268Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8685573Z Entering 'third_party/cutlass' 2024-08-06T21:32:41.8718222Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8754267Z Entering 'third_party/eigen' 2024-08-06T21:32:41.8788188Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8819182Z Entering 'third_party/fbgemm' 2024-08-06T21:32:41.8851670Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8881795Z Entering 'third_party/fbgemm/third_party/asmjit' 2024-08-06T21:32:41.8913320Z http.https://github.com/.extraheader 2024-08-06T21:32:41.8942910Z Entering 'third_party/fbgemm/third_party/cpuinfo' 2024-08-06T21:32:41.8975009Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9004569Z Entering 'third_party/fbgemm/third_party/cutlass' 2024-08-06T21:32:41.9036149Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9072351Z Entering 'third_party/fbgemm/third_party/googletest' 2024-08-06T21:32:41.9103923Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9133041Z Entering 'third_party/fbgemm/third_party/hipify_torch' 2024-08-06T21:32:41.9164630Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9194963Z Entering 'third_party/flatbuffers' 2024-08-06T21:32:41.9227255Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9259532Z Entering 'third_party/fmt' 2024-08-06T21:32:41.9292820Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9321958Z Entering 'third_party/foxi' 2024-08-06T21:32:41.9354759Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9385704Z Entering 'third_party/gemmlowp/gemmlowp' 2024-08-06T21:32:41.9418461Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9447184Z Entering 'third_party/gloo' 2024-08-06T21:32:41.9480472Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9509722Z Entering 'third_party/googletest' 2024-08-06T21:32:41.9542012Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9571082Z Entering 'third_party/ideep' 2024-08-06T21:32:41.9604118Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9632837Z Entering 'third_party/ideep/mkl-dnn' 2024-08-06T21:32:41.9666164Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9701046Z Entering 'third_party/ittapi' 2024-08-06T21:32:41.9733681Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9762662Z Entering 'third_party/kineto' 2024-08-06T21:32:41.9795726Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9825227Z Entering 'third_party/kineto/libkineto/third_party/dynolog' 2024-08-06T21:32:41.9856885Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9887022Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/DCGM' 2024-08-06T21:32:41.9918939Z http.https://github.com/.extraheader 2024-08-06T21:32:41.9950222Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/cpr' 2024-08-06T21:32:41.9982419Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0012771Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/fmt' 2024-08-06T21:32:42.0044761Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0075515Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags' 2024-08-06T21:32:42.0107468Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0137582Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/gflags/doc' 2024-08-06T21:32:42.0169966Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0201385Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/glog' 2024-08-06T21:32:42.0233553Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0263913Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/googletest' 2024-08-06T21:32:42.0295404Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0325513Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/json' 2024-08-06T21:32:42.0357548Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0389284Z Entering 'third_party/kineto/libkineto/third_party/dynolog/third_party/pfs' 2024-08-06T21:32:42.0421272Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0452954Z Entering 'third_party/kineto/libkineto/third_party/fmt' 2024-08-06T21:32:42.0485190Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0514258Z Entering 'third_party/kineto/libkineto/third_party/googletest' 2024-08-06T21:32:42.0545952Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0577793Z Entering 'third_party/mimalloc' 2024-08-06T21:32:42.0609827Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0639561Z Entering 'third_party/nccl/nccl' 2024-08-06T21:32:42.0672208Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0701747Z Entering 'third_party/nlohmann' 2024-08-06T21:32:42.0734148Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0764608Z Entering 'third_party/onnx' 2024-08-06T21:32:42.0796819Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0840331Z Entering 'third_party/onnx/third_party/benchmark' 2024-08-06T21:32:42.0873672Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0903163Z Entering 'third_party/onnx/third_party/pybind11' 2024-08-06T21:32:42.0936264Z http.https://github.com/.extraheader 2024-08-06T21:32:42.0967322Z Entering 'third_party/opentelemetry-cpp' 2024-08-06T21:32:42.1000108Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1032136Z Entering 'third_party/opentelemetry-cpp/third_party/benchmark' 2024-08-06T21:32:42.1063759Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1094158Z Entering 'third_party/opentelemetry-cpp/third_party/googletest' 2024-08-06T21:32:42.1125222Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1154589Z Entering 'third_party/opentelemetry-cpp/third_party/ms-gsl' 2024-08-06T21:32:42.1186481Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1215442Z Entering 'third_party/opentelemetry-cpp/third_party/nlohmann-json' 2024-08-06T21:32:42.1246570Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1278101Z Entering 'third_party/opentelemetry-cpp/third_party/opentelemetry-proto' 2024-08-06T21:32:42.1309677Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1338850Z Entering 'third_party/opentelemetry-cpp/third_party/opentracing-cpp' 2024-08-06T21:32:42.1371907Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1401133Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp' 2024-08-06T21:32:42.1432435Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1462307Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb' 2024-08-06T21:32:42.1493857Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1525214Z Entering 'third_party/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest' 2024-08-06T21:32:42.1557483Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1590416Z Entering 'third_party/opentelemetry-cpp/tools/vcpkg' 2024-08-06T21:32:42.1622004Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1671310Z Entering 'third_party/pocketfft' 2024-08-06T21:32:42.1704291Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1733710Z Entering 'third_party/protobuf' 2024-08-06T21:32:42.1766834Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1799148Z Entering 'third_party/protobuf/third_party/benchmark' 2024-08-06T21:32:42.1830680Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1859863Z Entering 'third_party/protobuf/third_party/googletest' 2024-08-06T21:32:42.1891598Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1922450Z Entering 'third_party/psimd' 2024-08-06T21:32:42.1954904Z http.https://github.com/.extraheader 2024-08-06T21:32:42.1985612Z Entering 'third_party/pthreadpool' 2024-08-06T21:32:42.2018563Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2048175Z Entering 'third_party/pybind11' 2024-08-06T21:32:42.2080513Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2110064Z Entering 'third_party/python-peachpy' 2024-08-06T21:32:42.2142148Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2172062Z Entering 'third_party/sleef' 2024-08-06T21:32:42.2203912Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2233220Z Entering 'third_party/tensorpipe' 2024-08-06T21:32:42.2266509Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2296729Z Entering 'third_party/tensorpipe/third_party/googletest' 2024-08-06T21:32:42.2328323Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2357460Z Entering 'third_party/tensorpipe/third_party/libnop' 2024-08-06T21:32:42.2390013Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2419168Z Entering 'third_party/tensorpipe/third_party/libuv' 2024-08-06T21:32:42.2450365Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2480569Z Entering 'third_party/tensorpipe/third_party/pybind11' 2024-08-06T21:32:42.2512394Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2541428Z Entering 'third_party/tensorpipe/third_party/pybind11/tools/clang' 2024-08-06T21:32:42.2572942Z http.https://github.com/.extraheader 2024-08-06T21:32:42.2682862Z A job completed hook has been configured by the self-hosted runner administrator 2024-08-06T21:32:42.2975606Z ##[group]Run '/home/ec2-user/runner-scripts/after_job.sh' 2024-08-06T21:32:42.2980570Z shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} 2024-08-06T21:32:42.2980965Z ##[endgroup] 2024-08-06T21:32:49.5375157Z Cleaning up orphan processes