<!-- 
RSS generated by JIRA (9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c) at Sat Feb 10 02:20:12 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-8747] OSC_READ/WRITE replacement after LU-6943</title>
                <link>https://jira.whamcloud.com/browse/LU-8747</link>
                <project id="10000" key="LU">Lustre</project>
                    <description>&lt;p&gt;In &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-6943&quot; title=&quot;Get rid of cl_req in CLIO&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-6943&quot;&gt;&lt;del&gt;LU-6943&lt;/del&gt;&lt;/a&gt; the &lt;tt&gt;osc_read&lt;/tt&gt; and &lt;tt&gt;osc_write&lt;/tt&gt; are removed.&lt;br/&gt;
This information was very important to understand how an application was using the local cache versus sending data over the network.&lt;br/&gt;
This is was an example:&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             1454067781.979713 secs.usecs
read_bytes                100000 samples [bytes] 4096 4096 409600000
write_bytes               100000 samples [bytes] 4096 4096 409600000
osc_read                  401 samples [bytes] 4096 1048576 409600000
osc_write                 391 samples [bytes] 655360 1048576 409600000
open                      3 samples [regs]
close                     3 samples [regs]
seek                      2 samples [regs]
truncate                  1 samples [regs]
getxattr                  100000 samples [regs]
inode_permission          7 samples [regs]
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;After the &lt;a href=&quot;https://jira.whamcloud.com/browse/LU-6943&quot; title=&quot;Get rid of cl_req in CLIO&quot; class=&quot;issue-link&quot; data-issue-key=&quot;LU-6943&quot;&gt;&lt;del&gt;LU-6943&lt;/del&gt;&lt;/a&gt;, I&apos;m assuming those informations are available on each stats under each osc: &lt;tt&gt;osc.*.stats&lt;/tt&gt;&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;osc.zlfs2-OST001f-osc-ffff8820254c4000.stats=
snapshot_time             1477130565.324299 secs.usecs
req_waittime              1584 samples [usec] 170 7238 2291201 3700860537
req_active                1584 samples [reqs] 1 2 1618 1686
read_bytes                432 samples [bytes] 983 1048576 306500567 291188566310545
write_bytes               1148 samples [bytes] 983 1048576 1181807521 1239149817647387
ost_read                  432 samples [usec] 170 4809 575487 981550847
ost_write                 1148 samples [usec] 255 6154 1707192 2666192812
ldlm_cancel               1 samples [usec] 264 264 264 69696
obd_ping                  2 samples [usec] 247 773 1020 658538
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;I&apos;m assuming the old &lt;tt&gt;osc_read == SUM(read_bytes in osc.*.stats)&lt;/tt&gt;. Could you please confirm?&lt;/p&gt;

&lt;p&gt;Normally the &lt;tt&gt;SUM(read_bytes in osc.&amp;#42;.stats)&lt;/tt&gt; should be = of the &lt;tt&gt;read_bytes in llite.&amp;#42;.stats&lt;/tt&gt; when the application is reading data from the network or &amp;lt; when the application is reading data already in the VFS cache. Shouldn&apos;t be possible to have a situation where &lt;tt&gt;SUM(read_bytes in osc.&amp;#42;.stats)&lt;/tt&gt; &amp;gt; &lt;tt&gt;read_bytes in llite.&amp;#42;.stats&lt;/tt&gt; in theory.&lt;/p&gt;

&lt;p&gt;I did some experiment and I found that the &lt;tt&gt;SUM(read_bytes in osc.&amp;#42;.stats)&lt;/tt&gt; &amp;gt; &lt;tt&gt;read_bytes in llite.&amp;#42;.stats&lt;/tt&gt;. Could you explain why?&lt;/p&gt;</description>
                <environment></environment>
        <key id="40970">LU-8747</key>
            <summary>OSC_READ/WRITE replacement after LU-6943</summary>
                <type id="9" iconUrl="https://jira.whamcloud.com/images/icons/issuetypes/undefined.png">Question/Request</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="gabriele.paciucci">Gabriele Paciucci</reporter>
                        <labels>
                    </labels>
                <created>Sat, 22 Oct 2016 09:56:59 +0000</created>
                <updated>Wed, 26 Oct 2016 17:19:49 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                            <comments>
                            <comment id="170671" author="gabriele.paciucci" created="Sat, 22 Oct 2016 10:45:16 +0000"  >&lt;p&gt;I did a simple test:&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;lctl set_param llite.*.stats=0; lctl set_param osc.*.stats=0
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;dd if=/dev/zero of=pippo bs=1M count=1000
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;[root@broadwell1 SIDRA]#  lctl get_param llite.*.stats |grep write_bytes
write_bytes               1000 samples [bytes] 1048576 1048576 1048576000
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;lctl get_param osc.*.stats |grep write_bytes
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               32 samples [bytes] 1048576 1048576 33554432 35184372088832
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
write_bytes               31 samples [bytes] 1048576 1048576 32505856 34084860461056
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;lctl set_param llite.*.stats=0; lctl set_param osc.*.stats=0
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;[root@broadwell1 SIDRA]# dd of=/dev/null if=pippo bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 0.288931 s, 3.6 GB/s
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;[root@broadwell1 SIDRA]#  lctl get_param llite.*.stats|grep read_bytes
read_bytes                1000 samples [bytes] 1048576 1048576 1048576000
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&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;lctl get_param osc.*.stats|grep read_bytes
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;empty....&lt;/p&gt;</comment>
                            <comment id="170672" author="gabriele.paciucci" created="Sat, 22 Oct 2016 10:46:50 +0000"  >&lt;p&gt;So the application in my first question was reading data using a different call from &lt;tt&gt;read()&lt;/tt&gt; and this explain why &lt;tt&gt;SUM(read_bytes in osc.&amp;#42;.stats)&lt;/tt&gt; &amp;gt; &lt;tt&gt;read_bytes in llite.&amp;#42;.stats&lt;/tt&gt;.&lt;/p&gt;</comment>
                            <comment id="170804" author="jhammond" created="Mon, 24 Oct 2016 18:42:38 +0000"  >&lt;p&gt;In &lt;tt&gt;llite.*.stats&lt;/tt&gt; the {&lt;tt&gt;read,write}_bytes&lt;/tt&gt; stats only count the number of bytes returned from some variant of &lt;tt&gt;read()&lt;/tt&gt; or &lt;tt&gt;write()&lt;/tt&gt;. If those reads hit the cache then the corresponding osc stats will remain unchanged. &lt;/p&gt;</comment>
                    </comments>
                    <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|hzyt3z:</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>
                                                                                                                                                                                                                                                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>