8000 [DO NOT DELETE OR MERGE] Nightly release by ezyang · Pull Request #26921 · pytorch/pytorch · GitHub
[go: up one dir, main page]

Skip to content

[DO NOT DELETE OR MERGE] Nightly release #26921

New issue

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

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

Already on GitHub? Sign in to your account

Closed
wants to merge 2,195 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
2195 commits
Select commit Hold shift + click to select a range
6dd155f
2022-09-11 nightly release (5f960db0e01839f1de8735060b374ea6cbd1713a)
Sep 11, 2022
82246b0
2022-09-12 nightly release (5f960db0e01839f1de8735060b374ea6cbd1713a)
Sep 12, 2022
0feda8a
2022-09-13 nightly release (2fbc0fab20d4af520f69f158f8777e99ad761e1d)
Sep 13, 2022
f35657e
2022-09-14 nightly release (55ca297d4e048c641d149a76f2fda7c9ce630ff6)
Sep 14, 2022
a5ce016
2022-09-15 nightly release (625e44c1df211d6753609a9b391cb10f2f94367f)
Sep 15, 2022
089b579
2022-09-16 nightly release (0ec19db7ac88e307135100ddcfc418ae3925844f)
Sep 16, 2022
e42e8dc
2022-09-17 nightly release (d6c2080eb49ccaaf43cff37b7f07a85906250b92)
Sep 17, 2022
39579e7
2022-09-18 nightly release (12a19a4846c924e9d1e2d37fa0a706fb8eaef9a7)
Sep 18, 2022
1b1d424
2022-09-19 nightly release (9024015adf01d93fd2533c71fa1e7f06831c2ac7)
Sep 19, 2022
b472915
2022-09-20 nightly release (e41d758e26bd2de00e9dd50e94e878f46f9f1b88)
Sep 20, 2022
8b575a9
2022-09-21 nightly release (cf2f552cd8a41f4913c370c15804173a3b56a415)
Sep 21, 2022
62b4e98
2022-09-22 nightly release (99ad8a304898de8bf1e20a6fc12e335e9b7c5064)
Sep 22, 2022
114d9a2
2022-09-23 nightly release (cf0de77c2cfb8843b8ae67e6a6f053e6bf6bb3d9)
Sep 23, 2022
6dc8fba
2022-09-24 nightly release (2b6d2cad29fc1652f80199d647306b9c7c841ca9)
Sep 24, 2022
6916826
2022-09-25 nightly release (db40fbdee03920944219588464d38774ca0b3d05)
Sep 25, 2022
193cc14
2022-09-26 nightly release (9c036aa112b0a8fd9afb824d1fda058e2b66ba1d)
Sep 26, 2022
04bb953
2022-09-27 nightly release (b360d66391f03a0d5dc2c9a7aff496324b75aa2f)
Sep 27, 2022
5b04269
2022-09-28 nightly release (795028a3cec2603a750bdc02ab2b93329f43e883)
Sep 28, 2022
7a07ea9
2022-09-29 nightly release (7628603aeeeb8ed160c2479f75175bb3ea028a42)
Sep 29, 2022
3bf7094
2022-09-30 nightly release (95681929e4c379c504d8a7761f8104118a5a16db)
Sep 30, 2022
7ac93c0
2022-10-01 nightly release (05d1128106e50075b0fd7d667680214ace34306c)
Oct 1, 2022
60de013
2022-10-02 nightly release (92c2295ab4b5ccdedcc32227c1125a4daf9e2759)
Oct 2, 2022
57d0543
2022-10-03 nightly release (b26eafec079a18bc331f569a7e35497129feed71)
Oct 3, 2022
9f3d8fe
2022-10-04 nightly release (82d9592f1baaf943b81bca13a51d655139f050aa)
Oct 4, 2022
03587d4
2022-10-05 nightly release (ac25c210e5452d360fcc8cf5ea96c85756e3e370)
Oct 5, 2022
99cb9ab
2022-10-06 nightly release (bebd1622490becd09de97003bd22761e973d3edd)
Oct 6, 2022
a23db27
2022-10-07 nightly release (b14f1d7bb855834ec5f2d3996746e048ba835d69)
Oct 7, 2022
95911a4
2022-10-08 nightly release (a95889ba7c1ecd8cb0f90507a6152cb035bcefd1)
Oct 8, 2022
0dbefb2
2022-10-09 nightly release (92ac84c98a19310885f3d818aba56b981940d615)
Oct 9, 2022
04f63b0
2022-10-10 nightly release (c89d286af633a802226c34ccbdd5c7c4be10dcfb)
Oct 10, 2022
027a154
2022-10-11 nightly release (ad2b04c39c41949d8869de743736bcaeec2dfa0d)
Oct 11, 2022
2c2a7b2
2022-10-12 nightly release (25725fd62448165b91647304c26d676db22b6955)
Oct 12, 2022
f4ae3ba
2022-10-13 nightly release (48c648d75df4a2d02ede71f34c11b7f48c80da0e)
Oct 13, 2022
987a944
2022-10-14 nightly release (f451e824f39516f503c2bdfd785d254b447b9557)
Oct 14, 2022
1edc918
2022-10-15 nightly release (5210fab64d4322438ebfd8ec9c1170d5effab0a3)
Oct 15, 2022
d20ebc9
2022-10-16 nightly release (a0c2a7f2eda788a48f1d243940297f1467faf138)
Oct 16, 2022
cb329eb
2022-10-17 nightly release (364a9973cab8e7458abd27e3926168978fe5428e)
Oct 17, 2022
bd3e718
2022-10-18 nightly release (4814270708cb6141c1fb6202f883c084c71290b4)
Oct 18, 2022
f2aafd1
2022-10-19 nightly release (c471c29fdccc3fe48a78083c638a4a88559488b4)
Oct 19, 2022
aab82cf
2022-10-20 nightly release (472bdb3aa84678b2faa4afe1cb5757f55e14ed9a)
Oct 20, 2022
6418c7d
2022-10-21 nightly release (ff43288d31ea7f3de69f4907e2a36455c742d9c9)
Oct 21, 2022
8e7fb10
2022-10-22 nightly release (8461460d55c2474b236a5d7198067ed299631b76)
Oct 22, 2022
21d5156
2022-10-23 nightly release (efdd43d5193435206fbe76cecc294961d10558db)
Oct 23, 2022
9c14af4
2022-10-24 nightly release (233305a852e1cd7f319b15b5137074c9eac455f6)
Oct 24, 2022
dfd50c0
2022-10-25 nightly release (3f94adc1056b541851422f887149d54756ed91c1)
Oct 25, 2022
3fa360a
2022-10-26 nightly release (0d13ffbbae0ae12e72ed8856ccdd822bf840344c)
Oct 26, 2022
7ecffce
2022-10-27 nightly release (21bef8e944c90cdf98c2ead4369410db252944e1)
Oct 27, 2022
8d19143
2022-10-28 nightly release (fd27246c16d8a80e7de0ccc86d014f9759611b0f)
Oct 28, 2022
7623f24
2022-10-29 nightly release (c5cb6ec06619a2fc9874b967f11d13663c5d32c1)
Oct 29, 2022
d6a7672
2022-10-30 nightly release (e7b854fae9ff8116eaf4aeb24e04cac550bed362)
Oct 30, 2022
7ceeba2
2022-10-31 nightly release (d13f1e6ab4d20451f7e2acd87571ffa7fece0c32)
Oct 31, 2022
43ff4c4
2022-11-01 nightly release (afd00673b6dedbdb811cfb1a9078deee1cb53f38)
Nov 1, 2022
ded1b03
2022-11-02 nightly release (95fc0bcaaddc2d24e8759f24dbefa789d04e9e42)
Nov 2, 2022
a374be6
2022-11-03 nightly release (4c20c0509d5cf8d4dea83cc330056044a6277b1b)
Nov 3, 2022
4ebaafa
2022-11-04 nightly release (70b00b13830c8adbaa2db8f61d475c2458b707c4)
Nov 4, 2022
12d7846
2022-11-05 nightly release (957a9b63c5c2953da3a1d1fc86c20703c96b2fa6)
Nov 5, 2022
027d0ae
2022-11-06 nightly release (0e3031f7e76fbd84e62650642dc334c11cc3c511)
Nov 6, 2022
d6f7b88
2022-11-07 nightly release (eda247ee6ce2f8bc29d86ec94f3863f929a2ea6e)
Nov 7, 2022
93f15b1
2022-11-08 nightly release (ed97e0aa2918e687309ee9a146c8294aefb237d2)
Nov 8, 2022
3b29687
2022-11-09 nightly release (a7420d2ccb62d005f2e1853cfef8d25eb7748a90)
Nov 9, 2022
e02bd6d
2022-11-10 nightly release (e87c79ca0cbab476a7d09853b5830b615a62f679)
Nov 10, 2022
aeacdae
2022-11-11 nightly release (a6d72f44a4e8b6e9d2e878f30fd8b1d3e1197f0e)
Nov 11, 2022
580b16f
2022-11-12 nightly release (7c3adddd6c3fe1bda4a9e5bfb9f992a802329551)
Nov 12, 2022
637228b
2022-11-13 nightly release (46796fe5e9b74602d45927304773fdcda1c3215a)
Nov 13, 2022
b7c4176
2022-11-14 nightly release (06486cd0087200e08ebb8a9518e064251c7c5309)
Nov 14, 2022
b5ea3fd
2022-11-15 nightly release (73d71ae3d62607f2e480af37c470375ea405eb1c)
Nov 15, 2022
0662e90
2022-11-16 nightly release (e2f0648750f2d0d0ac648728ce4c514db178cfa1)
Nov 16, 2022
0015b0d
2022-11-17 nightly release (c3acb9c8859fb5cfa1959ee49849f07942c40ccc)
Nov 17, 2022
d7eadde
2022-11-18 nightly release (6f609dd0e03e11395cc637a34abd68472e5a1e12)
Nov 18, 2022
3806b65
2022-11-19 nightly release (419ef2cdcfe84442de5232739284c6a51a18632f)
Nov 19, 2022
89e792c
2022-11-20 nightly release (6afe341276f9ffa660446c5fa15b68558791869a)
Nov 20, 2022
e290a47
2022-11-21 nightly release (1856fa5df7fda9950da26eff2ef885e845bf6b6c)
Nov 21, 2022
f44ba7d
2022-11-22 nightly release (40cf214f2d18b3b8af5354ddc5dad8156ea32520)
Nov 22, 2022
db1da1f
2022-11-23 nightly release (52669534438db3d680def4c70cb03b7e27566d7e)
Nov 23, 2022
c60a6bb
2022-11-24 nightly release (903ae4570e401e5c4e42dc4a44cae37f805044a4)
Nov 24, 2022
b8162a4
2022-11-25 nightly release (95ea47ef0c1cffe1fe05cc36bdc47c26cc72f13e)
Nov 25, 2022
21825b2
2022-11-26 nightly release (591dfffa38848de54b7f5f4e49260847024c9281)
Nov 26, 2022
f8506fb
2022-11-27 nightly release (39449ea61d9a6644731687219282f610cbf7cf54)
Nov 27, 2022
77d59b2
2022-11-28 nightly release (db1f1144f1303db45e0b9d96e4bb6bdd87c80e5a)
Nov 28, 2022
c528648
2022-11-29 nightly release (2b522670d2840522e0eeb87afec7f1956eaa8748)
Nov 29, 2022
30b87f4
2022-11-30 nightly release (12f98f85bc7effd48f4728dcaba6362c8b2dd697)
Nov 30, 2022
d8006fa
2022-12-01 nightly release (b399acd2dd755d7184538a58f933fbd48593c158)
Dec 1, 2022
203213d
2022-12-02 nightly release (f623b123f00358936932e103131bb6e3fc8ea685)
Dec 2, 2022
82ab740
2022-12-02 nightly release (cf3c3f22804be6909e54fc09e07f891ab0886774)
Dec 2, 2022
ea0a17f
2022-12-03 nightly release (9a1c6fd50664a46f0bacac92a10bcc26f307fadb)
Dec 3, 2022
b23c765
2022-12-04 nightly release (9a1c6fd50664a46f0bacac92a10bcc26f307fadb)
Dec 4, 2022
ba75437
2022-12-05 nightly release (4648baa91155718642937ec27b04196fde846566)
Dec 5, 2022
d80585d
2022-12-06 nightly release (05ccbd6d94c25fc26d30d2f60081924ce5bc973f)
Dec 6, 2022
c8ee46c
2022-12-07 nightly release (26d1dbc4f85be7c5dc03c865e9bc092d83f7f2f0)
Dec 7, 2022
9a7b94f
2022-12-08 nightly release (bc93454e4a51f85f6c8603309bed7bd6de84385a)
Dec 8, 2022
8ce9be6
2022-12-09 nightly release (b4c27c86b71c41bb44a804d8c6a7d466fb4d8baf)
Dec 9, 2022
6e83e0b
2022-12-10 nightly release (0457020d2ccfcb34262e2d46a3a4dbbdba5772a2)
Dec 10, 2022
e220581
2022-12-11 nightly release (6845598617ab75920dc1d4fbba9475bf64148bd6)
Dec 11, 2022
008d7ee
2022-12-12 nightly release (b95ea4f1494dacf86b5789f5466025b1fac1f2bb)
Dec 12, 2022
3612f8b
2022-12-13 nightly release (7498e23bd52f049071500d443a18e6e5382c87b1)
Dec 13, 2022
971c769
2022-12-14 nightly release (769392178a8da6aab1bf82a09c9b105ea3dd6778)
Dec 14, 2022
1902ca9
2022-12-15 nightly release (670efb974af056fc3f46b48225581351b047eb4d)
Dec 15, 2022
2bd3fbe
2022-12-16 nightly release (4372dbb89f457a0aa90f22d27f1468442a2a51bd)
Dec 16, 2022
8726996
2022-12-17 nightly release (e689c509222a2dbc4796bcf32625193b9ea13c49)
Dec 17, 2022
e2c1293
2022-12-18 nightly release (e2377c8300c578d648aac3bff6f96cdfce4308de)
Dec 18, 2022
1ae3ad5
2022-12-19 nightly release (9ca41a986c902f9db44ff04ca87a07238627d020)
Dec 19, 2022
8b450f6
2022-12-20 nightly release (d6dd2e97da619319a103d1061290fe33ce33b6a4)
Dec 20, 2022
5837a66
2022-12-21 nightly release (5d37890b8eb952560f22b1b8ff661a024bf4b6d9)
Dec 21, 2022
7919ae9
2022-12-22 nightly release (6cea4f3d57927b30c3fc0a2f7103684fde0c75ea)
Dec 22, 2022
7277d5a
2022-12-23 nightly release (b95e1d76a86b7b66f0946f72ebd33889bfc19e03)
Dec 23, 2022
3416c23
2022-12-24 nightly release (5725a440806e7d75ad4fdea2c63d1a0a2fd004af)
Dec 24, 2022
fac2cc8
2022-12-25 nightly release (5725a440806e7d75ad4fdea2c63d1a0a2fd004af)
Dec 25, 2022
9c15652
2022-12-26 nightly release (3f4e87beaf67ec44d609605777d9da9e65cfbdd9)
Dec 26, 2022
4ada512
2022-12-27 nightly release (3f4e87beaf67ec44d609605777d9da9e65cfbdd9)
Dec 27, 2022
5abc365
2022-12-28 nightly release (2e79d46708fb53c1a92bf0c2840d47a39e13e400)
Dec 28, 2022
7edb2ee
2022-12-29 nightly release (3d8834bdbf7f5da1163fd7ac543728779b557d29)
Dec 29, 2022
f8dcaca
2022-12-30 nightly release (6f034dc0b09a96c50421cf92ddb8709c59d95edf)
Dec 30, 2022
a52fb6c
2022-12-30 nightly release (9710ac653157dee780c33bf3080568076ce69a7b)
Dec 30, 2022
733de4d
2022-12-31 nightly release (73436af43fd84891b6765f4d1e5eeb0073a10a11)
Dec 31, 2022
ede810c
2023-01-01 nightly release (f6136331244fbe680ccc03d3bd5c5d9a71933d9f)
Jan 1, 2023
680efdb
2023-01-02 nightly release (f6136331244fbe680ccc03d3bd5c5d9a71933d9f)
Jan 2, 2023
74c03b4
2023-01-03 nightly release (2b52db9c953d063db7b46c12f4df35b47aca4381)
Jan 3, 2023
caaf948
2023-01-04 nightly release (80394bb73423bb849f46a7a9ffc55ebf478b8639)
Jan 4, 2023
1b52cee
2023-01-05 nightly release (d6bd67f2ebebb840ecf9d1c7c70653c900e6ee96)
Jan 5, 2023
143e944
2023-01-06 nightly release (33547bb58745a5deedaa36ca4e9363413f803e12)
Jan 6, 2023
253e5c9
2023-01-07 nightly release (faed4db4971af151e3dba7233ae49f9c0149dc18)
Jan 7, 2023
fac4361
2023-01-08 nightly release (73e5379fab05c40ff6f42500309cdc17ee57548c)
Jan 8, 2023
65ff52a
2023-01-09 nightly release (73e5379fab05c40ff6f42500309cdc17ee57548c)
Jan 9, 2023
971b1d3
2023-01-10 nightly release (b0f359a3c99041d9c87e700dccd0f22e73f40e1d)
Jan 10, 2023
466be3f
2023-01-11 nightly release (364f526b9cdf9818a7647b5e637efdee825d61a1)
Jan 11, 2023
a0c46f5
2023-01-12 nightly release (5766764d6cf9b14380c1b6ef5c2fe5392722e37b)
Jan 12, 2023
06f81fd
2023-01-13 nightly release (fbbb19599a1d162e5927542ed251fd2ba63d5163)
Jan 13, 2023
c202ddd
2023-01-14 nightly release (b8057aa16d376eefe081d852335541e2a7609c40)
Jan 14, 2023
868797a
2023-01-15 nightly release (d41b5d7c145f3e09c7223c2b707933266241ec9b)
Jan 15, 2023
a4dd47e
2023-01-16 nightly release (85e0fd0280948a342a916429448fed2486e82aa5)
Jan 16, 2023
fbc4086
2023-01-17 nightly release (0388400f3f8a8ecae2f809ba40ca3ddd5a8b9028)
Jan 17, 2023
69dbc7d
2023-01-18 nightly release (00fe63d1d8c5c6411e093fa4388dc98c3683d236)
Jan 18, 2023
65d7b96
2023-01-19 nightly release (de459bdfaa44a25565d4c4eedda49906feb6d993)
Jan 19, 2023
d7b0db0
2023-01-20 nightly release (620846c8b4f00f58dbd8b62746ec8e4328552b58)
Jan 20, 2023
f960e5c
2023-01-21 nightly release (1af40d5108ee5ddd408eed8115ce3abf6512149c)
Jan 21, 2023
2846772
2023-01-22 nightly release (ed07070a11802dd561995c20e89d33cc986de2fa)
Jan 22, 2023
6f611c5
2023-01-23 nightly release (20bf77f9bd3cd7cb4da758afb58042e2980ee6ba)
Jan 23, 2023
d0e7a12
2023-01-24 nightly release (2a8669c54cb29bf42692185340fd68f341ac65ef)
Jan 24, 2023
83e8426
2023-01-25 nightly release (4bc0491752b6d891c5bb33a3d18c5da7334fc6df)
Jan 25, 2023
8181f12
2023-01-26 nightly release (0a57a20c02132577a48f5283ffbdf04257af1dbf)
Jan 26, 2023
6cbac32
2023-01-27 nightly release (661800a2cf0a4251c48a50fce8599c4c5fc49be1)
Jan 27, 2023
5d6a4f6
2023-01-28 nightly release (ca8f5e177a1e0781b4a9e376c34d3ef9b934a454)
Jan 28, 2023
d6c8739
2023-01-29 nightly release (7cc91f4002cb5dd3290318a967fb1e830d812666)
Jan 29, 2023
3a7bab5
2023-01-30 nightly release (e790281a85fe3693fc1d38bf0e2c6e874d5e10b0)
Jan 30, 2023
b2690c3
2023-01-31 nightly release (2a6e08570442c8fcbad6659e074c226809b1ed22)
Jan 31, 2023
2e6952f
2023-02-01 nightly release (79db5bcc9d3febad00e5a2234b44c7db87defdab)
Feb 1, 2023
bf27152
2023-02-02 nightly release (569f2e3228efeb1f8571e96d8f3ec835239e9c0e)
Feb 2, 2023
df9abf6
2023-02-03 nightly release (732a865c1bf2382a75f531d5907d18dd9bb0c4c9)
Feb 3, 2023
3b05e02
2023-02-04 nightly release (adde6fd25eec0bd5ebe304ca08a9d57ba64d10d5)
Feb 4, 2023
6a03ad6
2023-02-05 nightly release (1d53123f44e2d5f08e4605af353b7d32b62346ae)
Feb 5, 2023
0a73b08
2023-02-06 nightly release (9350bcf6ae9d646389a0a4345c48275d4f9e4d1a)
Feb 6, 2023
1530b79
2023-02-07 nightly release (d493bc8a764f65c140e73d7a6e9d20abe519a9b0)
Feb 7, 2023
cb47373
2023-02-08 nightly release (61ecaf1dd40ba93dde11249bd8ee64274098d3d7)
Feb 8, 2023
34d2472
2023-02-09 nightly release (cb715c26e270759e3955968fbd3d763d51b0b83d)
Feb 9, 2023
54ad459
2023-02-10 nightly release (336d9354d655e52c575d070fc53eaccbebc94cd2)
Feb 10, 2023
00a8867
2023-02-11 nightly release (948cd61afc90e1b9067b35d4aec4ec74deeb73f6)
Feb 11, 2023
52df37a
2023-02-12 nightly release (67d979098567fd61dfdb918d837426535eb9883b)
Feb 12, 2023
8397282
2023-02-13 nightly release (6fadd5e94a273d62ac3f245a7615f818b6a33500)
Feb 13, 2023
e67dc17
2023-02-14 nightly release (d567df9f36094e1efa89d11599067773f45032c8)
Feb 14, 2023
de11145
2023-02-15 nightly release (c10acb834d73f399589ce08a9fea1e4520a8c02c)
Feb 15, 2023
5fe2e6a
2023-02-16 nightly release (07bc6b958768af3462095eea7af2cbc7b395b972)
Feb 16, 2023
9c72352
2023-02-17 nightly release (5d1e9fd214fcd8bbc95e9f8dea69df8dd17bf92e)
Feb 17, 2023
fe66daa
2023-02-17 nightly release (766d51b496bb85feab4b0f23977b4ffc0a0e354b)
Feb 17, 2023
844f9f6
2023-02-18 nightly release (e44737e61975c49b20fa176e77c012b626c5f331)
Feb 18, 2023
66f63bd
2023-02-19 nightly release (a17a7ccc92144452e0fe51e02f21f1f1ba88118a)
Feb 19, 2023
5a6cf28
2023-02-20 nightly release (286d821e61e29de8fd6c81abd78b84fea5a44c0b)
Feb 20, 2023
2a2c29b
2023-02-23 nightly release (cece63f1976464f3c48b5563d8a59888566d0897)
Feb 23, 2023
dbde255
2023-02-24 nightly release (6665fe9e65548ba01cb232b965af4d64a49fb46b)
Feb 24, 2023
f64b61f
2023-02-25 nightly release (f5cf1a8b434a39576f8f49f4ebb32741de5cb9c1)
Feb 25, 2023
3313e86
2023-02-26 nightly release (a88bfc60c75d22a047f03787aaa43130c6a8d6d9)
Feb 26, 2023
1e2e6e7
2023-02-27 nightly release (6624a73837bee5b59f01bdd4d2f0d5619bd3ab1f)
Feb 27, 2023
341911a
2023-02-28 nightly release (58648822b640dc11d196f7060d968b2c38fb3351)
Feb 28, 2023
f09ed1d
2023-03-01 nightly release (21b1134be690bdf338689ed0da287e772e8fd859)
Mar 1, 2023
5bdd054
2023-03-02 nightly release (62b775583f008effc510e5f5c3e2b30a85a53465)
Mar 2, 2023
a9a8c5e
2023-03-03 nightly release (53c9866ffa8baa7b7070901ce74704e0771bb05b)
Mar 3, 2023
f1d60f5
2023-03-04 nightly release (43dd043ea79cd427aa40f1910da63da96e8363ec)
Mar 4, 2023
98e5a7e
2023-03-05 nightly release (af8dbe7ec2b32492589bad1eef4ed72be81646f9)
Mar 5, 2023
d7e5a32
2023-03-06 nightly release (02792ff16f4934ccd837c28df437de460273432c)
Mar 6, 2023
24e305c
2023-03-07 nightly release (7038458c5b47eda626e9d535f792f1f4611c5675)
Mar 7, 2023
47cb449
2023-03-08 nightly release (3a4275278b265f02e9d5fa336074d27b908dd1ea)
Mar 8, 2023
820eb13
2023-03-09 nightly release (fe05266fda4f908130dea7cbac37e9264c0429a2)
Mar 9, 2023
c54ce93
2023-03-10 nightly release (065de4301200117c65607b213322cbde800b50f8)
Mar 10, 2023
cf353b0
2023-03-11 nightly release (f3fc4d035d8fc1ed560ade0c8b8eff6be1c95972)
Mar 11, 2023
1238ae3
2023-03-12 nightly release (82d3d053b9cf439a1970d788a7809cdc30142626)
Mar 12, 2023
eb17fc7
2023-03-13 nightly release (be220690d9d8b7e8d58b81694c6cbf0958f94845)
Mar 13, 2023
b5e0334
2023-03-14 nightly release (2cc8368af369c6c3d930ca9ad85c7124e4809509)
Mar 14, 2023
4f7cbd0
2023-03-15 nightly release (c6a82e433924b4d36fd571d36ce363cb1c622c76)
Mar 15, 2023
e262e40
2023-03-16 nightly release (3606f593665f2dc3ad0877db4f5df69a6c31cf2f)
Mar 16, 2023
fb9db7d
2023-03-17 nightly release (cbd3df93c4a4b5d8a3244be9fbfa68e2b06bb836)
Mar 17, 2023
21b32e8
2023-03-18 nightly release (b132220309add1748f4548b88d7a947c19322ff9)
Mar 18, 2023
422a1d3
2023-03-19 nightly release (c1214ce5c26fce541a920bdf9917c9ca9f63ecb0)
Mar 19, 2023
4d3baf6
2023-03-20 nightly release (5471621497ea0068bd453d251bf5ec2621e8119f)
Mar 20, 2023
8c8491f
2023-03-21 nightly release (d2f57229969d1758369a15a71740a94f5baa2cd6)
Mar 21, 2023
00891e9
2023-03-22 nightly release (f9a9a888128625969be1ff6effca9df74a55432c)
Mar 22, 2023
d3b9151
2023-03-23 nightly release (c5b65032aca9af04ce9d261bc29ff7f063b00748)
Mar 23, 2023
333a93f
2023-03-24 nightly release (763c5a33e70113253e5861ee6d185ea343acf286)
Mar 24, 2023
1358125
2023-03-25 nightly release (2e8086b0a157dbe922a588fed15edc31c8faf802)
Mar 25, 2023
c9ed10c
2023-03-26 nightly release (dc45ad702466e4a73d972d3e1dc0c12ed80d2eef)
Mar 26, 2023
cb970ea
2023-03-27 nightly release (542fb0b1fad6bf61929df16e2133e9a296820f08)
Mar 27, 2023
8155803
2023-03-28 nightly release (c1a6dde79e5517ba3f71dcd4b9ff8f00e0cd881d)
Mar 28, 2023
f1f0a4f
2023-03-29 nightly release (91166ef7e75fc5fb94fb56ec6679a1744cf0f28c)
Mar 29, 2023
f6aae50
2023-03-30 nightly release (af0264ae084359c8042194f5e15070aafb430677)
Mar 30, 2023
f08dd7d
2023-03-31 nightly release (3dc440527817b065fa5cb652467921c9514cdd1c)
Mar 31, 2023
63f61a6
2023-04-01 nightly release (57c6f3fe90bccfed878b301c2d61bf42270c5b52)
Apr 1, 2023
5775e1c
2023-04-02 nightly release (7fcff01b50d6a3a94a181a5b452455e8a82efad3)
Apr 2, 2023
3b8052d
2023-04-03 nightly release (5d62d1255778b53ece16c79fd842cd42eca31f93)
Apr 3, 2023
5fa1402
2023-04-04 nightly release (c5963b779281e2b7dfba1b2fc0e6628c1622f7e4)
Apr 4, 2023
73b995e
2023-04-05 nightly release (2d9b2bcfba7eaf9aa30e05df4ff51fa9f3241e9e)
Apr 5, 2023
a86aae1
2023-04-06 nightly release (9c7b03d51e097c40abdb9ef55ce79b98d7f1fd48)
Apr 6, 2023
83b1c51
2023-04-07 nightly release (616f50da3aa8c0616cf93f1d92f31044aa5123f8)
Apr 7, 2023
f3a098a
2023-04-08 nightly release (d255c8e1ad332a2ded0ff1595b63d50034c473ee)
Apr 8, 2023
e60d9b7
2023-04-09 nightly release (54b168484d8463a6f38737751ab5ac78777fa6a6)
Apr 9, 2023
b8423c1
2023-04-10 nightly release (96fb64a1599f3e1679baa9db16f71c8a854577c7)
Apr 10, 2023
61007ca
2023-04-11 nightly release (d4ce045cfcf2d7cacd0b90d7ea625f6fa82d566b)
Apr 11, 2023
84ec5d9
2023-04-12 nightly release (6ff32b5575abf07ebee74c9e17fc5113d5dd0652)
Apr 12, 2023
3e5bc3f
2023-04-13 nightly release (ccc9a3d726b1f249daffa442460b70fb50a0ee2e)
Apr 13, 2023
30a9757
2023-04-14 nightly release (cd078d376e833c4da3b8a6b03447614501178e9b)
Apr 14, 2023
ba53e30
2023-04-15 nightly release (e9be0b0fb93c271ba3deb31b5ccc8f4c4f602ef9)
Apr 15, 2023
fea73cb
2023-04-16 nightly release (039faf0dbf75c8e6bb3c097c1b8d257eebb74c45)
Apr 16, 2023
584d16f
2023-04-17 nightly release (efc3887ea508b3cfd94603fd8afe4e8cf6dce7b7)
Apr 17, 2023
ffa6fef
2023-04-18 nightly release (436edc5ac3de4c4e677ed136473bafe72002cc93)
Apr 18, 2023
b206fd2
2023-04-19 nightly release (8e69879209330089fdd8f2cd48769dc467c7d036)
Apr 19, 2023
aef7b6b
2023-04-20 nightly release (95ca8e589d8aaa614619e4dcd89c569cf0ad8dea)
Apr 20, 2023
8aa785f
2023-04-21 nightly release (51742a467d1714afb6715af92c4459160eb71fb4)
Apr 21, 2023
f85810f
2023-04-22 nightly release (ca8625f45662e5d451d1da928b223e47d79ce5fa)
Apr 22, 2023
1b3ac4a
2023-04-23 nightly release (ebd47b0eec9af20b238a72860dfc08c0bf250fdb)
Apr 23, 2023
287a303
2023-04-24 nightly release (48d112c431fc988de5473d3992f6c72ec5f02a6b)
Apr 24, 2023
015e4dd
2023-04-25 nightly release (ecd2c71871f8bf9a9fa4a4d875609b0922061a6f)
Apr 25, 2023
a977a12
2023-04-26 nightly release (0b1b063158e35be06e488e29a302ef28932b083b)
Apr 26, 2023
521b386
2023-04-27 nightly release (e0bf51d3bf2cf4c8272708f78b72572d81efd0a2)
Apr 27, 2023
4fecad5
2023-04-28 nightly release (54c0edf6da01c5ded74fe67e834b3c6869d5e5f0)
Apr 28, 2023
6d1cfc0
2023-04-29 nightly release (3d55bce3bf5fe5cb0d654ecb48100eeac1d2dfa0)
Apr 29, 2023
572ef38
2023-04-30 nightly release (6c934a89a725fd5d171b52a37cbc58e198edf4d6)
Apr 30, 2023
f38a04a
2023-05-01 nightly release (e779a30d5097714acea011da6a554e43810b5d0e)
May 1, 2023
d97f26a
2023-05-02 nightly release (ff297223641ae336c421994a9d650bbb72798c0c)
May 2, 2023
664ac1e
2023-05-03 nightly release (771a9debbe8cc1bbc41e1f9b8759971ae20f09d2)
May 3, 2023
1b6d6e9
2023-05-04 nightly release (9bc68fcd25798553e311d8562fe3a1c5a450feb3)
May 4, 2023
ccace36
2023-05-05 nightly release (bf52d570d9be0167501cd6a206b7e262e6d3860c)
May 5, 2023
cf05864
2023-05-06 nightly release (f73973d789a14afe9fde4640c767f2da0b547076)
May 6, 2023
3a5c9bb
2023-05-07 nightly release (ca9f55f79d944672cb93157836f8ee92f54d2e10)
May 7, 2023
9a8c655
2023-05-08 nightly release (7d0e4e2aa843ef5d73646f5b304914d2b65db93c)
May 8, 2023
6cbfabc
2023-05-09 nightly release (75e4214f92059aa3ab2931e31ace63f598ebec25)
May 9, 2023
b204f65
2023-05-10 nightly release (b004c0b3c6a1ee39ba0b512a00d95e7f83852556)
May 10, 2023
6166b3d
2023-05-11 nightly release (da02ccc60e225c3150e695ddf724799dac961806)
May 11, 2023
1a3d366
2023-05-12 nightly release (e98d762f21083775598e7c1d96b2b9f6b10ea9d4)
May 12, 2023
d6e2903
2023-05-13 nightly release (387b369ee4d0d94b616254e26e43ab16a30d83f4)
May 13, 2023
7a20f53
2023-05-14 nightly release (674e52b0b913d7b7f733ce1e73a42cb383860d55)
May 14, 2023
f3e13d9
2023-05-15 nightly release (7dd8e08817ee59c926922409062e25f30408469b)
May 15, 2023
ed09105
2023-05-16 nightly release (799ef7e501003ef988e23a724789c0dbbd304ebb)
May 16, 2023
174d01b
2023-05-17 nightly release (41d668c9dcad40589609efab899131f0acd188f1)
May 17, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
2023-01-12 nightly release (5766764)
  • Loading branch information
chronos_secgrp_pytorch_oss_ci_oncall committed Jan 12, 2023
commit a0c46f5ab85792df142fc8a4454ad0fa4a50d2d6
2 changes: 2 additions & 0 deletions .github/requirements/regenerate-requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
typing_extensions
jinja2
9 changes: 8 additions & 1 deletion .github/scripts/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ couple of utility templates used to discern common utilities that can be used am

You will need `jinja2` in order to regenerate the workflow files which can be installed using:
```bash
pip install -r .github/requirements.txt
pip install -r .github/requirements/regenerate-requirements.txt
```

Workflows can be generated / regenerated using the following command:
Expand Down Expand Up @@ -56,3 +56,10 @@ Exceptions to AWS for self hosted:
New runner types can be added by committing changes to `.github/scale-config.yml`. Example: https://github.com/pytorch/pytorch/pull/70474

> NOTE: New runner types can only be used once the changes to `.github/scale-config.yml` have made their way into the default branch

### Testing [pytorch/builder](https://github.com/pytorch/builder) changes

In order to test changes to the builder scripts:

1. Specify your builder PR's branch and repo as `builder_repo` and `builder_branch` in [`.github/templates/common.yml.j2`](https://github.com/pytorch/pytorch/blob/32356aaee6a77e0ae424435a7e9da3d99e7a4ca5/.github/templates/common.yml.j2#LL10C26-L10C32). 2. Regenerate workflow files with `.github/regenerate.sh` (see above).
3. Submit fake PR to PyTorch. If changing binaries build, add an appropriate label like `ciflow/binaries` to trigger the builds.
1 change: 1 addition & 0 deletions .github/templates/common.yml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

# NOTE: If testing pytorch/builder changes you can change this variable to change what pytorch/builder reference
# the binary builds will check out
{%- set builder_repo = "pytorch/builder" -%}
{%- set builder_branch = "main" -%}

{%- macro concurrency(build_environment) -%}
Expand Down
2 changes: 1 addition & 1 deletion .github/templates/linux_binary_build_workflow.yml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ jobs:
name: !{{ config["build_name"] }}
path: "${{ runner.temp }}/artifacts/"
!{{ common.checkout(deep_clone=False, directory="pytorch") }}
!{{ common.checkout(deep_clone=False, directory="builder", repository="pytorch/builder", branch=common.builder_branch) }}
!{{ common.checkout(deep_clone=False, directory="builder", repository=common.builder_repo, branch=common.builder_branch) }}
- name: ROCm set GPU_FLAG
run: |
echo "GPU_FLAG=--device=/dev/mem --device=/dev/kfd --device=/dev/dri --group-add video --group-add daemon" >> "${GITHUB_ENV}"
Expand Down
2 changes: 1 addition & 1 deletion .github/templates/macos_binary_build_workflow.yml.j2
10000
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ jobs:
echo "${RUNNER_TEMP}/anaconda/bin" >> "${GITHUB_PATH}"
echo "DEVELOPER_DIR=/Applications/Xcode_13.3.1.app/Contents/Developer" >> "${GITHUB_ENV}"
!{{ common.checkout(deep_clone=False, directory="pytorch") }}
!{{ common.checkout(deep_clone=False, directory="builder", repository="pytorch/builder", branch=common.builder_branch) }}
!{{ common.checkout(deep_clone=False, directory="builder", repository=common.builder_repo, branch=common.builder_branch) }}
- name: Install sccache (only for non-forked PRs, and pushes to trunk)
uses: nick-fields/retry@v2.8.2
if: ${{ github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository }}
Expand Down
4 changes: 2 additions & 2 deletions .github/templates/windows_binary_build_workflow.yml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
!{{ common.setup_ec2_windows() }}
!{{ set_runner_specific_vars() }}
!{{ common.checkout(deep_clone=False, directory="pytorch") }}
!{{ common.checkout(deep_clone=False, directory="builder", repository="pytorch/builder", branch=common.builder_branch) }}
!{{ common.checkout(deep_clone=False, directory="builder", repository=common.builder_repo, branch=common.builder_branch) }}
- name: Populate binary env
shell: bash
run: |
Expand Down Expand Up @@ -99,7 +99,7 @@ jobs:
name: !{{ config["build_name"] }}
path: "${{ env.PYTORCH_FINAL_PACKAGE_DIR }}"
!{{ common.checkout(deep_clone=False, directory="pytorch") }}
!{{ common.checkout(deep_clone=False, directory="builder", repository="pytorch/builder", branch=common.builder_branch) }}
!{{ common.checkout(deep_clone=False, directory="builder", repository=common.builder_repo, branch=common.builder_branch) }}
- name: Populate binary env
shell: bash
run: |
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/pull.yml
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,6 @@ jobs:
test-matrix: ${{ needs.linux-bionic-py3_7-clang8-xla-build.outputs.test-matrix }}

win-vs2019-cpu-py3-build:
if: false
name: win-vs2019-cpu-py3
uses: ./.github/workflows/_win-build.yml
with:
Expand All @@ -244,7 +243,6 @@ jobs:
]}

win-vs2019-cpu-py3-test:
if: false
name: win-vs2019-cpu-py3
uses: ./.github/workflows/_win-test.yml
needs: win-vs2019-cpu-py3-build
Expand Down
10 changes: 10 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -529,6 +529,16 @@ if(MSVC)
string(APPEND ${flag_var} " /ignore:4049 /ignore:4217 /ignore:4099")
endforeach(flag_var)

foreach(flag_var
CMAKE_SHARED_LINKER_FLAGS)
# https://github.com/pytorch/pytorch/issues/91933: Don't set the manifest filename
# explicitly helps fix the linker error when linking torch_python.dll. The manifest
# file would still be there in the correct format torch_python.dll.manifest
if(${flag_var} MATCHES "/MANIFESTFILE:.*\\.manifest")
string(REGEX REPLACE "/MANIFESTFILE:.*\\.manifest" "" ${flag_var} "${${flag_var}}")
endif()
endforeach(flag_var)

# Try harder
string(APPEND CMAKE_CUDA_FLAGS " -Xcompiler /w -w")

Expand Down
11 changes: 6 additions & 5 deletions aten/src/ATen/PythonTorchFunctionTLS.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ int64_t PythonTorchFunctionTLS::stack_len() {
return pythonTorchFunctionState.stack_.size();
}

void PythonTorchFunctionTLS::set_disabled(bool disabled) {
pythonTorchFunctionState.disabled_ = disabled;
void PythonTorchFunctionTLS::set_disabled_state(TorchFunctionDisabledState disabled_state) {
pythonTorchFunctionState.disabled_state_ = disabled_state;
}

bool PythonTorchFunctionTLS::is_disabled() {
return pythonTorchFunctionState.disabled_;
TorchFunctionDisabledState PythonTorchFunctionTLS::get_disabled_state() {
return pythonTorchFunctionState.disabled_state_;
}

void PythonTorchFunctionTLS::set_state(const PythonTorchFunctionTLS& state) {
Expand All @@ -43,7 +43,8 @@ const PythonTorchFunctionTLS& PythonTorchFunctionTLS::get_state() {
}

bool torch_function_mode_enabled() {
return PythonTorchFunctionTLS::stack_len() > 0;
return PythonTorchFunctionTLS::get_disabled_state() != TorchFunctionDisabledState::ALL_DISABLED &&
PythonTorchFunctionTLS::stack_len() > 0;
}

} // namespace impl
Expand Down
12 changes: 7 additions & 5 deletions aten/src/ATen/PythonTorchFunctionTLS.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@
namespace at {
namespace impl {

enum TorchFunctionDisabledState { ENABLED, SUBCLASSES_DISABLED, ALL_DISABLED };

struct TORCH_API PythonTorchFunctionTLS {
static void set_disabled(bool);
static bool is_disabled();
static void set_disabled_state(TorchFunctionDisabledState disabled_state_);
static TorchFunctionDisabledState get_disabled_state();

static void push_onto_stack(std::shared_ptr<SafePyObject> mode);
static const std::shared_ptr<SafePyObject> pop_stack();
Expand All @@ -20,11 +22,11 @@ struct TORCH_API PythonTorchFunctionTLS {

private:
// The mode TLS is split into
// - disabled_, which says whether or not to disable all torch function
// modes
// - disabled_state, which says which part of torch function are disabled
// - stack_, which is a vector of modes representing the stack of user
// defined modes
bool disabled_;
TorchFunctionDisabledState disabled_state_ =
TorchFunctionDisabledState::ENABLED;
std::vector<std::shared_ptr<c10::SafePyObject>> stack_;
};

Expand Down
43 changes: 4 additions & 39 deletions aten/src/ATen/cpu/vml.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

#include <ATen/Config.h>
#include <ATen/Parallel.h>
#include <ATen/OpMathType.h>
#include <ATen/cpu/vec/functional.h>
#include <ATen/cpu/vec/vec.h>
#include <c10/util/complex.h>
Expand Down Expand Up @@ -34,9 +35,6 @@
#include <mkl.h>
#endif

#define DL_RUNTIME_BUG(op, type_)
#define DL_RUNTIME_BUG_BFLOAT16()

namespace at {
namespace vml {
inline namespace CPU_CAPABILITY {
Expand All @@ -58,44 +56,11 @@ inline void vrsqrt(scalar_t* out, scalar_t* in, int64_t size) {

// NB: We ignore numerical errors by convention and leave them to the user

// We unfortunately need to duplicate code here to deal with the SSE-AVX
// transition bug (see [Note SSE-AVX transitions]). As soon as we can expect
// users to use a version of glibc newer than 2.23 we will be able to ditch
// this. This duplication is also necessary since not all functions (e.g. rsqrt)
// might be part of cmath.

// for BFloat16, we need specialize it, the reason is that avx/avx2 and glic=2.23,
// we can't give DL_RUNTIME_BUG volatile type in x = std::op(x);

#define IMPLEMENT_VML_BUG(op) \
template <typename scalar_t> \
inline void v##op(scalar_t* out, const scalar_t* in, int64_t size) { \
DL_RUNTIME_BUG(op, scalar_t) \
parallel_for(0, size, 2048, [out, in](int64_t begin, int64_t end) { \
map([](const Vectorized<scalar_t>& x) { return x.op(); }, \
out + begin, \
in + begin, \
end - begin); \
}); \
} \
template <> \
inline void v##op<c10::BFloat16>( \
c10::BFloat16* out, const c10::BFloat16* in, int64_t size) { \
parallel_for(0, size, 2048, [out, in](int64_t begin, int64_t end) { \
DL_RUNTIME_BUG_BFLOAT16() \
using vecscalar_t = vec_scalar_t<c10::BFloat16>; \
map([](const Vectorized<vecscalar_t>& x) { return x.op(); }, \
out + begin, \
in + begin, \
end - begin); \
}); \
}

#define IMPLEMENT_VML(op) \
template <typename scalar_t> \
inline void v##op(scalar_t* out, const scalar_t* in, int64_t size) { \
parallel_for(0, size, 2048, [out, in](int64_t begin, int64_t end) { \
using vecscalar_t = vec_scalar_t<scalar_t>; \
using vecscalar_t = at::opmath_type<scalar_t>; \
map([](const Vectorized<vecscalar_t>& x) { return x.op(); }, \
out + begin, \
in + begin, \
Expand All @@ -109,7 +74,7 @@ IMPLEMENT_VML(asin)
IMPLEMENT_VML(atan)
IMPLEMENT_VML(ceil)
IMPLEMENT_VML(cos)
// IMPLEMENT_VML_BUG(cosh)
// IMPLEMENT_VML(cosh)
IMPLEMENT_VML(erf)
IMPLEMENT_VML(erfc)
IMPLEMENT_VML(erfinv)
Expand All @@ -125,7 +90,7 @@ IMPLEMENT_VML(log1p)
IMPLEMENT_VML(log2)
IMPLEMENT_VML(neg)
IMPLEMENT_VML(sin)
// IMPLEMENT_VML_BUG(sinh)
// IMPLEMENT_VML(sinh)
IMPLEMENT_VML(sqrt)
IMPLEMENT_VML(round)
IMPLEMENT_VML(rsqrt)
Expand Down
31 changes: 28 additions & 3 deletions aten/src/ATen/native/TensorAdvancedIndexing.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -492,6 +492,10 @@ DEFINE_DISPATCH(scatter_reduce_stub);
DEFINE_DISPATCH(scatter_scalar_reduce_stub);
DEFINE_DISPATCH(scatter_reduce_two_stub);

DEFINE_DISPATCH(scatter_add_expanded_index_stub);
DEFINE_DISPATCH(scatter_reduce_expanded_index_stub);
DEFINE_DISPATCH(gather_expanded_index_stub);

static bool all_strides_match(TensorList tensors) {
TORCH_CHECK(tensors.size() >= 1);
auto strides = tensors[0].strides();
Expand Down Expand Up @@ -1482,7 +1486,11 @@ TORCH_IMPL_FUNC(gather_out)
(const Tensor& self, int64_t dim, const Tensor& index, bool sparse_grad, const Tensor& result) {
if (index.numel() == 0) return;
dim = at::maybe_wrap_dim(dim, self.dim());
gather_stub(result.device().type(), result, self, dim, index);
if (can_use_expanded_index_path(result, dim, index, self, /*is_scatter_like=*/false)) {
gather_expanded_index_stub(result.device().type(), result, self, index);
} else {
gather_stub(result.device().type(), result, self, dim, index);
}
}

Tensor gather_backward(const Tensor& grad, const Tensor& self, int64_t dim, const Tensor& index, bool sparse_grad) {
Expand Down Expand Up @@ -1723,7 +1731,11 @@ TORCH_IMPL_FUNC(scatter_add)
}
}
} else {
scatter_add_stub(self.device().type(), mut_out, dim, index, src);
if (can_use_expanded_index_path(mut_out, dim, index, src, /*is_scatter_like*/true)) {
scatter_add_expanded_index_stub(self.device().type(), mut_out, index, src);
} else {
scatter_add_stub(self.device().type(), mut_out, dim, index, src);
}
}
}

Expand All @@ -1738,13 +1750,26 @@ TORCH_IMPL_FUNC(scatter_reduce_two)
// See issue https://github.com/pytorch/pytorch/issues/74770
TORCH_WARN_ONCE("scatter_reduce() is in beta and the API may change at any time.");

dim = at::maybe_wrap_dim(dim, self.dim());

if (!self.is_same(out)) {
out.copy_(self);
}

const auto op = meta::get_operator_enum(reduce, true);

if (can_use_expanded_index_path(out, dim, index, src, /*is_scatter_like*/true)) {
scatter_reduce_expanded_index_stub(self.device().type(), out, index, src, op, include_self);
return;
}

scatter_impl</*use_new_options=*/true>(self, dim, index, src, out,
scatter_reduce_two_stub,
scatter_stub,
reduce,
include_self);

if (meta::get_operator_enum(reduce, true) == SCATTER_GATHER_OP::REDUCE_MEAN) {
if (op == SCATTER_GATHER_OP::REDUCE_MEAN) {
auto ones = at::ones_like(src);
auto count = include_self ? at::ones_like(out) : at::zeros_like(out);
count.scatter_add_(dim, index, ones);
Expand Down
63 changes: 63 additions & 0 deletions aten/src/ATen/native/TensorAdvancedIndexing.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include <ATen/core/List.h>
#include <ATen/core/Tensor.h>
#include <ATen/native/DispatchStub.h>
#include <ATen/native/cpu/radix_sort.h>

namespace at {
struct TensorIterator;
Expand Down Expand Up @@ -39,4 +40,66 @@ DECLARE_DISPATCH(scatter_reduce_two_fn, scatter_reduce_two_stub);

TORCH_API Tensor& index_out(Tensor& result, const Tensor & self, const c10::List<c10::optional<at::Tensor>>& indices);

// fast paths for GNN usage
static inline bool can_use_expanded_index_path(
const Tensor& self,
int64_t dim,
const Tensor& index,
const Tensor& src,
bool is_scatter_like) {
if (!self.device().is_cpu()) {
return false;
}

const auto st = self.scalar_type();
if (!(c10::isFloatingType(st)) || st == ScalarType::Half) {
return false;
}

if (!is_radix_sort_available()) {
return false;
}

// skip when having empty tensor
if (self.numel() == 0 || index.numel() == 0 || src.numel() == 0) {
return false;
}

// skip when having scalar tensor
if (self.ndimension() == 0 || index.ndimension() == 0 || src.ndimension() == 0) {
return false;
}

if (is_scatter_like) {
// using `spmm` for scatter would require sorting on index,
// this is only perf beneficial when the inner dimension, aka, `channels`
// is big enough.
constexpr int64_t threshold = 16;
if (index.numel() / index.size(0) < threshold) {
return false;
}
}

// usually the expanded index has stride on the first dimension to be 1,
// and strides on other dims to be 0 or 1, e.g.
// shape [108365, 16]; strides [1, 0]
// shape [13264, 1, 7]; strides [1, 1, 0]
auto index_strides = index.strides().vec();
bool is_index_expanded = index_strides[0] == 1;
for (const auto dim : c10::irange(1, index_strides.size())) {
if (index_strides[dim] > 1) { is_index_expanded = false; }
}

// index is expanded
return dim == 0 && is_index_expanded && src.is_contiguous() && self.is_contiguous();
}

using scatter_add_expanded_index_fn = void(*)(const Tensor&, const Tensor&, const Tensor&);
using scatter_reduce_expanded_index_fn = void(*)(const Tensor&, const Tensor&, const Tensor&, const SCATTER_GATHER_OP& reduce, bool);
using gather_expanded_index_fn = void (*)(const Tensor&, const Tensor&, const Tensor&);

DECLARE_DISPATCH(scatter_add_expanded_index_fn, scatter_add_expanded_index_stub);
DECLARE_DISPATCH(scatter_reduce_expanded_index_fn, scatter_reduce_expanded_index_stub);
DECLARE_DISPATCH(gather_expanded_index_fn, gather_expanded_index_stub);

}} // namespace at::native
Loading
0