<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:34:41 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Whamcloud Community JIRA</title>
    <link>https://jira.whamcloud.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.4.14</version>
        <build-number>940014</build-number>
        <build-date>05-12-2023</build-date>
    </build-info>


<item>
            <title>[LU-10394] IB_MR_TYPE_SG_GAPS mlx5 LNet performance drop</title>
                <link>https://jira.whamcloud.com/browse/LU-10394</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;mlx5 performance is down 2+ GB/s when using&#160;IB_MR_TYPE_SG_GAPS as compared to IB_MR_TYPE_MEM_REG.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;mlx5 with SG GAPS&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;----------------------------------------------------------
Running test: lst add_test --batch rperf --concurrency 32 --distribute 1:1 --from clients --to servers brw read size=1M
Client Read RPC/s: 17426.3333333333
Client Write RPC/s: 8713.77777777778
Client Read MiB/s: 8713.46111111111
Client Write MiB/s: 1.33
----------------------------------------------------------
Running test: lst add_test --batch rperf --concurrency 64 --distribute 1:1 --from clients --to servers brw read size=1M
Client Read RPC/s: 17408.3333333333
Client Write RPC/s: 8705.22222222222
Client Read MiB/s: 8704.06666666667
Client Write MiB/s: 1.33
----------------------------------------------------------
Running test: lst add_test --batch rperf --concurrency 128 --distribute 1:1 --from clients --to servers brw read size=1M
Client Read RPC/s: 17388.4444444444
Client Write RPC/s: 8697
Client Read MiB/s: 8695.54666666667
Client Write MiB/s: 1.32777777777778
----------------------------------------------------------
Running test: lst add_test --batch wperf --concurrency 32 --distribute 1:1 --from clients --to servers brw write size=1M
Client Read RPC/s: 17712.1111111111
Client Write RPC/s: 8856.55555555555
Client Read MiB/s: 1.35
Client Write MiB/s: 8855.53111111111
----------------------------------------------------------
Running test: lst add_test --batch wperf --concurrency 64 --distribute 1:1 --from clients --to servers brw write size=1M
Client Read RPC/s: 17705.7777777778
Client Write RPC/s: 8853.66666666667
Client Read MiB/s: 1.35
Client Write MiB/s: 8853.18555555556
----------------------------------------------------------
Running test: lst add_test --batch wperf --concurrency 128 --distribute 1:1 --from clients --to servers brw write size=1M
Client Read RPC/s: 17697.3333333333
Client Write RPC/s: 8854.44444444445
Client Read MiB/s: 1.34888888888889
Client Write MiB/s: 8850.95777777778


&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;mlx5 without SG GAPS&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;----------------------------------------------------------
Running test: lst add_test --batch rperf --concurrency 32 --distribute 1:1 --from clients --to servers brw read size=1M
Client Read RPC/s: 22449.5555555556
Client Write RPC/s: 11227
Client Read MiB/s: 11224.5033333333
Client Write MiB/s: 1.71222222222222
----------------------------------------------------------
Running test: lst add_test --batch rperf --concurrency 64 --distribute 1:1 --from clients --to servers brw read size=1M
Client Read RPC/s: 22308.6666666667
Client Write RPC/s: 11154.3333333333
Client Read MiB/s: 11155.7288888889
Client Write MiB/s: 1.7
----------------------------------------------------------
Running test: lst add_test --batch rperf --concurrency 128 --distribute 1:1 --from clients --to servers brw read size=1M
Client Read RPC/s: 21549.1
Client Write RPC/s: 10737.4
Client Read MiB/s: 11135.278
Client Write MiB/s: 1.638
----------------------------------------------------------
Running test: lst add_test --batch wperf --concurrency 32 --distribute 1:1 --from clients --to servers brw write size=1M
Client Read RPC/s: 22178.3333333333
Client Write RPC/s: 11090.8888888889
Client Read MiB/s: 1.69
Client Write MiB/s: 11088.7822222222
----------------------------------------------------------
Running test: lst add_test --batch wperf --concurrency 64 --distribute 1:1 --from clients --to servers brw write size=1M
Client Read RPC/s: 22198.6666666667
Client Write RPC/s: 11099.8888888889
Client Read MiB/s: 1.69111111111111
Client Write MiB/s: 11100.1666666667
----------------------------------------------------------
Running test: lst add_test --batch wperf --concurrency 128 --distribute 1:1 --from clients --to servers brw write size=1M
Client Read RPC/s: 22162.6666666667
Client Write RPC/s: 11085.7777777778
Client Read MiB/s: 1.68777777777778
Client Write MiB/s: 11083.5477777778


&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;o2iblnd parameters:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;options ko2iblnd timeout=10
options ko2iblnd peer_timeout=0
options ko2iblnd keepalive=30
options ko2iblnd credits=2048
options ko2iblnd ntx=2048
options ko2iblnd peer_credits=16
options ko2iblnd concurrent_sends=16

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment>CentOS 7.4&lt;br/&gt;
2.10.56_1_g11aae87-1.el7.centos.x86_64</environment>
        <key id="49757">LU-10394</key>
            <summary>IB_MR_TYPE_SG_GAPS mlx5 LNet performance drop</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="2" iconUrl="https://jira.whamcloud.com/images/icons/priorities/critical.svg">Critical</priority>
                        <status id="5" iconUrl="https://jira.whamcloud.com/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="1">Fixed</resolution>
                                        <assignee username="ashehata">Amir Shehata</assignee>
                                    <reporter username="iziemba">Ian Ziemba</reporter>
                        <labels>
                    </labels>
                <created>Thu, 14 Dec 2017 23:30:35 +0000</created>
                <updated>Mon, 7 Jan 2019 19:08:16 +0000</updated>
                            <resolved>Fri, 9 Feb 2018 13:02:24 +0000</resolved>
                                    <version>Lustre 2.11.0</version>
                                    <fixVersion>Lustre 2.11.0</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>16</watches>
                                                                            <comments>
                            <comment id="216767" author="pjones" created="Tue, 19 Dec 2017 19:19:19 +0000"  >&lt;p&gt;Amir&lt;/p&gt;

&lt;p&gt;Could you please advise?&lt;/p&gt;

&lt;p&gt;Peter&lt;/p&gt;</comment>
                            <comment id="217541" author="ashehata" created="Thu, 4 Jan 2018 22:31:32 +0000"  >&lt;p&gt;Here is my proposed solution. Introduce a tunable to enable GAP support. it defaults to 0 in order to use MEM_REG. if the tunable is set to 1 and the mlx card has gap support then use GAP support and add a warning that performance degradation is expected with this configuration.&lt;/p&gt;

&lt;p&gt;This is safe because&lt;/p&gt;

&lt;p&gt; &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-9983&quot; title=&quot;LBUG llog_osd.c:327:llog_osd_declare_write_rec() - all DNE MDS&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-9983&quot;&gt;&lt;del&gt;LU-9983&lt;/del&gt;&lt;/a&gt; osp: align the OSP request size by 4k&lt;/p&gt;

&lt;p&gt;closes any scenario where we could introduce discontigous fragments.&lt;/p&gt;

&lt;p&gt;The tunable can be turned on if in the future a layer uses LNet with discontigous gaps.&lt;/p&gt;</comment>
                            <comment id="217622" author="gerrit" created="Fri, 5 Jan 2018 19:49:36 +0000"  >&lt;p&gt;Amir Shehata (amir.shehata@intel.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/30749&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/30749&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-10394&quot; title=&quot;IB_MR_TYPE_SG_GAPS mlx5 LNet performance drop&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-10394&quot;&gt;&lt;del&gt;LU-10394&lt;/del&gt;&lt;/a&gt; lnd: default to using MEM_REG&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: 74dced457067c9135365ea040e7071c87cd75375&lt;/p&gt;</comment>
                            <comment id="218004" author="iziemba" created="Thu, 11 Jan 2018 16:50:57 +0000"  >&lt;p&gt;Hi Amir,&lt;/p&gt;

&lt;p&gt;I tried running twice with this patch, and both times, my system has panic with the following message.&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;[  872.303780] LNetError: 2362:0:(o2iblnd_cb.c:991:kiblnd_check_sends_locked()) ASSERTION( conn-&amp;gt;ibc_nsends_posted &amp;lt;= conn-&amp;gt;ibc_queue_depth ) failed:
[  872.304325] LNetError: 2362:0:(o2iblnd_cb.c:991:kiblnd_check_sends_locked()) LBUG
[  872.304699] Pid: 2362, comm: kiblnd_sd_00_01
[  872.304704]
Call Trace:
[  872.304805]  [&amp;lt;ffffffffc0a1e7ae&amp;gt;] libcfs_call_trace+0x4e/0x60 [libcfs]
[  872.304901]  [&amp;lt;ffffffffc0a1e83c&amp;gt;] lbug_with_loc+0x4c/0xb0 [libcfs]
[  872.304967]  [&amp;lt;ffffffffc0ab352b&amp;gt;] kiblnd_check_sends_locked+0xd8b/0xd90 [ko2iblnd]
[  872.305008]  [&amp;lt;ffffffffc0524d53&amp;gt;] ? mlx5_ib_post_recv+0x1f3/0x240 [mlx5_ib]
[  872.305074]  [&amp;lt;ffffffffc0ab4e06&amp;gt;] kiblnd_post_rx+0x156/0x4e0 [ko2iblnd]
[  872.305138]  [&amp;lt;ffffffffc0ab536a&amp;gt;] kiblnd_recv+0x1da/0x7b0 [ko2iblnd]
[  872.305266]  [&amp;lt;ffffffffc08db1fc&amp;gt;] ? lnet_mt_match_md+0x8c/0x1b0 [lnet]
[  872.305392]  [&amp;lt;ffffffffc08e3573&amp;gt;] lnet_ni_recv+0xc3/0x320 [lnet]
[  872.305523]  [&amp;lt;ffffffffc08e3cc1&amp;gt;] lnet_recv_put+0x81/0xb0 [lnet]
[  872.305641]  [&amp;lt;ffffffffc08e5ee6&amp;gt;] lnet_parse_local+0x5a6/0xd40 [lnet]
[  872.305762]  [&amp;lt;ffffffffc08e6f4a&amp;gt;] lnet_parse+0x8ca/0xfc0 [lnet]
[  872.305825]  [&amp;lt;ffffffffc0ab3035&amp;gt;] ? kiblnd_check_sends_locked+0x895/0xd90 [ko2iblnd]
[  872.305860]  [&amp;lt;ffffffffc051c608&amp;gt;] ? mlx5_ib_poll_cq+0x418/0xf10 [mlx5_ib]
[  872.305925]  [&amp;lt;ffffffffc0ab5ce3&amp;gt;] kiblnd_handle_rx+0x213/0x6b0 [ko2iblnd]
[  872.305990]  [&amp;lt;ffffffffc0abc90f&amp;gt;] kiblnd_scheduler+0xf0f/0x1150 [ko2iblnd]
[  872.306004]  [&amp;lt;ffffffff810c93f5&amp;gt;] ? sched_clock_cpu+0x85/0xc0
[  872.306016]  [&amp;lt;ffffffff8102954d&amp;gt;] ? __switch_to+0xcd/0x500
[  872.306031]  [&amp;lt;ffffffff810c6440&amp;gt;] ? default_wake_function+0x0/0x20
[  872.306096]  [&amp;lt;ffffffffc0abba00&amp;gt;] ? kiblnd_scheduler+0x0/0x1150 [ko2iblnd]
[  872.306109]  [&amp;lt;ffffffff810b252f&amp;gt;] kthread+0xcf/0xe0
[  872.306122]  [&amp;lt;ffffffff810b2460&amp;gt;] ? kthread+0x0/0xe0
[  872.306135]  [&amp;lt;ffffffff816b8798&amp;gt;] ret_from_fork+0x58/0x90
[  872.306147]  [&amp;lt;ffffffff810b2460&amp;gt;] ? kthread+0x0/0xe0

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I think this panic is unrelated to your patch. Do you want me to open another ticket?&lt;/p&gt;

&lt;p&gt;Thanks&lt;/p&gt;</comment>
                            <comment id="218011" author="ashehata" created="Thu, 11 Jan 2018 17:33:41 +0000"  >&lt;p&gt;This has already been fixed already. Please checkout &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-10459&quot; title=&quot;LBUG o2iblnd_cb.c:991:kiblnd_check_sends_locked()) ASSERTION( conn-&amp;gt;ibc_nsends_posted &amp;lt;= conn-&amp;gt;ibc_queue_depth ) failed:&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-10459&quot;&gt;&lt;del&gt;LU-10459&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="218025" author="iziemba" created="Thu, 11 Jan 2018 19:15:22 +0000"  >&lt;p&gt;Thanks. The use_fastreg_gaps parameter works as expected. When set to 0, 1M performance is 11 GBps. When set to 1, 1M performance is 8.9 GBps.&lt;/p&gt;</comment>
                            <comment id="218037" author="ashehata" created="Thu, 11 Jan 2018 20:42:40 +0000"  >&lt;p&gt;Ok thanks. good to know that SG_GAPS drops performance. I&apos;ll make sure to record that on the LNet Wiki&lt;/p&gt;</comment>
                            <comment id="220526" author="gerrit" created="Fri, 9 Feb 2018 05:57:27 +0000"  >&lt;p&gt;Oleg Drokin (oleg.drokin@intel.com) merged in patch &lt;a href=&quot;https://review.whamcloud.com/30749/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/30749/&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-10394&quot; title=&quot;IB_MR_TYPE_SG_GAPS mlx5 LNet performance drop&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-10394&quot;&gt;&lt;del&gt;LU-10394&lt;/del&gt;&lt;/a&gt; lnd: default to using MEM_REG&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: master&lt;br/&gt;
Current Patch Set: &lt;br/&gt;
Commit: 27116ee18c04057936837f6f0aef3f4c09c21d78&lt;/p&gt;</comment>
                            <comment id="220558" author="pjones" created="Fri, 9 Feb 2018 13:02:24 +0000"  >&lt;p&gt;Landed for 2.11&lt;/p&gt;</comment>
                            <comment id="233395" author="gerrit" created="Wed, 12 Sep 2018 14:24:17 +0000"  >&lt;p&gt;Minh Diep (mdiep@whamcloud.com) uploaded a new patch: &lt;a href=&quot;https://review.whamcloud.com/33149&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://review.whamcloud.com/33149&lt;/a&gt;&lt;br/&gt;
Subject: &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-10394&quot; title=&quot;IB_MR_TYPE_SG_GAPS mlx5 LNet performance drop&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-10394&quot;&gt;&lt;del&gt;LU-10394&lt;/del&gt;&lt;/a&gt; lnd: default to using MEM_REG&lt;br/&gt;
Project: fs/lustre-release&lt;br/&gt;
Branch: b2_10&lt;br/&gt;
Current Patch Set: 1&lt;br/&gt;
Commit: ed0687e222c2714b4a1d6d12ff2bce6612c8bb82&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                                        </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="49697">LU-10373</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="52603">LU-11105</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                            <customfield id="customfield_10890" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10390" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hzzpiv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10060" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Severity</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10022"><![CDATA[3]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>