{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":70746484,"defaultBranch":"main","name":"tvm","ownerLogin":"apache","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-10-12T22:20:28.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/47359?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716506696.0","currentOid":""},"activityList":{"items":[{"before":"63697b59be9c260b698864347a1063ab856d43e9","after":"41a13e7f5f78becd855b6aefd4739160cb166099","ref":"refs/heads/ci-docker-staging","pushedAt":"2024-05-23T23:27:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tqchen","name":"Tianqi Chen","path":"/tqchen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2577440?s=80&v=4"},"commit":{"message":"Update","shortMessageHtmlLink":"Update"}},{"before":null,"after":"41a13e7f5f78becd855b6aefd4739160cb166099","ref":"refs/heads/cmake-debug","pushedAt":"2024-05-23T23:24:56.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tqchen","name":"Tianqi Chen","path":"/tqchen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2577440?s=80&v=4"},"commit":{"message":"Update","shortMessageHtmlLink":"Update"}},{"before":"e978a449f9128a0099687bef2a11ba88a5cc0ab4","after":"b1951a78110f991d31c8d2533184876cc6a4c975","ref":"refs/heads/main","pushedAt":"2024-05-23T16:04:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Lunderberg","name":"Eric Lunderberg","path":"/Lunderberg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3888575?s=80&v=4"},"commit":{"message":"[USMP] add missing const specifier for global_const_workspace (#16999)\n\nThe `.rodata*` section of any program should not be writable.\r\n\r\nThe missing `const` specifier in `static struct global_const_workspace {...}` leads\r\nto the following `readelf -e` output (shortened):\r\n\r\n```\r\nSection Headers:\r\n [Nr] Name Type Addr Off Size ES Flg Lk Inf Al\r\n [ 0] NULL 00000000 000000 000000 00 0 0 0\r\n [ 1] .text PROGBITS 00000000 001000 009fbe 00 AX 0 0 16\r\n [ 2] .rodata PROGBITS 00009fc0 00afc0 000e50 00 WA 0 0 16\r\n [ 3] .srodata PROGBITS 0000ae10 00be10 000068 08 AM 0 0 8\r\n ...\r\n```\r\n\r\nAfter this fix, the output looks as follows (`AW` -> `A`):\r\n\r\n```\r\nSection Headers:\r\n [Nr] Name Type Addr Off Size ES Flg Lk Inf Al\r\n [ 0] NULL 00000000 000000 000000 00 0 0 0\r\n [ 1] .text PROGBITS 00000000 001000 00a1be 00 AX 0 0 16\r\n [ 2] .rodata PROGBITS 0000a1c0 00b1c0 000e50 00 A 0 0 16\r\n [ 3] .srodata PROGBITS 0000b010 00c010 000070 00 A 0 0 8\r\n```","shortMessageHtmlLink":"[USMP] add missing const specifier for global_const_workspace (#16999)"}},{"before":"a5862a5c696a3237f644f31bc312aae303213f3f","after":"e978a449f9128a0099687bef2a11ba88a5cc0ab4","ref":"refs/heads/nightly","pushedAt":"2024-05-23T05:03:27.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"[COMMUNITY] New committer: Balint Cristian (#17018)\n\nAdd @cbalint13 as Committer,","shortMessageHtmlLink":"[COMMUNITY] New committer: Balint Cristian (#17018)"}},{"before":"ac9a943c4dd45cb98c5801631450fd9bb44e7804","after":"e978a449f9128a0099687bef2a11ba88a5cc0ab4","ref":"refs/heads/main","pushedAt":"2024-05-22T10:57:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Hzfengsy","name":"Siyuan Feng","path":"/Hzfengsy","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25500082?s=80&v=4"},"commit":{"message":"[COMMUNITY] New committer: Balint Cristian (#17018)\n\nAdd @cbalint13 as Committer,","shortMessageHtmlLink":"[COMMUNITY] New committer: Balint Cristian (#17018)"}},{"before":"a5862a5c696a3237f644f31bc312aae303213f3f","after":"ac9a943c4dd45cb98c5801631450fd9bb44e7804","ref":"refs/heads/main","pushedAt":"2024-05-22T10:01:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ekalda","name":"Elen Kalda","path":"/ekalda","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/15799086?s=80&v=4"},"commit":{"message":"[TOPI][Testing] Enable conv2d NHWC fp16 topi testing for `arm_cpu` (#17007)\n\nThis commit adds fp16 test cases to the conv2d NHWC TOPI schedules for `arm_cpu`.\r\nFollowing the example of #8529, the numpy reference conv2d output is computed in fp32 instead of fp16, while the absolute tolerance varies for each test case according to the size of the summed axis and the output's largest element.","shortMessageHtmlLink":"[TOPI][Testing] Enable conv2d NHWC fp16 topi testing for arm_cpu (#…"}},{"before":"18a2a250f8c7f16f5f5be6753861ba5db8fb89fa","after":"a5862a5c696a3237f644f31bc312aae303213f3f","ref":"refs/heads/nightly","pushedAt":"2024-05-22T05:02:43.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"[SVE] Use only powers of two as possible vscale values (#17001)\n\nWhen analyzing scalable expressions, the analyzer will iterate over a\r\nseries of known vscale values in the range 1-16. However, we can\r\ntighten this range to only values that are a power of two, as stated\r\nin the [LLVM lang ref](https://llvm.org/docs/LangRef.html#llvm-vscale-intrinsic:~:text=This%20function%20attribute%20indicates%20vscale%20is%20a%20power%2Dof%2Dtwo%20within%20a%20specified%20range)\r\nand more generally the [reference manual](https://developer.arm.com/documentation/ddi0487/latest/).\r\n\r\nThis comes from a discussion in https://github.com/apache/tvm/pull/16921#discussion_r1600048788","shortMessageHtmlLink":"[SVE] Use only powers of two as possible vscale values (#17001)"}},{"before":"2e56421dda32755a0b9c41cd1515ec4f8e4d598e","after":"a5862a5c696a3237f644f31bc312aae303213f3f","ref":"refs/heads/main","pushedAt":"2024-05-21T15:14:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ekalda","name":"Elen Kalda","path":"/ekalda","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/15799086?s=80&v=4"},"commit":{"message":"[SVE] Use only powers of two as possible vscale values (#17001)\n\nWhen analyzing scalable expressions, the analyzer will iterate over a\r\nseries of known vscale values in the range 1-16. However, we can\r\ntighten this range to only values that are a power of two, as stated\r\nin the [LLVM lang ref](https://llvm.org/docs/LangRef.html#llvm-vscale-intrinsic:~:text=This%20function%20attribute%20indicates%20vscale%20is%20a%20power%2Dof%2Dtwo%20within%20a%20specified%20range)\r\nand more generally the [reference manual](https://developer.arm.com/documentation/ddi0487/latest/).\r\n\r\nThis comes from a discussion in https://github.com/apache/tvm/pull/16921#discussion_r1600048788","shortMessageHtmlLink":"[SVE] Use only powers of two as possible vscale values (#17001)"}},{"before":"3b976585c725fbf607f9e5fafd464ddcb3edc8dd","after":"2e56421dda32755a0b9c41cd1515ec4f8e4d598e","ref":"refs/heads/main","pushedAt":"2024-05-21T14:59:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tqchen","name":"Tianqi Chen","path":"/tqchen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2577440?s=80&v=4"},"commit":{"message":"[DLight] Update Adreno GEMV Rules (#17016)\n\nWhen reduction axis is small, it's not necessary to use rfactor. This\r\nPR updates the gemv rule to use rfactor only when the reduction axis is\r\nlarge enough.","shortMessageHtmlLink":"[DLight] Update Adreno GEMV Rules (#17016)"}},{"before":"209971a62edf4a6ea6c628ef8399e45e926e727c","after":"3b976585c725fbf607f9e5fafd464ddcb3edc8dd","ref":"refs/heads/main","pushedAt":"2024-05-21T08:55:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Hzfengsy","name":"Siyuan Feng","path":"/Hzfengsy","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25500082?s=80&v=4"},"commit":{"message":"[DLIGHT][GPU] Enhance opencl thread limit for schedules (#16972)\n\n* [DLIGHT][GPU] Enhance opencl thread limit for schedules\r\n\r\nEnhanced the opencl thread limit and improved the gpu schedules\r\nfor opencl targets.\r\nIt improves decode performance 20 % for few set of models.\r\n\r\n* Update the build test\r\n\r\n* reverted opencl max_thread enhancement\r\n\r\n* Fix in opencl thread assign","shortMessageHtmlLink":"[DLIGHT][GPU] Enhance opencl thread limit for schedules (#16972)"}},{"before":"18a2a250f8c7f16f5f5be6753861ba5db8fb89fa","after":"209971a62edf4a6ea6c628ef8399e45e926e727c","ref":"refs/heads/main","pushedAt":"2024-05-21T08:54:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Hzfengsy","name":"Siyuan Feng","path":"/Hzfengsy","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25500082?s=80&v=4"},"commit":{"message":"[DLIGHT][GPU] Improved gemv outer fallback schedule (#16973)\n\n* [DLIGHT][GPU] Improved gemv outer fallback schedule\r\n\r\nImproved the gemv outer fallback schedules. It improved\r\nfew gemv kernel by 20%.\r\n\r\n* Fix lint error\r\n\r\n* Fix the gemv schedule params for dynamic vocab_size kernel","shortMessageHtmlLink":"[DLIGHT][GPU] Improved gemv outer fallback schedule (#16973)"}},{"before":"3cd66738908a6235746147b3b8980003bd3813af","after":"18a2a250f8c7f16f5f5be6753861ba5db8fb89fa","ref":"refs/heads/nightly","pushedAt":"2024-05-21T05:02:43.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":"[KVCache] Support KVCache decode from forked sequence and pop more tokens (#16995)","shortMessageHtmlLink":"[KVCache] Support KVCache decode from forked sequence and pop more to…"}},{"before":null,"after":"7c2d52810b4061ab794f4e029c653e264fb3dc21","ref":"refs/heads/dependabot/pip/docker/python/requests-2.32.0","pushedAt":"2024-05-21T02:17:02.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"---\nupdated-dependencies:\n- dependency-name: requests\n dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"---"}},{"before":"3cd66738908a6235746147b3b8980003bd3813af","after":"18a2a250f8c7f16f5f5be6753861ba5db8fb89fa","ref":"refs/heads/main","pushedAt":"2024-05-20T15:13:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tqchen","name":"Tianqi Chen","path":"/tqchen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2577440?s=80&v=4"},"commit":{"message":"[KVCache] Support KVCache decode from forked sequence and pop more tokens (#16995)","shortMessageHtmlLink":"[KVCache] Support KVCache decode from forked sequence and pop more to…"}},{"before":"afb64162342bc911cb101a5038139441cbbd8bbc","after":"3cd66738908a6235746147b3b8980003bd3813af","ref":"refs/heads/nightly","pushedAt":"2024-05-20T05:03:12.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":"[Runtime] Allow query of available device memory through DeviceAPI (#16994)\n\n* [Runtime] Allow query of available device memory through DeviceAPI\r\n\r\nPrior to this commit, the total device memory could be queried through\r\nthe `DeviceAPI` interface, but the currently available device memory\r\ncould not. This functionality may be useful for debugging, or for\r\nvalidating available memory prior to model execution.\r\n\r\nThis commit implements the property `Device.available_global_memory`,\r\nwhich queries the `DeviceAttrKind::kAvailableGlobalMemory`. Support\r\nfor this query, like all device attribute queries, may vary across\r\ndifferent backends, and will return `None` for backends that do not\r\nsupport this query. This commit only currently implements support for\r\n`kAvailableGlobalMemory` for TVM's Cuda backend.\r\n\r\n* Updated docstring to fix copy/paste typo\r\n\r\n* Lint fix, cover all enum values in case/switch\r\n\r\n* Fix rocm compilation warning","shortMessageHtmlLink":"[Runtime] Allow query of available device memory through DeviceAPI (#…"}},{"before":"afb64162342bc911cb101a5038139441cbbd8bbc","after":"3cd66738908a6235746147b3b8980003bd3813af","ref":"refs/heads/main","pushedAt":"2024-05-19T13:29:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Lunderberg","name":"Eric Lunderberg","path":"/Lunderberg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3888575?s=80&v=4"},"commit":{"message":"[Runtime] Allow query of available device memory through DeviceAPI (#16994)\n\n* [Runtime] Allow query of available device memory through DeviceAPI\r\n\r\nPrior to this commit, the total device memory could be queried through\r\nthe `DeviceAPI` interface, but the currently available device memory\r\ncould not. This functionality may be useful for debugging, or for\r\nvalidating available memory prior to model execution.\r\n\r\nThis commit implements the property `Device.available_global_memory`,\r\nwhich queries the `DeviceAttrKind::kAvailableGlobalMemory`. Support\r\nfor this query, like all device attribute queries, may vary across\r\ndifferent backends, and will return `None` for backends that do not\r\nsupport this query. This commit only currently implements support for\r\n`kAvailableGlobalMemory` for TVM's Cuda backend.\r\n\r\n* Updated docstring to fix copy/paste typo\r\n\r\n* Lint fix, cover all enum values in case/switch\r\n\r\n* Fix rocm compilation warning","shortMessageHtmlLink":"[Runtime] Allow query of available device memory through DeviceAPI (#…"}},{"before":"f044eefd0e55529db17ee1134c962070de4bc058","after":"afb64162342bc911cb101a5038139441cbbd8bbc","ref":"refs/heads/nightly","pushedAt":"2024-05-18T05:02:39.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":"[WebGPU] Handle device OOM in createBuffer (#17005)","shortMessageHtmlLink":"[WebGPU] Handle device OOM in createBuffer (#17005)"}},{"before":"f044eefd0e55529db17ee1134c962070de4bc058","after":"afb64162342bc911cb101a5038139441cbbd8bbc","ref":"refs/heads/main","pushedAt":"2024-05-17T16:41:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tqchen","name":"Tianqi Chen","path":"/tqchen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2577440?s=80&v=4"},"commit":{"message":"[WebGPU] Handle device OOM in createBuffer (#17005)","shortMessageHtmlLink":"[WebGPU] Handle device OOM in createBuffer (#17005)"}},{"before":"cfe1711934f82e56f147f2f5f9f928b5a9b92b3e","after":"f044eefd0e55529db17ee1134c962070de4bc058","ref":"refs/heads/nightly","pushedAt":"2024-05-16T05:03:27.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"[Runtime][Disco] Restore checks for hangup of disco pipe (#16997)\n\nThis resolves a conflict between two recent changes. In\r\nhttps://github.com/apache/tvm/pull/16989, reads of size zero are used\r\nto identify hangups in `ProcessSession`. In\r\nhttps://github.com/apache/tvm/pull/16992, reads of size zero are\r\ntreated as an error to avoid infinite loops while waiting for data to\r\nbe ready.\r\n\r\nFor a long-term resolution, the `dmlc::Stream` interface will need to\r\nbe updated, so that the `Write` method returns the number of bytes\r\nwritten, just as the `Read` method currently does. This will allow\r\nthe calling scope to verify the number of bytes received.","shortMessageHtmlLink":"[Runtime][Disco] Restore checks for hangup of disco pipe (#16997)"}},{"before":"b49468ddf11a1103d82f11009a0b3253a49705aa","after":"f044eefd0e55529db17ee1134c962070de4bc058","ref":"refs/heads/main","pushedAt":"2024-05-15T13:16:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Lunderberg","name":"Eric Lunderberg","path":"/Lunderberg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3888575?s=80&v=4"},"commit":{"message":"[Runtime][Disco] Restore checks for hangup of disco pipe (#16997)\n\nThis resolves a conflict between two recent changes. In\r\nhttps://github.com/apache/tvm/pull/16989, reads of size zero are used\r\nto identify hangups in `ProcessSession`. In\r\nhttps://github.com/apache/tvm/pull/16992, reads of size zero are\r\ntreated as an error to avoid infinite loops while waiting for data to\r\nbe ready.\r\n\r\nFor a long-term resolution, the `dmlc::Stream` interface will need to\r\nbe updated, so that the `Write` method returns the number of bytes\r\nwritten, just as the `Read` method currently does. This will allow\r\nthe calling scope to verify the number of bytes received.","shortMessageHtmlLink":"[Runtime][Disco] Restore checks for hangup of disco pipe (#16997)"}},{"before":"cfe1711934f82e56f147f2f5f9f928b5a9b92b3e","after":"b49468ddf11a1103d82f11009a0b3253a49705aa","ref":"refs/heads/main","pushedAt":"2024-05-15T10:28:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lhutton1","name":"Luke Hutton","path":"/lhutton1","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35535092?s=80&v=4"},"commit":{"message":"[SME] Introduce scalable fp32 dense schedule (#16921)\n\nThis commit adds a new scalable fp32 dense schedule that calls SME intrinsics according to the SME RFC: https://github.com/apache/tvm-rfcs/pull/107.\r\n\r\nCurrently the schedule does not make use of predication, meaning the output from the matmul compute must be copied in a subsequent compute stage. This will be removed once support for predication is added.","shortMessageHtmlLink":"[SME] Introduce scalable fp32 dense schedule (#16921)"}},{"before":"c2d14ae8726546a256af976602e5399c5c33e0b1","after":"cfe1711934f82e56f147f2f5f9f928b5a9b92b3e","ref":"refs/heads/nightly","pushedAt":"2024-05-15T05:02:40.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"chore: remove repetitive words (#16957)","shortMessageHtmlLink":"chore: remove repetitive words (#16957)"}},{"before":"b7467aa27b289c147033b15c59cf660a25cd85f3","after":"cfe1711934f82e56f147f2f5f9f928b5a9b92b3e","ref":"refs/heads/main","pushedAt":"2024-05-14T19:23:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"yongwww","name":"Yong Wu","path":"/yongwww","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10205827?s=80&v=4"},"commit":{"message":"chore: remove repetitive words (#16957)","shortMessageHtmlLink":"chore: remove repetitive words (#16957)"}},{"before":"d9dbbc9154f947c989631e7a598152f0a045f9f2","after":"b7467aa27b289c147033b15c59cf660a25cd85f3","ref":"refs/heads/main","pushedAt":"2024-05-14T19:13:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"vinx13","name":"Wuwei Lin","path":"/vinx13","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7195739?s=80&v=4"},"commit":{"message":"[Relay] fixed to make TupleGetItem inherits the previous span (#16996)\n\nCo-authored-by: wenjian.ma ","shortMessageHtmlLink":"[Relay] fixed to make TupleGetItem inherits the previous span (#16996)"}},{"before":"54c68d6af492e885f5335ca0c5a8336d29277208","after":"d9dbbc9154f947c989631e7a598152f0a045f9f2","ref":"refs/heads/main","pushedAt":"2024-05-14T14:39:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Lunderberg","name":"Eric Lunderberg","path":"/Lunderberg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3888575?s=80&v=4"},"commit":{"message":"[Bugfix][Disco] Handle NDArray larger than OS buffer for pipe (#16992)\n\nPrior to this commit, using `disco.Session` methods to transfer\r\n`NDArray` instances to workers could raise an exception if the\r\n`NDArray` is larger than the buffer allocated by the OS for the\r\ncontroller/worker pipe. In these case, the first call to the `Read`\r\nmethod of `tvm::support::Pipe` would successfully return, but only\r\nwith the initial bytes of the `NDArray`. Receiving the full `NDArray`\r\nrequires repeatedly calling the POSIX `read` function.\r\n\r\nThis commit updates the `Read` and `Write` methods of\r\n`tvm::support::Pipe` to repeatedly call the underlying read/write\r\nmethods, until the full `NDArray` has been transferred.\r\n\r\nThis commit does not add any unit tests, as the existing unit test\r\n`tests/python/disco/test_ccl.py::test_attention[nccl-ProcessSession]`\r\nrequires this change to pass.","shortMessageHtmlLink":"[Bugfix][Disco] Handle NDArray larger than OS buffer for pipe (#16992)"}},{"before":"93233a988e613bf6b6d70b093dedef2c294f949d","after":"54c68d6af492e885f5335ca0c5a8336d29277208","ref":"refs/heads/main","pushedAt":"2024-05-14T14:39:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Lunderberg","name":"Eric Lunderberg","path":"/Lunderberg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3888575?s=80&v=4"},"commit":{"message":"[Disco] Implement `num_workers` property for `disco.Session` (#16978)\n\nPrior to this commit, while the `num_workers` argument was provided to\r\nthe `disco.Session` object, it could not be determined from an\r\nexisting `disco.Session` object. As a result, functions that\r\ninteracted with a multi-GPU setup frequently required separate\r\n`num_workers` and `disco_session` argument, which could erroneously be\r\nout-of-sync (e.g. passing the incorrect `num_workers`, or omitting the\r\n`disco_session` argument when `num_workers>1`).\r\n\r\nTo remove this class of errors, this commit adds a\r\n`disco.Session.num_workers` property. The separate `num_workers`\r\nargument is no longer necessary, as it can be determined from the\r\n`disco.Session` instance.","shortMessageHtmlLink":"[Disco] Implement num_workers property for disco.Session (#16978)"}},{"before":"c6a8a80009694a0835513cccc60c1ac1bca5800f","after":"93233a988e613bf6b6d70b093dedef2c294f949d","ref":"refs/heads/main","pushedAt":"2024-05-14T14:38:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Lunderberg","name":"Eric Lunderberg","path":"/Lunderberg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3888575?s=80&v=4"},"commit":{"message":"[Disco] Treat hangup of disco worker process as kShutdown (#16989)\n\nPrior to this commit, each disco worker needed to receive\r\n`DiscoAction::kShutdown` in order to close cleanly. While this is\r\nsent from the destructor of `ProcessSessionObj`, which owns the worker\r\nprocesses, this does not guarantee that the disco workers will receive\r\nthe shutdown command. For example, the controller process holding the\r\n`ProcessSessionObj` may reach a timeout and be terminated, preventing\r\nit from sending the `DiscoAction::kShutdown` command.\r\n\r\nThis commit updates the disco worker to check for a closed pipe that\r\noccurs between two packets, and to treat this as if the\r\n`DiscoAction::kShutdown` command were received. A closed pipe that\r\noccurs at any other location is still treated as an error and\r\nreported.","shortMessageHtmlLink":"[Disco] Treat hangup of disco worker process as kShutdown (#16989)"}},{"before":"c2d14ae8726546a256af976602e5399c5c33e0b1","after":"c6a8a80009694a0835513cccc60c1ac1bca5800f","ref":"refs/heads/main","pushedAt":"2024-05-14T14:38:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Lunderberg","name":"Eric Lunderberg","path":"/Lunderberg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3888575?s=80&v=4"},"commit":{"message":"[Disco] Allow allocation that only exists on worker0 (#16993)\n\nThe `disco.Session.scatter_from_worker0` function expects a `DRef`\r\nwhich an `NDArray` on worker 0, and `NullOpt` on all other workers.\r\nPrior to this commit, there was no method in the `disco.Session` that\r\ncould be used to make such a `DRef`. As a result, every use of\r\n`scatter_from_worker0` generated an error, stating that non-zero\r\nworkers should have `NullOpt` as their `send` argument.\r\n\r\nThis commit adds a `worker0_only: bool` argument to\r\n`disco.Session.empty`. This can be used to generate an allocation\r\nthat only exists on worker zero, suitable for use in\r\n`scatter_from_worker0`.","shortMessageHtmlLink":"[Disco] Allow allocation that only exists on worker0 (#16993)"}},{"before":"d1ac1c0202b3d8cb2af268ce79c2ac710554152b","after":"c2d14ae8726546a256af976602e5399c5c33e0b1","ref":"refs/heads/nightly","pushedAt":"2024-05-14T05:02:33.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"github-actions[bot]","name":null,"path":"/apps/github-actions","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/15368?s=80&v=4"},"commit":{"message":"[Relax][Transform] Handle identical PrimFunc with distinct VDevice (#16959)\n\n* [Relax][Transform] Handle identical PrimFunc with distinct VDevice\r\n\r\nPrior to this commit, if an `IRModule` contained two expressions,\r\nwhere the types of the arguments differed only by the `VDevice`, these\r\nwould be legalized to produce a single PrimFunc. This PrimFunc would\r\nhave the a `tvm::attr::kTarget` annotation specific to one of those\r\nexpressions, and would be incorrect for use in the other location.\r\n\r\nThis commit updates the `LegalizeOps` transform to handle this case,\r\nproducing multiple TIR PrimFuncs if required by the `VDevice`\r\nannotations.\r\n\r\n* Fix breakage in tests, caused by unused PrimFunc without target attr","shortMessageHtmlLink":"[Relax][Transform] Handle identical PrimFunc with distinct VDevice (#…"}},{"before":"5b5f8d0f774f70194fb643ff6164d29a150d234e","after":"c2d14ae8726546a256af976602e5399c5c33e0b1","ref":"refs/heads/main","pushedAt":"2024-05-13T23:58:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"masahi","name":null,"path":"/masahi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1776403?s=80&v=4"},"commit":{"message":"[Relax][Transform] Handle identical PrimFunc with distinct VDevice (#16959)\n\n* [Relax][Transform] Handle identical PrimFunc with distinct VDevice\r\n\r\nPrior to this commit, if an `IRModule` contained two expressions,\r\nwhere the types of the arguments differed only by the `VDevice`, these\r\nwould be legalized to produce a single PrimFunc. This PrimFunc would\r\nhave the a `tvm::attr::kTarget` annotation specific to one of those\r\nexpressions, and would be incorrect for use in the other location.\r\n\r\nThis commit updates the `LegalizeOps` transform to handle this case,\r\nproducing multiple TIR PrimFuncs if required by the `VDevice`\r\nannotations.\r\n\r\n* Fix breakage in tests, caused by unused PrimFunc without target attr","shortMessageHtmlLink":"[Relax][Transform] Handle identical PrimFunc with distinct VDevice (#…"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEUoX0dAA","startCursor":null,"endCursor":null}},"title":"Activity · apache/tvm"}