Rebase to latest commits#5
Merged
gunandrose4u merged 210 commits intogunandrose4u:masterfrom Sep 11, 2020
Merged
Conversation
Summary: This PR adds a new test suite, test_ops.py, designed for generic tests across all operators with OpInfos. It currently has two kinds of tests: - it validates that the OpInfo has the correct supported dtypes by verifying that unsupported dtypes throw an error and supported dtypes do not - it runs grad and gradgrad checks on each op and its variants (method and inplace) that has an OpInfo This is a significant expansion and simplification of the current autogenerated autograd tests, which spend considerable processing their inputs. As an alternative, this PR extends OpInfos with "SampleInputs" that are much easier to use. These sample inputs are analogous to the existing tuples in`method_tests()`. Future PRs will extend OpInfo-based testing to other uses of `method_tests()`, like test_jit.py, to ensure that new operator tests can be implemented entirely using an OpInfo. Pull Request resolved: #43451 Reviewed By: albanD Differential Revision: D23481723 Pulled By: mruberry fbshipit-source-id: 0c2cdeacc1fdaaf8c69bcd060d623fa3db3d6459
…CTCLoss). (#44050) Summary: Pull Request resolved: #44050 We don't actually turn on the CTCLoss tests since they fail, but this allows you to toggle check_forward_only and for the code to actually run. Test Plan: Imported from OSS Reviewed By: zou3519 Differential Revision: D23481091 Pulled By: gchanan fbshipit-source-id: f2a3b0a2dee27341933c5d25f1e37a878b04b9f6
Summary: Pull Request resolved: #43733 Reviewed By: malfet Differential Revision: D23405121 Pulled By: ezyang fbshipit-source-id: 95fa80b5dcb11abaf4d2507af15646a98029c80d
Summary: PR #38157 fixed type checking for mypy by including `if False` guards on some type-checker-only imports. However other typecheckers - [like pyright](microsoft/pylance-release#262 (comment)) - will respect this logic and ignore the imports. Using [`if TYPE_CHECKING`](https://docs.python.org/3/library/typing.html#typing.TYPE_CHECKING) instead means both mypy and pyright will work correctly. [For background, an example of where the current code fails](microsoft/pylance-release#262) is if you make a file `tmp.py` with the contents ```python import torch torch.ones((1,)) ``` Then [`pyright tmp.py --lib`](https://github.com/microsoft/pyright#command-line) will fail with a `"ones" is not a known member of module` error. This is because it can't find the `_VariableFunctions.pyi` stub file, as pyright respects the `if False` logic. After adding the `TYPE_CHECKING` guard, all works correctly. Credit to erictraut for suggesting the fix. Pull Request resolved: #43339 Reviewed By: agolynski Differential Revision: D23348142 Pulled By: ezyang fbshipit-source-id: c8a58122a7b0016845c311da39a1cc48748ba03f
…n for prim ops"" Summary: Original commit changeset: b2c712a512a2 Test Plan: CI Reviewed By: jiatongzhou Differential Revision: D23477710 fbshipit-source-id: 177ee56a82234376b7a5c3fc33441f8acfd59fea
Summary: Pull Request resolved: #44055 There is no functional change here. Another patch will rename NewCriterionTest to CriterionTest. Test Plan: Imported from OSS Reviewed By: zou3519 Differential Revision: D23482572 Pulled By: gchanan fbshipit-source-id: de364579067e2cc9de7df6767491f8fa3a685de2
…ing (#44051) Summary: Pull Request resolved: #44051 Instead, just emit the operator name. The entire schema is pretty wordy and doesn't add any additional information. Test Plan: - modified test: `pytest test/test_vmap.py -v` Reviewed By: ezyang Differential Revision: D23481184 Pulled By: zou3519 fbshipit-source-id: 9fbda61fc63565507b04c8b87e0e326a2036effa
Summary: Pull Request resolved: #43842 Reviewed By: ailzhang Differential Revision: D23426892 Pulled By: ezyang fbshipit-source-id: 63318721fb3f4a57d417f9a87e57c74f6d4e6e18
…buckets. (#43734) Summary: Pull Request resolved: #43734 Following the additional GH comments on the original PR #43307. ghstack-source-id: 111327130 Test Plan: Run `python test/distributed/test_c10d.py` Reviewed By: smessmer Differential Revision: D23380288 fbshipit-source-id: 4b8889341c57b3701f0efa4edbe1d7bbc2a82ced
Summary: Pull Request resolved: #44082 Automated submodule is running into some test failures and I am not sure how can I rebase that. automated submodule update: #43817 Test Plan: CI tests Reviewed By: jianyuh Differential Revision: D23489240 fbshipit-source-id: a49b01786ebf0a59b719a0abf22398e1eafa90af
Summary: Pull Request resolved: #44056 Test Plan: Imported from OSS Reviewed By: zou3519 Differential Revision: D23482573 Pulled By: gchanan fbshipit-source-id: dde0f1624330dc85f48e5a0b9d98fb55fdb72f68
#44078) Summary: Pull Request resolved: #44078 When PyTorch mobile inference failed and throw exception, if caller catch and not crash the app, we are not able to track all the inference failures. So we are adding native soft error reporting to capture all the failures occurring during module loading and running including both crashing and on-crashing failures. Since c10::Error has good error messaging stack handling (D21202891 (a058e93)), we are utilizing it for the error handling and message print out. ghstack-source-id: 111307080 Test Plan: Verified that the soft error reporting is sent through module.cpp when operator is missing, make sure a logview mid is generated with stack trace: https://www.internalfb.com/intern/logview/details/facebook_android_softerrors/5dd347d1398c1a9a73c804b20f7c2179/?selected-logview-tab=latest. Error message with context is logged below: ``` soft_error.cpp [PyTorchMobileInference] : Error occured during model running entry point: Could not run 'aten::embedding' with arguments from the 'CPU' backend. 'aten::embedding' is only available for these backends: [BackendSelect, Named, Autograd, Autocast, Batched, VmapMode]. BackendSelect: fallthrough registered at xplat/caffe2/aten/src/ATen/core/BackendSelectFallbackKernel.cpp:3 [backend fallback] Named: registered at xplat/caffe2/aten/src/ATen/core/NamedRegistrations.cpp:7 [backend fallback] Autograd: fallthrough registered at xplat/caffe2/aten/src/ATen/core/VariableFallbackKernel.cpp:31 [backend fallback] Autocast: fallthrough registered at xplat/caffe2/aten/src/ATen/autocast_mode.cpp:253 [backend fallback] Batched: registered at xplat/caffe2/aten/src/ATen/BatchingRegistrations.cpp:317 [backend fallback] VmapMode: fallthrough registered at xplat/caffe2/aten/src/ATen/VmapModeRegistrations.cpp:33 [backend fallback] Exception raised from reportError at xplat/caffe2/aten/src/ATen/core/dispatch/OperatorEntry.cpp:261 (m ``` Reviewed By: iseeyuan Differential Revision: D23428636 fbshipit-source-id: 82d5d9c054300dff18d144f264389402d0b55a8a
Summary: Pull Request resolved: #44020 Pull Request resolved: pytorch/glow#4853 Add AOT config Reviewed By: yinghai Differential Revision: D23414435 fbshipit-source-id: 3c48acf29889fcf63def37a48de382e675e0e1f3
Summary: Pull Request resolved: #44100 Test Plan: Imported from OSS Reviewed By: iseeyuan Differential Revision: D23496532 Pulled By: ljk53 fbshipit-source-id: 1e5b9059482e423960349d1361a7a98718c2d9ed
Summary: Pull Request resolved: #44054 **Summary** This commit improves the error message that is printed when an `Optional` type annotation with an unsupported contained type is encountered. At present, the `Optional` is printed as-is, and `Optional[T]` is syntatic sugar for `Union[T, None]`, so that is what shows up in the error message and can be confusing. This commit modifies the error message so that it prints `T` instead of `Union[T, None]`. **Test Plan** Continuous integration. Example of old message: ``` AssertionError: Unsupported annotation typing.Union[typing.List, NoneType] could not be resolved. ``` Example of new message: ``` AssertionError: Unsupported annotation typing.Union[typing.List, NoneType] could not be resolved because typing.List could not be resolved. ``` **Fixes** This commit fixes #42859. Test Plan: Imported from OSS Reviewed By: gmagogsfm Differential Revision: D23490365 Pulled By: SplitInfinity fbshipit-source-id: 2aa9233718e78cf1ba3501ae11f5c6f0089e29cd
Summary: Pull Request resolved: #44076 add fakelowp test for tanh + quantize Test Plan: net runner Reviewed By: venkatacrc Differential Revision: D23339662 fbshipit-source-id: 96c2cea12b41bf3df24aa46e601e053dca8e9481
Summary: Bucketize returns integers, currently this triggers an internal assert, so we apply the mechanism for this case (also used for argmax etc.). Pull Request resolved: #44102 Reviewed By: zou3519 Differential Revision: D23500048 Pulled By: albanD fbshipit-source-id: fdd869cd1feead6616b532b3e188bd5512adedea
Summary: Pull Request resolved: #44123 Reviewed By: seemethere Differential Revision: D23504193 Pulled By: malfet fbshipit-source-id: 3570dc0aa879a3fdd43f3ecd41ee9e745006cfde
Summary: Pull Request resolved: #44094 Test Plan: Imported from OSS Reviewed By: SplitInfinity Differential Revision: D23494950 Pulled By: bertmaher fbshipit-source-id: 676c4e57267c4ad92065ea90b06323918dd5b0de
Summary: Pull Request resolved: #44036 Running replaceAtenConvolution on older traced model wont work as _convolution signature has changed and replaceAtenConvolution was changed to account for that. But we did not preserve the old behavior during that. This change restores the old behavior while keeing the new one. Test Plan: Imported from OSS Reviewed By: jerryzh168 Differential Revision: D23476775 fbshipit-source-id: 73a0c2b7387f2a8d82a8d26070d0059972126836
Summary: Add missing `hardsigmoid`, `silu`, `hardswish` and `multi_head_attention_forward` to functional.pyi.in Embed some typing annotations into functional.py Pull Request resolved: #44093 Reviewed By: ezyang Differential Revision: D23494384 Pulled By: malfet fbshipit-source-id: 27023c16ff5951ceaebb78799c4629efa25f7c5c
Summary: Polishes DDP join api docstrings and makes a few minor cosmetic changes. Pull Request resolved: #43973 Reviewed By: zou3519 Differential Revision: D23467238 Pulled By: rohan-varma fbshipit-source-id: faf0ee56585fca5cc16f6891ea88032336b3be56
Summary: Pull Request resolved: #44134 Test Plan: Imported from OSS Reviewed By: bertmaher Differential Revision: D23505810 Pulled By: ZolotukhinM fbshipit-source-id: d0b3d70d4c2a44a8c3773631d09a25a98ec59370
Summary: Stack from [ghstack](https://github.com/ezyang/ghstack): * **#43188 Enable Enum pickling/unpickling.** * #42963 Add Enum TorchScript serialization and deserialization support * #42874 Fix enum constant printing and add FileCheck to all Enum tests * #43121 Add Enum convert back to Python object support Pull Request resolved: #43188 Reviewed By: zdevito Differential Revision: D23365141 Pulled By: gmagogsfm fbshipit-source-id: f0c93d4ac614dec047ad8640eb6bd9c74159b558
Summary: * multiple -Wpessimizing-moves * `static` within `__host__` `__device__` function Test Plan: ```lang=bash buck build -c fbcode.cuda_use_clang=true fblearner/flow/projects/dper:workflow ``` Reviewed By: andrewjcg Differential Revision: D23506573 fbshipit-source-id: 1490a1267e39e067d3ef836ef9b1cd5d7a28f724
Summary: Pull Request resolved: #44440 `aten-op.cc` takes a long time to compile due to the large generated constructor. For each case, the `std::function` constructor and the initialization functions are inlined, producing a huge amount of intermediate code that takes a long time to optimize, given that many compiler optimization passes are superlinear in the function size. This diff moves each case to a separate function, so that each one is cheap to optimize, and the constructor is just a large jump table, which is easy to optimize. Reviewed By: dzhulgakov Differential Revision: D23593741 fbshipit-source-id: 1ce7a31cda10d9b0c9d799716ea312a291dc0d36
Summary: Loops with variable start can also be normalized. Pull Request resolved: #44133 Test Plan: updated testNormalizeStartVariable. Reviewed By: navahgar Differential Revision: D23507097 Pulled By: cheng-chang fbshipit-source-id: 4e9aad1cd4f4a839f59a00bf8ddf97637a1a6648
Summary: Fixes ROCm-specific workarounds introduced by #44259. This adds new hipify mappings that properly handle cub outside of caffe2 sources. Pull Request resolved: #44431 Reviewed By: mrshenli Differential Revision: D23617417 Pulled By: ngimel fbshipit-source-id: 5d16afb6b8e6ec5ed049c51571866b0878d534ca
Summary: Pull Request resolved: #44406 this fix makes fakelowp identical to hw - mask out the floating point number with 0x7fff so we are always dealing with positive numbers - dsp implementation is correct, ice-ref suffers from this same problem Test Plan: - tested with test_fusions.py, can't enable the test until the fix in ice-ref appears Reviewed By: venkatacrc Differential Revision: D23603878 fbshipit-source-id: a72d93a4bc811f98d1b5e82ddb204be028addfeb
Reviewed By: zertosh Differential Revision: D23621463 fbshipit-source-id: 1cd7e94e480c7073c9a0aad55aeba98de4b96164
Summary: Pull Request resolved: #44464 Reviewed By: agolynski Differential Revision: D23624921 Pulled By: colesbury fbshipit-source-id: 72bed69edcf467a99eda9a3b97e894015c992dce
Summary: Pull Request resolved: #44381 Perhaps this was necessary when the test was originally introduced, but it's difficult to figure out what is actually tested. And I don't think we actually use NotImplementedErorrs. Test Plan: Imported from OSS Reviewed By: mruberry Differential Revision: D23598646 Pulled By: gchanan fbshipit-source-id: aa18154bfc4969cca22323e61683a301198823be
Summary: Pull Request resolved: #43958 There is not any difference between these tests (I'm merging them), so let's merge them in the JIT as well. Test Plan: Imported from OSS Reviewed By: mruberry Differential Revision: D23452337 Pulled By: gchanan fbshipit-source-id: e6d13cdb164205eec3dbb7cdcd0052b02c961778
Summary: Pull Request resolved: #44398 These end up executing the same tests, so no reason to have them separate. Test Plan: Imported from OSS Reviewed By: mruberry Differential Revision: D23600855 Pulled By: gchanan fbshipit-source-id: 0952492771498bf813f1bf8e1d7c8dce574ec965
Summary: This PR fixes unexpected `SystemError` when warnings are emitted and warning filters are set. ## Current behavior ``` $ python -Werror >>> import torch >>> torch.range(1, 3) UserWarning: torch.range is deprecated in favor of torch.arange and will be removed in 0.5. Note that arange generates values in [start; end), not [start; end]. The above exception was the direct cause of the following exception: Traceback (most recent call last): File "<stdin>", line 1, in <module> SystemError: <built-in method range of type object at 0x7f38c7703a60> returned a result with an error set ``` ## Expected behavior ``` Traceback (most recent call last): File "<stdin>", line 1, in <module> UserWarning: torch.range is deprecated and will be removed in a future release because its behavior is inconsistent with Python's range builtin. Instead, use torch.arange, which produces values in [start, end). ``` ## Note Python exception must be raised if `PyErr_WarnEx` returns `-1` ([python docs](https://docs.python.org/3/c-api/exceptions.html#issuing-warnings)). This PR fixes warnings raised in the following code: ```py import torch torch.range(1, 3) torch.autograd.Variable().volatile torch.autograd.Variable().volatile = True torch.tensor(torch.tensor([])) torch.tensor([]).new_tensor(torch.tensor([])) ``` Pull Request resolved: #44371 Reviewed By: mrshenli Differential Revision: D23598410 Pulled By: albanD fbshipit-source-id: 2fbcb13fe4025dbebaf1fd837d4c8e0944e05010
Summary: Pull Request resolved: #44347 Cloned from Pull Request resolved: #44097, because the original author Sinan has completed the internship and now is unable to submit this diff. As johnsonpaul mentioned in D23277575 (7d517cf). It looks like all processes were allocating memory on GPU-ID=0. I was able to reproduce it by running `test_ddp_comm_hook_allreduce_with_then_hook_nccl` unit test of `test_c10d.py` and running `nvidia-smi` while test was running. The issue was reproduced as: ``` +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | 0 3132563 C python 777MiB | | 0 3132564 C python 775MiB | | 4 3132564 C python 473MiB | +-----------------------------------------------------------------------------+ ``` I realized that as we initialize ProcessGroupNCCL both processes were initially allocating memory on GPU 0. We later also realized that I forgot `isHighPriority` input of `getStreamFromPool` and `futureNCCLCallbackStreams_.push_back(std::make_shared<at::cuda::CUDAStream>(at::cuda::getStreamFromPool(device_index)));` was just creating a vector of GPU 0 streams. As i changed `at::cuda::getStreamFromPool(device_index)` to `at::cuda::getStreamFromPool(false, device_index)`. `nvidia-smi` looked like: ``` +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | 0 673925 C python 771MiB | | 0 673926 C python 771MiB | | 1 673925 C python 771MiB | | 1 673926 C python 771MiB | | 2 673925 C python 771MiB | | 2 673926 C python 771MiB | | 3 673925 C python 771MiB | | 3 673926 C python 771MiB | | 4 673925 C python 771MiB | | 4 673926 C python 771MiB | | 5 673925 C python 771MiB | | 5 673926 C python 771MiB | | 6 673925 C python 771MiB | | 6 673926 C python 771MiB | | 7 673925 C python 707MiB | | 7 673926 C python 623MiB | +-----------------------------------------------------------------------------+ ``` This confirms that we were just getting GPU 0 streams for the callback. I think this does not explain the `fp16_compress` stability issue, because we were able to reproduce that even without any then callback and just calling copy from fp32 to fp16 before allreduce. However, this can explain other issues where `allreduce` was not on par with `no_hook`. I'll run some additional simulations with this diff. I tried to to replace `getStreamFromPool` by `getDefaultCUDAStream(deviceIndex)` and it wasn't causing additional memory usage. In this diff, I temporarily solved the issue by just initializing null pointers for each device in the constructor and setting the callback stream for corresponding devices inside `ProcessGroupNCCL::getNCCLComm`. After the fix it looks like the memory issue was resolved: ``` +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | 0 2513142 C python 745MiB | | 4 2513144 C python 747MiB | +-----------------------------------------------------------------------------+ ``` I could use a dictionary instead of a vector for `futureNCCLCallbackStreams_`, but since number of devices is fixed, I think it isn't necessary. Please let me know what you think in the comments. ghstack-source-id: 111485483 Test Plan: `test_c10d.py` and some perf tests. Also check `nvidia-smi` while running tests to validate memory looks okay. This diff also fixes the regression in HPC tests as we register a hook: {F322730175} See https://fb.quip.com/IGuaAbD8 (474fdd7e2d268270587bb11a052265bbdccf96a0)bnvy for details. Reviewed By: pritamdamania87 Differential Revision: D23495436 fbshipit-source-id: ad08e1d94343252224595d7c8a279fe75e244822
Summary: cuda builds using clang error out when building caffe2 due to an incorrect std::move This does not fix all known errors, but it's a step in the right direction. Differential Revision: D23626667 fbshipit-source-id: 7d9df886129f671ec430a166dd22e4af470afe1e
Summary: Pull Request resolved: #43651 This is a forward compatibility follow-up to #43086. We switch the conv serialization to output the v2 format instead of the v1 format. The plan is to land this 1 - 2 weeks after the base PR. Test Plan: ``` python test/test_quantization.py TestSerialization.test_conv2d_graph_v2 python test/test_quantization.py TestSerialization.test_conv2d_nobias_graph_v2 ``` Imported from OSS Reviewed By: z-a-f Differential Revision: D23355480 fbshipit-source-id: 4cb04ed8b90a0e3e452297a411d641a15f6e625f
Summary: Previously the specialized types were copied over to the fallback function, although the tensors in the fallback type were not of that type. Pull Request resolved: #44434 Reviewed By: SplitInfinity Differential Revision: D23611943 Pulled By: eellison fbshipit-source-id: 2ea88a97529409f6c5c4c1f59a14b623524933de
Summary: To help with further typing, move dynamically added native contributions from `torch.autograd` to `torch._C._autograd` Fix invalid error handling pattern in https://github.com/pytorch/pytorch/blob/89ac30afb88451efc66ed8077b7bbb222afd3428/torch/csrc/autograd/init.cpp#L13-L15 `PyImport_ImportModule` already raises Python exception and nullptr should be returned to properly propagate the to Python runtime. And all native methods/types in `torch/autograd/__init.py` after `torch._C._init_autograd()` has been called Use f-strings instead of `.format` in test_type_hints.py Fixes #44450 Pull Request resolved: #44451 Reviewed By: ezyang Differential Revision: D23618261 Pulled By: malfet fbshipit-source-id: fa5f739d7cff8410641128b55b810318c5f636ae
Summary: Pull Request resolved: #44224 The purpose of this file is to help developers on PT distributed get upto speed on the code structure and layout for PT Distributed. ghstack-source-id: 111644842 Test Plan: waitforbuildbot Reviewed By: rohan-varma Differential Revision: D23548377 fbshipit-source-id: 561d5b8e257642de172def8fdcc1311fae20690b
Summary: Pull Request resolved: #44234 Changes mobile Method to point to a mobile Module directly instead of the Module ivalue in order to access metadata for logging/debugging, and then adds said logging. ghstack-source-id: 111775806 Test Plan: CI/existing unit tests to test BC Testing fb4a logging: Built fb4a on D23436351 (because usage of run_method isn't replaced yet in this diff), and then checked the Scuba logs to see that the appropriate ad clicks were logged (one ad for Buzzfeed shopping and another about Netflix from Bustle) {F328510687} {F328511201} [Scuba sample of QPL metrics](https://www.internalfb.com/intern/scuba/query/?dataset=qpl_metrics%2Fpytorch_employee&pool=uber&view=samples_client&drillstate=%7B%22sampleCols%22%3A[%22device_model%22%2C%22instance_id_sampled%22%2C%22method%22%2C%22ios_device_class%22%2C%22points_path%22%2C%22userid_sampled%22%2C%22client_sample_rate%22%2C%22browser_name%22%2C%22ios_device_name%22%2C%22points%22%2C%22is_employee%22%2C%22is_test_user%22%2C%22network_only_queries%22%2C%22annotations%22%2C%22oncall_shortname%22%2C%22environment_tags%22%2C%22revoked_queries%22%2C%22annotations_bool%22%2C%22points_data%22%2C%22annotations_double_array%22%2C%22annotations_string_array%22%2C%22revoked_steps%22%2C%22points_set%22%2C%22device_os_version%22%2C%22ota_version_rollout%22%2C%22steps%22%2C%22vadar_calculation_result%22%2C%22app_name%22%2C%22client_push_phase%22%2C%22vadar%22%2C%22release_channel%22%2C%22interaction_class%22%2C%22exposures%22%2C%22annotations_double%22%2C%22deviceid_sampled%22%2C%22is_logged_in%22%2C%22device_os%22%2C%22time%22%2C%22major_os_ver%22%2C%22annotations_int_array%22%2C%22duration_ns%22%2C%22app_build%22%2C%22bucket_id%22%2C%22cache_and_network_queries%22%2C%22value%22%2C%22vadar_v2%22%2C%22quicklog_event%22%2C%22unixname%22%2C%22vadar_calculation_result_v2%22%2C%22trace_tags%22%2C%22annotations_int%22%2C%22quicklog_module%22%2C%22push_phase%22%2C%22year_class%22%2C%22country%22%2C%22capped_duration%22%2C%22ram_class%22%2C%22weight%22%2C%22carrier%22%2C%22app_id%22%2C%22app_version%22%2C%22react_bundle_version%22%2C%22logging_source%22%2C%22is_unsampled_for_scuba%22%2C%22instrumentation_errors%22%2C%22android_cpu_abi_list%22%2C%22days_after_release%22%2C%22cpu_cores%22%2C%22user_bucket%22%2C%22quicklog_action%22%2C%22server_scuba_sample_rate%22%2C%22points_vector%22%2C%22annotations_bool_array%22%2C%22android_device_class%22%2C%22browser_full_version%22%2C%22major_app_ver%22]%2C%22derivedCols%22%3A[]%2C%22mappedCols%22%3A[]%2C%22enumCols%22%3A[]%2C%22hideEmptyColumns%22%3Afalse%2C%22focused_event%22%3A%22%22%2C%22show_metadata%22%3A%22false%22%2C%22start%22%3A%222020-09-08%2011%3A27%3A00%22%2C%22end%22%3A%22start%20%2B%201%20minute%22%2C%22timezone%22%3A%22America%2FLos_Angeles%22%2C%22samplingRatio%22%3A%221%22%2C%22num_samples%22%3A%22100%22%2C%22aggregateList%22%3A[]%2C%22param_dimensions%22%3A[]%2C%22modifiers%22%3A[]%2C%22order%22%3A%22none%22%2C%22order_desc%22%3Atrue%2C%22filterMode%22%3A%22DEFAULT%22%2C%22constraints%22%3A[[%7B%22column%22%3A%22quicklog_event%22%2C%22op%22%3A%22eq%22%2C%22value%22%3A[%22[%5C%22MOBILE_MODULE_STATS%5C%22]%22]%7D%2C%7B%22column%22%3A%22userid_sampled%22%2C%22op%22%3A%22eq%22%2C%22value%22%3A[%22[%5C%22100013484978975%5C%22]%22]%7D]]%2C%22c_constraints%22%3A[[]]%2C%22b_constraints%22%3A[[]]%2C%22metrik_view_params%22%3A%7B%22should_use_legacy_colors%22%3Afalse%2C%22columns_skip_formatting%22%3A[]%2C%22view%22%3A%22samples_client%22%2C%22width%22%3A%221358%22%2C%22height%22%3A%22912%22%2C%22tableID%22%3A%22qpl_metrics%2Fpytorch_employee%22%2C%22fitToContent%22%3Afalse%2C%22format_tooltip_in_percent%22%3Afalse%2C%22use_y_axis_hints_as_limits%22%3Atrue%2C%22has_dynamic_context_menu%22%3Atrue%2C%22has_context_menu%22%3Afalse%2C%22legend_mode%22%3A%22nongrid%22%2C%22connect_nulls%22%3Atrue%2C%22timezone_offset%22%3A420%2C%22timezone%22%3A%22America%2FLos_Angeles%22%2C%22y_min_hint%22%3A0%2C%22should_render_plugins_menu%22%3Afalse%7D%7D&normalized=1599581160) [Scuba sample showing ad source; just the bottom two results](https://www.internalfb.com/intern/scuba/query/?dataset=business_integrity_webpage_semantic&pool=uber&drillstate=%7B%22sampleCols%22%3A[%22from_custom_sampling%22%2C%22data_version%22%2C%22scribe_category_type%22%2C%22page_id%22%2C%22name%22%2C%22source_url%22%2C%22time%22%2C%22title_semantic%22%2C%22major_version%22%2C%22server_protocol%22%2C%22custom_sampling_enabled%22%2C%22ad_id%22%2C%22appversion%22%2C%22clienttime%22%2C%22isemployee%22%2C%22title%22%2C%22images%22%2C%22weight%22%2C%22carrier%22%2C%22is_ad%22%2C%22locale%22%2C%22appid%22%2C%22ip_country%22%2C%22iab_models%22]%2C%22derivedCols%22%3A[]%2C%22mappedCols%22%3A[]%2C%22enumCols%22%3A[]%2C%22return_remainder%22%3Afalse%2C%22should_pivot%22%3Afalse%2C%22is_timeseries%22%3Afalse%2C%22hideEmptyColumns%22%3Afalse%2C%22main_dimension%22%3A%22time%22%2C%22start%22%3A%22-5%20minutes%22%2C%22samplingRatio%22%3A%221%22%2C%22compare%22%3A%22none%22%2C%22axes%22%3A%22linked%22%2C%22overlay_types%22%3A[]%2C%22minBucketSamples%22%3A%22%22%2C%22dimensions%22%3A[]%2C%22scale_type%22%3A%22absolute%22%2C%22num_samples%22%3A%22100%22%2C%22metric%22%3A%22avg%22%2C%22fill_missing_buckets%22%3A%22connect%22%2C%22smoothing_bucket%22%3A%221%22%2C%22top%22%3A%227%22%2C%22markers%22%3A%22%22%2C%22timezone%22%3A%22America%2FLos_Angeles%22%2C%22end%22%3A%22now%22%2C%22show_p95_ci%22%3Afalse%2C%22time_bucket%22%3A%22auto%22%2C%22compare_mode%22%3A%22normal%22%2C%22aggregateList%22%3A[]%2C%22param_dimensions%22%3A[]%2C%22modifiers%22%3A[]%2C%22order%22%3A%22none%22%2C%22order_desc%22%3Atrue%2C%22filterMode%22%3A%22DEFAULT%22%2C%22constraints%22%3A[[%7B%22column%22%3A%22major_version%22%2C%22op%22%3A%22eq%22%2C%22value%22%3A[%22[%5C%22288%5C%22]%22]%7D]]%2C%22c_constraints%22%3A[[]]%2C%22b_constraints%22%3A[[]]%2C%22metrik_view_params%22%3A%7B%22should_use_legacy_colors%22%3Afalse%2C%22columns_skip_formatting%22%3A[]%2C%22view%22%3A%22time_view%22%2C%22width%22%3A%221358%22%2C%22height%22%3A%22912%22%2C%22tableID%22%3A%22business_integrity_webpage_semantic%22%2C%22fitToContent%22%3Afalse%2C%22format_tooltip_in_percent%22%3Afalse%2C%22use_y_axis_hints_as_limits%22%3Atrue%2C%22has_dynamic_context_menu%22%3Atrue%2C%22has_context_menu%22%3Afalse%2C%22legend_mode%22%3A%22nongrid%22%2C%22connect_nulls%22%3Atrue%2C%22timezone_offset%22%3A420%2C%22timezone%22%3A%22America%2FLos_Angeles%22%2C%22y_min_hint%22%3A0%2C%22should_render_plugins_menu%22%3Afalse%7D%7D&view=samples_client&normalized=1599587280) Reviewed By: iseeyuan Differential Revision: D23548687 fbshipit-source-id: 3e63085663f5fd8de90a4c7dbad0a17947aee973
Summary: Pull Request resolved: #44499 Reviewed By: seemethere, xta0 Differential Revision: D23634961 Pulled By: malfet fbshipit-source-id: e32ae29c42c351bcb4f48bc52d4082ae56545e5b
…CCL backends (#43970) Summary: Pull Request resolved: #43970 It is resubmition of #43386 Original commit changeset: 27fbeb161706 ghstack-source-id: 111775070 Test Plan: Added checks to existing unit test and ran it on gpu devserver. Verified the test that was failing in original diff also passes: https://app.circleci.com/pipelines/github/pytorch/pytorch/210229/workflows/86bde47b-f2da-48e3-a618-566ae2713102/jobs/7253683 Reviewed By: pritamdamania87 Differential Revision: D23455047 fbshipit-source-id: b8dc4a30b95570d68a482c19131674fff2a3bc7c
Summary: This PR fixes three OpInfo-related bugs and moves some functions from TestTorchMathOps to be tested using the OpInfo pattern. The bugs are: - A skip test path in test_ops.py incorrectly formatted its string argument - Decorating the tests in common_device_type.py was incorrectly always applying decorators to the original test, not the op-specific variant of the test. This could cause the same decorator to be applied multiple times, overriding past applications. - make_tensor was incorrectly constructing tensors in some cases The functions moved are: - asin - asinh - sinh - acosh - tan - atan - atanh - tanh - log - log10 - log1p - log2 In a follow-up PR more or all of the remaining functions in TestTorchMathOps will be refactored as OpInfo-based tests. Pull Request resolved: #44277 Reviewed By: mrshenli, ngimel Differential Revision: D23617361 Pulled By: mruberry fbshipit-source-id: edb292947769967de9383f6a84eb327f027509e0
Summary: Noticed this bug in `torch.movedim` (#41480). [`std::unique`](https://en.cppreference.com/w/cpp/algorithm/unique) only guarantees uniqueness for _sorted_ inputs. The current check lets through non-unique values when they aren't adjacent to each other in the list, e.g. `(0, 1, 0)` wouldn't raise an exception and instead the algorithm fails later with an internal assert. Pull Request resolved: #44307 Reviewed By: mrshenli Differential Revision: D23598311 Pulled By: zou3519 fbshipit-source-id: fd6cc43877c42bb243cfa85341c564b6c758a1bf
Summary: Pull Request resolved: #44427 Closes #44425 DDP join API currently does not work properly with `model.no_sync()`, see #44425 for details. This PR fixes the problem via the approach mentioned in the issue, namely scheduling an allreduce that tells joined ranks whether to sync in the backwards pass or not. Tests are added for skipping gradient synchronization for various `sync_interval`s. ghstack-source-id: 111786479 Reviewed By: pritamdamania87 Differential Revision: D23609070 fbshipit-source-id: e8716b7881f8eee95e3e3499283e716bd3d7fe76
Summary: Pull Request resolved: #44410 See #44052 for context. One of the cumprod_backward overloads was unused so I just deleted it. Test Plan: - `pytest test/test_autograd.py -v` Reviewed By: mrshenli Differential Revision: D23605503 Pulled By: zou3519 fbshipit-source-id: f9c5b595e62d2d6e71f26580ba96df15cc9de4f7
…rd as operators (#44422) Summary: Pull Request resolved: #44422 See #44052 for context. Test Plan: - `pytest test/test_autograd.py -v` - `pytest test/test_nn.py -v` Reviewed By: mrshenli Differential Revision: D23607691 Pulled By: zou3519 fbshipit-source-id: 09fbcd66b877af4fa85fd9b2f851ed3912ce84d6
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #{issue number}