<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 01:21:47 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-2032] small random read i/o performance regression</title>
                <link>https://jira.whamcloud.com/browse/LU-2032</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;I&apos;ve been doing some 2.1.3 pre-rollout testing, and there seems to be a client problem with small random reads. performance is considerably worse on 2.1.3 clients than 1.8.8 clients. it&apos;s about a 35x slowdown for 4k random read i/o.&lt;/p&gt;

&lt;p&gt;tests use the same files on a rhel6 x86_64 2.1.3 server (stock 2.1.3 rpm is used), QDR IB fabric, single disk or md8+2 lun for an OST, all client &amp;amp; server VFS caches dropped between trials.&lt;/p&gt;

&lt;p&gt;checksums on or off and client rpc&apos;s 8 or 32 makes little difference. I&apos;ve also tried umount&apos;ing the fs from the 1.8.8 client between tests to make sure there&apos;s no hidden caching, but that didn&apos;t change anything.&lt;/p&gt;

&lt;p&gt;random read -&amp;gt;&lt;br/&gt;
   IOR -a POSIX -C -r -F -k -e -t $i -z -b 1024m -o /mnt/yo96/rjh/blah&lt;/p&gt;


&lt;div class=&apos;table-wrap&apos;&gt;
&lt;table class=&apos;confluenceTable&apos;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;th class=&apos;confluenceTh&apos;&gt; i/o size &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;  client version  &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;         single disk lun     &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;    md8+2 lun &lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; i=4k &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; 1.8.8 &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;    20.70 MB/s   &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;        22.0 MB/s &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; i=4k &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; 2.1.3 &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;     0.55 MB/s   &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;         0.6 MB/s &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th class=&apos;confluenceTh&apos;&gt; i/o size &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;  client version  &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;         single disk lun     &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;    md8+2 lun &lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; i=1M &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; 1.8.8 &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;    87 MB/s      &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;        137 MB/s  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; i=1M &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; 2.1.3  &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; 63 MB/s          &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt;     83 MB/s  &lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;


&lt;p&gt;although these numbers are for a single process, the same trend applies when the IOR is scaled up to 8 processes/node and to multiple nodes.&lt;/p&gt;</description>
                <environment>2.1.3 server with 2.1.3 and 1.8.8 clients. centos6, x86_64, QDR IB</environment>
        <key id="16129">LU-2032</key>
            <summary>small random read i/o performance regression</summary>
                <type id="1" iconUrl="https://jira.whamcloud.com/secure/viewavatar?size=xsmall&amp;avatarId=11303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.whamcloud.com/images/icons/priorities/major.svg">Major</priority>
                        <status id="1" iconUrl="https://jira.whamcloud.com/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="default"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="wc-triage">WC Triage</assignee>
                                    <reporter username="rjh">Robin Humble</reporter>
                        <labels>
                    </labels>
                <created>Wed, 26 Sep 2012 09:29:24 +0000</created>
                <updated>Fri, 21 Sep 2018 23:29:24 +0000</updated>
                                            <version>Lustre 2.1.3</version>
                                                        <due></due>
                            <votes>0</votes>
                                    <watches>16</watches>
                                                                            <comments>
                            <comment id="45573" author="rjh" created="Wed, 26 Sep 2012 12:14:15 +0000"  >&lt;p&gt;it seems current master has the same problem.&lt;br/&gt;
/proc/fs/lustre/version is 2.3.50-g1d2bf12-CHANGED-2.6.32-279.9.1.el6-2.3.50-ish.a&lt;/p&gt;

&lt;div class=&apos;table-wrap&apos;&gt;
&lt;table class=&apos;confluenceTable&apos;&gt;&lt;tbody&gt;
&lt;tr&gt;
&lt;th class=&apos;confluenceTh&apos;&gt;i/o size &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt; client version &lt;/th&gt;
&lt;th class=&apos;confluenceTh&apos;&gt; single disk lun &lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; i=4k &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; master &lt;/td&gt;
&lt;td class=&apos;confluenceTd&apos;&gt; 0.54 MB/s &lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
</comment>
                            <comment id="45623" author="rjh" created="Thu, 27 Sep 2012 05:47:38 +0000"  >&lt;p&gt;rpc&apos;s, especially pages and bytes per rpc, look pretty different between 1.8.8 and 2.1.3.&lt;br/&gt;
eg. after running&lt;br/&gt;
   IOR -a POSIX -C -r -F -k -e -t $i -z -b 100m -o /mnt/yo*/rjh/blah&lt;/p&gt;

&lt;p&gt;osc/*/rpc_stats -&amp;gt;&lt;/p&gt;

&lt;p&gt;1.8.8&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;                        read                    write
pages per rpc         rpcs   % cum % |       rpcs   % cum %
1:                      68  12  12   |          0   0   0
2:                      34   6  19   |          0   0   0
4:                      57  10  30   |          0   0   0
8:                      52   9  39   |          0   0   0
16:                     63  11  51   |          0   0   0
32:                     50   9  61   |          0   0   0
64:                     66  12  73   |          0   0   0
128:                    67  12  86   |          0   0   0
256:                    72  13 100   |          0   0   0

                        read                    write
rpcs in flight        rpcs   % cum % |       rpcs   % cum %
0:                     483  91  91   |          0   0   0
1:                      39   7  98   |          0   0   0
2:                       5   0  99   |          0   0   0
3:                       2   0 100   |          0   0   0

                        read                    write
offset                rpcs   % cum % |       rpcs   % cum %
0:                     101  19  19   |          0   0   0
1:                      26   4  24   |          0   0   0
2:                      49   9  33   |          0   0   0
4:                      48   9  42   |          0   0   0
8:                      61  11  53   |          0   0   0
16:                     64  12  65   |          0   0   0
32:                     56  10  76   |          0   0   0
64:                     55  10  86   |          0   0   0
128:                    69  13 100   |          0   0   0
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;2.1.3&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;                        read                    write
pages per rpc         rpcs   % cum % |       rpcs   % cum %
1:                   25568  99  99   |          0   0   0
2:                       1   0  99   |          0   0   0
4:                       0   0  99   |          0   0   0
8:                       5   0 100   |          0   0   0

                        read                    write
rpcs in flight        rpcs   % cum % |       rpcs   % cum %
0:                   25574 100 100   |          0   0   0
                      
                        read                    write
offset                rpcs   % cum % |       rpcs   % cum %
0:                     100   0   0   |          0   0   0
1:                     100   0   0   |          0   0   0
2:                     200   0   1   |          0   0   0
4:                     400   1   3   |          0   0   0
8:                     800   3   6   |          0   0   0
16:                   1600   6  12   |          0   0   0
32:                   3200  12  25   |          0   0   0
64:                   6383  24  49   |          0   0   0
128:                 12791  50 100   |          0   0   0
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;


&lt;p&gt;osc/*/import -&amp;gt;&lt;/p&gt;

&lt;p&gt;1.8.8&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;...
    read_data_averages:
       bytes_per_rpc: 200200
       usec_per_rpc: 7673
       MB_per_sec: 26.09
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;2.1.3&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;    read_data_averages:
       bytes_per_rpc: 4100
       usec_per_rpc: 6108
       MB_per_sec: 0.67
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;


&lt;p&gt;also read ahead stats hit/miss ratios are pretty much reversed between 1.8.8 and 2.1.3, but that might just be accounting?&lt;br/&gt;
llite/*/read_ahead_stats -&amp;gt;&lt;/p&gt;

&lt;p&gt;1.8.8&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;snapshot_time             1348738815.173086 secs.usecs
hits                      25120 samples [pages]
misses                    480 samples [pages]
readpage not consecutive  25583 samples [pages]
failed grab_cache_page    25583 samples [pages]
read but discarded        256 samples [pages]
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;2.1.3&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;snapshot_time             1348738815.198485 secs.usecs
hits                      26 samples [pages]
misses                    25574 samples [pages]
readpage not consecutive  25589 samples [pages]
miss inside window        3 samples [pages]
failed grab_cache_page    25599 samples [pages]
zero size window          1 samples [pages]
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
</comment>
                            <comment id="45629" author="jay" created="Thu, 27 Sep 2012 11:26:14 +0000"  >&lt;p&gt;Can you please run your test case again with D_READA enabled on the client side? This seems to be a readahead problem for sure.&lt;/p&gt;</comment>
                            <comment id="45714" author="rjh" created="Fri, 28 Sep 2012 06:04:10 +0000"  >&lt;p&gt;sure. this is +reada +vfstrace for a 1.8.8 client and a 2.1.3 client.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                            <outwardlinks description="duplicates">
                                        <issuelink>
            <issuekey id="26232">LU-5561</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10011">
                    <name>Related</name>
                                            <outwardlinks description="is related to ">
                                        <issuelink>
            <issuekey id="18906">LU-3321</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="53387">LU-11416</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="11940" name="dk_ra_vfs.100m_1.8.8.txt.gz" size="288330" author="rjh" created="Fri, 28 Sep 2012 06:04:10 +0000"/>
                            <attachment id="11941" name="dk_ra_vfs.100m_2.1.3.txt.gz" size="427714" author="rjh" created="Fri, 28 Sep 2012 06:04:10 +0000"/>
                    </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|hzv3zb:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10090" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4173</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>