{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":45717250,"defaultBranch":"master","name":"tensorflow","ownerLogin":"tensorflow","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-11-07T01:19:20.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/15658638?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718216442.0","currentOid":""},"activityList":{"items":[{"before":"4852c498c306b8cf8d12c19fa3ba7fb731a8efe6","after":"1ca18a72f597fa7f328224f46130d5e0a6936dd1","ref":"refs/heads/exported_pr_640545835","pushedAt":"2024-06-12T18:42:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"PR #13411: [XLA:GPU][Allow cuda async allocator to use non-default pool\n\nImported from GitHub PR https://github.com/openxla/xla/pull/13411\n\nThis patch allows user to construct the GpuCudaMallocAsyncAllocator to use the non-default memory pool, this is required if we want the allocator to just allocate for a particular memory space allocations, without the interference allocation requests from other memory space. E.g, using a separate memory pool for XLA temp buffers will make the allocated temp buffer address stabled.\n\nCopybara import of the project:\n\n--\n102a93ea3561e9d55155f5090f89ef40756c829c by Shawn Wang :\n\nAllow cuda async allocator to use non-default pool\n\n--\nbbd7290403f8bc44bfc0ecf9b24ed7d28e2d1b01 by Shawn Wang :\n\nfix test failures\n\nMerging this change closes #13411\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nFUTURE_COPYBARA_INTEGRATE_REVIEW=https://github.com/openxla/xla/pull/13411 from shawnwang18:shawnw/cuda_async_allocator_with_new_pool bbd7290403f8bc44bfc0ecf9b24ed7d28e2d1b01\nPiperOrigin-RevId: 640545835","shortMessageHtmlLink":"PR #13411: [XLA:GPU][Allow cuda async allocator to use non-default pool"}},{"before":"bb4e6e46d2d2f957223b0dba33cf3f0d28f09154","after":"e2394b3b9ba2f0f8d50affb93555f12575e526ab","ref":"refs/heads/exported_pr_640563040","pushedAt":"2024-06-12T18:41:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Migrate ConvertMlirToGraph translates version without control ret nodes to tf2xla's version of ConvertMlirToGraph with control ret nodes. This is to consolidate & simplify API's. Translates version without control ret nodes is marked deprecated.\n\nPiperOrigin-RevId: 640563040","shortMessageHtmlLink":"Migrate ConvertMlirToGraph translates version without control ret nod…"}},{"before":"c41547ba22a3deaa25f6778f7a84b93521833fb7","after":"57db5b4f5931826e4918e9a9c0ebc5c8e3f529c3","ref":"refs/heads/exported_pr_642036839","pushedAt":"2024-06-12T18:27:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[xla:gpu] Move the code that add SPMD pipeline to a utility function.\n\nAlso add a test for the GPU SPMD pipeline.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642036839","shortMessageHtmlLink":"[xla:gpu] Move the code that add SPMD pipeline to a utility function."}},{"before":"8f5b90ce86794a08f962122e8750798b4e20e209","after":"e4431ab6868e93a2acf5ba8291e8d4771dc55525","ref":"refs/heads/exported_pr_642343314","pushedAt":"2024-06-12T18:27:18.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Eliminate StreamExecutor::CreateStreamDependency, placing all the code directly into Stream and its derived classes.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642343314","shortMessageHtmlLink":"Eliminate StreamExecutor::CreateStreamDependency, placing all the cod…"}},{"before":"e1269277fa9e4d7da39190a9e424b80d89308435","after":"0ab112f22451e57d5bbb090bcdeccd4b2db26811","ref":"refs/heads/exported_pr_640620556","pushedAt":"2024-06-12T18:26:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[tflite] add missing include for absl::StrCat\n\nPiperOrigin-RevId: 640620556","shortMessageHtmlLink":"[tflite] add missing include for absl::StrCat"}},{"before":"e2ada0a678ee593eeb0139e110ce5fb247411dc9","after":"6806941357e293ceff8a7eb60d7a3453e3840756","ref":"refs/heads/exported_pr_642459293","pushedAt":"2024-06-12T18:24:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[xla:cpu] Make ThunkExecutor::Execute asynchronous\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642459293","shortMessageHtmlLink":"[xla:cpu] Make ThunkExecutor::Execute asynchronous"}},{"before":"804619540e71fac50b00447470ab454f8fda6dbf","after":"ed63fed97c9948bb0d0d81867da08fcc67fd589e","ref":"refs/heads/exported_pr_640621943","pushedAt":"2024-06-12T18:23:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Add more custom pattern to hlo_unstacker pass.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 640621943","shortMessageHtmlLink":"Add more custom pattern to hlo_unstacker pass."}},{"before":"7a0d08d93dca9be22fd5d289a981a8af443489cc","after":"ffa67d206fbad566825b03fc35f4af0a6900cb5a","ref":"refs/heads/exported_pr_641430166","pushedAt":"2024-06-12T18:23:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[tsl] logging_test: test LOG/VLOG/VLOG_IS_ON and associated flags/envvars\n\nWe have substantial changes coming soon to TSL logging; add tests\nto make sure we will not introduce regressions.\n\nAlso remove vmodule_test from tensorflow/core/platform since\nit is now redundant. Besides, TSL is a more appropriate place for\nthese tests.\n\nPiperOrigin-RevId: 641430166","shortMessageHtmlLink":"[tsl] logging_test: test LOG/VLOG/VLOG_IS_ON and associated flags/env…"}},{"before":"71ad97133f700e91aa6354701e941517abfc055f","after":"5d105f8ec14c540b72be15de592b7a2ecc5cec33","ref":"refs/heads/exported_pr_640571084","pushedAt":"2024-06-12T18:20:47.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Upgrade Abseil to LTS branch from Jan 2024, Patch 220240116_2\n\nPiperOrigin-RevId: 640571084","shortMessageHtmlLink":"Upgrade Abseil to LTS branch from Jan 2024, Patch 220240116_2"}},{"before":null,"after":"144f8346b88fb34f98c944d6d883729cf6294a27","ref":"refs/heads/exported_pr_642671979","pushedAt":"2024-06-12T18:20:42.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[xla] add missing include for absl::StrCat\n\nPiperOrigin-RevId: 642671979","shortMessageHtmlLink":"[xla] add missing include for absl::StrCat"}},{"before":"ff27964aefe273fecbcb9807e49f3cb1f0cbcbd3","after":"0a5db91a2c61c850498a66f96390e47fd717aeaf","ref":"refs/heads/exported_pr_641367233","pushedAt":"2024-06-12T18:17:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Use absl::StatusOr rather than the xla::StatusOr alias, since they're now identical.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 641367233","shortMessageHtmlLink":"Use absl::StatusOr rather than the xla::StatusOr alias, since they're…"}},{"before":"da46e9d088fa6c74113d4f5298d3dedcaa7a2c66","after":"b6af07558391c59254516f001802d664cf26aea8","ref":"refs/heads/exported_pr_642574230","pushedAt":"2024-06-12T18:16:40.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[XLA] If a WhileOp with multiple results has a single sharding, we should broadcast that sharding when passing arg_shardings and res_shardings.\n\nPiperOrigin-RevId: 642574230","shortMessageHtmlLink":"[XLA] If a WhileOp with multiple results has a single sharding, we sh…"}},{"before":"d4fc8b90318fb06465fc805b0990d4503a6271dc","after":"8f5b90ce86794a08f962122e8750798b4e20e209","ref":"refs/heads/exported_pr_642343314","pushedAt":"2024-06-12T18:14:22.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Eliminate StreamExecutor::CreateStreamDependency, placing all the code directly into Stream and its derived classes.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642343314","shortMessageHtmlLink":"Eliminate StreamExecutor::CreateStreamDependency, placing all the cod…"}},{"before":"138208c395fe62addb87e556e5e5afcbb3a0b2be","after":"4852c498c306b8cf8d12c19fa3ba7fb731a8efe6","ref":"refs/heads/exported_pr_640545835","pushedAt":"2024-06-12T18:11:47.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"PR #13411: [XLA:GPU][Allow cuda async allocator to use non-default pool\n\nImported from GitHub PR https://github.com/openxla/xla/pull/13411\n\nThis patch allows user to construct the GpuCudaMallocAsyncAllocator to use the non-default memory pool, this is required if we want the allocator to just allocate for a particular memory space allocations, without the interference allocation requests from other memory space. E.g, using a separate memory pool for XLA temp buffers will make the allocated temp buffer address stabled.\n\nCopybara import of the project:\n\n--\n102a93ea3561e9d55155f5090f89ef40756c829c by Shawn Wang :\n\nAllow cuda async allocator to use non-default pool\n\n--\nbbd7290403f8bc44bfc0ecf9b24ed7d28e2d1b01 by Shawn Wang :\n\nfix test failures\n\nMerging this change closes #13411\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nFUTURE_COPYBARA_INTEGRATE_REVIEW=https://github.com/openxla/xla/pull/13411 from shawnwang18:shawnw/cuda_async_allocator_with_new_pool bbd7290403f8bc44bfc0ecf9b24ed7d28e2d1b01\nPiperOrigin-RevId: 640545835","shortMessageHtmlLink":"PR #13411: [XLA:GPU][Allow cuda async allocator to use non-default pool"}},{"before":null,"after":"c186c6e7f79b02b846e1f71567c3117d89a6927d","ref":"refs/heads/exported_pr_642312748","pushedAt":"2024-06-12T18:11:19.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Only split those constants that are shared between manually and automatically sharded regions of the graph.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642312748","shortMessageHtmlLink":"Only split those constants that are shared between manually and autom…"}},{"before":"dbc647214ee0782bb0e6b09b0881599274705ab2","after":"6244b6484425c73e8f42cf644c6f8fd58e1f42d2","ref":"refs/heads/exported_pr_642630907","pushedAt":"2024-06-12T18:05:02.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[XLA:GPU] Use predication instead of branching in topk_kernel.\n\nThis change shrinks the size of the JAX CUDA 12 wheel (*compressed*) by 24MiB from 105MiB to 81MiB. It also reduces the compile time for the topk_kernel to less than 5 minutes for the longer shard; previously it was well over 10 minutes.\n\nnvcc/clang were emitting the branching in Push() as branches, which caused a lot of unnecessary register moves at SSA phi nodes in the program. If we change the program slightly to encourage nvcc to use predication instead of branching, we generate a significantly more compact program in both PTX and SASS forms.\n\nPiperOrigin-RevId: 642630907","shortMessageHtmlLink":"[XLA:GPU] Use predication instead of branching in topk_kernel."}},{"before":"c129b7085feacc8a5e885bafec3979479dd98ba8","after":"6be526753d83466f8de14ff4d5ca4f937f71f245","ref":"refs/heads/exported_pr_642624863","pushedAt":"2024-06-12T18:02:31.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Split `SlowReduceWindow` from hlo_evaluator_test into a separate target so that we can exclude it from tsan/asan/zapfhahn.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642624863","shortMessageHtmlLink":"Split SlowReduceWindow from hlo_evaluator_test into a separate targ…"}},{"before":"49ea3130c0933aaefa35f9413b95712b4eab8efd","after":"12bfbe7139e4928987892f127373a6944dabc6ef","ref":"refs/heads/exported_pr_642403189","pushedAt":"2024-06-12T18:02:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Remove the usage of DynamicBuffer from flatbuffer_export.cc\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642403189","shortMessageHtmlLink":"Remove the usage of DynamicBuffer from flatbuffer_export.cc"}},{"before":"2f5429d0ad05fe0f08d97ae3cf3c8e4bd80b87c8","after":null,"ref":"refs/heads/exported_pr_632591544","pushedAt":"2024-06-12T18:00:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"}},{"before":"60e52698437abd7d2c74b6de3c7fc685dcae6d5e","after":"2f5429d0ad05fe0f08d97ae3cf3c8e4bd80b87c8","ref":"refs/heads/master","pushedAt":"2024-06-12T18:00:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[XLA] Allow for turning off fast add path for reduce\n\nPiperOrigin-RevId: 642660483","shortMessageHtmlLink":"[XLA] Allow for turning off fast add path for reduce"}},{"before":"f78cb564ab39809a5dfc6c9df72abd256551c38a","after":"2f5429d0ad05fe0f08d97ae3cf3c8e4bd80b87c8","ref":"refs/heads/exported_pr_632591544","pushedAt":"2024-06-12T18:00:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[XLA] Allow for turning off fast add path for reduce\n\nPiperOrigin-RevId: 642660483","shortMessageHtmlLink":"[XLA] Allow for turning off fast add path for reduce"}},{"before":null,"after":"3327cf1781852e545f34d20dd82f463760db925c","ref":"refs/heads/exported_pr_642657753","pushedAt":"2024-06-12T17:59:09.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Remove prefetch(0) from noop_elimination.\n\n`prefetch(0)` at the end of the pipeline is *not* a no-op, since with the `inject_prefetch` optimization active, removing the final `prefetch(0)` will cause it to replaced with a `prefetch(tf.data.AUTOTUNE)`, which can cause memory issues (presumably why a user would set prefetch buffer to `0` to begin with).\n\nWe could add additional logic to remove only non-final `prefetch(0)`s, but it gets complicated with the potential for noop_elimination or other optimizations to change whether or not a prefetch is final. The benefit of removing `prefetch(0)` isn't very significant anyway, so removing `prefetch(0)` from noop elimination entirely seems cleaner.\n\nPiperOrigin-RevId: 642657753","shortMessageHtmlLink":"Remove prefetch(0) from noop_elimination."}},{"before":null,"after":"73428f66da2026e89ee972529d4e44781ee377a8","ref":"refs/heads/exported_pr_642663394","pushedAt":"2024-06-12T17:56:51.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Update TFRT dependency to use revision\nhttp://github.com/tensorflow/runtime/commit/bb8785670431b856d6d4168e1e6b1abd2b95621f.\n\nReverts 5969602d6a1114d538aa98dbde9f27304fc6b22f\n\nPiperOrigin-RevId: 642663394","shortMessageHtmlLink":"Update TFRT dependency to use revision"}},{"before":"60e52698437abd7d2c74b6de3c7fc685dcae6d5e","after":null,"ref":"refs/heads/exported_pr_642570559","pushedAt":"2024-06-12T17:53:14.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"}},{"before":"17b34fb3c33200605efa3df88ae611b9cb1e8c7f","after":"60e52698437abd7d2c74b6de3c7fc685dcae6d5e","ref":"refs/heads/master","pushedAt":"2024-06-12T17:53:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[xla:cpu] Pass thread pool to thunk execution.\n\nThe thread pool was missing for example during thunks runtime convolution tests.\n\nPiperOrigin-RevId: 642659625","shortMessageHtmlLink":"[xla:cpu] Pass thread pool to thunk execution."}},{"before":"d0f1c6bc4190bee4d7d9aee777c667d8766667e1","after":"60e52698437abd7d2c74b6de3c7fc685dcae6d5e","ref":"refs/heads/exported_pr_642570559","pushedAt":"2024-06-12T17:53:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"[xla:cpu] Pass thread pool to thunk execution.\n\nThe thread pool was missing for example during thunks runtime convolution tests.\n\nPiperOrigin-RevId: 642659625","shortMessageHtmlLink":"[xla:cpu] Pass thread pool to thunk execution."}},{"before":"47abf19bd7038d0c34524f17e93e836c04a09327","after":"a55b0411d78c548f75cbb740065e98dbd7a365db","ref":"refs/heads/exported_pr_642627932","pushedAt":"2024-06-12T17:52:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"PR #13278: Fix _xla_send_recv_validation_attribute in loop-double-buffer-transformer\n\nImported from GitHub PR https://github.com/openxla/xla/pull/13278\n\nThis patch fixes the value of valid iteration for GPUs in the loop-double-buffer-transformer pass.\n\nIf the original iteration bounds for a particular GPU are {a,b} then the transformed attribute is:\n\n - If number of iterations is even:\n - For collective.permute.1: {floor((a+1)/2), floor(b/2)}\n - For collective.permute.2: {floor(a/2), max(0, floor((b-1)/2))}\n - If the number of iterations is odd: then the first iteration is peeled out\n - For collective.permute.1: {floor(a/2), max(0, floor((b-1)/2))}\n - For collective.permute.2: {max(0, floor((a-1)/2)), max(0, floor((b-2)/2)}\n\nFor collective.permute.peeled, only one instance of the collective is valid. It is valid for all\nthe devices that had iteration 0 as valid iteration earlier. So, if the attribute was\n{{0,4},{0,5},{1,5},{1,6}} for the old instruction, then for the peeled instruction, the attribute\nwould be {{0,0},{0,0},{1,0},{1,0}} because it is valid for the first two devices, but invalid for\nthe rest.\n\nMore details for these are added in comments as docstrings.\nCopybara import of the project:\n\n--\n050ea0994c31f2e9f87b8d1664190435578deee4 by Shraiysh Vaishay :\n\nFix _xla_send_recv_validation_attribute in loop-double-buffer-transformer\n\nThis patch fixes the value of valid iteration for GPUs in the loop-double-buffer-transformer pass.\n\nIf the original iteration bounds for a particular GPU are {a,b} then the transformed attribute is:\n\n - If number of iterations is even:\n - For collective.permute.1: {floor((a+1)/2), floor(b/2)}\n - For collective.permute.2: {floor(a/2), max(0, floor((b-1)/2))}\n - If the number of iterations is odd: then the first iteration is peeled out\n - For collective.permute.1: {floor(a/2), max(0, floor((b-1)/2))}\n - For collective.permute.2: {max(0, floor((a-1)/2)), max(0, floor((b-2)/2)}\n\nFor collective.permute.peeled, only one instance of the collective is valid. It is valid for all\nthe devices that had iteration 0 as valid iteration earlier. So, if the attribute was\n{{0,4},{0,5},{1,5},{1,6}} for the old instruction, then for the peeled instruction, the attribute\nwould be {{0,0},{0,0},{1,0},{1,0}} because it is valid for the first two devices, but invalid for\nthe rest.\n\nMore details for these are added in comments as docstrings.\n\nMerging this change closes #13278\n\nFUTURE_COPYBARA_INTEGRATE_REVIEW=https://github.com/openxla/xla/pull/13278 from shraiysh:loop-double-buffer 050ea0994c31f2e9f87b8d1664190435578deee4\nPiperOrigin-RevId: 642627932","shortMessageHtmlLink":"PR #13278: Fix _xla_send_recv_validation_attribute in loop-double-buf…"}},{"before":"7ff490d2180b587647e2940aa85f9a8a51ad68c5","after":"a88d061b8b6880fb6350c091645f1072e21eae9f","ref":"refs/heads/exported_pr_642392203","pushedAt":"2024-06-12T17:51:43.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Use tensorboard nightly 2.18.0a\n\nPiperOrigin-RevId: 642392203","shortMessageHtmlLink":"Use tensorboard nightly 2.18.0a"}},{"before":"6882d2e8b46bd9f0ed40defc6dc3dfd1999f9762","after":"71ad97133f700e91aa6354701e941517abfc055f","ref":"refs/heads/exported_pr_640571084","pushedAt":"2024-06-12T17:45:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"},"commit":{"message":"Upgrade Abseil to LTS branch from Jan 2024, Patch 220240116_2\n\nPiperOrigin-RevId: 640571084","shortMessageHtmlLink":"Upgrade Abseil to LTS branch from Jan 2024, Patch 220240116_2"}},{"before":"17b34fb3c33200605efa3df88ae611b9cb1e8c7f","after":null,"ref":"refs/heads/exported_pr_640559053","pushedAt":"2024-06-12T17:45:15.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"copybara-service[bot]","name":null,"path":"/apps/copybara-service","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/44061?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEY6V01QA","startCursor":null,"endCursor":null}},"title":"Activity · tensorflow/tensorflow"}