[prev in list] [next in list] [prev in thread] [next in thread] 

List:       lustre-discuss
Subject:    [lustre-discuss] LU-8964/pio feature usage
From:       Patrick Farrell <paf () cray ! com>
Date:       2018-12-23 20:59:55
Message-ID: MWHPR11MB1488133B9B73AC69B9224B19CBBA0 () MWHPR11MB1488 ! namprd11 ! prod ! outlook ! com
[Download RAW message or body]

Good afternoon,

There was a recent discussion on the lustre-devel mailing list in which I f=
loated removing the 'pio' feature from Lustre.  This is a client side i/o p=
arallelization feature (splitting i/o in kernel space & using multiple work=
er threads) which is off by default and must be enabled manually with a set=
ting in proc.

It is not on by default because while it helps performance for some workloa=
ds, it harms performance for many other common workloads.  I studied making=
 it fit to be on by default some time ago (item #1 would be making sure it =
did not slow down any common workloads), and found a fair bit of work to do=
 to make that possible.

In the time since then, the work to extend the utility of this feature to r=
eads was unsuccessful, and a credible alternate proposal for writes ("write=
 containers", basically simplifying the write path dramatically for sequent=
ial i/o, which should be able to offer similar or larger benefits at a lowe=
r cost in CPU usage) has come about.

I could go on - But I am really wondering this:
Are there any active users of this feature?  If so, what's your use case an=
d what's the benefit you see?  Keep in mind it must be turned on explicitly=
, so if you are not familiar with it, it's pretty unlikely you're using it.

For those who'd like to learn more, I'd refer you to the original bug:
https://jira.whamcloud.com/browse/LU-8964

My LAD talk from a few years ago:
https://www.eofs.eu/_media/events/devsummit17/patrick_farrell_laddevsummit_=
pio.pdf

And the recent mailing list discussion:
http://lists.lustre.org/pipermail/lustre-devel-lustre.org/2018-November/thr=
ead.html
(Look for [PATCH 10/12] lustre: clio: Introduce parallel tasks framework <h=
ttp://lists.lustre.org/pipermail/lustre-devel-lustre.org/2018-November/0082=
10.html> , and for my comments specifically)

  *   Patrick

[Attachment #3 (text/html)]

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} \
</style> </head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> Good afternoon,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> There was a recent discussion on the lustre-devel mailing list \
in which I floated removing the 'pio' feature from Lustre.&nbsp; This is a client \
side i/o parallelization feature (splitting i/o in kernel space &amp; using multiple \
worker threads) which is off by default  and must be enabled manually with a setting \
in proc.</div> <div style="font-family: Calibri, Arial, Helvetica, sans-serif; \
font-size: 12pt; color: rgb(0, 0, 0);"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> It is not on by default because while it helps performance for \
some workloads, it harms performance for many other common workloads.&nbsp; I studied \
making it fit to be on by default some time ago (item #1 would be making sure it did \
not slow down any common workloads),  and found a fair bit of work to do to make that \
possible.</div> <div style="font-family: Calibri, Arial, Helvetica, sans-serif; \
font-size: 12pt; color: rgb(0, 0, 0);"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> In the time since then, the work to extend the utility of this \
feature to reads was unsuccessful, and a credible alternate proposal for writes \
(&quot;write containers&quot;, basically simplifying the write path dramatically for \
sequential i/o, which should be able to  offer similar or larger benefits at a lower \
cost in CPU usage) has come about.</div> <div style="font-family: Calibri, Arial, \
Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> I could go on - But I am really wondering this:<br>
Are there any active users of this feature?&nbsp; If so, what's your use case and \
what's the benefit you see?&nbsp; Keep in mind it must be turned on explicitly, so if \
you are not familiar with it, it's pretty unlikely you're using it.</div> <div \
style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: \
rgb(0, 0, 0);"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> For those who'd like to learn more, I'd refer you to the \
original bug:</div> <div style="font-family: Calibri, Arial, Helvetica, sans-serif; \
font-size: 12pt; color: rgb(0, 0, 0);"> <a \
href="https://jira.whamcloud.com/browse/LU-8964" \
id="LPlnk794702">https://jira.whamcloud.com/browse/LU-8964</a><br> </div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> My LAD talk from a few years ago:</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> <a \
href="https://www.eofs.eu/_media/events/devsummit17/patrick_farrell_laddevsummit_pio.pdf" \
id="LPNoLP297312">https://www.eofs.eu/_media/events/devsummit17/patrick_farrell_laddevsummit_pio.pdf</a><br>
 </div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> <br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> And the recent mailing list discussion:</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; \
color: rgb(0, 0, 0);"> <a \
href="http://lists.lustre.org/pipermail/lustre-devel-lustre.org/2018-November/thread.html" \
id="LPlnk347135">http://lists.lustre.org/pipermail/lustre-devel-lustre.org/2018-November/thread.html</a><br>
 </div>
<div style="color: rgb(0, 0, 0);"><font face="Calibri, Arial, Helvetica, \
sans-serif"><span style="font-size: 12pt;">(Look for&nbsp;</span></font><a \
href="http://lists.lustre.org/pipermail/lustre-devel-lustre.org/2018-November/008210.html" \
style="font-family: &quot;Times New Roman&quot;; font-size: medium; text-align: left; \
background-color: rgb(255, 255, 255);"><font face="Times New Roman" size="3"><span \
style="background-color: rgb(255, 255, 255);">[PATCH  10/12] lustre: clio: Introduce \
parallel tasks framework</span></font><span style="font-family: &quot;Times New \
Roman&quot;; font-size: medium; text-align: left; background-color: rgb(255, 255, \
255);">&nbsp;</span></a><font face="Times New Roman" size="3">, and for my comments  \
specifically)</font></div> <div style="">
<ul style="">
<li style=""><font color="#000000" face="Calibri, Arial, Helvetica, \
sans-serif">Patrick</font></li></ul> </div>
</body>
</html>



_______________________________________________
lustre-discuss mailing list
lustre-discuss@lists.lustre.org
http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org

--===============6560412060799879301==--

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic