|
307 | 307 | <tr class="memitem:a9d37ad1d4da0bcb51ada76dbe4f4ce15"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="bdev_8h.html#a9d37ad1d4da0bcb51ada76dbe4f4ce15">spdk_bdev_set_qd_sampling_period</a> (struct <a class="el" href="structspdk__bdev.html">spdk_bdev</a> *bdev, uint64_t period)</td></tr>
|
308 | 308 | <tr class="memdesc:a9d37ad1d4da0bcb51ada76dbe4f4ce15"><td class="mdescLeft"> </td><td class="mdescRight">Enable or disable queue depth sampling for this bdev. <a href="#a9d37ad1d4da0bcb51ada76dbe4f4ce15">More...</a><br /></td></tr>
|
309 | 309 | <tr class="separator:a9d37ad1d4da0bcb51ada76dbe4f4ce15"><td class="memSeparator" colspan="2"> </td></tr>
|
| 310 | +<tr class="memitem:a8a082eb89d57860b2e57ebf7f5b3caa2"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="bdev_8h.html#a8a082eb89d57860b2e57ebf7f5b3caa2">spdk_bdev_get_io_time</a> (const struct <a class="el" href="structspdk__bdev.html">spdk_bdev</a> *bdev)</td></tr> |
| 311 | +<tr class="memdesc:a8a082eb89d57860b2e57ebf7f5b3caa2"><td class="mdescLeft"> </td><td class="mdescRight">Get the time spent processing IO for this device. <a href="#a8a082eb89d57860b2e57ebf7f5b3caa2">More...</a><br /></td></tr> |
| 312 | +<tr class="separator:a8a082eb89d57860b2e57ebf7f5b3caa2"><td class="memSeparator" colspan="2"> </td></tr> |
| 313 | +<tr class="memitem:a526ab43ba037b8637a23e9d42289884e"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="bdev_8h.html#a526ab43ba037b8637a23e9d42289884e">spdk_bdev_get_weighted_io_time</a> (const struct <a class="el" href="structspdk__bdev.html">spdk_bdev</a> *bdev)</td></tr> |
| 314 | +<tr class="memdesc:a526ab43ba037b8637a23e9d42289884e"><td class="mdescLeft"> </td><td class="mdescRight">Get the weighted IO processing time for this bdev. <a href="#a526ab43ba037b8637a23e9d42289884e">More...</a><br /></td></tr> |
| 315 | +<tr class="separator:a526ab43ba037b8637a23e9d42289884e"><td class="memSeparator" colspan="2"> </td></tr> |
310 | 316 | <tr class="memitem:ab5bb9e746b030d7c4c89cbcf60076c7e"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structspdk__io__channel.html">spdk_io_channel</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="bdev_8h.html#ab5bb9e746b030d7c4c89cbcf60076c7e">spdk_bdev_get_io_channel</a> (struct spdk_bdev_desc *desc)</td></tr>
|
311 | 317 | <tr class="memdesc:ab5bb9e746b030d7c4c89cbcf60076c7e"><td class="mdescLeft"> </td><td class="mdescRight">Obtain an I/O channel for the block device opened by the specified descriptor. <a href="#ab5bb9e746b030d7c4c89cbcf60076c7e">More...</a><br /></td></tr>
|
312 | 318 | <tr class="separator:ab5bb9e746b030d7c4c89cbcf60076c7e"><td class="memSeparator" colspan="2"> </td></tr>
|
@@ -965,6 +971,35 @@ <h2 class="memtitle"><span class="permalink"><a href="#ab1ba28ba382edd1d792d51a0
|
965 | 971 | </dd>
|
966 | 972 | </dl>
|
967 | 973 |
|
| 974 | +</div> |
| 975 | +</div> |
| 976 | +<a id="a8a082eb89d57860b2e57ebf7f5b3caa2"></a> |
| 977 | +<h2 class="memtitle"><span class="permalink"><a href="#a8a082eb89d57860b2e57ebf7f5b3caa2">◆ </a></span>spdk_bdev_get_io_time()</h2> |
| 978 | + |
| 979 | +<div class="memitem"> |
| 980 | +<div class="memproto"> |
| 981 | + <table class="memname"> |
| 982 | + <tr> |
| 983 | + <td class="memname">uint64_t spdk_bdev_get_io_time </td> |
| 984 | + <td>(</td> |
| 985 | + <td class="paramtype">const struct <a class="el" href="structspdk__bdev.html">spdk_bdev</a> * </td> |
| 986 | + <td class="paramname"><em>bdev</em></td><td>)</td> |
| 987 | + <td></td> |
| 988 | + </tr> |
| 989 | + </table> |
| 990 | +</div><div class="memdoc"> |
| 991 | + |
| 992 | +<p>Get the time spent processing IO for this device. </p> |
| 993 | +<p>This value is dependent upon the queue depth sampling period and is incremented at sampling time by the sampling period only if the measured queue depth is greater than 0.</p> |
| 994 | +<p>The disk utilization can be calculated by the following formula: disk_util = (io_time_2 - io_time_1) / elapsed_time. The user is responsible for tracking the elapsed time between two measurements.</p> |
| 995 | +<dl class="params"><dt>Parameters</dt><dd> |
| 996 | + <table class="params"> |
| 997 | + <tr><td class="paramname">bdev</td><td>Block device to query.</td></tr> |
| 998 | + </table> |
| 999 | + </dd> |
| 1000 | +</dl> |
| 1001 | +<dl class="section return"><dt>Returns</dt><dd>The io time for this device in microseconds. </dd></dl> |
| 1002 | + |
968 | 1003 | </div>
|
969 | 1004 | </div>
|
970 | 1005 | <a id="ad97a853dcb945bf004817424b7aa28af"></a>
|
@@ -1186,6 +1221,35 @@ <h2 class="memtitle"><span class="permalink"><a href="#add8565cdbf3d57697b67202b
|
1186 | 1221 | <dl class="section return"><dt>Returns</dt><dd>Pointer to UUID.</dd></dl>
|
1187 | 1222 | <p>Not all bdevs will have a UUID; in this case, the returned UUID will be the nil UUID (all bytes zero). </p>
|
1188 | 1223 |
|
| 1224 | +</div> |
| 1225 | +</div> |
| 1226 | +<a id="a526ab43ba037b8637a23e9d42289884e"></a> |
| 1227 | +<h2 class="memtitle"><span class="permalink"><a href="#a526ab43ba037b8637a23e9d42289884e">◆ </a></span>spdk_bdev_get_weighted_io_time()</h2> |
| 1228 | + |
| 1229 | +<div class="memitem"> |
| 1230 | +<div class="memproto"> |
| 1231 | + <table class="memname"> |
| 1232 | + <tr> |
| 1233 | + <td class="memname">uint64_t spdk_bdev_get_weighted_io_time </td> |
| 1234 | + <td>(</td> |
| 1235 | + <td class="paramtype">const struct <a class="el" href="structspdk__bdev.html">spdk_bdev</a> * </td> |
| 1236 | + <td class="paramname"><em>bdev</em></td><td>)</td> |
| 1237 | + <td></td> |
| 1238 | + </tr> |
| 1239 | + </table> |
| 1240 | +</div><div class="memdoc"> |
| 1241 | + |
| 1242 | +<p>Get the weighted IO processing time for this bdev. </p> |
| 1243 | +<p>This value is dependent upon the queue depth sampling period and is equal to the time spent reading from or writing to a device times the measured queue depth during each sampling period.</p> |
| 1244 | +<p>The average queue depth can be calculated by the following formula: queue_depth = (weighted_io_time_2 - weighted_io_time_1) / elapsed_time. The user is responsible for tracking the elapsed time between two measurements.</p> |
| 1245 | +<dl class="params"><dt>Parameters</dt><dd> |
| 1246 | + <table class="params"> |
| 1247 | + <tr><td class="paramname">bdev</td><td>Block device to query.</td></tr> |
| 1248 | + </table> |
| 1249 | + </dd> |
| 1250 | +</dl> |
| 1251 | +<dl class="section return"><dt>Returns</dt><dd>The weighted io time for this device in microseconds. </dd></dl> |
| 1252 | + |
1189 | 1253 | </div>
|
1190 | 1254 | </div>
|
1191 | 1255 | <a id="a93f6d6ce09da384501f09a49581caa37"></a>
|
|
0 commit comments