{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":385408663,"defaultBranch":"main","name":"torchrec","ownerLogin":"pytorch","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2021-07-12T23:15:48.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/21003710?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716217383.0","currentOid":""},"activityList":{"items":[{"before":"96446ee392bee32cd01365515013ecb6e6e62aac","after":"9be187190eac3186d8c2897fe06dd48a644cc46c","ref":"refs/heads/gh-pages","pushedAt":"2024-05-24T15:33:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ 8c7fa2fb956d8c83c5227f2aa12011aab2545dcb ๐Ÿš€","shortMessageHtmlLink":"Deploying to gh-pages from @ 8c7fa2f ๐Ÿš€"}},{"before":"f24c8dcef66504c4dd1473315408c96c50627665","after":"8c7fa2fb956d8c83c5227f2aa12011aab2545dcb","ref":"refs/heads/main","pushedAt":"2024-05-24T15:31:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Sync collectives refactoring (#2039)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2039\n\nReland of D57564130\n\n**What is changed after revert**:\nTorch Library can not be used inside Deploy.\nGuarded in comm_ops.py all operators definitions and autograd registrations with `not torch._running_with_deploy():`\n\n**Catching deploy compat on diff test/land**: D57773561\n\n**Previous diff Summary:**\nThe diff refactors torchrec sync collectives and addresses issues with missing wait_tensor() for backward:\n- Refactoring using latest Torchrec Library Custom Op API with PT2 compatibility\n- Removing non-Native functional collectives calls (c10d_functional), as only native exist now in pytorch and non-native are redispatched to native.\n- Adding test cases for compiled-with-noncompiled ranks (in case of compilation failure on one of the ranks)\n\nIssues fixed:\n- Sync collectives eager backward did not produce gradient -> Fixed\n- Support gradient_division in sync collectives and its compilation -> Done\n- Test coverage of sync collectives comparing results with async collectives and compilation.\n - Fixed Missing wait_tensor\nThe warning:\n```\nW0520 07:16:25.135696 2546100 Functional.cpp:51] Warning: At the time of process termination, there are still 1 unwaited c10d_functional collective calls. Please review your program to ensure c10d_functional.wait_tensor() is invoked on all tensors returned from c10d_functional collective ops before they are used. (function ~WorkRegistry)\nok\n```\n\nReviewed By: ezyang\n\nDifferential Revision: D57774293\n\nfbshipit-source-id: 76da888f4b6e876aa1ad170857e7db76ac418122","shortMessageHtmlLink":"Sync collectives refactoring (#2039)"}},{"before":"b64088b6e749d36e74ba2ed63e70f96d73a74676","after":"cdc45721303ab307b118d01c2dd2859dbb62728e","ref":"refs/heads/nightly","pushedAt":"2024-05-24T11:35:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pytorchbot","name":null,"path":"/pytorchbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/21957446?s=80&v=4"},"commit":{"message":"2024-05-24 nightly release (f24c8dcef66504c4dd1473315408c96c50627665)","shortMessageHtmlLink":"2024-05-24 nightly release (f24c8dc)"}},{"before":"6854114ed13629da016e4d81bcafd5d9448c89f9","after":"f24c8dcef66504c4dd1473315408c96c50627665","ref":"refs/heads/main","pushedAt":"2024-05-24T05:50:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Wrap block_bucketize_sparse_features_inference to make unbucketize_permute non optional (#2028)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2028\n\nIn rw shaarding, unbucketize_permute always return value. The optional value will break the fx trace in _conversion_module\"\n\nExpected a value of type 'List[Tensor]' for argument 'tensors' but instead found type 'List[Optional[Tensor]]'.\n:\n File \".70\", line 235\n values_41 = getitem_86.values()\n offsets_32 = getitem_86.offsets(); getitem_86 = None\n _conversion_module = self._conversion_module([getattr_10, getitem_69, getattr_11, getattr_13]); getattr_10 = getitem_69 = getattr_11 = getattr_13 = None\n ~~~~~~~~~~~~~~~~~~~~~ <--- HERE\n\nReviewed By: YazhiGao\n\nDifferential Revision: D57629524\n\nfbshipit-source-id: 9747d573c1c8a08e3b100cc87bc04ce7e059e59c","shortMessageHtmlLink":"Wrap block_bucketize_sparse_features_inference to make unbucketize_peโ€ฆ"}},{"before":"d5c358a5ead66615cf569547493fa8634ee38808","after":"6854114ed13629da016e4d81bcafd5d9448c89f9","ref":"refs/heads/main","pushedAt":"2024-05-24T02:07:38.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Revert D57564130: Sync collectives refactoring\n\nDifferential Revision:\nD57564130\n\nOriginal commit changeset: e059393c4859\n\nOriginal Phabricator Diff: D57564130\n\nfbshipit-source-id: 8b041fa87a44323a895c78b799b0ec27ddfe81fb","shortMessageHtmlLink":"Revert D57564130: Sync collectives refactoring"}},{"before":"c972d5466040a4df3060cccc463a9087cd989f6d","after":"d5c358a5ead66615cf569547493fa8634ee38808","ref":"refs/heads/main","pushedAt":"2024-05-23T21:26:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"permute_2D_sparse_data Autogad formula (#2034)\n\nSummary:\nX-link: https://github.com/pytorch/FBGEMM/pull/2625\n\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2034\n\nAdding permute_2D_sparse_data python formula for Inductor compilation.\n\nIt's needed for Torchrec sync collectives - verifying with torchrec/distributed/tests:test_comm that tests fwd and bwd for collectives that use this op.\n\nReviewed By: williamwen42\n\nDifferential Revision: D57625720\n\nfbshipit-source-id: 4596111afb12e1e72e643f929497e5941b8706bc","shortMessageHtmlLink":"permute_2D_sparse_data Autogad formula (#2034)"}},{"before":"a29c82ec861c9f925273eeb7536d241dd23e8559","after":"c972d5466040a4df3060cccc463a9087cd989f6d","ref":"refs/heads/main","pushedAt":"2024-05-23T18:52:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Add jit script KJT benchmarks (#2033)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2033\n\nAdd benchmarks for jit scripted KJT methods\n\nReviewed By: gnahzg\n\nDifferential Revision: D57701618\n\nfbshipit-source-id: 4b09ab6841fb151f8d008ef0cbbc1ed5e78f1eef","shortMessageHtmlLink":"Add jit script KJT benchmarks (#2033)"}},{"before":"dfa817c7611559df1e13ffdee6e812a3a494b455","after":"96446ee392bee32cd01365515013ecb6e6e62aac","ref":"refs/heads/gh-pages","pushedAt":"2024-05-23T15:21:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ a29c82ec861c9f925273eeb7536d241dd23e8559 ๐Ÿš€","shortMessageHtmlLink":"Deploying to gh-pages from @ a29c82e ๐Ÿš€"}},{"before":"a4b060218f71daa7cd1549088d8f45c073e2f5ab","after":"a29c82ec861c9f925273eeb7536d241dd23e8559","ref":"refs/heads/main","pushedAt":"2024-05-23T15:17:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"c10::optional -> std::optional in torchrec/inference/include/torchrec/inference/GPUExecutor.h +4 (#2035)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2035\n\nGenerated with\n```\nfbgs -f '.*\\.(cpp|cxx|cc|h|hpp|cu|cuh)$' c10::optional -l | perl -pe 's/^fbsource.fbcode.//' | grep -v executorch | xargs -n 50 perl -pi -e 's/c10::optional/std::optional/'\n```\n\n - If you approve of this diff, please use the \"Accept & Ship\" button :-)\n\n(4 files modified.)\n\nReviewed By: palmje\n\nDifferential Revision: D57631092\n\nfbshipit-source-id: 8c90162c3864d50737ab0ca864e9240f900c17e5","shortMessageHtmlLink":"c10::optional -> std::optional in torchrec/inference/include/torchrecโ€ฆ"}},{"before":"548fe7df7b51718dfba63332d0f59cb6a1207996","after":"b64088b6e749d36e74ba2ed63e70f96d73a74676","ref":"refs/heads/nightly","pushedAt":"2024-05-23T11:34:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pytorchbot","name":null,"path":"/pytorchbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/21957446?s=80&v=4"},"commit":{"message":"2024-05-23 nightly release (a4b060218f71daa7cd1549088d8f45c073e2f5ab)","shortMessageHtmlLink":"2024-05-23 nightly release (a4b0602)"}},{"before":"c2f4eed6920564b2713eca4b27d9c98262d63fc3","after":"a4b060218f71daa7cd1549088d8f45c073e2f5ab","ref":"refs/heads/main","pushedAt":"2024-05-22T19:55:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Break circular dependency on KeyedOptimizer (#2030)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2030\n\nThere is a circular dependency between `torchrec.optim` and `torchrec.distributed`. Example failure trace:\n```\nfrom torchrec.optim.keyed import KeyedOptimizer, OptimizerWrapper\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/optim/__init__.py\", line 23, in \n from torchrec.optim.clipping import GradientClipping, GradientClippingOptimizer # noqa\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/optim/clipping.py\", line 14, in \n from torchrec.optim.keyed import KeyedOptimizer, OptimizerWrapper\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/optim/keyed.py\", line 29, in \n from torchrec.distributed.types import ShardedTensor\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/__init__.py\", line 38, in \n from torchrec.distributed.model_parallel import DistributedModelParallel # noqa\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/model_parallel.py\", line 26, in \n from torchrec.distributed.planner import EmbeddingShardingPlanner, Topology\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/planner/__init__.py\", line 24, in \n from torchrec.distributed.planner.planners import EmbeddingShardingPlanner # noqa\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/planner/planners.py\", line 22, in \n from torchrec.distributed.planner.enumerators import EmbeddingEnumerator\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/planner/enumerators.py\", line 30, in \n from torchrec.distributed.sharding_plan import calculate_shard_sizes_and_offsets\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/sharding_plan.py\", line 19, in \n from torchrec.distributed.embedding import EmbeddingCollectionSharder\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/embedding.py\", line 35, in \n from torchrec.distributed.sharding.cw_sequence_sharding import (\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/sharding/cw_sequence_sharding.py\", line 14, in \n from torchrec.distributed.embedding_lookup import (\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/embedding_lookup.py\", line 27, in \n from torchrec.distributed.batched_embedding_kernel import (\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/distributed/batched_embedding_kernel.py\", line 62, in \n from torchrec.optim.fused import (\n File \"/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/optim/fused.py\", line 14, in \n from torchrec.optim.keyed import KeyedOptimizer\nImportError: cannot import name 'KeyedOptimizer' from partially initialized module 'torchrec.optim.keyed' (most likely due to a circular import) (/data/sandcastle/boxes/eden-trunk-hg-fbcode-fbsource/buck-out/v2/gen/fbcode/f6ce11a18cff399f/apf_cli/compare/tests/__command_test__/command_test#link-tree/torchrec/optim/keyed.py)\n```\n\nReviewed By: dstaay-fb\n\nDifferential Revision: D57656790\n\nfbshipit-source-id: d3c440a08c8f2008e01637983f0f8c3c71f9bc14","shortMessageHtmlLink":"Break circular dependency on KeyedOptimizer (#2030)"}},{"before":"7d7b4df0d14a28cd66c6fea1e35c6182b3bb564c","after":"c2f4eed6920564b2713eca4b27d9c98262d63fc3","ref":"refs/heads/main","pushedAt":"2024-05-22T19:49:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Support flushing in StagedTrainPipeline (#2032)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2032\n\nSupport ability to flush the current pipeline (i.e. finish processing all the inflight batches while pausing reading from dataloader), run a custom callback, and then resume again.\n\nThe trainer can check if the pipeline should be flushed, call `pipeline.set_flush(True)` to mark the pipeline to be flushed, and expect `on_flush_end` callback function to be invoked when it is completely flushed. I decided against naming the API `pipeline.flush()` as it might wrongly convey to users that pipeline will be immediately flushed upon invocation. Rather, we are marking the pipeline as being flushed so that it can internally handle calling the post-flush callback.\n\nReviewed By: zzzwen, murphymatt\n\nDifferential Revision: D57520129\n\nfbshipit-source-id: fff6e4ba11e297e89c51c7879c81d76e0df6d26f","shortMessageHtmlLink":"Support flushing in StagedTrainPipeline (#2032)"}},{"before":"0a6ef4e89eae695dca34245827d51221dfef1e81","after":"7d7b4df0d14a28cd66c6fea1e35c6182b3bb564c","ref":"refs/heads/main","pushedAt":"2024-05-22T17:27:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Fix Dynamic Embedding CI breakage (#2031)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2031\n\nFix CI\n\nReviewed By: gnahzg\n\nDifferential Revision: D57672969\n\nfbshipit-source-id: 035390fd81491c7d4ea3e3330eb4238bd3943efe","shortMessageHtmlLink":"Fix Dynamic Embedding CI breakage (#2031)"}},{"before":"119f7b5b41f2e101138460aefe73593c0b31595c","after":"dfa817c7611559df1e13ffdee6e812a3a494b455","ref":"refs/heads/gh-pages","pushedAt":"2024-05-22T17:19:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ 0a6ef4e89eae695dca34245827d51221dfef1e81 ๐Ÿš€","shortMessageHtmlLink":"Deploying to gh-pages from @ 0a6ef4e ๐Ÿš€"}},{"before":"269577a9b5e52232fd3d4dd71cb877514cea3d8e","after":"0a6ef4e89eae695dca34245827d51221dfef1e81","ref":"refs/heads/main","pushedAt":"2024-05-22T16:26:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Sync collectives refactoring (#2025)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2025\n\nThe diff refactors torchrec sync collectives and addresses issues with missing wait_tensor() for backward:\n- Refactoring using latest Torchrec Library Custom Op API with PT2 compatibility\n- Removing non-Native functional collectives calls (c10d_functional), as only native exist now in pytorch and non-native are redispatched to native.\n- Adding test cases for compiled-with-noncompiled ranks (in case of compilation failure on one of the ranks)\n\nIssues fixed:\n- Sync collectives eager backward did not produce gradient -> Fixed\n- Support gradient_division in sync collectives and its compilation -> Done\n- Test coverage of sync collectives comparing results with async collectives and compilation.\n - Fixed Missing wait_tensor\nThe warning:\n```\nW0520 07:16:25.135696 2546100 Functional.cpp:51] Warning: At the time of process termination, there are still 1 unwaited c10d_functional collective calls. Please review your program to ensure c10d_functional.wait_tensor() is invoked on all tensors returned from c10d_functional collective ops before they are used. (function ~WorkRegistry)\nok\n```\n\nReviewed By: PaulZhang12\n\nDifferential Revision: D57564130\n\nfbshipit-source-id: e059393c4859e71a0181c779429e6b704dfb69b5","shortMessageHtmlLink":"Sync collectives refactoring (#2025)"}},{"before":"1af91ec5bb099a141357c21aead923952fb987c7","after":"548fe7df7b51718dfba63332d0f59cb6a1207996","ref":"refs/heads/nightly","pushedAt":"2024-05-22T11:35:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pytorchbot","name":null,"path":"/pytorchbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/21957446?s=80&v=4"},"commit":{"message":"2024-05-22 nightly release (269577a9b5e52232fd3d4dd71cb877514cea3d8e)","shortMessageHtmlLink":"2024-05-22 nightly release (269577a)"}},{"before":"f9beba1849f9545d0bf94e17e909f4f308c869cc","after":"269577a9b5e52232fd3d4dd71cb877514cea3d8e","ref":"refs/heads/main","pushedAt":"2024-05-22T04:50:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Bug prevention - remove torch.jit.trace specific logic from kjt (#2024)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2024\n\nGenerally, KJT cannot safely be torch.jit.trace and will lead to unexpected/undefined behavior including hard to trace NE issues. one legacy reference exists; lets remove to avoid silent errors / latent bugs.\n\nReviewed By: TroyGarden\n\nDifferential Revision:\nD57599024\n\nPrivacy Context Container: 1203980333745195\n\nfbshipit-source-id: 00c14e6217996252315b0e0de9aff88fa3112040","shortMessageHtmlLink":"Bug prevention - remove torch.jit.trace specific logic from kjt (#2024)"}},{"before":"74ba43a272c9d96d19dd73782604c2b639c5e399","after":"f9beba1849f9545d0bf94e17e909f4f308c869cc","ref":"refs/heads/main","pushedAt":"2024-05-21T22:20:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"log out kernel storage usage stats for analysis (#2016)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2016\n\nas title, adding storage logging based on kernel type\n\nReviewed By: henrylhtsang\n\nDifferential Revision: D57472326\n\nfbshipit-source-id: b5d16f9b69117ded08620778191399a59dcd1d20","shortMessageHtmlLink":"log out kernel storage usage stats for analysis (#2016)"}},{"before":"56892a8a805c091095f4014124fe80343caffe1b","after":"74ba43a272c9d96d19dd73782604c2b639c5e399","ref":"refs/heads/main","pushedAt":"2024-05-21T18:02:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Put permute kjt to input_dist (#2027)\n\nSummary: Pull Request resolved: https://github.com/pytorch/torchrec/pull/2027\n\nReviewed By: jiayisuse, YazhiGao\n\nDifferential Revision: D57597657\n\nfbshipit-source-id: c42402b2388c5f98bec2a69a15a5aa2a50297ffe","shortMessageHtmlLink":"Put permute kjt to input_dist (#2027)"}},{"before":"75001187e2eed6faace25308374fa3fe75d5bb98","after":"119f7b5b41f2e101138460aefe73593c0b31595c","ref":"refs/heads/gh-pages","pushedAt":"2024-05-21T15:46:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ 56892a8a805c091095f4014124fe80343caffe1b ๐Ÿš€","shortMessageHtmlLink":"Deploying to gh-pages from @ 56892a8 ๐Ÿš€"}},{"before":"ea04dac754320b0029e8f9f45c20bd662b8f1451","after":"56892a8a805c091095f4014124fe80343caffe1b","ref":"refs/heads/main","pushedAt":"2024-05-21T15:39:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Pyre Configurationless migration for] [batch:23/25] (#2026)\n\nSummary: Pull Request resolved: https://github.com/pytorch/torchrec/pull/2026\n\nReviewed By: connernilsen\n\nDifferential Revision: D57612485\n\nfbshipit-source-id: 9375dbf27fb1a51edc917e74bfda0eb42bbc64f4","shortMessageHtmlLink":"Pyre Configurationless migration for] [batch:23/25] (#2026)"}},{"before":"1ffb0b581b7094719c2e19829e9566204c0b2122","after":"1af91ec5bb099a141357c21aead923952fb987c7","ref":"refs/heads/nightly","pushedAt":"2024-05-21T11:35:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"pytorchbot","name":null,"path":"/pytorchbot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/21957446?s=80&v=4"},"commit":{"message":"2024-05-21 nightly release (ea04dac754320b0029e8f9f45c20bd662b8f1451)","shortMessageHtmlLink":"2024-05-21 nightly release (ea04dac)"}},{"before":"77d186643acf968b2e6c6bb285de23d6c783120c","after":"ea04dac754320b0029e8f9f45c20bd662b8f1451","ref":"refs/heads/main","pushedAt":"2024-05-21T03:24:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Remove backward perf calculation for RW inference (#2019)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2019\n\nAs titled.\n\nReviewed By: joshuadeng\n\nDifferential Revision: D57568258\n\nfbshipit-source-id: b70f4f87e1848c73ac2959e686da30047f978621","shortMessageHtmlLink":"Remove backward perf calculation for RW inference (#2019)"}},{"before":"ea7ac343ef120678794b58ac6cc74f1398312eaf","after":"77d186643acf968b2e6c6bb285de23d6c783120c","ref":"refs/heads/main","pushedAt":"2024-05-20T23:38:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Back out \"Fix device propagation, tests for cpu sharding\" (#2023)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2023\n\nOriginal commit changeset: f9fcbf723f05\n\nOriginal Phabricator Diff: D51309697\n\nBreak production model\n\nReviewed By: nimaelyasi\n\nDifferential Revision: D57582353\n\nfbshipit-source-id: a15dcc302c5b1f072dd3838081ac7bb6f280f13c","shortMessageHtmlLink":"Back out \"Fix device propagation, tests for cpu sharding\" (#2023)"}},{"before":"b3b945a7f90b251311cbd6128fb7cd54305a0709","after":"ea7ac343ef120678794b58ac6cc74f1398312eaf","ref":"refs/heads/main","pushedAt":"2024-05-20T23:25:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Fix dynamic embedding bugs that may lead to segmentation faults (#1947)\n\nSummary:\nHi TorchRec Team,\n\nWe've recently been trying to use the dynamic embedding feature in torchrec contrib, but we have encountered a few challenges. The process may result in a segmentation fault. After debugging, we've identified two potential problems.\n\n1๏ผ‰ fetch_notifications_ is not thread-safe.\n2๏ผ‰Tensor data might be recycled during pushing operations.\n\nFor the first issue, the fetch_notifications_ variable is accessed in both the pull and sync fetch functions. As these functions are called in different threads, there might be a thread safety issue.\n\nFor the second issue, the tensor generated by concat in the push function is a temporary variable. The subsequent call to io.push is asynchronous and does not copy the data. Therefore, the data might have been recycled by the time it is executed asynchronously, leading to access to invalid data.\n\nIn light of these findings, we have undertaken some corrective measures to address these issues. We appreciate your attention to this Pull Request and eagerly await your valuable feedback.\n\nThank you for your time and consideration.\n\nPull Request resolved: https://github.com/pytorch/torchrec/pull/1947\n\nReviewed By: colin2328\n\nDifferential Revision: D57506220\n\nPulled By: PaulZhang12\n\nfbshipit-source-id: f1522b855bdcb7f6bb1625d723b92ce612dc3228","shortMessageHtmlLink":"Fix dynamic embedding bugs that may lead to segmentation faults (#1947)"}},{"before":"d918bb003757303c8dfbd9c3c04e3a56de346012","after":"b3b945a7f90b251311cbd6128fb7cd54305a0709","ref":"refs/heads/main","pushedAt":"2024-05-20T22:58:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Add test to demo how to apply optimizer to fused tables, non fused tables, and dense modules (#2021)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2021\n\nA demo for showing how to properly apply optimizers to FUSED tables, non-fused tables, and non-tables.\n\nReviewed By: zainhuda\n\nDifferential Revision: D57312052\n\nfbshipit-source-id: 7aff161185158124cb380fc360e6751d2491ce39","shortMessageHtmlLink":"Add test to demo how to apply optimizer to fused tables, non fused taโ€ฆ"}},{"before":"709f5547402b4590ab9569313bd14be963efe6ed","after":"d918bb003757303c8dfbd9c3c04e3a56de346012","ref":"refs/heads/main","pushedAt":"2024-05-20T18:39:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Fix torchrec rowwise adagrad implementation (#2015)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2015\n\nApparently we flipped the order of taking power 2 and taking mean.\n\nReviewed By: zainhuda\n\nDifferential Revision: D57307271\n\nfbshipit-source-id: f0695f9d0a295b7b2e6ed3b81e1463dc912fdac7","shortMessageHtmlLink":"Fix torchrec rowwise adagrad implementation (#2015)"}},{"before":"cc14baa800519df3e74f97a43a09006c5e7a0d86","after":"709f5547402b4590ab9569313bd14be963efe6ed","ref":"refs/heads/main","pushedAt":"2024-05-20T17:25:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Use non-variable stride per rank path for dynamo (#2018)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/2018\n\nPick non-variable stride per rank path for dynamo for now.\nIn future that will be solved with first batch path memorizaiton.\n\nReviewed By: gnahzg\n\nDifferential Revision: D57562279\n\nfbshipit-source-id: 73bb55580875f0b11e2daf477d82a21fdd90220e","shortMessageHtmlLink":"Use non-variable stride per rank path for dynamo (#2018)"}},{"before":"2deec58dfe5e1db42a2c4a91367a4dfc672633bf","after":"75001187e2eed6faace25308374fa3fe75d5bb98","ref":"refs/heads/gh-pages","pushedAt":"2024-05-20T14:32:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"Deploying to gh-pages from @ cc14baa800519df3e74f97a43a09006c5e7a0d86 ๐Ÿš€","shortMessageHtmlLink":"Deploying to gh-pages from @ cc14baa ๐Ÿš€"}},{"before":"889878c9484b2db947985f93375425dcfe4e8bea","after":"cc14baa800519df3e74f97a43a09006c5e7a0d86","ref":"refs/heads/main","pushedAt":"2024-05-20T14:30:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"facebook-github-bot","name":"Facebook Community Bot","path":"/facebook-github-bot","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6422482?s=80&v=4"},"commit":{"message":"Fix device propagation, tests for cpu sharding (#1512)\n\nSummary:\nPull Request resolved: https://github.com/pytorch/torchrec/pull/1512\n\nFix device propagation, add tests for \"cpu\".\n\nDMP has default device \"cpu\", keeping the same.\nBefore torchrec/distributed inference code had constants for \"cuda\" by default.\n\ndevice(\"cpu\") in pytorch can have index 0 or -1 => adding logic to have \"cpu\" instead of \"cpu:{rank}\"\n\nIntroducing testing for device_type \"cpu\"\nNot all fbgemm all_to_one, sum_to_reduce have cpu implementations => skipping all_to_one_device for cpu and manually doing sum_to_reduce.\n\nReviewed By: IvanKobzarev\n\nDifferential Revision:\nD51309697\n\nPrivacy Context Container: L1138451\n\nfbshipit-source-id: f9fcbf723f0508c89ceeb8ee9f4b81541d375e5a","shortMessageHtmlLink":"Fix device propagation, tests for cpu sharding (#1512)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEUy_0OQA","startCursor":null,"endCursor":null}},"title":"Activity ยท pytorch/torchrec"}