payload: {"push_id":3855486541,"size":91,"distinct_size":0,"ref":"refs/heads/gh/zou3519/76/orig","head":"c06a33f7ed1d305d2533fef033a46f70fb3fd1ba","before":"39ca60d29b718c8b5c82183c95fc7b7e0140ec6e","commits":[{"sha":"e4b75c65807340e3c0ec6d2d3bb18825a43acdab","author":{"name":"Tongzhou Wang","email":"468113180dd407454ec24eea0894cf51fc958f21@users.noreply.github.com"},"message":"Fix typo in dataloader.py\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23132\n\nDifferential Revision: D16402759\n\nPulled By: ezyang\n\nfbshipit-source-id: 9500570f6b7492a67a2af853bfb63a5667e6b7b5","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/e4b75c65807340e3c0ec6d2d3bb18825a43acdab"},{"sha":"60c46dd4df4255f1977a003709b1b5bc15215a79","author":{"name":"Hong Xu","email":"0b3307686866342c46008b0805da3549c5788939@topbug.net"},"message":"Let CMake handle NCCL detection instead of our handcrafted Python script. (#22930)\n\nSummary:\n ---\n\nHow does the current code subsume all detections in the deleted `nccl.py`?\n\n- The dependency of `USE_NCCL` on the OS and `USE_CUDA` is handled as dependency options in `CMakeLists.txt`.\n\n- The main NCCL detection happens in [FindNCCL.cmake](https://github.com/pytorch/pytorch/blob/8377d4b32c12206a0f9401e81a5e5796c8fc01a8/cmake/Modules/FindNCCL.cmake), which is called by [nccl.cmake](https://github.com/pytorch/pytorch/blob/8377d4b32c12206a0f9401e81a5e5796c8fc01a8/cmake/External/nccl.cmake). When `USE_SYSTEM_NCCL` is false, the previous Python code defer the detection to `find_package(NCCL)`. The change in `nccl.cmake` retains this.\n\n- `USE_STATIC_NCCL` in the previous Python code simply changes the name of the detected library. This is done in `IF (USE_STATIC_NCCL)`.\n\n- Now we only need to look at how the lines below line 20 in `nccl.cmake` are subsumed. These lines list paths to header and library directories that NCCL headers and libraries may reside in and try to search these directories for the key header and library files in turn. These are done by `find_path` for headers and `find_library` for the library files in `FindNCCL.cmake`.\n  * The call of [find_path](https://cmake.org/cmake/help/v3.8/command/find_path.html) (Search for `NO_DEFAULT_PATH` in the link) by default searches for headers in `<prefix>/include` for each `<prefix>` in `CMAKE_PREFIX_PATH` and `CMAKE_SYSTEM_PREFIX_PATH`. Like the Python code, this commit sets `CMAKE_PREFIX_PATH` to search for `<prefix>` in `NCCL_ROOT_DIR` and home to CUDA.  `CMAKE_SYSTEM_PREFIX_PATH` includes the standard directories such as `/usr/local` and `/usr`. `NCCL_INCLUDE_DIR` is also specifically handled.\n\n  * Similarly, the call of [find_library](https://cmake.org/cmake/help/v3.8/command/find_library.html) (Search for `NO_DEFAULT_PATH` in the link) by default searches for libraries in directories including `<prefix>/lib` for each `<prefix>` in `CMAKE_PREFIX_PATH` and `CMAKE_SYSTEM_PREFIX_PATH`. But it also handles the edge cases intended to be solved in the Python code more properly:\n     - It only searches for `<prefix>/lib64` (and `<prefix>/lib32`) if it is appropriate on the system.\n     - It only searches for `<prefix>/lib/<arch>` for the right `<arch>`, unlike the Python code searches for `lib/<arch>` in a generic way (e.g., the Python code searches for `/usr/lib/x86_64-linux-gnu` but in reality systems have `/usr/lib/x86_64-some-customized-name-linux-gnu`, see https://unix.stackexchange.com/a/226180/38242 ).\n\n ---\n\nRegarding for relevant issues:\n\n- https://github.com/pytorch/pytorch/issues/12063 and https://github.com/pytorch/pytorch/issues/2877: These are properly handled, as explained in the updated comment.\n- https://github.com/pytorch/pytorch/issues/2941 does not changes NCCL detection specifically for Windows (it changed CUDA detection).\n- b7e258f81ef61d19b884194cdbcd6c7089636d46 A versioned library detection is added, but the order is reversed: The unversioned library becomes preferred. This is because normally unversioned libraries are linked to versioned libraries and preferred by users, and local installation by users are often unversioned. Like the document of [find_library](https://cmake.org/cmake/help/v3.8/command/find_library.html) suggests:\n\n> When using this to specify names with and without a version suffix, we recommend specifying the unversioned name first so that locally-built packages can be found before those provided by distributions.\nPull Request resolved: https://github.com/pytorch/pytorch/pull/22930\n\nDifferential Revision: D16440275\n\nPulled By: ezyang\n\nfbshipit-source-id: 11fe80743d4fe89b1ed6f96d5d996496e8ec01aa","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/60c46dd4df4255f1977a003709b1b5bc15215a79"},{"sha":"792d527746ba83886fce941e7cc36c6c130f13ec","author":{"name":"Tongzhou Wang","email":"468113180dd407454ec24eea0894cf51fc958f21@users.noreply.github.com"},"message":"Fix typos in comments\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23130\n\nDifferential Revision: D16402755\n\nPulled By: ezyang\n\nfbshipit-source-id: 8bf9767c0012aed8ad91289bbaf2d979f130d728","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/792d527746ba83886fce941e7cc36c6c130f13ec"},{"sha":"174f7a586fd5d3b7b5b185a52f31ebb021631f33","author":{"name":"Edward Yang","email":"dbd597f5635f432486c5d365e9bb585b3eaa1853@fb.com"},"message":"Switch from KaTeX to imgmath for documentation rendering.\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23025\n\nTest Plan: Imported from OSS\n\nDifferential Revision: D16441000\n\nPulled By: ezyang\n\nfbshipit-source-id: c1ab557cb8163e9c69585c32d237c076582a6d73","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/174f7a586fd5d3b7b5b185a52f31ebb021631f33"},{"sha":"21f52ce0d436d5d4f9bfb2eb70e966cf4292bfd0","author":{"name":"Edward Yang","email":"dbd597f5635f432486c5d365e9bb585b3eaa1853@fb.com"},"message":"Remove trailing semicolon from TORCH_CHECK macros.\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/22339\n\nTest Plan: Imported from OSS\n\nDifferential Revision: D16182743\n\nPulled By: ezyang\n\nfbshipit-source-id: 3c4ac0abe49ce83901bd5b07279a135857035f80","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/21f52ce0d436d5d4f9bfb2eb70e966cf4292bfd0"},{"sha":"2073cc73f821de160021859c0e7a2b809d882c70","author":{"name":"Sebastian Messmer","email":"ef83834e7ce69695dd3376888da48b8a95d5228b@fb.com"},"message":"Use concrete types in jit test for generic lists (#23192)\n\nSummary:\nCreating an untyped generic list is deprecated, we always want type information to be present.\n\nThis fixes test cases and removes one that used lists with ambigious types.\n\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23192\nghstack-source-id: 86972891\n\nDifferential Revision: D16431482\n\nfbshipit-source-id: 4ca5cd142118a3f0a4dcb8cd77383127c54abb29","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/2073cc73f821de160021859c0e7a2b809d882c70"},{"sha":"9d03133c1408ad68337ea19db50bf065f369c73f","author":{"name":"Sebastian Messmer","email":"ef83834e7ce69695dd3376888da48b8a95d5228b@fb.com"},"message":"ListConstruct sets correct element type (#23189)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23189\nghstack-source-id: 86971099\n\nDifferential Revision: D16430987\n\nfbshipit-source-id: 9af255075b670e6f811e1a9d104f2738a38e9515","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/9d03133c1408ad68337ea19db50bf065f369c73f"},{"sha":"67aede98c3b2a3fb058e33ae874815c6edc70c7e","author":{"name":"Junjie Bai","email":"7c824f2e1c4d8e5c9445dd7ded4e96febed020f7@in.tum.de"},"message":"Exclude unused onnx targets (#23195)\n\nSummary:\ne.g. onnxifi_dummy\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23195\n\nDifferential Revision: D16441493\n\nPulled By: bddppq\n\nfbshipit-source-id: 76816e7a7c73f60f3c7abea10fbdbf086cea0476","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/67aede98c3b2a3fb058e33ae874815c6edc70c7e"},{"sha":"60afcabc6fa08c7e9d9bdf3ff637a75d869c82cb","author":{"name":"Sebastian Messmer","email":"ef83834e7ce69695dd3376888da48b8a95d5228b@fb.com"},"message":"DictConstruct sets correct types (#23171)\n\nSummary:\n-\n\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23171\nghstack-source-id: 87009037\n\nDifferential Revision: D16423640\n\nfbshipit-source-id: 0f4f9b12759b8a9defaae775e33e2b0af9bb7791","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/60afcabc6fa08c7e9d9bdf3ff637a75d869c82cb"},{"sha":"e56f11b750b3c5fb1f212acd6f4644ba92f9f042","author":{"name":"Sebastian Messmer","email":"ef83834e7ce69695dd3376888da48b8a95d5228b@fb.com"},"message":"Fix onnx export (#23180)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23180\n\nThis pass needs to be run later because it breaks jit graph invariants and the lower_all_tuples pass still needs a valid jit graph.\n\nReviewed By: houseroad\n\nDifferential Revision: D16427680\n\nfbshipit-source-id: 427c7e74c59a3d7d62f2855ed626cf6258107509","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/e56f11b750b3c5fb1f212acd6f4644ba92f9f042"},{"sha":"19be7ece1565f41b4cae5b55f39f5bcecf4776f5","author":{"name":"Sebastian Messmer","email":"ef83834e7ce69695dd3376888da48b8a95d5228b@fb.com"},"message":"Fix erase_number_types test (#23181)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23181\n\nWe can't run dead code elimination after erasing number types because dce relies on graph invariants that erase_number_types breaks.\n\nReviewed By: houseroad\n\nDifferential Revision: D16427819\n\nfbshipit-source-id: d1b98a74d2558b14d4be692219691149689a93d8","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/19be7ece1565f41b4cae5b55f39f5bcecf4776f5"},{"sha":"192dd8faf18ada6dd7704ffedb093a272e91ee3c","author":{"name":"Sebastian Messmer","email":"ef83834e7ce69695dd3376888da48b8a95d5228b@fb.com"},"message":"Set correct list type in pybind_utils (#23188)\n\nSummary:\n-\n\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23188\nghstack-source-id: 87008828\n\nDifferential Revision: D16430911\n\nfbshipit-source-id: 9d9d29bf42402e0fff323dfd0ed65fcfd5564fd3","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/192dd8faf18ada6dd7704ffedb093a272e91ee3c"},{"sha":"f112c522af8a380c1001be96d21129299dd982ac","author":{"name":"Jerry Zhang","email":"210765c83ad755402ff54425bf352bae661dc900@fb.com"},"message":"LinearReLU module (#23022)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23022\n\nwill be tested in later diffs.\n\nAdded LinearReLU module for qat, allows conversion from torch.nn._intrisic.LinearReLU to torch.nn._intrinsic.qat.LinearReLU\n\nReviewed By: zafartahirov\n\nDifferential Revision: D16286800\n\nfbshipit-source-id: 84cce3551d46e649781b9b6107d4076e10e51018","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/f112c522af8a380c1001be96d21129299dd982ac"},{"sha":"0dabaad819f75d8fa76cc6ee42639b71466fffde","author":{"name":"Thomas Viehmann","email":"ff0dc9ba250002871f7aabbaf6729ea66fc93fea@beamnet.de"},"message":"Add Module::replace_module to C++ api (#22546)\n\nSummary:\nThis adds a replace_module method to the C++ api. This is needed to be able to replace modules.\n\nThe primary use case I am aware of is to enable finetuning of models.\nGiven that finetuning is fairly popular these days, I think it would be good to facilitate this in the C++ api as well.\n\nThis has been reported by Jean-Christophe Lombardo on the [forums](https://discuss.pytorch.org/t/finetuning-a-model-on-multiple-gpu-in-c/49195).\nPull Request resolved: https://github.com/pytorch/pytorch/pull/22546\n\nDifferential Revision: D16440289\n\nPulled By: yf225\n\nfbshipit-source-id: c136f914b8fc5c0f1975d877ea817fda5c851cda","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/0dabaad819f75d8fa76cc6ee42639b71466fffde"},{"sha":"3be0a2b4bea5aa2903d14f20f98bc6df2576ea8b","author":{"name":"Michael Suo","email":"531e1ca2df76db74aba0331c372942cf6ea18dc2@fb.com"},"message":"Parse all stmts in class defs\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23031\n\nTest Plan: Imported from OSS\n\nDifferential Revision: D16383327\n\nPulled By: suo\n\nfbshipit-source-id: 6485109a66e653b7f26d30b91a97af8d71594e22","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/3be0a2b4bea5aa2903d14f20f98bc6df2576ea8b"},{"sha":"2a37740a869ffb4d1558accfd5694b5c7fed7050","author":{"name":"Michael Suo","email":"531e1ca2df76db74aba0331c372942cf6ea18dc2@fb.com"},"message":"make RHS of assignment optional\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23033\n\nTest Plan: Imported from OSS\n\nDifferential Revision: D16383330\n\nPulled By: suo\n\nfbshipit-source-id: 63c55fae06f0cd534eb5053f91a773431ad052d4","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/2a37740a869ffb4d1558accfd5694b5c7fed7050"},{"sha":"017870a6335dacb81c975a70bd66a840b4b98323","author":{"name":"Michael Suo","email":"531e1ca2df76db74aba0331c372942cf6ea18dc2@fb.com"},"message":"kill module_lookup\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23097\n\nTest Plan: Imported from OSS\n\nDifferential Revision: D16383329\n\nPulled By: suo\n\nfbshipit-source-id: 282f8bac2245d584b66139daf4e5ea7b2b317295","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/017870a6335dacb81c975a70bd66a840b4b98323"},{"sha":"d8220b059901450bb138fbf27dadda8ff6965819","author":{"name":"Michael Suo","email":"531e1ca2df76db74aba0331c372942cf6ea18dc2@fb.com"},"message":"add simple inheritance support to AST\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23109\n\nTest Plan: Imported from OSS\n\nDifferential Revision: D16441914\n\nPulled By: suo\n\nfbshipit-source-id: 18a57762d376759b98c18bc160eacbcc99f78ee9","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/d8220b059901450bb138fbf27dadda8ff6965819"},{"sha":"bae10db522a2f8c83adc366145a6fb8efd17454a","author":{"name":"Abhinav Jauhri","email":"76f076712db72530e817d6048c8bf6c66fc9d0e2@fb.com"},"message":"Incorporating arguments to pull production operators and adding device type. (#23197)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/pytorch/pull/23197\n\nIncorporating arguments to pull production operators and adding device type.\n\nReviewed By: mingzhe09088\n\nDifferential Revision: D16387263\n\nfbshipit-source-id: e20ed82225eb1e4b7ab1756ec157967b055d85bf","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/bae10db522a2f8c83adc366145a6fb8efd17454a"},{"sha":"e0f632c58bc9c11a4c66558bb8318c6597d736ec","author":{"name":"Zachary DeVito","email":"ffbacb804f60e1eea39c96029c00fe9a377f84d7@fb.com"},"message":"pickler.cpp: respect __getstate__/__setstate__\n\nSummary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/23190\n\nTest Plan: Imported from OSS\n\nDifferential Revision: D16431553\n\nPulled By: zdevito\n\nfbshipit-source-id: 680ea1507c12727fd17aedb3067f522cf490e306","distinct":false,"url":"https://api.github.com/repos/pytorch/pytorch/commits/e0f632c58bc9c11a4c66558bb8318c6597d736ec"}]}
other: {"actor":{"display_login":"zou3519"}}