<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.lustre.org/index.php?action=history&amp;feed=atom&amp;title=VDBench</id>
	<title>VDBench - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.lustre.org/index.php?action=history&amp;feed=atom&amp;title=VDBench"/>
	<link rel="alternate" type="text/html" href="http://wiki.lustre.org/index.php?title=VDBench&amp;action=history"/>
	<updated>2026-09-12T18:31:28Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>http://wiki.lustre.org/index.php?title=VDBench&amp;diff=5121&amp;oldid=prev</id>
		<title>Elliswilson at 16:26, 10 February 2025</title>
		<link rel="alternate" type="text/html" href="http://wiki.lustre.org/index.php?title=VDBench&amp;diff=5121&amp;oldid=prev"/>
		<updated>2025-02-10T16:26:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:26, 10 February 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l20&quot;&gt;Line 20:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 20:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Download VDBench. The current official version is available from the Oracle Technology Network (OTN):&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Download VDBench. The current official version is available from the Oracle Technology Network (OTN):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;http&lt;/del&gt;://www.oracle.com/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;technetwork&lt;/del&gt;/server-storage/vdbench-downloads&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;-1901681&lt;/del&gt;.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https&lt;/ins&gt;://www.oracle.com/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;downloads&lt;/ins&gt;/server-storage/vdbench-downloads.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/blockquote&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The download is free, but Oracle requires that users register an account. An older version remains on SourceForge:&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;blockquote&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https://sourceforge.net/projects/vdbench/&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The download is free, but Oracle requires that users register an account.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Unzip the VDBench archive:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Unzip the VDBench archive:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mkdir $HOME/vdbench&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mkdir $HOME/vdbench&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;cd $HOME/vdbench $$ unzip $HOME/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;vdbench50406&lt;/del&gt;.zip&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;cd $HOME/vdbench $$ unzip $HOME/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;vdbench50407&lt;/ins&gt;.zip&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/li&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l70&quot;&gt;Line 70:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 67:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Initially, structure the read tests to run first. This gives the best opportunity to discover and fix any potential error in the benchmark configuration before a write test is run that destroys the data. Adjust the input files according to the results obtained when looking at &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;optimisation&lt;/del&gt;; for example, if write performance is poor, one may wish to disable the read tests altogether while adjusting parameters that affect write performance.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Initially, structure the read tests to run first. This gives the best opportunity to discover and fix any potential error in the benchmark configuration before a write test is run that destroys the data. Adjust the input files according to the results obtained when looking at &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;optimization&lt;/ins&gt;; for example, if write performance is poor, one may wish to disable the read tests altogether while adjusting parameters that affect write performance.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Create one test profile for each device under test. Templates containing multiple storage definitions will be evaluated for future use once issues relating to CPU utilisation have been resolved (see notes).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Create one test profile for each device under test. Templates containing multiple storage definitions will be evaluated for future use once issues relating to CPU utilisation have been resolved (see notes).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l79&quot;&gt;Line 79:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 76:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;done&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;done&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Tabulate the results in a spreadsheet such as Excel and generate graphs to &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;visualise &lt;/del&gt;the data. Establish the performance trend and look for any exceptions. One should normally expect to see healthy drives performing within +/-5% of one another. Faulty drives normally stand out quite clearly.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Tabulate the results in a spreadsheet such as Excel and generate graphs to &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;visualize &lt;/ins&gt;the data. Establish the performance trend and look for any exceptions. One should normally expect to see healthy drives performing within +/-5% of one another. Faulty drives normally stand out quite clearly.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Replace any bad drives and re-run VDBench against those targets.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Replace any bad drives and re-run VDBench against those targets.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l110&quot;&gt;Line 110:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 107:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;done&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;done&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Tabulate the results in a spreadsheet such as Excel and generate graphs to &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;visualise &lt;/del&gt;the data. Establish the performance trend and look for any exceptions. One should normally expect to see healthy volumes performing within +/-5% of one another.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;Tabulate the results in a spreadsheet such as Excel and generate graphs to &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;visualize &lt;/ins&gt;the data. Establish the performance trend and look for any exceptions. One should normally expect to see healthy volumes performing within +/-5% of one another.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;If any exceptions are discovered, examine the affected LUN to identify the root cause. If a hardware fault has been identified, replace the affected component.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;If any exceptions are discovered, examine the affected LUN to identify the root cause. If a hardware fault has been identified, replace the affected component.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;If one or more disk drives have been replaced, re-run vdbench against the replacement device(s). Note that it may be necessary to destroy the RAID volume in order to re-run the vdbench test case for individual drives. When individual testing is complete, re-assemble the RAID volume and re-run the benchmark for RAID LUNs.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;If one or more disk drives have been replaced, re-run vdbench against the replacement device(s). Note that it may be necessary to destroy the RAID volume in order to re-run the vdbench test case for individual drives. When individual testing is complete, re-assemble the RAID volume and re-run the benchmark for RAID LUNs.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Finalise &lt;/del&gt;the results and record in the spreadsheet.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;li&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Finalize &lt;/ins&gt;the results and record in the spreadsheet.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/ol&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l205&quot;&gt;Line 205:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 202:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;code&amp;gt;rd=run2&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;code&amp;gt;rd=run2&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| Marks the start of a run definition. Must appear after the storage definitions and workload definitions. &amp;lt;code&amp;gt;run1&amp;lt;/code&amp;gt; is an arbitrary label, unique within the definition file. It is recommended that the run definition name reflect the test characteristics, e.g.: &amp;lt;code&amp;gt;sdX_run_r_seq_iomax&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;sdX&amp;lt;/code&amp;gt; is the device label, &amp;lt;code&amp;gt;run&amp;lt;/code&amp;gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;menas &lt;/del&gt;run definition, &amp;lt;code&amp;gt;r&amp;lt;/code&amp;gt; for read workload, &amp;lt;code&amp;gt;seq&amp;lt;/code&amp;gt; for sequential workload, &amp;lt;code&amp;gt;iomax&amp;lt;/code&amp;gt; means maximum I/O rate).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| Marks the start of a run definition. Must appear after the storage definitions and workload definitions. &amp;lt;code&amp;gt;run1&amp;lt;/code&amp;gt; is an arbitrary label, unique within the definition file. It is recommended that the run definition name reflect the test characteristics, e.g.: &amp;lt;code&amp;gt;sdX_run_r_seq_iomax&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;sdX&amp;lt;/code&amp;gt; is the device label, &amp;lt;code&amp;gt;run&amp;lt;/code&amp;gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;means &lt;/ins&gt;run definition, &amp;lt;code&amp;gt;r&amp;lt;/code&amp;gt; for read workload, &amp;lt;code&amp;gt;seq&amp;lt;/code&amp;gt; for sequential workload, &amp;lt;code&amp;gt;iomax&amp;lt;/code&amp;gt; means maximum I/O rate).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;wd=wd1&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;wd=wd1&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l259&quot;&gt;Line 259:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 256:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== References ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== References ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;http&lt;/del&gt;://www.oracle.com/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;technetwork&lt;/del&gt;/server-storage/vdbench-downloads&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;-1901681&lt;/del&gt;.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https&lt;/ins&gt;://www.oracle.com/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;downloads&lt;/ins&gt;/server-storage/vdbench-downloads.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* https://sourceforge.net/projects/vdbench&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Benchmarking]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Benchmarking]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_lustre_org:diff::1.12:old-2501:rev-5121 --&gt;
&lt;/table&gt;</summary>
		<author><name>Elliswilson</name></author>
	</entry>
	<entry>
		<id>http://wiki.lustre.org/index.php?title=VDBench&amp;diff=2501&amp;oldid=prev</id>
		<title>Malcolm: Created page with &quot;== Description ==  VDBench is an I/O workload generator for measuring storage performance and verifying the data integrity of direct-attached and network connected storage. Th...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.lustre.org/index.php?title=VDBench&amp;diff=2501&amp;oldid=prev"/>
		<updated>2017-06-29T11:01:25Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Description ==  VDBench is an I/O workload generator for measuring storage performance and verifying the data integrity of direct-attached and network connected storage. Th...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Description ==&lt;br /&gt;
&lt;br /&gt;
VDBench is an I/O workload generator for measuring storage performance and verifying the data integrity of direct-attached and network connected storage.&lt;br /&gt;
The software is known to run on several operating platforms.&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
&lt;br /&gt;
VDBench is typically used to establish baseline performance characteristics of block storage, both for individual disk drives and for RAID LUNs. It can also be used at the file system level to simulate application IO. The processes in this document will use the benchmark to verify the performance of individual drives and LUNs. VDBench will destroy content when running write workloads against raw devices. Do not use on raw devices containing production data.&lt;br /&gt;
&lt;br /&gt;
== Preparation ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Install the Java Run-time environment, if not already present on the target machine. Use the official JRE from http://java.com. The complete list of supported run-times is available at: https://www.java.com/en/download/manual.jsp.&lt;br /&gt;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;Unless Java is a permanent fixture of the platform run-time, download the 64-bit tarball rather than the RPM package. This will allow the Java software to be installed in an arbitrary, isolated directory structure and easily deleted when the benchmark is concluded. For example:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
cd $HOME&lt;br /&gt;
tar zxf $HOME/jre-8u131-linux-x64.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Download VDBench. The current official version is available from the Oracle Technology Network (OTN):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
http://www.oracle.com/technetwork/server-storage/vdbench-downloads-1901681.html&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
The download is free, but Oracle requires that users register an account. An older version remains on SourceForge:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
https://sourceforge.net/projects/vdbench/&lt;br /&gt;
&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Unzip the VDBench archive:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
mkdir $HOME/vdbench&lt;br /&gt;
cd $HOME/vdbench $$ unzip $HOME/vdbench50406.zip&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Update the &amp;lt;code&amp;gt;vdbench&amp;lt;/code&amp;gt; wrapper script contained within the VDBench distribution to point to the JRE location. e.g.:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
cd $HOME/vdbench&lt;br /&gt;
sed -i.inst &amp;#039;s/^\(java\)=.*$/\1=$HOME\/jre1.8.0_131\/bin\/java/&amp;#039; vdbench&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Run a quick test to ensure that vdbench can run on the target system:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
./vdbench -t&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Older versions of VDBench require CSH or TCSH, so we can be thankful for small mercies.&lt;br /&gt;
&lt;br /&gt;
== Benchmark Execution ==&lt;br /&gt;
&lt;br /&gt;
=== Establish Baseline Performance of Individual Drives ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Ensure that all individual disks are presented to the operating platform for testing. For some storage arrays, one must create separate LUNS for each target device.&lt;br /&gt;
&amp;lt;li&amp;gt;Create a test profile for each target designed to run read only and write only tests. Use the following to create a template:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
for i in b c d e f; do&lt;br /&gt;
sed &amp;#039;s/sdX/sd&amp;#039;${i}&amp;#039;/g&amp;#039; &amp;gt; input_sd${i}_rw_test &amp;lt;&amp;lt;__EOF&lt;br /&gt;
# SD -- Storage Definition&lt;br /&gt;
sd=sdX,lun=/dev/sdX,openflags=o_direct&lt;br /&gt;
# WD -- Workload Definition&lt;br /&gt;
wd=sdX_wd_r_seq,sd=sd*,xfersize=1024k,rdpct=100,seekpct=sequential&lt;br /&gt;
wd=sdX_wd_w_seq,sd=sd*,xfersize=1024k,rdpct=0,seekpct=sequential&lt;br /&gt;
# RD -- Run Definition&lt;br /&gt;
rd=sdX_run_r_seq_iomax,wd=sdX_wd_r_seq,iorate=max,elapsed=100,interval=10,forthreads=(1-1024,d),warmup=20&lt;br /&gt;
rd=sdX_run_w_seq_iomax,wd=sdX_wd_w_seq,iorate=max,elapsed=100,interval=10,forthreads=(1-1024,d),warmup=20&lt;br /&gt;
__EOF&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Initially, structure the read tests to run first. This gives the best opportunity to discover and fix any potential error in the benchmark configuration before a write test is run that destroys the data. Adjust the input files according to the results obtained when looking at optimisation; for example, if write performance is poor, one may wish to disable the read tests altogether while adjusting parameters that affect write performance.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Create one test profile for each device under test. Templates containing multiple storage definitions will be evaluated for future use once issues relating to CPU utilisation have been resolved (see notes).&lt;br /&gt;
&amp;lt;li&amp;gt;Run each &amp;lt;code&amp;gt;vdbench&amp;lt;/code&amp;gt; test case in sequence:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
for i in b c d e f; do&lt;br /&gt;
./vdbench -f input_sd${i}_rw_test -o o_sd${i}_rw_test.tod&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Tabulate the results in a spreadsheet such as Excel and generate graphs to visualise the data. Establish the performance trend and look for any exceptions. One should normally expect to see healthy drives performing within +/-5% of one another. Faulty drives normally stand out quite clearly.&lt;br /&gt;
&amp;lt;li&amp;gt;Replace any bad drives and re-run VDBench against those targets.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Establish Baseline Performance of RAID LUNs ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create the RAID LUNs that will be used to establish the file system storage volumes for Lustre.&lt;br /&gt;
&amp;lt;li&amp;gt;Repeat the VDBench benchmark using the same test profile as for individual storage devices:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
for i in b c d e f; do&lt;br /&gt;
sed &amp;#039;s/sdX/sd&amp;#039;${i}&amp;#039;/g&amp;#039; &amp;gt; input_sd${i}_raid_rw_test &amp;lt;&amp;lt;__EOF&lt;br /&gt;
# VDBench baseline performance test for RAID Volumes&lt;br /&gt;
# SD -- Storage Definition&lt;br /&gt;
sd=sdX,lun=/dev/sdX,openflags=o_direct&lt;br /&gt;
# WD -- Workload Definition&lt;br /&gt;
wd=sdX_raid_wd_r_seq,sd=sd*,xfersize=1024k,rdpct=100,seekpct=sequential&lt;br /&gt;
wd=sdX_raid_wd_w_seq,sd=sd*,xfersize=1024k,rdpct=0,seekpct=sequential&lt;br /&gt;
# RD -- Run Definition&lt;br /&gt;
rd=sdX_raid_run_r_seq_iomax,wd=wd_r_seq,iorate=max,elapsed=100,interval=10,forthreads=(1-1024,d),warmup=20&lt;br /&gt;
rd=sdX_raid_run_w_seq_iomax,wd=wd_w_seq,iorate=max,elapsed=100,interval=10,forthreads=(1-1024,d),warmup=20&lt;br /&gt;
__EOF&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note that the device names may be different for assembled LUNs, depending on the driver used and/or vendor-supplied software. e.g. MD RAID devices are typically /dev/mdX and kernel multipath devices are typically /dev/dm-XX. This can vary by Linux distribution as well as by storage vendor.&lt;br /&gt;
&amp;lt;li&amp;gt;Run each vdbench test case in sequence:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
for i in b c d e f; do&lt;br /&gt;
./vdbench -f input_sd${i}_raid_rw_test -o o_sd${i}_raid_rw_test.tod&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Tabulate the results in a spreadsheet such as Excel and generate graphs to visualise the data. Establish the performance trend and look for any exceptions. One should normally expect to see healthy volumes performing within +/-5% of one another.&lt;br /&gt;
&amp;lt;li&amp;gt;If any exceptions are discovered, examine the affected LUN to identify the root cause. If a hardware fault has been identified, replace the affected component.&lt;br /&gt;
&amp;lt;li&amp;gt;If one or more disk drives have been replaced, re-run vdbench against the replacement device(s). Note that it may be necessary to destroy the RAID volume in order to re-run the vdbench test case for individual drives. When individual testing is complete, re-assemble the RAID volume and re-run the benchmark for RAID LUNs.&lt;br /&gt;
&amp;lt;li&amp;gt;Finalise the results and record in the spreadsheet.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Notes  ==&lt;br /&gt;
&lt;br /&gt;
=== VDBench Test Definition Files ===&lt;br /&gt;
In a vdbench input template, there are 3 main sections that are of importance:&lt;br /&gt;
* SD: storage definition&lt;br /&gt;
* WD: workload definition&lt;br /&gt;
* RD: run definition&lt;br /&gt;
&lt;br /&gt;
Definitions must be recorded in the template in the specific order listed above, i.e. SD, then WD and finally RD.&lt;br /&gt;
&lt;br /&gt;
Each definition is contained on a single line. Continuation over multiple lines can be managed by using the standard shell continuation character &amp;#039;\&amp;#039; (backslash) at the end of the line. The continuation character must be immediately preceded by whitespace and must be the last character on the line.&lt;br /&gt;
&lt;br /&gt;
==== SD: Storage Definition ====&lt;br /&gt;
&lt;br /&gt;
SD, the storage definition, is used to define the characteristics of the disk or LUN to be tested, e.g.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
sd=sdb,lun=/dev/sdb,openflags=o_direct&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellpadding=5 style=&amp;quot;border-collapse: collapse; border: solid 1px #ccc;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: bottom; background-color: #eee;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Parameter&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:50%&amp;quot; | Description&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;sd=sdb&amp;lt;/code&amp;gt;&lt;br /&gt;
| Marks the start of a storage definition. &amp;lt;code&amp;gt;sdb&amp;lt;/code&amp;gt; is an arbitrary label and must be unique within the definition file. Using the device name is recommended – the WWID or some other unique identifier that can be uniquely associated with the device under test are also suitable. Multiple storage definitions can be listed, one per line.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;lun=/dev/sdb&amp;lt;/code&amp;gt;&lt;br /&gt;
|  The path to the storage target.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;openflags=o_direct&amp;lt;/code&amp;gt;&lt;br /&gt;
| Additional controls or options for opening or closing LUNs or files.&lt;br /&gt;
Note: On Linux, one must specify &amp;lt;code&amp;gt;openflags=o_direct&amp;lt;/code&amp;gt; when referencing a device file, e.g. &amp;lt;code&amp;gt;/dev/sdX&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== WD: Workload Definition ====&lt;br /&gt;
&lt;br /&gt;
WD, the workload definition describes the test characteristics for a given storage definition:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto;&amp;quot;&amp;gt;&lt;br /&gt;
wd=wd1,sd=sd*,xfersize=1024k,rdpct=100,seekpct=sequential&lt;br /&gt;
wd=wd2,sd=sd*,xfersize=1024k,rdpct=0,seekpct=sequential&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In the above examples, &amp;lt;code&amp;gt;wd1&amp;lt;/code&amp;gt; represents a 100% sequential read workload and &amp;lt;code&amp;gt;wd2&amp;lt;/code&amp;gt; represents a 100% sequential write workload.&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellpadding=5 style=&amp;quot;border-collapse: collapse; border: solid 1px #ccc;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: bottom; background-color: #eee;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Parameter&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:50%&amp;quot; | Description&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;wd=wd1&amp;lt;/code&amp;gt;&lt;br /&gt;
| Marks the start of a workload definition. Must appear after the storage definitions and before any run definitions. &amp;lt;code&amp;gt;wd1&amp;lt;/code&amp;gt; is an arbitrary label and must be unique within the definition file.  It is recommended that the workload definition name reflect the type of test, e.g.: &amp;lt;code&amp;gt;sdX_wd_r_seq&amp;lt;/code&amp;gt; (where &amp;lt;code&amp;gt;sdX&amp;lt;/code&amp;gt; is the device label, &amp;lt;code&amp;gt;wd&amp;lt;/code&amp;gt;stands for workload definition, &amp;lt;code&amp;gt;r&amp;lt;/code&amp;gt; is read workload, &amp;lt;code&amp;gt;seq&amp;lt;/code&amp;gt; means sequential workload).&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;sd=sd*&amp;lt;/code&amp;gt;&lt;br /&gt;
| The name of the storage definitions to use. There can be more than one, e.g.: &amp;lt;code&amp;gt;sd=(sd1,sd2)&amp;lt;/code&amp;gt;. An asterisk (&amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt;) indicates all storage definitions listed in the template. In this example, &amp;lt;code&amp;gt;sd*&amp;lt;/code&amp;gt; refers to all storage definitions with a label beginning with &amp;lt;code&amp;gt;sd&amp;lt;/code&amp;gt;.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;xfersize=1024k&amp;lt;/code&amp;gt;&lt;br /&gt;
| The data transfer size distribution. Normally use &amp;lt;code&amp;gt;1024k&amp;lt;/code&amp;gt; for Lustre workloads.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;rdpct=100&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;rdpct=0&amp;lt;/code&amp;gt;&lt;br /&gt;
| The percentage number of read transactions in the workload. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; indicates zero reads (in other words, a 100% write workload). &amp;lt;code&amp;gt;100&amp;lt;/code&amp;gt; indicates a 100% read workload.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;seekpct=sequential&amp;lt;/code&amp;gt;&lt;br /&gt;
| The percentage of random seeks in the workload. &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;sequential&amp;lt;/code&amp;gt; indicates zero random seeks. &amp;lt;code&amp;gt;100&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;random&amp;lt;/code&amp;gt; means every I/O goes to a random seek address.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== RD: Run Definition ====&lt;br /&gt;
&lt;br /&gt;
RD, the run definition, specifies the workload definition to run, the IO rates to generate and how long to run for.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
rd=run1,wd=wd1,iorate=max,elapsed=100,interval=10,warmup=20,forthreads=(1-1024,d)&lt;br /&gt;
rd=run2,wd=wd2,iorate=max,elapsed=100,interval=10,warmup=20,forthreads=(1-1024,d)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellpadding=5 style=&amp;quot;border-collapse: collapse; border: solid 1px #ccc;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: bottom; background-color: #eee;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot;| Parameter&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:50%&amp;quot; | Description&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;rd=run1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;rd=run2&amp;lt;/code&amp;gt;&lt;br /&gt;
| Marks the start of a run definition. Must appear after the storage definitions and workload definitions. &amp;lt;code&amp;gt;run1&amp;lt;/code&amp;gt; is an arbitrary label, unique within the definition file. It is recommended that the run definition name reflect the test characteristics, e.g.: &amp;lt;code&amp;gt;sdX_run_r_seq_iomax&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;sdX&amp;lt;/code&amp;gt; is the device label, &amp;lt;code&amp;gt;run&amp;lt;/code&amp;gt; menas run definition, &amp;lt;code&amp;gt;r&amp;lt;/code&amp;gt; for read workload, &amp;lt;code&amp;gt;seq&amp;lt;/code&amp;gt; for sequential workload, &amp;lt;code&amp;gt;iomax&amp;lt;/code&amp;gt; means maximum I/O rate).&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;wd=wd1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;wd=wd2&amp;lt;/code&amp;gt;&lt;br /&gt;
| The workload definition(s) to use. Normally just select one.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;elapsed=100&amp;lt;/code&amp;gt;&lt;br /&gt;
| The time, in seconds, for each run. Must be at least 2x the reporting interval. Does not include any warmup time, if specified (total run time will be elapsed time plus warm-up).&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;interval=10&amp;lt;/code&amp;gt;&lt;br /&gt;
| The reporting interval, i.e. the number of seconds between each report update.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;warmup=20&amp;lt;/code&amp;gt;&lt;br /&gt;
|  The time to wait before recording results in the run total. Must be a multiple of the reporting interval. In the above example, the first 2 reports will not be recorded in the overall results. The result of the warmup runs will still be reported in the output but will not form part of the overall result.&lt;br /&gt;
|- style=&amp;quot;text-align: left; vertical-align: top;&amp;quot;&lt;br /&gt;
! scope=&amp;quot;row&amp;quot;| &amp;lt;code&amp;gt;forthreads=(1-1024,d)&amp;lt;/code&amp;gt;&lt;br /&gt;
|  Create a loop for generating results for different thread counts. &amp;lt;code&amp;gt;(1-1024,d)&amp;lt;/code&amp;gt; represents a range from 1 to 1024 threads, (d)oubling the thread count on each iteration (i.e. 1, 2, 4, 8, 16, ... 1024).&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Running VDBench ===&lt;br /&gt;
&lt;br /&gt;
When executing the &amp;lt;code&amp;gt;vdbench&amp;lt;/code&amp;gt; command, use the &amp;lt;code&amp;gt;-f&amp;lt;/code&amp;gt; flag to refer to the input test definition and &amp;lt;code&amp;gt;-o&amp;lt;/code&amp;gt; to refer to the output directory that will contain the results. e.g.:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
./vdbench -f sdb_read_write -o o_sdb_read_write&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The input definition file name should conform to the following format:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
input_&amp;lt;device&amp;gt;_&amp;lt;test type&amp;gt;_test&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
e.g.:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
input_sdb_rw_test&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The output directory name should conform to the following format:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
o_&amp;lt;device&amp;gt;_&amp;lt;test type&amp;gt;_test.tod&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e.g.:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;overflow-x:auto&amp;quot;&amp;gt;&lt;br /&gt;
o_sdb_rw_test.tod&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The suffix, &amp;lt;code&amp;gt;.tod&amp;lt;/code&amp;gt;, instructs VDBench to add the date and time of day as the suffix to the output directory. This helps to prevent test results data being overwritten on repeat test runs.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
* http://www.oracle.com/technetwork/server-storage/vdbench-downloads-1901681.html&lt;br /&gt;
* https://sourceforge.net/projects/vdbench&lt;br /&gt;
&lt;br /&gt;
[[Category:Benchmarking]]&lt;/div&gt;</summary>
		<author><name>Malcolm</name></author>
	</entry>
</feed>