Message ID | 20240213204221.661294-1-philip.cox@canonical.com |
---|---|
Headers | show |
Series | performance: address_space: add padding for i_map and i_mmap_rwsem to mitigate a false sharing | expand |
Acked-by: Ian May <ian.may@canonical.com> On 2024-02-13 15:42:20 , Philip Cox wrote: > > BugLink: https://bugs.launchpad.net/bugs/2053069 > > SRU Justification: > > [Impact] > In high core count systems such as Intel Sapphire Rapids > (with a 112C/224T count) this this change improvesgeekbench performance by > ~5.3% due to moving the elements in the address_space struct. > > [Fix] > by moving i_mmap_rwsema, vma_interval_tree_remove is no longer in cacheline 0 > which improves the performance. > > > [Test Plan] > I've tested this change, as has Intel. This change has also been upstreamed > for some time. > > [Where problems could occur] > The risk for regression is fairly low, as we are just changing the layout > of a stuct to change where members land in the cache. > > -- > > Zhu, Lipeng (1): > fs/address_space: add alignment padding for i_map and i_mmap_rwsem to > mitigate a false sharing. > > include/linux/fs.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > -- > 2.34.1 > > > -- > kernel-team mailing list > kernel-team@lists.ubuntu.com > https://lists.ubuntu.com/mailman/listinfo/kernel-team
On 13.02.24 21:42, Philip Cox wrote: > > BugLink: https://bugs.launchpad.net/bugs/2053069 > > SRU Justification: > > [Impact] > In high core count systems such as Intel Sapphire Rapids > (with a 112C/224T count) this this change improvesgeekbench performance by > ~5.3% due to moving the elements in the address_space struct. > > [Fix] > by moving i_mmap_rwsema, vma_interval_tree_remove is no longer in cacheline 0 > which improves the performance. > > > [Test Plan] > I've tested this change, as has Intel. This change has also been upstreamed > for some time. > > [Where problems could occur] > The risk for regression is fairly low, as we are just changing the layout > of a stuct to change where members land in the cache. > > -- > > Zhu, Lipeng (1): > fs/address_space: add alignment padding for i_map and i_mmap_rwsem to > mitigate a false sharing. > > include/linux/fs.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > This patch is upstream as of v6.6 (the devel task of the bug report should be fix-released or invalid). However that brings up the question about Mantic/6.5. Should this not also be included there? Acked-by: Stefan Bader <stefan.bader@canonical.com>
On 24/02/13 03:42PM, Philip Cox wrote: > > BugLink: https://bugs.launchpad.net/bugs/2053069 > > SRU Justification: > > [Impact] > In high core count systems such as Intel Sapphire Rapids > (with a 112C/224T count) this this change improvesgeekbench performance by > ~5.3% due to moving the elements in the address_space struct. > > [Fix] > by moving i_mmap_rwsema, vma_interval_tree_remove is no longer in cacheline 0 > which improves the performance. > > > [Test Plan] > I've tested this change, as has Intel. This change has also been upstreamed > for some time. > > [Where problems could occur] > The risk for regression is fairly low, as we are just changing the layout > of a stuct to change where members land in the cache. > > -- > > Zhu, Lipeng (1): > fs/address_space: add alignment padding for i_map and i_mmap_rwsem to > mitigate a false sharing. > > include/linux/fs.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Acked-by: Andrei Gherzan <andrei.gherzan@canonical.com>
On 13.02.24 21:42, Philip Cox wrote: > > BugLink: https://bugs.launchpad.net/bugs/2053069 > > SRU Justification: > > [Impact] > In high core count systems such as Intel Sapphire Rapids > (with a 112C/224T count) this this change improvesgeekbench performance by > ~5.3% due to moving the elements in the address_space struct. > > [Fix] > by moving i_mmap_rwsema, vma_interval_tree_remove is no longer in cacheline 0 > which improves the performance. > > > [Test Plan] > I've tested this change, as has Intel. This change has also been upstreamed > for some time. > > [Where problems could occur] > The risk for regression is fairly low, as we are just changing the layout > of a stuct to change where members land in the cache. > > -- > > Zhu, Lipeng (1): > fs/address_space: add alignment padding for i_map and i_mmap_rwsem to > mitigate a false sharing. > > include/linux/fs.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > I found that this patch, although originating in v6.6-rc1, already is applied to Mantic. But it does not use the full cherry pick format (no upstream SHA1 reference). So I initially missed it. Applied to jammy:linux/master-next. Thanks. -Stefan