pytorch/test
Saurabh Mishra 381d0cb239 [DCP] Avoid in-place update and deepcopy during dudpe (#149320)
Summary:
Avoid in-place update and deepcopy during dudpe. Deepcopy becomes prohibitively expensive with models having a huge number of FQNs. This was manifestd in the Ads 2K experiment as well. Here are the results from the TextRay model in Mitra:

#### Control job with deepcopy regression:
First save ~24.8s
Global step latency is ~7-8s

Test job with the new fix to avoid deepcopy:
First save is ~21s
global step latency ~2s

Test Plan:
```
buck test 'fbcode//mode/dev-nosan' fbcode//caffe2/test/distributed/checkpoint:test_planner
```
https://www.internalfb.com/intern/testinfra/testrun/3940649945104822

Differential Revision: D71245218

Pull Request resolved: https://github.com/pytorch/pytorch/pull/149320
Approved by: https://github.com/MeetVadakkanchery
2025-03-18 16:08:40 +00:00
..
ao/sparsity Skip ao_sparsity TestComposability for missing FBGEMM (#144146) 2025-03-11 13:02:18 +00:00
autograd Fix unused Python variables in test/[a-d]* (#134665) 2024-12-13 22:13:12 +00:00
backends/xeon
benchmark_utils PEP585 update - test (#145176) 2025-01-22 04:48:28 +00:00
bottleneck_test Fix unused Python variables in test/[a-d]* (#134665) 2024-12-13 22:13:12 +00:00
cpp [AOTInductor] Add function to free buffer (#149161) 2025-03-18 02:43:14 +00:00
cpp_api_parity
cpp_extensions [MAIA] [Autocast] Enable autocast on MAIA device (#148511) 2025-03-18 03:46:22 +00:00
custom_backend
custom_operator [dynamo] make some more graph break messages readable in English [2/N] (#147385) 2025-02-26 09:20:28 +00:00
distributed [DCP] Avoid in-place update and deepcopy during dudpe (#149320) 2025-03-18 16:08:40 +00:00
distributions Temp disable MKL in DistributionKernels.cpp (#146174) 2025-02-01 18:53:11 +00:00
dynamo fix two accuracy regression (#149172) 2025-03-17 19:34:00 +00:00
dynamo_expected_failures Add meta function for out variants of ones,zeros,empty (#149098) 2025-03-14 22:17:30 +00:00
dynamo_skips Introduce UserDefinedExceptionClassVariable (#146504) 2025-03-11 18:55:45 +00:00
edge Use std::string_view in tests (#146120) 2025-02-04 09:51:36 +00:00
error_messages
expect [WIP] Initial implementation of Grouped Gemm API (#148531) 2025-03-11 21:49:46 +00:00
export Support subclass constructor capturing in export (#147014) 2025-03-16 18:19:19 +00:00
forward_backward_compatibility Revert "[PGNCCL] Launch kernel on current stream & remove record_stream entirely (#148590)" 2025-03-17 22:43:15 +00:00
functorch Symintify transpose_ (#149057) 2025-03-17 19:11:54 +00:00
fx Make dynamism code robust to NotImplementedException (#148823) 2025-03-14 23:38:19 +00:00
higher_order_ops Support subclass constructor capturing in export (#147014) 2025-03-16 18:19:19 +00:00
inductor Revert "[AOTI] Update test runner to use the new APIs (#147105)" 2025-03-18 15:25:40 +00:00
inductor_expected_failures Set enable_faithful_generator_behavior flag to True (#142513) 2025-02-08 22:42:12 +00:00
inductor_skips [BE] Remove test_ops from FIXME_inductor_dont_reset_dynamo (#145307) 2025-01-27 18:12:39 +00:00
jit Consistently use load_torchbind_test_lib in tests (#148082) 2025-03-03 19:37:28 +00:00
jit_hooks
lazy [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
mobile Typo Errors fixed in multiple files (#148262) 2025-03-09 12:21:40 +00:00
nn Remove outdated skipCUDAIfCudnnVersionLessThan decoration (#148940) 2025-03-13 18:02:50 +00:00
onnx [ONNX] Remove inaccurate test comment (#148813) 2025-03-08 08:55:56 +00:00
optim Remove deprecate method and attirbute in LRScheduler (#147301) 2025-03-05 05:30:19 +00:00
package Remove outdated test skipif conditions for Python3.9 (#146144) 2025-01-31 19:01:04 +00:00
profiler Clean up grid in execution trace (#149159) 2025-03-14 07:12:16 +00:00
quantization Add test coverage (#149182) 2025-03-14 09:38:29 +00:00
scripts
strobelight/examples Enable strobelight profiling specific compile frame ids using COMPILE_STROBELIGHT_FRAME_FILTER (#147549) 2025-02-22 03:44:53 +00:00
test_img
torch_np [BE]: Enable ruff SLOT checks (#146276) 2025-02-04 19:18:23 +00:00
typing Revert "Fix non-bitwise type annotations for Tensor operators (see #145838) (#146845)" 2025-02-18 19:01:27 +00:00
xpu [Intel GPU] Enable fp64 GEMM (#140677) 2025-02-17 08:15:55 +00:00
_test_bazel.py
allowlist_for_publicAPI.json Improve typing in torch/types.py (#145237) 2025-01-28 05:29:12 +00:00
conftest.py Apply ruff fixes to tests (#146140) 2025-02-04 05:41:01 +00:00
create_dummy_torchscript_model.py
delete.py
hi.py
HowToWriteTestsUsingFileCheck.md
linear.py
load_torchscript_model.py
minioptest_failures_dict.json
mkl_verbose.py
mkldnn_verbose.py
pytest_shard_custom.py
run_doctests.sh
run_test.py Skip some tests not using gradcheck on slowgradcheck (#149220) 2025-03-17 00:34:52 +00:00
simulate_nccl_errors.py
slow_tests.json Update slow tests (#149300) 2025-03-17 11:39:29 +00:00
test_accelerator.py Generalize pin memory logic for accelerator when non blocking copy happened (#143783) 2025-01-23 03:43:05 +00:00
test_ao_sparsity.py
test_appending_byte_serializer.py Add AppendingByteSerializer class (#148226) 2025-03-02 08:20:58 +00:00
test_autocast.py Enable TemporaryFileName tests on Windows (#146311) 2025-02-07 06:06:18 +00:00
test_autograd_fallback.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_autograd.py [BE][Ez]: ISC001 Auto concatenate implicit one line strings (#146408) 2025-02-04 19:07:04 +00:00
test_autoload.py
test_binary_ufuncs.py Fix lerp weight type promotion (#141117) 2025-01-24 01:18:20 +00:00
test_bundled_images.py
test_bundled_inputs.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_ci_sanity_check_fail.py
test_comparison_utils.py
test_compile_benchmark_util.py
test_complex.py
test_content_store.py torch.utils._content_store: fix error in hash_storage on XPU (#147785) 2025-02-26 23:57:59 +00:00
test_cpp_api_parity.py Enable C++ API parity tests on AArch64 (#145370) 2025-01-30 22:42:49 +00:00
test_cpp_extensions_aot.py [MAIA] [Autocast] Enable autocast on MAIA device (#148511) 2025-03-18 03:46:22 +00:00
test_cpp_extensions_jit.py op should NOT be static in aoti_torch_call_dispatcher (#149208) 2025-03-15 01:47:11 +00:00
test_cpp_extensions_mtia_backend.py
test_cpp_extensions_open_device_registration.py Update pin memory related APIs to not pass 'device' argument (#131858) 2025-01-15 17:23:35 +00:00
test_cpp_extensions_stream_and_event.py
test_cuda_expandable_segments.py Revert "Use absolute path path.resolve() -> path.absolute() (#129409)" 2025-01-04 14:17:20 +00:00
test_cuda_multigpu.py [CUDA] try to abate some flakiness in test_stream_event_nogil (#148796) 2025-03-12 19:12:50 +00:00
test_cuda_nvml_based_avail.py
test_cuda_primary_ctx.py Remove outdated skipIfRocmVersionLessThan decorations (#148941) 2025-03-11 18:37:40 +00:00
test_cuda_sanitizer.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_cuda_trace.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_cuda.py Move get accelerator to use build time flags when possible (#146098) 2025-03-10 13:17:58 +00:00
test_custom_ops.py [dynamo] improved graph break messages for some common graph break sites [1/N] (#146525) 2025-02-20 00:08:13 +00:00
test_dataloader.py Remove NO_MULTIPROCESSING_SPAWN checks (#146705) 2025-02-28 05:53:19 +00:00
test_datapipe.py Remove unactivated test (#146233) 2025-02-04 05:26:04 +00:00
test_decomp.py Update ruff linter for PEP585 (#147540) 2025-02-22 04:45:17 +00:00
test_deploy.py
test_determination.py
test_dispatch.py [BE][CI] bump ruff to 0.9.0: string quote styles (#144569) 2025-02-24 19:56:09 +00:00
test_dlpack.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_dynamic_shapes.py [dynamic shapes] add backed_size_oblivious option (#148696) 2025-03-11 21:52:34 +00:00
test_expanded_weights.py No actual change, just remove variable contain Tensors from global scope (#143225) 2024-12-17 16:14:25 +00:00
test_extension_utils.py Move privateuse1 test out of test_utils and make them serial (#145380) 2025-01-23 00:31:39 +00:00
test_fake_tensor.py Add information about checkpoint offset to untyped storages when torch.load under FakeTensorMode (#147787) 2025-03-06 12:04:39 +00:00
test_file_check.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_flop_counter.py Build RowwiseScaledMM.cu for SM89 (#145676) 2025-02-01 11:44:58 +00:00
test_foreach.py [CI][CUDA] Move away from cuda12.4, Add cuda12.6 eager CI tests (#148602) 2025-03-07 00:15:04 +00:00
test_function_schema.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_functional_autograd_benchmark.py Enable Windows tests (#146666) 2025-02-08 00:55:20 +00:00
test_functional_optim.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_functionalization_of_rng_ops.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_functionalization.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_futures.py
test_fx_experimental.py PEP585: Add noqa to necessary tests (#146391) 2025-02-12 15:29:50 +00:00
test_fx_passes.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_fx_reinplace_pass.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_fx.py [BE]: Apply ruff PERF403 to use dict comprehensions more often (#149257) 2025-03-18 00:46:07 +00:00
test_hop_infra.py Support torch.compile rng selective activation checkpointing with cudagraph (#146878) 2025-02-28 00:47:03 +00:00
test_hub.py
test_import_stats.py
test_indexing.py [ROCm] Improve backwards indexing when stride is not one (#147630) 2025-03-11 19:02:48 +00:00
test_itt.py
test_jit_autocast.py PEP585 update - test (#145176) 2025-01-22 04:48:28 +00:00
test_jit_disabled.py
test_jit_fuser_legacy.py
test_jit_fuser_te.py [BE][CI] bump ruff to 0.9.0: string quote styles (#144569) 2025-02-24 19:56:09 +00:00
test_jit_fuser.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_jit_legacy.py
test_jit_llga_fuser.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_jit_profiling.py
test_jit_simple.py
test_jit_string.py PEP585 update - test (#145176) 2025-01-22 04:48:28 +00:00
test_jit.py [BE]: Apply ruff PERF403 to use dict comprehensions more often (#149257) 2025-03-18 00:46:07 +00:00
test_jiterator.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_kernel_launch_checks.py
test_legacy_vmap.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_license.py
test_linalg.py [BE]: Apply ruff PERF403 to use dict comprehensions more often (#149257) 2025-03-18 00:46:07 +00:00
test_logging.py
test_masked.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_maskedtensor.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_matmul_cuda.py [WIP] Initial implementation of Grouped Gemm API (#148531) 2025-03-11 21:49:46 +00:00
test_meta.py [inductor] fix index.Tensor fallback (#144736) 2025-01-16 09:38:29 +00:00
test_metal.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_mkl_verbose.py
test_mkldnn_fusion.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_mkldnn_verbose.py
test_mkldnn.py [BE][CI] bump ruff to 0.8.4 (#143753) 2024-12-24 12:24:10 +00:00
test_mobile_optimizer.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_model_exports_to_core_aten.py
test_module_tracker.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_modules.py Disable slow gradcheck for nn.Transformer ModuleInfo (#145531) 2025-01-25 00:58:03 +00:00
test_monitor.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_mps.py [MPS] Add bicubic2d_aa (#149378) 2025-03-18 05:35:41 +00:00
test_multiprocessing_spawn.py Remove NO_MULTIPROCESSING_SPAWN checks (#146705) 2025-02-28 05:53:19 +00:00
test_multiprocessing.py Remove NO_MULTIPROCESSING_SPAWN checks (#146705) 2025-02-28 05:53:19 +00:00
test_namedtensor.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_namedtuple_return_api.py
test_native_functions.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_native_mha.py [ROCm] Update to AOTriton 0.8b (#140172) 2024-12-06 21:45:18 +00:00
test_nestedtensor.py Introduce UserDefinedExceptionClassVariable (#146504) 2025-03-11 18:55:45 +00:00
test_nn.py [MPS] Add bicubic2d_aa (#149378) 2025-03-18 05:35:41 +00:00
test_nnapi.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_numba_integration.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_numpy_interop.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_openmp.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_ops_fwd_gradients.py
test_ops_gradients.py
test_ops_jit.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_ops.py [ARM] Fix bug in _ref_test_helper in test_ops and fix failing test on Aarch64 (#146597) 2025-02-25 14:15:10 +00:00
test_optim.py Convert Tensor lr to 0-dim as needed for the optimizer to normally work (#145674) 2025-03-17 23:07:05 +00:00
test_out_dtype_op.py [Codemod][AddExplicitStrictExportArg] caffe2/test (#143688) 2024-12-27 07:58:44 +00:00
test_overrides.py Use std::string_view in tests (#146120) 2025-02-04 09:51:36 +00:00
test_package.py
test_per_overload_api.py
test_prims.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_proxy_tensor.py Add meta function for out variants of ones,zeros,empty (#149098) 2025-03-14 22:17:30 +00:00
test_pruning_op.py
test_public_bindings.py Remove public_allowlist from TestPublicBindings.test_correct_module_names and ensure private_allowlist-ed things are actually private (#145620) 2025-01-27 17:30:02 +00:00
test_python_dispatch.py Delete torch._library.register_functional_op (#145110) 2025-01-18 00:58:25 +00:00
test_pytree.py Revert "[pytree] add APIs to determine a class is a namedtuple or PyStructSequence (#113257)" 2025-03-14 23:13:34 +00:00
test_quantization.py Add support for prototype affine quantization in pt2e flow (#141421) 2024-12-24 04:22:18 +00:00
test_reductions.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_scatter_gather_ops.py
test_schema_check.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_segment_reductions.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_serialization.py Make torch.serialization.skip_data work with torch.load (#148018) 2025-03-06 12:04:46 +00:00
test_set_default_mobile_cpu_allocator.py
test_shape_ops.py [Quant] flip: throw runtime error for QUInt4x2 and QUInt2x4 input (#147430) 2025-02-25 03:47:40 +00:00
test_show_pickle.py
test_sort_and_select.py Fix linter F821 error (#146665) 2025-02-08 07:19:37 +00:00
test_sparse_csr.py [CUDA][SDPA] Compute reference in test_triton_scaled_dot_product_attention_block_size_16_cuda_float32 in float64 (#146461) 2025-02-06 23:28:56 +00:00
test_sparse_semi_structured.py [TEST][SPARSE] Simplify branching in test_cusparselt_backend (#148318) 2025-03-05 10:17:00 +00:00
test_sparse.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_spectral_ops.py Re-add stft option to align window for center = false (#146379) 2025-02-06 14:07:13 +00:00
test_stateless.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_static_runtime.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_subclass.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_sympy_utils.py [Inductor] Expand Identity ops prior to block pattern matching (#146000) 2025-02-08 18:11:53 +00:00
test_tensor_creation_ops.py [Inductor] Add input value checking to randint meta function (#147191) 2025-02-25 02:18:16 +00:00
test_tensorboard.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_tensorexpr_pybind.py
test_tensorexpr.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_testing.py Enable some tests on Windows (#146243) 2025-02-05 03:54:28 +00:00
test_throughput_benchmark.py Fix Throughputbenchmark issue (#144669) 2025-01-26 03:37:20 +00:00
test_torch.py Revert "Refactor test/test_torch.py by moving testcase to test_indexing.py (#148875)" 2025-03-11 15:27:25 +00:00
test_transformers_privateuse1.py Split test_transformers.py (#147441) 2025-02-26 11:54:24 +00:00
test_transformers.py [SDPA] Respect sdpa_kernel's priority_order setting in torch.compile (#147768) 2025-03-13 18:52:34 +00:00
test_type_hints.py Revert "Use absolute path path.resolve() -> path.absolute() (#129409)" 2025-01-04 14:17:20 +00:00
test_type_info.py
test_type_promotion.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_typing.py [4/N] Apply py39 ruff and pyupgrade fixes (#143257) 2025-01-04 10:47:51 +00:00
test_unary_ufuncs.py Enable some tests on Windows (#146243) 2025-02-05 03:54:28 +00:00
test_utils_config_module.py Add check that envvar configs are boolean (#145454) 2025-02-05 19:40:10 +00:00
test_utils_filelock.py filelock: Make waitcounter variant to use (#139816) 2024-12-12 01:18:34 +00:00
test_utils.py [utils] add try_import method for importing optional modules (#145528) 2025-01-25 00:14:07 +00:00
test_view_ops.py Fix overflow in checkInBoundsForStorage (#147352) 2025-02-27 15:48:50 +00:00
test_vulkan.py Fix unused Python variables in test/[e-z]* (#136964) 2024-12-18 23:02:30 +00:00
test_weak.py Consistently use load_torchbind_test_lib in tests (#148082) 2025-03-03 19:37:28 +00:00
test_xnnpack_integration.py [BE][Ez]: ISC001 Auto concatenate implicit one line strings (#146408) 2025-02-04 19:07:04 +00:00
test_xpu.py Fix test_device_memory_allocated (#147311) 2025-02-17 19:00:53 +00:00