{"push_id":3017911163,"size":25,"distinct_size":25,"ref":"refs/heads/export-D12874599","head":"814516e66bf48d22c1a3ee89185964971a7c7ab6","before":"46aea25023f532d2e7645710ccb21b4b732b680a","commits":[{"sha":"5fbaf0eaf888a173dfbdb82cc310b8b089145130","author":{"name":"Michael Suo","email":"531e1ca2df76db74aba0331c372942cf6ea18dc2@fb.com"},"message":"add augmented assignment ops (#13364)\n\nSummary:\nThis PR changes the compiler to correctly emit in-place operators for augmented assignments (`+=` and friends).\n- To better match the Python AST structure, add an `AugAssign` tree view and make `Assign` apply only to `=` assignments.\n- Emit those `AugAssign` exprs in the compiler, dispatching to in-place aten ops for tensors and lowering to simple assignments for scalar types.\n- In order to preserve (suspect) ONNX export semantics, add a pass to lower the in-place operators to out-of-place operators.\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13364\n\nDifferential Revision: D12899734\n\nPulled By: suo\n\nfbshipit-source-id: bec83be0062cb0235eb129aed78d6110a9e2c146","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/5fbaf0eaf888a173dfbdb82cc310b8b089145130"},{"sha":"86192301b39301da41ca664ab4fa678b0e4d113e","author":{"name":"Zachary DeVito","email":"ffbacb804f60e1eea39c96029c00fe9a377f84d7@fb.com"},"message":"Fix a few bugs in format and vararg handling (#13492)\n\nSummary:\nThere are a couple subtle bugs in the way varargs is implemented:\n\n1. it fails if you pass 0 arguments, because it doesn't handle the case when there are 0 varargs, and because Operator::matches was not updated.\n2. it breaks all the named-based lookups on nodes. For instance node->get<int>(attr::value)\n   will return a single entry of the varargs if you look it up by name.\n\nFurthermore it complicates some assumptions about the positional arguments (e.g. they use to be\n1-to-1 with node inputs but with varargs they are not).\n\nBecause varargs are only being used for format, this diff instead\njust allows format to take any value as input, regardless of type. It just provides a way to set is_vararg\nfrom the schema but does not restrict the type of the varargs things. This is inline with\nthe pre-existing behavior for is_vararg so it doesn't require Operator::matches changes.\n\nThis also keeps format inline with how print works, and is closer to the python implementation of format. Note that the implementation\nof format already worked with arbitrary IValues so restricting to strings was just making it more conservative than needed.\n\nThis also fixes the implementation of format to work when there are 0 arguments or text before and after a format string, where it would not print things.\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13492\n\nDifferential Revision: D12896989\n\nPulled By: zdevito\n\nfbshipit-source-id: 21425bac8edc81709030a7408180494edea0a54b","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/86192301b39301da41ca664ab4fa678b0e4d113e"},{"sha":"61a2d47ec684735960264d6f0b71eefb4e04228d","author":{"name":"Sergei Nikolaev","email":"ab1d2dfda77a65e13c9a8cd26a798bb0ea5ec6c4@nvidia.com"},"message":"Special handling for 1D covolutional kernels in cuDNN flavor of conv_op. (#12902)\n\nSummary:\nEssentially makes cuDNN to think of those kernels like of Nx1 ones.\nPull Request resolved: https://github.com/pytorch/pytorch/pull/12902\n\nReviewed By: BIT-silence\n\nDifferential Revision: D10852862\n\nPulled By: soumith\n\nfbshipit-source-id: 7416cf6d131177340d21cbf1d42c1daa6c7cad8c","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/61a2d47ec684735960264d6f0b71eefb4e04228d"},{"sha":"2f82a0682687552c27f86312de012c95cbb754f5","author":{"name":"Tongzhou Wang","email":"96b5c3d5a7a36c8be47478427b2e4d4231204fe0@gmail.com"},"message":"Fix half_tensor.bernoulli_(double) (#13474)\n\nSummary:\nFixes https://github.com/pytorch/pytorch/issues/12431\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13474\n\nDifferential Revision: D12897834\n\nPulled By: SsnL\n\nfbshipit-source-id: 598250fd7b9f1d2509ec0e5012724d7895a62daf","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/2f82a0682687552c27f86312de012c95cbb754f5"},{"sha":"1e1dd88c4a028d7cd5d682a4add59ce6adcc0117","author":{"name":"Freddie Mendoza","email":"f3f2d6854fb17ff65e6deb8037a33949d3deb64f@us.ibm.com"},"message":"Add Linux ppc64le CPU/GPU CI build status\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/13507\n\nDifferential Revision: D12902281\n\nPulled By: soumith\n\nfbshipit-source-id: d2c89dcf08dcbe1e451ae52e85256f658155a0e1","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/1e1dd88c4a028d7cd5d682a4add59ce6adcc0117"},{"sha":"bcb851a3d6fcace9324fbd0425578bbdd6708ee8","author":{"name":"Gregory Chanan","email":"405a4c10dc10d9753e4d637a51ebfa857b6fcbb3@fb.com"},"message":"Write gesv derivatives in terms of native function.\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/13469\n\nReviewed By: ezyang\n\nDifferential Revision: D12889116\n\nPulled By: gchanan\n\nfbshipit-source-id: 1a25dd6ec3fda5897c5cabbb9a62423b50bfda36","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/bcb851a3d6fcace9324fbd0425578bbdd6708ee8"},{"sha":"3d392cc5ecf9885e2bf24b9214bcf20525cdc5d4","author":{"name":"Haixin Liu","email":"0d50128d3c1747002709abef0e4e97354be7ca8c@fb.com"},"message":"Migrate dnnlowp code to open source directory (#13500)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13500\n\nThis diff migrate dnnlowp related files and operators from deeplearning/quantization/caffe2 and deeplearning/quantization/dnnlowp to the open source directory.\n\nReviewed By: jspark1105\n\nDifferential Revision: D10842192\n\nfbshipit-source-id: 53d0666d0ae47a01db9c48114345d746b0a4f11f","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/3d392cc5ecf9885e2bf24b9214bcf20525cdc5d4"},{"sha":"9f2b2cac37da4476dde478d063cc5a5f2edb0e91","author":{"name":"Tongzhou Wang","email":"96b5c3d5a7a36c8be47478427b2e4d4231204fe0@gmail.com"},"message":"Fix handling all empty bags in CUDA embedding bag (#13483)\n\nSummary:\nFixes https://github.com/pytorch/pytorch/issues/11847\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13483\n\nDifferential Revision: D12902914\n\nPulled By: SsnL\n\nfbshipit-source-id: 577a53e815231e988da716b1ee5667e1f36408ca","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/9f2b2cac37da4476dde478d063cc5a5f2edb0e91"},{"sha":"2827fc7681cd342abbe07de852a3757a4e656ed0","author":{"name":"Gregory Chanan","email":"405a4c10dc10d9753e4d637a51ebfa857b6fcbb3@fb.com"},"message":"Add native wrappers for inplace bitwise operators.\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/13490\n\nDifferential Revision: D12894826\n\nPulled By: gchanan\n\nfbshipit-source-id: bd7a0a50e824d92f8ad39e159c1c10318741191d","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/2827fc7681cd342abbe07de852a3757a4e656ed0"},{"sha":"cc3cecdba0cd74cdd7c0cb3d97f70c6f81bebf14","author":{"name":"Guoxia Wang","email":"b51152d81b32a708d4326d3d7142ae57befa31eb@gmail.com"},"message":"Fix the bug when compile using nvcc compiler. (#13509)\n\nSummary:\nI found a bug about compiling the cuda file when I install maskrcnn-benchmark lib.\n\n`python setup.py build develop` will throw the error:\n```\n  File \"/usr/local/lib/python2.7/dist-packages/torch/utils/cpp_extension.py\", line 214, in unix_wrap_compile\n    original_compile(obj, src, ext, cc_args, cflags, pp_opts)\n  File \"/usr/lib/python2.7/distutils/unixccompiler.py\", line 125, in _compile\n    self.spawn(compiler_so + cc_args + [src, '-o', obj] +\nTypeError: coercing to Unicode: need string or buffer, list found\n```\n\nFor more information, please see [issue](https://github.com/facebookresearch/maskrcnn-benchmark/issues/99).\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13509\n\nDifferential Revision: D12902675\n\nPulled By: soumith\n\nfbshipit-source-id: b9149f5de21ae29f94670cb2bbc93fa368f4e0f7","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/cc3cecdba0cd74cdd7c0cb3d97f70c6f81bebf14"},{"sha":"34dd831dc2ad8b6ac504aa97eb06fad0467a1213","author":{"name":"Xiaomeng Yang","email":"fa3cdf6a720cb5ffb1e60f18b20b9cd8e7c08285@fb.com"},"message":"Revert MKL rowwise moments (#13480)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13480\n\nRevert D12845220 since the MKL functions are using multi-thread while the single-thread run is slower than eigen version.\n\ni-am-not-moving-c2-to-c10\n\nReviewed By: houseroad\n\nDifferential Revision: D12891751\n\nfbshipit-source-id: 2a61727b269a304daeee2af6ff7fee7820cb5344","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/34dd831dc2ad8b6ac504aa97eb06fad0467a1213"},{"sha":"da029ca0422ca95c7489e15fdd9c1f9dc12459d5","author":{"name":"Junjie Bai","email":"7c824f2e1c4d8e5c9445dd7ded4e96febed020f7@in.tum.de"},"message":"Skip Conv1D tests for MIOPEN (#13512)\n\nSummary:\nmiopen currently only supports 2d\n\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13512\n\nDifferential Revision: D12903307\n\nPulled By: bddppq\n\nfbshipit-source-id: a8b0f0580a1859f1e0c1518907406abf013c4c8c","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/da029ca0422ca95c7489e15fdd9c1f9dc12459d5"},{"sha":"7b48a7c3f659f4749ebb612110879d4ffccd24e2","author":{"name":"Pieter Noordhuis","email":"177aca405d8f85334d5f348395ebc138d0a69b62@gmail.com"},"message":"Bump gloo (#13513)\n\nSummary:\nIncluded math.h changes needed in #13422 and later PRs.\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13513\n\nDifferential Revision: D12906653\n\nPulled By: pietern\n\nfbshipit-source-id: 4d4ec7566bf07925b4ce86eb0c63d784cb6b9992","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/7b48a7c3f659f4749ebb612110879d4ffccd24e2"},{"sha":"519570def878eb48cc9a50183f90f7009c3afdb8","author":{"name":"Jerry Zhang","email":"210765c83ad755402ff54425bf352bae661dc900@fb.com"},"message":"Rename dim(i) -> size(i) - 2/2\n\nSummary:\nCodemod generated with clangr shard mode, 50 files per diff,\nclangr code(dim->size): diffusion/FBS/browse/master/fbcode/caffe2/caffe2/fb/codemods/TensorMethodRename.cpp\n\nReviewed By: salexspb\n\nDifferential Revision: D12896721\n\nfbshipit-source-id: deb0290354a1ffd69d080f0f126479844bf04e3c","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/519570def878eb48cc9a50183f90f7009c3afdb8"},{"sha":"f74fa91b8ea23dcbcef17e4809ae19735eb071d6","author":{"name":"Wanchao Liang","email":"cec3728d98a9425a5de254a15f6461e93e451168@users.noreply.github.com"},"message":"Fix EraseListConstruct pass during ONNX export (#13195)\n\nSummary:\nThere should really be a single place to erase or do special treatment to the prim::ListConstruct during ONNX export, this will make it consistent across different calls. e.g it will give a correct output graph in the following case:\n```python\nclass Test(torch.nn.Module):\n    def forward(self, input):\n        return torch.cat([input, torch.zeros(input.size(0), 1).type_as(input)], dim=1)\n```\nBefore this PR, we have the onnx graph as:\n\n```\ngraph(%0 : Byte(2, 3)) {\n  %1 : Long() = onnx::Constant[value={0}](), scope: Test\n  %2 : Dynamic = onnx::Shape(%0), scope: Test\n  %3 : Long() = onnx::Gather[axis=0](%2, %1), scope: Test\n  %4 : Long() = onnx::Constant[value={1}](), scope: Test\n  %5 : Dynamic = onnx::Unsqueeze[axes=[0]](%3)\n  %6 : Dynamic = onnx::Unsqueeze[axes=[0]](%4)\n  %7 : int[] = onnx::Concat[axis=0](%5, %6)\n  %8 : Float(2, 1) = onnx::ConstantFill[dtype=1, input_as_shape=1, value=0](%7), scope: Test\n  %9 : Byte(2, 1) = onnx::Cast[to=2](%8), scope: Test\n  %10 : Byte(2, 4) = onnx::Concat[axis=1](%0, %9), scope: Test\n  return (%10);\n}\n\n```\nWhich is wrong since onnx does not have a concept of `int[]`, here is the onnx graph after this PR:\n```\ngraph(%0 : Byte(2, 3)) {\n  %1 : Long() = onnx::Constant[value={0}](), scope: Test\n  %2 : Dynamic = onnx::Shape(%0), scope: Test\n  %3 : Long() = onnx::Gather[axis=0](%2, %1), scope: Test\n  %4 : Long() = onnx::Constant[value={1}](), scope: Test\n  %5 : Dynamic = onnx::Unsqueeze[axes=[0]](%3)\n  %6 : Dynamic = onnx::Unsqueeze[axes=[0]](%4)\n  %7 : Dynamic = onnx::Concat[axis=0](%5, %6)\n  %8 : Float(2, 1) = onnx::ConstantFill[dtype=1, input_as_shape=1, value=0](%7), scope: Test\n  %9 : Byte(2, 1) = onnx::Cast[to=2](%8), scope: Test\n  %10 : Byte(2, 4) = onnx::Concat[axis=1](%0, %9), scope: Test\n  return (%10);\n}\n```\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13195\n\nDifferential Revision: D12812541\n\nPulled By: wanchaol\n\nfbshipit-source-id: db6be8bf0cdc85c426d5cbe09a28c5e5d860eb3e","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/f74fa91b8ea23dcbcef17e4809ae19735eb071d6"},{"sha":"8fc63e523ec3d306c2359acbf8d75dd4ff031df2","author":{"name":"Haixin Liu","email":"0d50128d3c1747002709abef0e4e97354be7ca8c@fb.com"},"message":"Reslove lint and infer warning (#13520)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13520\n\nReslove lint and infer warning shown in the dnnlowp migration diff.\n\nReviewed By: dskhudia\n\nDifferential Revision: D12905972\n\nfbshipit-source-id: b07400e25b80ea656795b005b91ac1438abe2695","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/8fc63e523ec3d306c2359acbf8d75dd4ff031df2"},{"sha":"4bca51e3e7dc83c424ce85f68feb32a6bf3ee463","author":{"name":"Mingzhe Li","email":"87b4aaa1dc912a8334eaabde375e4f886aa3e900@devvm26471.prn1.facebook.com"},"message":"unify BLAS check between Caffe2 and ATen (#13514)\n\nSummary:\nThis PR is unifying BLAS check between Caffe2 and ATen. It skips redundant BLAS check for ATen in certain conditions.\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13514\n\nReviewed By: orionr\n\nDifferential Revision: D12905272\n\nPulled By: mingzhe09088\n\nfbshipit-source-id: 05163704f363c97a762ff034f88a67bd32ac01d0","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/4bca51e3e7dc83c424ce85f68feb32a6bf3ee463"},{"sha":"0479517325a79b22d9eeb2de612d7e09a6ea4bad","author":{"name":"Peter Goldsborough","email":"887f44f8e6d2ec27368b0275bb31f402fb8ca659@fb.com"},"message":"Add modernize-* checks to clang-tidy (#13196)\n\nSummary:\nEnables almost all `modernize-*` checks in clang-tidy. This warns against things such as:\n\n- Use of `const std::string&` instead of new-style `std::string` + move,\n- Using old-style loops instead of range-for loops,\n- Use of raw `new`\n- Use of `push_back` instead of `emplace_back`\n- Use of `virtual` together with `override` (`override` is sufficient)\n\nezyang\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13196\n\nDifferential Revision: D12891837\n\nPulled By: goldsborough\n\nfbshipit-source-id: 4d0f782a09eb391ee718d3d66f74c095ee121c09","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/0479517325a79b22d9eeb2de612d7e09a6ea4bad"},{"sha":"2b280c6b748dfdcffe7e338695529b6744fc66d9","author":{"name":"Soumith Chintala","email":"88de463b5797707cf3425f85a415c3d869db732b@gmail.com"},"message":"minor build fixes for incremental builds (#13293)\n\nSummary:\nWorkaround a cmake-ninja bug, which doesn't track the dependency between xxx-generated-xxx.cu and updating the timestamp of build.ninja, (the consequence being cmake is rerun on a next rebuild).\nThis was surfaced after analyzing the outputs of `ninja -d explain install`\n\nNow, compared to https://github.com/pytorch/pytorch/pull/11487#issue-214450604 we're seeing:\n\n```\npython setup.py rebuild develop    # first time - ~1m 42s\npython setup.py rebuild develop    # second time - ~12 s\n```\n\nThis gets even faster if we replace the default linker with multithreaded linkers like `lld` or `gold`\nPull Request resolved: https://github.com/pytorch/pytorch/pull/13293\n\nDifferential Revision: D12916346\n\nPulled By: soumith\n\nfbshipit-source-id: 3817c09a9a687fa2273f90444e5071ce1bb47260","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/2b280c6b748dfdcffe7e338695529b6744fc66d9"},{"sha":"2bc6a7a260afbe9ce68a252feb23911cb87c8397","author":{"name":"Jongsoo Park","email":"9a3e35cef3c98d8190c15db076afab6069cc7549@fb.com"},"message":"enable group conv test in NHWC layout in CPU (#12428)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/12428\n\nGroup conv in NHWC layout was enabled in CPU after D7547497.\nIn D7547497, unit test of group conv in NHWC layout in CPU was enabled in group_conv_test.py but not in conv_test.py . This diff also enables it in conv_test.py .\n\nReviewed By: BIT-silence\n\nDifferential Revision: D10233252\n\nfbshipit-source-id: aeeaf3eedc60e1cf6321b5a1dbe6a561e3aacbde","distinct":true,"url":"https://api.github.com/repos/dzhulgakov/pytorch/commits/2bc6a7a260afbe9ce68a252feb23911cb87c8397"}]}
{"actor":{"display_login":"dzhulgakov"}}