@prefix foaf:	<http://xmlns.com/foaf/0.1/> .
@prefix ns1:	<http://www.openlinksw.com/dataspace/person/oerling#> .
ns1:this	foaf:made	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822> .
@prefix atom:	<http://atomowl.org/ontologies/atomrdf#> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog>	atom:contains	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822> ;
	atom:entry	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822> .
@prefix sioc:	<http://rdfs.org/sioc/ns#> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog>	sioc:container_of	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822> .
@prefix rdfs:	<http://www.w3.org/2000/01/rdf-schema#> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822/page/1>	rdfs:label	"page 1" .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	sioc:has_container	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog> .
@prefix dt:	<http://www.w3.org/2001/XMLSchema#> .
@prefix dcterms:	<http://purl.org/dc/terms/> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	dcterms:created	"2014-09-30T16:33:29.998391-04:00"^^dt:dateTime ;
	foaf:maker	ns1:this ;
	rdfs:seeAlso	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822/page/1> ;
	dcterms:modified	"2015-06-10T12:05:50.674672-04:00"^^dt:dateTime ;
	sioc:link	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822> ;
	sioc:id	"37a936055a77f48c9536de5db8bc11ad" ;
	sioc:content	"<p>Scalability, specifically linear scalability, means that twice the data takes twice as long to process, or that double the gear processes the same data in half the time. This is only literally true for &quot;embarrassingly parallel&quot; workloads.</p>\n\n<p>There are parts of <a href=\"http://www.tpc.org/tpch/\" id=\"link-id0x2aac693da068\">TPC-H</a> which have an embarrassingly parallel nature, like <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1753\" id=\"link-id0x2aac3757a2d8\">Q1</a> and <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1756\" id=\"link-id0x2aac6ad4c0b8\">Q7</a>. There are parts that are almost as easy, like Q14, <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1789\" id=\"link-id0x2aac116f1f88\">Q17</a>, <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1756\" id=\"link-id0x2aacaa6ec0b8\">Q19</a>, and <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1756\" id=\"link-id0x2aaca8c66f18\">Q21</a>, where there is a big scan and a selective hash join with a hash table small enough to replicate everywhere. The scan scales linearly; building the hash does not, since it is done at single-server speed (once in each process). Some queries like <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1789\" id=\"link-id0x2aac116f2728\">Q9</a> and <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1755\" id=\"link-id0x2aac6a56bd28\">Q13</a> end up doing a big cross-partition join which runs into communication overheads.</p>\n\n<p>This is our first look at how performance behaves with bigger data and a larger platform. The results shown here are interesting but are not final. I bet I can do better; by how much is what we&#39;ll find out soon enough.</p>\n\n<p>We will here compare a 1000G setup on my desktop, and a 3000G setup at the <a href=\"http://www.cwi.nl/\" id=\"link-id0x2aac6ad4c2b8\">CWI</a>&#39;s <a href=\"http://scilens.project.cwi.nl/\" id=\"link-id0x2aac117f8cb8\">Scilens cluster</a>. The former is 2 boxes of dual Xeon E5 2630, and the latter is 8 boxes of dual Xeon E5 2650v2. All things run from memory and both have QDR IB interconnect. Counting cores and clock, the CWI cluster is 6x larger.</p>\n\n<p>As a rough approximation, for the worst queries, 6x the gear runs 3x the data in the same amount of real time. The 1000G setup has near full platform utilization and the 3000G setup has about half platform utilization. In both cases, running two instances of the same query at the same time takes twice as long.</p>\n\n<p>We use <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1789\" id=\"link-id0x2aaca8c272f8\">Q9</a> for this study. The plan makes a hash table of <code>part</code> with 1/14 of all <code>parts</code>, replicating to all processes. Then there is a hash table of <code>partsupp</code> with a key of <code>ps_partkey, ps_suppkey</code>, and a dependent of <code>ps_supplycost</code>. This is much larger than the <code>part</code> hash table and is therefore partitioned on <code>ps_partkey</code>. The build is for 1/14th of <code>partsupp</code>. Then there is a scan of <code>lineitem</code> filtered by the <code>part</code> hash table; then a cross-partition join to the <code>partsupp</code> hash table; then a cross partition join to <code>orders</code>, this time by index; then a hash join on a replicated hash table of <code>supplier</code>; then <code>nation</code>; then aggregation. The aggregation is done in each slice; then the slices are added up at the end.</p>\n\n<p>The plan could be made better by one fewer partition crossing. Now there is a crossing from <code>l_orderkey</code> to <code>l_partkey</code> and back to <code>o_orderkey</code>. This would not be so if the cost model knew that the <code>partsupp</code> always hits. The cost model thinks it hits 1/14 of the time, because it does not know that the selection on the build is exactly the same as on the probe.</p>\n\n<p>For the present purposes, the extra crossing just serves to make the matter of interest more visible.</p>\n\n<p>So, for the 1000G setup, we have 43.6 seconds (s) and </p>\n\n<blockquote>\n <pre><code>Cluster 4 nodes, 44 s. 459 m/s 119788 KB/s  3120% cpu 0%  read 19% clw threads 1r 0w 0i buffers 17622126 68 d 0 w 0 pfs</code>\n </pre></blockquote>\n\n<p>For the 3000G setup, we have 49.9 s and </p>\n\n<blockquote>\n <pre><code>Cluster 16 nodes, 50 s. 49389 m/s 1801815 KB/s  7283% cpu 0%  read 18% clw threads 1r 0w 0i buffers 135122893 15895255 d 0 w 17 pfs</code>\n </pre></blockquote>\n\n<p>The platform utilization on the small system is better, at 31/48 (running/total threads); the large one has 73/256.</p>\n\n<p>The large case is clearly network bound. If this were for CPU only, it should be done in half the time it takes the small system to do 1000G. </p>\n\n<p>We confirm this by looking at write wait: 3940 seconds of thread time blocked on write over 50s of real time. The figures on the small one are 3.9s of thread time blocked for 39s of real time. The data transfer on the large one is 93 GB. </p>\n\n<p>How to block less? One idea would be to write less. So we try compression; there is a Google snappy-based message compression option in Virtuoso. </p>\n\n<p>We now get 39.6 s and</p>\n\n<blockquote>\n <pre><code>Cluster 16 nodes, 40 s. 65161 m/s 1239922 KB/s  10201% cpu 0%  read 21% clw threads 1r 0w 0i buffers 52828440 172 d 0 w 0 pfs</code>\n </pre></blockquote>\n\n<p>The write block time is 397 s of thread time over 39 s of real time, 10x better. The data transfer is 50.9 GB after compression. Snappy is somewhat effective for compression and very fast; in CPU profile, it is under 3% of Q9 on the small system. Gains on the small system are less, though, since blocking is not a big issue to start with.</p>\n\n<p>This is still not full platform. But if the data transfer is further cut in half by a better plan, the situation will be quite good. Now we have 102/256 threads running, meaning that there could be another 40-50% of throughput to be added. The last 128 threads are second threads of a core, so count for roughly 30% of a real core.</p>\n\n<p>The main cluster-specific operation is a send from one to many. This is now done by formulating the message to each recipient in a chain of string buffers; then, after all the messages are prepared, these are optionally compressed and sent to their recipient. This is needlessly simple: Compressing can proceed if ever there is a would-block situation on writing. If all the compression is done, then a blocked write should switch to another recipient, and only after all recipients have a would-block situation, then the thread can call-select with all descriptors and block on them collectively. There is a piece of code to this effect, but is not now being used. It has been seen to add no value in small cases, but could be useful here. </p>\n\n<p>The IB fabric has been seen to do 1.8 GB/s bidirectionally on multiple independent point-to-point TCP links. This is about half the nominal 4 GB/s (40 Gbit/s with 10/8 encoding). So the aggregate throughputs that we see here are nowhere near the nominal spec of the network. Lower level interfaces and the occasional busy wait on the reading end could be tried to some advantage. We have not tried 10GbE either; but if that works at nominal speed, then 10GbE should also be good enough. We will try this at Amazon in due time.</p>\n\n<p>In the meantime, there is a 3000G test made at the CWI cluster without message compression. The score is about 4x that of the single server at 300G using the same hardware. The run is with approximately half platform utilization. There are three runs of power plus throughput, the first run being cold.</p>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;\">\n<tr>\n  <th>Run</th>\n  <th>Power</th>\n  <th>Throughput</th>\n  <th>Composite </th>\n</tr>\n<tr>\n  <th>Run 1</th>\n  <td style=\"text-align:right\">305,881.5</td>\n  <td style=\"text-align:right\">1,072,411.9</td>\n  <td style=\"text-align:right\">572,739.8</td>\n</tr>\n<tr>\n  <th>Run 2</th>\n  <td style=\"text-align:right\">1,292,085.1</td>\n  <td style=\"text-align:right\">1,179,391.6</td>\n  <td style=\"text-align:right\">1,234,453.1</td>\n</tr>\n<tr>\n  <th>Run 3</th>\n  <td style=\"text-align:right\">1,178,534.1</td>\n  <td style=\"text-align:right\">1,092,936.2</td>\n  <td style=\"text-align:right\">1,134,928.4</td>\n</tr>\n</table>\n\n<p>The numerical quantities summaries follow. One problem of the run is a high peak of query memory consumption leading to slowdown. Some parts should probably be done in multiple passes to keep the peak lower and not run into swapping. The details will have to be sorted out. This is a demonstration of capability; the perfected accomplishment is to follow.</p>\n\n\n\n<h2>3000G Run 1</h2>\n\n<h3>Virt-H Executive Summary</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;\">\n<tr>\n  <th style=\"text-align:right\">Report Date</th>\n  <td>September 29, 2014</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Database Scale Factor</th>\n  <td>3000</td>\n</tr>\n\n\n<tr>\n  <th style=\"text-align:right\">Query Streams for<br /> Throughput Test</th>\n  <td>8</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Virt-H Power</th>\n  <td>305,881.5</td>\n</tr>\n<tr>\n  <th style=\"text-align:right\">Virt-H Throughput</th>\n  <td>1,072,411.9</td>\n</tr>\n<tr>\n  <th style=\"text-align:right\">Virt-H Composite<br /> Query-per-Hour Metric<br /> (Qph@100GB)</th>\n  <td>572,739.8</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Measurement Interval in<br /> Throughput Test (Ts)</th>\n  <td>1,772.554000 seconds</td>\n</tr>\n</table>\n\n<h3>Duration of stream execution</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th> </th> <th>Start Date/Time</th> <th>End Date/Time</th> <th>Duration</th> </tr>\n<tr>\n  <th>Stream 0</th> <td>09/29/2014 12:54:52</td> <td>09/29/2014 13:31:17</td> <td>0:36:25</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 13:59:24</td> <td>0:28:00</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 13:58:59</td> <td>0:27:35</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 13:58:29</td> <td>0:27:05</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 13:58:52</td> <td>0:27:28</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 14:00:06</td> <td>0:28:42</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 13:58:18</td> <td>0:26:54</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 13:59:25</td> <td>0:28:01</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>09/29/2014 13:31:24</td> <td>09/29/2014 13:58:50</td> <td>0:27:26</td> </tr>\n<tr>\n  <th>Refresh 0</th> <td>09/29/2014 12:54:52</td> <td>09/29/2014 12:56:59</td> <td>0:02:07</td> </tr>\n<tr>\n  <th>        </th> <td>09/29/2014 13:31:17</td> <td>09/29/2014 13:31:23</td> <td>0:00:06</td> </tr>\n<tr>\n  <th>Refresh 1</th> <td>09/29/2014 14:00:38</td> <td>09/29/2014 14:01:11</td> <td>0:00:33</td> </tr>\n<tr>\n  <th>Refresh 2</th> <td>09/29/2014 13:31:25</td> <td>09/29/2014 13:36:57</td> <td>0:05:32</td> </tr>\n<tr>\n  <th>Refresh 3</th> <td>09/29/2014 13:36:56</td> <td>09/29/2014 13:47:02</td> <td>0:10:06</td> </tr>\n<tr>\n  <th>Refresh 4</th> <td>09/29/2014 13:47:03</td> <td>09/29/2014 13:51:40</td> <td>0:04:37</td> </tr>\n<tr>\n  <th>Refresh 5</th> <td>09/29/2014 13:51:42</td> <td>09/29/2014 13:56:40</td> <td>0:04:58</td> </tr>\n<tr>\n  <th>Refresh 6</th> <td>09/29/2014 13:56:40</td> <td>09/29/2014 13:59:25</td> <td>0:02:45</td> </tr>\n<tr>\n  <th>Refresh 7</th> <td>09/29/2014 13:59:25</td> <td>09/29/2014 14:00:10</td> <td>0:00:45</td> </tr>\n<tr>\n  <th>Refresh 8</th> <td>09/29/2014 14:00:11</td> <td>09/29/2014 14:00:37</td> <td>0:00:26</td> </tr>\n</table>\n\n<h3>Numerical Quantities Summary Timing Intervals in Seconds:</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q1</th>\n  <th>Q2</th>\n  <th>Q3</th>\n  <th>Q4</th>\n  <th>Q5</th>\n  <th>Q6</th>\n  <th>Q7</th>\n  <th>Q8</th>\n</tr>\n<tr>\n  <th>Stream 0</th> <td>601.576975</td> <td>90.803782</td> <td>108.725110</td> <td>177.112667</td> <td>171.995572</td> <td>2.098138</td> <td>15.768311</td> <td>152.511444</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>13.310341</td> <td>32.722946</td> <td>125.551415</td> <td>1.912836</td> <td>46.041675</td> <td>13.294214</td> <td>85.345068</td> <td>165.424288</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>19.425885</td> <td>9.248670</td> <td>150.855556</td> <td>7.085737</td> <td>88.445566</td> <td>10.490432</td> <td>49.318554</td> <td>322.500839</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>30.534391</td> <td>14.273478</td> <td>100.987791</td> <td>59.341763</td> <td>46.442443</td> <td>9.613795</td> <td>64.186196</td> <td>146.324186</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>28.211213</td> <td>37.134522</td> <td>64.189335</td> <td>10.931513</td> <td>100.610673</td> <td>9.929866</td> <td>112.270530</td> <td>108.489951</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>29.226411</td> <td>18.132589</td> <td>95.245160</td> <td>63.100068</td> <td>115.663908</td> <td>6.151231</td> <td>46.251309</td> <td>127.742471</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>30.750930</td> <td>20.888658</td> <td>108.894177</td> <td>55.168565</td> <td>82.016828</td> <td>69.451493</td> <td>65.161517</td> <td>103.697733</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>13.462570</td> <td>18.033847</td> <td>32.065492</td> <td>78.910373</td> <td>202.998301</td> <td>10.688279</td> <td>47.167022</td> <td>139.601948</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>24.354314</td> <td>16.711503</td> <td>112.008551</td> <td>8.307098</td> <td>126.849630</td> <td>7.127605</td> <td>51.083118</td> <td>98.648077</td> </tr>\n<tr>\n  <th>Min Qi</th> <td>13.310341</td> <td>9.248670</td> <td>32.065492</td> <td>1.912836</td> <td>46.041675</td> <td>6.151231</td> <td>46.251309</td> <td>98.648077</td> </tr>\n<tr>\n  <th>Max Qi</th> <td>30.750930</td> <td>37.134522</td> <td>150.855556</td> <td>78.910373</td> <td>202.998301</td> <td>69.451493</td> <td>112.270530</td> <td>322.500839</td> </tr>\n<tr>\n  <th>Avg Qi</th> <td>23.659507</td> <td>20.893277</td> <td>98.724685</td> <td>35.594744</td> <td>101.133628</td> <td>17.093364</td> <td>65.097914</td> <td>151.553687</td> </tr>\n</table>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q9</th>\n  <th>Q10</th>\n  <th>Q11</th>\n  <th>Q12</th>\n  <th>Q13</th>\n  <th>Q14</th>\n  <th>Q15</th>\n  <th>Q16</th>\n</tr>\n<tr>\n  <th>Stream 0</th> <td>92.991259</td> <td>5.175922</td> <td>42.238393</td> <td>29.239879</td> <td>367.805534</td> <td>3.604910</td> <td>15.557396</td> <td>11.650267</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>149.502128</td> <td>30.197806</td> <td>50.786184</td> <td>217.190836</td> <td>283.545905</td> <td>11.653171</td> <td>73.321150</td> <td>116.860455</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>245.783668</td> <td>22.278841</td> <td>50.578731</td> <td>36.301810</td> <td>181.405269</td> <td>32.236754</td> <td>57.631764</td> <td>61.540533</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>377.782738</td> <td>24.129319</td> <td>84.097657</td> <td>10.959661</td> <td>171.698669</td> <td>8.973519</td> <td>54.532180</td> <td>45.527142</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>341.148908</td> <td>74.358770</td> <td>85.782399</td> <td>43.116347</td> <td>151.146233</td> <td>22.870727</td> <td>74.439693</td> <td>51.871535</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>72.259919</td> <td>11.424035</td> <td>79.310504</td> <td>9.833135</td> <td>562.871920</td> <td>14.961209</td> <td>127.861874</td> <td>55.377721</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>373.301225</td> <td>41.379753</td> <td>81.983260</td> <td>9.373200</td> <td>95.039317</td> <td>19.071346</td> <td>76.159452</td> <td>48.324504</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>449.871952</td> <td>16.099152</td> <td>48.047940</td> <td>8.559784</td> <td>211.094730</td> <td>10.569071</td> <td>26.710228</td> <td>72.571454</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>395.771006</td> <td>33.537585</td> <td>54.850876</td> <td>141.526389</td> <td>153.763316</td> <td>12.997092</td> <td>127.961975</td> <td>57.100346</td> </tr>\n<tr>\n  <th>Min Qi</th> <td>72.259919</td> <td>11.424035</td> <td>48.047940</td> <td>8.559784</td> <td>95.039317</td> <td>8.973519</td> <td>26.710228</td> <td>45.527142</td> </tr>\n<tr>\n  <th>Max Qi</th> <td>449.871952</td> <td>74.358770</td> <td>85.782399</td> <td>217.190836</td> <td>562.871920</td> <td>32.236754</td> <td>127.961975</td> <td>116.860455</td> </tr>\n<tr>\n  <th>Avg Qi</th> <td>300.677693</td> <td>31.675658</td> <td>66.929694</td> <td>59.607645</td> <td>226.320670</td> <td>16.666611</td> <td>77.327289</td> <td>63.646711</td> </tr>\n</table>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q17</th>\n  <th>Q18</th>\n  <th>Q19</th>\n  <th>Q20</th>\n  <th>Q21</th>\n  <th>Q22</th>\n  <th>RF1</th>\n  <th>RF2</th>\n</tr>\n<tr>\n  <th>Stream 0</th> <td>12.230334</td> <td>70.991261</td> <td>33.092797</td> <td>17.517230</td> <td>15.798438</td> <td>19.743562</td> <td>127.494687</td> <td>5.893471</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>27.550293</td> <td>14.970857</td> <td>16.442806</td> <td>111.138612</td> <td>68.214095</td> <td>7.884782</td> <td>27.109441</td> <td>6.087067</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>43.277918</td> <td>12.748690</td> <td>22.681844</td> <td>92.835566</td> <td>84.416610</td> <td>14.661934</td> <td>151.094498</td> <td>153.285076</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>129.696125</td> <td>13.435663</td> <td>14.674499</td> <td>129.179966</td> <td>39.176513</td> <td>6.286296</td> <td>181.596838</td> <td>416.052710</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>110.348816</td> <td>7.080225</td> <td>21.051910</td> <td>85.758973</td> <td>65.130356</td> <td>7.292999</td> <td>123.386514</td> <td>151.000786</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>43.365006</td> <td>9.847612</td> <td>32.881770</td> <td>94.752284</td> <td>67.788314</td> <td>9.035439</td> <td>72.539334</td> <td>223.967821</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>34.534280</td> <td>36.347298</td> <td>27.849276</td> <td>122.736244</td> <td>51.447492</td> <td>25.051058</td> <td>80.452175</td> <td>84.519426</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>48.021860</td> <td>30.594474</td> <td>22.522426</td> <td>99.245893</td> <td>73.076698</td> <td>7.260729</td> <td>38.585852</td> <td>5.697277</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>29.484201</td> <td>12.368769</td> <td>40.344043</td> <td>84.137820</td> <td>30.813313</td> <td>4.856991</td> <td>22.196547</td> <td>4.600057</td> </tr>\n<tr>\n  <th>Min Qi</th> <td>27.550293</td> <td>7.080225</td> <td>14.674499</td> <td>84.137820</td> <td>30.813313</td> <td>4.856991</td> <td>22.196547</td> <td>4.600057</td> </tr>\n<tr>\n  <th>Max Qi</th> <td>129.696125</td> <td>36.347298</td> <td>40.344043</td> <td>129.179966</td> <td>84.416610</td> <td>25.051058</td> <td>181.596838</td> <td>416.052710</td> </tr>\n<tr>\n  <th>Avg Qi</th> <td>58.284812</td> <td>17.174198</td> <td>24.806072</td> <td>102.473170</td> <td>60.007924</td> <td>10.291279</td> <td>87.120150</td> <td>130.651277</td> </tr>\n</table>\n\n\n<h2>3000G Run 2</h2>\n\n<h3>Virt-H Executive Summary</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;\">\n<tr>\n  <th style=\"text-align:right\">Report Date</th>\n  <td>September 29, 2014</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Database Scale Factor</th>\n  <td>3000</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Query Streams for<br /> Throughput Test</th>\n  <td>8</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Virt-H Power</th>\n  <td> 1292085.1 </td>\n</tr>\n<tr>\n  <th style=\"text-align:right\">Virt-H Throughput</th>\n  <td> 1179391.6 </td>\n</tr>\n<tr>\n  <th style=\"text-align:right\">Virt-H Composite<br /> Query-per-Hour Metric<br /> (Qph@100GB)</th>\n  <td> 1234453.1 </td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Measurement Interval in<br /> Throughput Test (Ts)</th>\n  <td> 1611.779000 seconds</td>\n</tr>\n</table>\n\n<h3>Duration of stream execution</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th> </th> <th>Start Date/Time</th> <th>End Date/Time</th> <th>Duration</th> </tr>\n<tr>\n  <th>Stream 0</th> <td>09/29/2014 14:01:15</td> <td>09/29/2014 14:06:48</td> <td>0:05:33</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:30:22</td> <td>0:23:29</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:32:30</td> <td>0:25:37</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:31:23</td> <td>0:24:30</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:31:34</td> <td>0:24:41</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:32:53</td> <td>0:26:00</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:29:51</td> <td>0:22:58</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:31:34</td> <td>0:24:41</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>09/29/2014 14:06:53</td> <td>09/29/2014 14:30:35</td> <td>0:23:42</td> </tr>\n<tr>\n  <th>Refresh 0</th> <td>09/29/2014 14:01:15</td> <td>09/29/2014 14:01:35</td> <td>0:00:20</td> </tr>\n<tr>\n  <th>  </th> <td>09/29/2014 14:06:49</td> <td>09/29/2014 14:06:53</td> <td>0:00:04</td> </tr>\n<tr>\n  <th>Refresh 1</th> <td>09/29/2014 14:33:16</td> <td>09/29/2014 14:33:45</td> <td>0:00:29</td> </tr>\n<tr>\n  <th>Refresh 2</th> <td>09/29/2014 14:06:55</td> <td>09/29/2014 14:12:28</td> <td>0:05:33</td> </tr>\n<tr>\n  <th>Refresh 3</th> <td>09/29/2014 14:12:29</td> <td>09/29/2014 14:21:55</td> <td>0:09:26</td> </tr>\n<tr>\n  <th>Refresh 4</th> <td>09/29/2014 14:21:55</td> <td>09/29/2014 14:27:40</td> <td>0:05:45</td> </tr>\n<tr>\n  <th>Refresh 5</th> <td>09/29/2014 14:27:43</td> <td>09/29/2014 14:31:14</td> <td>0:03:31</td> </tr>\n<tr>\n  <th>Refresh 6</th> <td>09/29/2014 14:31:14</td> <td>09/29/2014 14:31:51</td> <td>0:00:37</td> </tr>\n<tr>\n  <th>Refresh 7</th> <td>09/29/2014 14:31:51</td> <td>09/29/2014 14:32:52</td> <td>0:01:01</td> </tr>\n<tr>\n  <th>Refresh 8</th> <td>09/29/2014 14:32:52</td> <td>09/29/2014 14:33:16</td> <td>0:00:24</td> </tr>\n</table>\n\n<h3>Numerical Quantities Summary Timing Intervals in Seconds:</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q1</th>\n  <th>Q2</th>\n  <th>Q3</th>\n  <th>Q4</th>\n  <th>Q5</th>\n  <th>Q6</th>\n  <th>Q7</th>\n  <th>Q8</th>\n</tr>\n<tr>\n  <th>Stream 0</th> <td>9.451169</td> <td>3.644118</td> <td>18.419151</td> <td>1.404395</td> <td>15.740525</td> <td>2.085038</td> <td>15.171847</td> <td>25.400834</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>19.558041</td> <td>6.607300</td> <td>85.774410</td> <td>4.503525</td> <td>81.448472</td> <td>11.976129</td> <td>92.140470</td> <td>145.743853</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>31.042019</td> <td>7.877299</td> <td>71.958033</td> <td>8.862111</td> <td>142.452144</td> <td>18.489193</td> <td>81.003310</td> <td>85.856529</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>38.833612</td> <td>12.440326</td> <td>86.063103</td> <td>7.165120</td> <td>84.707025</td> <td>16.931531</td> <td>100.442710</td> <td>122.411252</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>15.751913</td> <td>33.026762</td> <td>50.457193</td> <td>7.064220</td> <td>114.130257</td> <td>5.992556</td> <td>66.035959</td> <td>84.596973</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>18.462884</td> <td>28.047942</td> <td>110.690543</td> <td>16.566547</td> <td>104.403789</td> <td>5.303453</td> <td>72.552640</td> <td>402.383383</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>17.858339</td> <td>33.988800</td> <td>110.431091</td> <td>7.238431</td> <td>72.229953</td> <td>16.850955</td> <td>68.231546</td> <td>180.601000</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>23.055572</td> <td>17.044813</td> <td>96.105520</td> <td>8.941132</td> <td>171.130879</td> <td>8.423100</td> <td>70.634541</td> <td>147.261648</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>19.840798</td> <td>13.860740</td> <td>74.961175</td> <td>16.171566</td> <td>56.165875</td> <td>5.904921</td> <td>47.646217</td> <td>125.991819</td> </tr>\n<tr>\n  <th>Min Qi</th> <td>15.751913</td> <td>6.607300</td> <td>50.457193</td> <td>4.503525</td> <td>56.165875</td> <td>5.303453</td> <td>47.646217</td> <td>84.596973</td> </tr>\n<tr>\n  <th>Max Qi</th> <td>38.833612</td> <td>33.988800</td> <td>110.690543</td> <td>16.566547</td> <td>171.130879</td> <td>18.489193</td> <td>100.442710</td> <td>402.383383</td> </tr>\n<tr>\n  <th>Avg Qi</th> <td>23.050397</td> <td>19.111748</td> <td>85.805134</td> <td>9.564082</td> <td>103.333549</td> <td>11.233980</td> <td>74.835924</td> <td>161.855807</td> </tr>\n</table>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q9</th>\n  <th>Q10</th>\n  <th>Q11</th>\n  <th>Q12</th>\n  <th>Q13</th>\n  <th>Q14</th>\n  <th>Q15</th>\n  <th>Q16</th>\n</tr>\n<tr>\n  <th>Stream 0</th> <td>54.766945</td> <td>5.551163</td> <td>29.216632</td> <td>3.035008</td> <td>52.816902</td> <td>3.346243</td> <td>15.767022</td> <td>10.066112</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>130.666380</td> <td>9.658277</td> <td>49.332720</td> <td>103.036705</td> <td>194.520370</td> <td>12.166344</td> <td>65.144599</td> <td>97.158571</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>254.754936</td> <td>22.605298</td> <td>38.102466</td> <td>21.121168</td> <td>300.467330</td> <td>12.262318</td> <td>108.203491</td> <td>50.696657</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>283.761567</td> <td>19.327164</td> <td>73.414574</td> <td>7.431651</td> <td>183.121904</td> <td>12.573854</td> <td>73.814766</td> <td>46.802493</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>290.341947</td> <td>57.452026</td> <td>58.354221</td> <td>13.066162</td> <td>189.263163</td> <td>18.998781</td> <td>121.269774</td> <td>54.831406</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>81.787025</td> <td>8.410538</td> <td>79.822552</td> <td>16.005077</td> <td>190.730342</td> <td>21.697136</td> <td>100.456487</td> <td>46.744884</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>202.558515</td> <td>39.360009</td> <td>74.519981</td> <td>15.960756</td> <td>137.321631</td> <td>26.583824</td> <td>57.537668</td> <td>60.758997</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>226.790801</td> <td>44.175536</td> <td>73.992368</td> <td>7.561897</td> <td>182.853851</td> <td>17.597471</td> <td>31.128055</td> <td>44.389893</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>275.423934</td> <td>21.980040</td> <td>60.538239</td> <td>39.736622</td> <td>173.574795</td> <td>58.786316</td> <td>95.124912</td> <td>25.564108</td> </tr>\n<tr>\n  <th>Min Qi</th> <td>81.787025</td> <td>8.410538</td> <td>38.102466</td> <td>7.431651</td> <td>137.321631</td> <td>12.166344</td> <td>31.128055</td> <td>25.564108</td> </tr>\n<tr>\n  <th>Max Qi</th> <td>290.341947</td> <td>57.452026</td> <td>79.822552</td> <td>103.036705</td> <td>300.467330</td> <td>58.786316</td> <td>121.269774</td> <td>97.158571</td> </tr>\n<tr>\n  <th>Avg Qi</th> <td>218.260638</td> <td>27.871111</td> <td>63.509640</td> <td>27.990005</td> <td>193.981673</td> <td>22.583255</td> <td>81.584969</td> <td>53.368376</td> </tr>\n</table>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q17</th>\n  <th>Q18</th>\n  <th>Q19</th>\n  <th>Q20</th>\n  <th>Q21</th>\n  <th>Q22</th>\n  <th>RF1</th>\n  <th>RF2</th>\n</tr>\n<tr>\n  <th>Stream 0</th> <td>13.620157</td> <td>2.288504</td> <td>4.166807</td> <td>16.468447</td> <td>9.991810</td> <td>1.101775</td> <td>20.152227</td> <td>4.294680</td> </tr>\n<tr>\n  <th>Stream 1</th> <td>44.026143</td> <td>31.720525</td> <td>25.684461</td> <td>134.254716</td> <td>30.797008</td> <td>9.568594</td> <td>24.328205</td> <td>4.319533</td> </tr>\n<tr>\n  <th>Stream 2</th> <td>40.283148</td> <td>9.970277</td> <td>29.731019</td> <td>133.083785</td> <td>29.322194</td> <td>8.859556</td> <td>73.251098</td> <td>249.850045</td> </tr>\n<tr>\n  <th>Stream 3</th> <td>44.288244</td> <td>18.914661</td> <td>38.162762</td> <td>144.458624</td> <td>22.556235</td> <td>6.184842</td> <td>117.267234</td> <td>445.700238</td> </tr>\n<tr>\n  <th>Stream 4</th> <td>67.147744</td> <td>6.649451</td> <td>27.876825</td> <td>59.226248</td> <td>69.373248</td> <td>44.478703</td> <td>61.381724</td> <td>282.608075</td> </tr>\n<tr>\n  <th>Stream 5</th> <td>36.403227</td> <td>12.226129</td> <td>21.997683</td> <td>95.912670</td> <td>44.219799</td> <td>21.117974</td> <td>106.473817</td> <td>97.896971</td> </tr>\n<tr>\n  <th>Stream 6</th> <td>42.114038</td> <td>30.805969</td> <td>25.929027</td> <td>51.658733</td> <td>26.475662</td> <td>34.816500</td> <td>31.309953</td> <td>5.608395</td> </tr>\n<tr>\n  <th>Stream 7</th> <td>48.601889</td> <td>18.708127</td> <td>18.893532</td> <td>132.558026</td> <td>50.476383</td> <td>12.309402</td> <td>22.661371</td> <td>37.610815</td> </tr>\n<tr>\n  <th>Stream 8</th> <td>34.413417</td> <td>34.709883</td> <td>37.058335</td> <td>121.710608</td> <td>44.676485</td> <td>9.449332</td> <td>19.311945</td> <td>4.420232</td> </tr>\n<tr>\n  <th>Min Qi</th> <td>34.413417</td> <td>6.649451</td> <td>18.893532</td> <td>51.658733</td> <td>22.556235</td> <td>6.184842</td> <td>19.311945</td> <td>4.319533</td> </tr>\n<tr>\n  <th>Max Qi</th> <td>67.147744</td> <td>34.709883</td> <td>38.162762</td> <td>144.458624</td> <td>69.373248</td> <td>44.478703</td> <td>117.267234</td> <td>445.700238</td> </tr>\n<tr>\n  <th>Avg Qi</th> <td>44.659731</td> <td>20.463128</td> <td>28.166705</td> <td>109.107926</td> <td>39.737127</td> <td>18.348113</td> <td>56.998168</td> <td>141.001788</td> </tr>\n</table>\n\n\n<h2>3000G Run 3</h2>\n\n<h3>Virt-H Executive Summary</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;\">\n<tr>\n  <th style=\"text-align:right\">Report Date</th>\n  <td>September 29, 2014</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Database Scale Factor</th>\n  <td>3000</td>\n</tr>\n\n\n<tr>\n  <th style=\"text-align:right\">Query Streams for<br /> Throughput Test</th>\n  <td>8</td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Virt-H Power</th>\n  <td> 1178534.1 </td>\n</tr>\n<tr>\n  <th style=\"text-align:right\">Virt-H Throughput</th>\n  <td> 1092936.2 </td>\n</tr>\n<tr>\n  <th style=\"text-align:right\">Virt-H Composite<br /> Query-per-Hour Metric<br /> (Qph@100GB)</th>\n  <td> 1134928.4 </td>\n</tr>\n\n<tr>\n  <th style=\"text-align:right\">Measurement Interval in<br /> Throughput Test (Ts)</th>\n  <td> 1739.269000 seconds</td>\n</tr>\n</table>\n\n<h3>Duration of stream execution</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n    <th> </th> <th>Start Date/Time</th> <th>End Date/Time</th> <th>Duration</th> </tr>\n<tr>\n    <th>Stream 0</th> <td>09/29/2014 14:33:48</td> <td>09/29/2014 14:40:59</td> <td>0:07:11</td> </tr>\n<tr>\n    <th>Stream 1</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:10:02</td> <td>0:28:58</td> </tr>\n<tr>\n    <th>Stream 2</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:09:07</td> <td>0:28:03</td> </tr>\n<tr>\n    <th>Stream 3</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:09:17</td> <td>0:28:13</td> </tr>\n<tr>\n    <th>Stream 4</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:09:55</td> <td>0:28:51</td> </tr>\n<tr>\n    <th>Stream 5</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:09:39</td> <td>0:28:35</td> </tr>\n<tr>\n    <th>Stream 6</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:09:46</td> <td>0:28:42</td> </tr>\n<tr>\n    <th>Stream 7</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:09:58</td> <td>0:28:54</td> </tr>\n<tr>\n    <th>Stream 8</th> <td>09/29/2014 14:41:04</td> <td>09/29/2014 15:08:58</td> <td>0:27:54</td> </tr>\n<tr>\n    <th>Refresh 0</th> <td>09/29/2014 14:33:48</td> <td>09/29/2014 14:34:07</td> <td>0:00:19</td> </tr>\n<tr>\n    <th> </th> <td>09/29/2014 14:40:59</td> <td>09/29/2014 14:41:04</td> <td>0:00:05</td> </tr>\n<tr>\n    <th>Refresh 1</th> <td>09/29/2014 15:06:57</td> <td>09/29/2014 15:09:49</td> <td>0:02:52</td> </tr>\n<tr>\n    <th>Refresh 2</th> <td>09/29/2014 14:41:05</td> <td>09/29/2014 14:47:39</td> <td>0:06:34</td> </tr>\n<tr>\n    <th>Refresh 3</th> <td>09/29/2014 14:47:40</td> <td>09/29/2014 14:56:46</td> <td>0:09:06</td> </tr>\n<tr>\n    <th>Refresh 4</th> <td>09/29/2014 14:56:49</td> <td>09/29/2014 15:03:19</td> <td>0:06:30</td> </tr>\n<tr>\n    <th>Refresh 5</th> <td>09/29/2014 15:03:24</td> <td>09/29/2014 15:06:45</td> <td>0:03:21</td> </tr>\n<tr>\n    <th>Refresh 6</th> <td>09/29/2014 15:06:46</td> <td>09/29/2014 15:06:49</td> <td>0:00:03</td> </tr>\n<tr>\n    <th>Refresh 7</th> <td>09/29/2014 15:06:50</td> <td>09/29/2014 15:06:53</td> <td>0:00:03</td> </tr>\n<tr>\n    <th>Refresh 8</th> <td>09/29/2014 15:06:53</td> <td>09/29/2014 15:10:04</td> <td>0:03:11</td> </tr>\n\n</table>\n\n<h3>Numerical Quantities Summary Timing Intervals in Seconds:</h3>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q1</th>\n  <th>Q2</th>\n  <th>Q3</th>\n  <th>Q4</th>\n  <th>Q5</th>\n  <th>Q6</th>\n  <th>Q7</th>\n  <th>Q8</th>\n</tr>\n<tr>\n    <th>Stream 0</th> <td>9.393632</td> <td>5.001910</td> <td>17.053567</td> <td>1.427500</td> <td>17.813839</td> <td>2.230451</td> <td>13.884490</td> <td>25.610995</td> </tr>\n<tr>\n    <th>Stream 1</th> <td>12.971454</td> <td>9.383520</td> <td>94.257760</td> <td>1.603106</td> <td>127.940946</td> <td>20.791892</td> <td>78.869819</td> <td>138.521273</td> </tr>\n<tr>\n    <th>Stream 2</th> <td>21.428177</td> <td>31.431513</td> <td>96.366083</td> <td>5.611843</td> <td>58.394596</td> <td>11.279502</td> <td>47.114473</td> <td>407.135077</td> </tr>\n<tr>\n    <th>Stream 3</th> <td>23.377920</td> <td>37.474814</td> <td>83.640621</td> <td>9.152178</td> <td>71.186158</td> <td>11.001543</td> <td>46.763758</td> <td>110.015662</td> </tr>\n<tr>\n    <th>Stream 4</th> <td>49.580860</td> <td>31.979940</td> <td>87.662950</td> <td>8.983661</td> <td>68.052295</td> <td>14.367631</td> <td>59.266063</td> <td>301.788652</td> </tr>\n<tr>\n    <th>Stream 5</th> <td>13.483836</td> <td>20.203772</td> <td>391.980128</td> <td>12.505446</td> <td>77.966993</td> <td>10.487869</td> <td>52.989448</td> <td>226.837637</td> </tr>\n<tr>\n    <th>Stream 6</th> <td>38.104903</td> <td>21.271630</td> <td>84.689348</td> <td>8.626460</td> <td>86.620802</td> <td>11.981171</td> <td>69.182098</td> <td>111.810485</td> </tr>\n<tr>\n    <th>Stream 7</th> <td>20.243617</td> <td>12.298692</td> <td>99.547203</td> <td>6.020951</td> <td>151.584400</td> <td>17.528287</td> <td>62.037348</td> <td>101.023802</td> </tr>\n<tr>\n    <th>Stream 8</th> <td>22.808294</td> <td>17.583072</td> <td>59.180595</td> <td>5.618565</td> <td>123.108771</td> <td>11.477376</td> <td>42.485363</td> <td>92.035709</td> </tr>\n<tr>\n    <th>Min Qi</th> <td>12.971454</td> <td>9.383520</td> <td>59.180595</td> <td>1.603106</td> <td>58.394596</td> <td>10.487869</td> <td>42.485363</td> <td>92.035709</td> </tr>\n<tr>\n    <th>Max Qi</th> <td>49.580860</td> <td>37.474814</td> <td>391.980128</td> <td>12.505446</td> <td>151.584400</td> <td>20.791892</td> <td>78.869819</td> <td>407.135077</td> </tr>\n<tr>\n    <th>Avg Qi</th> <td>25.249883</td> <td>22.703369</td> <td>124.665586</td> <td>7.265276</td> <td>95.606870</td> <td>13.614409</td> <td>57.338546</td> <td>186.146037</td> </tr>\n</table>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q9</th>\n  <th>Q10</th>\n  <th>Q11</th>\n  <th>Q12</th>\n  <th>Q13</th>\n  <th>Q14</th>\n  <th>Q15</th>\n  <th>Q16</th>\n</tr>\n<tr>\n    <th>Stream 0</th> <td>146.487681</td> <td>6.798942</td> <td>29.834475</td> <td>3.177879</td> <td>55.067866</td> <td>4.503738</td> <td>17.215591</td> <td>9.333281</td> </tr>\n<tr>\n    <th>Stream 1</th> <td>177.581204</td> <td>44.178095</td> <td>69.746005</td> <td>12.306166</td> <td>215.602727</td> <td>30.443709</td> <td>64.276384</td> <td>45.266949</td> </tr>\n<tr>\n    <th>Stream 2</th> <td>211.311651</td> <td>27.403143</td> <td>61.412478</td> <td>12.173058</td> <td>216.879170</td> <td>18.272234</td> <td>96.753886</td> <td>35.587072</td> </tr>\n<tr>\n    <th>Stream 3</th> <td>482.581456</td> <td>68.663026</td> <td>60.354163</td> <td>13.408513</td> <td>187.921639</td> <td>17.469237</td> <td>62.337222</td> <td>31.706120</td> </tr>\n<tr>\n    <th>Stream 4</th> <td>178.297373</td> <td>23.711312</td> <td>67.129677</td> <td>15.216904</td> <td>328.149575</td> <td>20.258853</td> <td>78.891201</td> <td>84.852368</td> </tr>\n<tr>\n    <th>Stream 5</th> <td>209.496498</td> <td>28.346366</td> <td>55.584081</td> <td>9.644075</td> <td>131.622351</td> <td>24.171156</td> <td>80.046801</td> <td>43.625932</td> </tr>\n<tr>\n    <th>Stream 6</th> <td>521.691639</td> <td>24.126176</td> <td>72.964805</td> <td>15.311409</td> <td>146.152570</td> <td>34.748843</td> <td>71.957130</td> <td>58.470644</td> </tr>\n<tr>\n    <th>Stream 7</th> <td>580.320149</td> <td>17.054563</td> <td>56.172396</td> <td>7.530832</td> <td>200.100326</td> <td>12.444021</td> <td>25.910599</td> <td>75.653693</td> </tr>\n<tr>\n    <th>Stream 8</th> <td>472.231674</td> <td>15.064398</td> <td>89.875570</td> <td>42.394675</td> <td>166.589234</td> <td>12.831209</td> <td>81.697881</td> <td>73.821769</td> </tr>\n<tr>\n    <th>Min Qi</th> <td>177.581204</td> <td>15.064398</td> <td>55.584081</td> <td>7.530832</td> <td>131.622351</td> <td>12.444021</td> <td>25.910599</td> <td>31.706120</td> </tr>\n<tr>\n    <th>Max Qi</th> <td>580.320149</td> <td>68.663026</td> <td>89.875570</td> <td>42.394675</td> <td>328.149575</td> <td>34.748843</td> <td>96.753886</td> <td>84.852368</td> </tr>\n<tr>\n    <th>Avg Qi</th> <td>354.188955</td> <td>31.068385</td> <td>66.654897</td> <td>15.998204</td> <td>199.127199</td> <td>21.329908</td> <td>70.233888</td> <td>56.123068</td> </tr>\n</table>\n\n<table style=\"padding:10px;border-spacing:10px;margin-left:auto;margin-right:auto;text-align:right;\">\n<tr>\n  <th>Query</th>\n  <th>Q17</th>\n  <th>Q18</th>\n  <th>Q19</th>\n  <th>Q20</th>\n  <th>Q21</th>\n  <th>Q22</th>\n  <th>RF1</th>\n  <th>RF2</th>\n</tr>\n<tr>\n    <th>Stream 0</th> <td>12.252670</td> <td>2.593733</td> <td>4.115862</td> <td>16.895672</td> <td>10.183350</td> <td>1.240096</td> <td>18.679685</td> <td>4.876067</td> </tr>\n<tr>\n    <th>Stream 1</th> <td>356.740980</td> <td>21.197870</td> <td>30.422216</td> <td>81.779038</td> <td>65.468650</td> <td>3.947503</td> <td>63.933750</td> <td>107.563796</td> </tr>\n<tr>\n    <th>Stream 2</th> <td>54.087768</td> <td>10.152604</td> <td>34.940701</td> <td>113.510640</td> <td>70.908809</td> <td>12.316233</td> <td>109.091578</td> <td>283.076004</td> </tr>\n<tr>\n    <th>Stream 3</th> <td>52.807104</td> <td>18.525982</td> <td>13.740089</td> <td>212.364908</td> <td>16.413964</td> <td>17.998809</td> <td>58.653503</td> <td>483.718271</td> </tr>\n<tr>\n    <th>Stream 4</th> <td>42.389062</td> <td>36.157809</td> <td>28.909260</td> <td>86.427025</td> <td>21.605419</td> <td>7.608729</td> <td>54.910853</td> <td>331.074114</td> </tr>\n<tr>\n    <th>Stream 5</th> <td>48.214794</td> <td>15.778893</td> <td>20.681799</td> <td>130.560005</td> <td>43.846752</td> <td>33.905533</td> <td>54.536966</td> <td>139.563667</td> </tr>\n<tr>\n    <th>Stream 6</th> <td>84.061840</td> <td>26.224851</td> <td>16.546432</td> <td>117.265210</td> <td>34.766856</td> <td>39.037423</td> <td>0.710642</td> <td>1.645351</td> </tr>\n<tr>\n    <th>Stream 7</th> <td>63.034890</td> <td>15.966686</td> <td>31.666488</td> <td>112.689765</td> <td>28.661943</td> <td>12.828171</td> <td>1.274731</td> <td>1.780452</td> </tr>\n<tr>\n    <th>Stream 8</th> <td>43.879104</td> <td>8.596666</td> <td>32.585746</td> <td>177.928730</td> <td>26.763334</td> <td>6.112333</td> <td>1.187693</td> <td>0.533668</td> </tr>\n<tr>\n    <th>Min Qi</th> <td>42.389062</td> <td>8.596666</td> <td>13.740089</td> <td>81.779038</td> <td>16.413964</td> <td>3.947503</td> <td>0.710642</td> <td>0.533668</td> </tr>\n<tr>\n    <th>Max Qi</th> <td>356.740980</td> <td>36.157809</td> <td>34.940701</td> <td>212.364908</td> <td>70.908809</td> <td>39.037423</td> <td>109.091578</td> <td>483.718271</td> </tr>\n<tr>\n    <th>Avg Qi</th> <td>93.151943</td> <td>19.075170</td> <td>26.186591</td> <td>129.065665</td> <td>38.554466</td> <td>16.719342</td> <td>43.037465</td> <td>168.619415</td> </tr>\n</table>\n\n\n<p>To be continued...</p>\n\n<h3>\n<i>In Hoc Signo Vinces</i> (TPC-H) Series</h3>\n<ul>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1739\" id=\"link-id0x2aac349bc698\"> In Hoc Signo Vinces (part 1): Virtuoso meets TPC-H</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1741\" id=\"link-id0x2aac347508c8\"> In Hoc Signo Vinces (part 2): TPC-H Schema Choices</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1742\" id=\"link-id0x2aac347b2098\"> In Hoc Signo Vinces (part 3): Benchmark Configuration Settings</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1744\" id=\"link-id0x2aac34f71318\"> In Hoc Signo Vinces (part 4): Bulk Load and Refresh</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1747\" id=\"link-id0x2aac346fa748\"> In Hoc Signo Vinces (part 5): The Return of SQL Federation</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1753\" id=\"link-id0x2aac349de568\"> In Hoc Signo Vinces (part 6): TPC-H Q1 and Q3: An Introduction to Query Plans</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1755\" id=\"link-id0x2aac34725b28\"> In Hoc Signo Vinces (part 7): TPC-H Q13: The Good and the Bad Plans</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1756\" id=\"link-id0x2aac36adde48\"> In Hoc Signo Vinces (part 8): TPC-H: INs, Expressions, ORs</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1779\" id=\"link-id0x2aac34a7e368\"> In Hoc Signo Vinces (part 9): TPC-H Q18, Ordered Aggregation, and Top K</a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1789\" id=\"link-id0x2aac348581b8\"> In Hoc Signo Vinces (part 10): TPC-H Q9, Q17, Q20 - Predicate Games </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1793\" id=\"link-id0x2aac344340c8\"> In Hoc Signo Vinces (part 11): TPC-H Q2, Q10 - Late Projection </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1796\" id=\"link-id0x2aac34ee7058\"> In Hoc Signo Vinces (part 12): TPC-H: Result Preview </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1798\" id=\"link-id0x2aac34d388b8\"> In Hoc Signo Vinces (part 13): Virtuoso TPC-H Kit Now on V7 Fast Track </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1800\" id=\"link-id0x2aac344da368\"> In Hoc Signo Vinces (part 14): Virtuoso TPC-H Implementation Analysis </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1802\" id=\"link-id0x2aac344da368\"> In Hoc Signo Vinces (part 15): TPC-H and the Science of Hash </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1816\" id=\"link-id0x69cacf8\"> In Hoc Signo Vinces (part 16): Introduction to Scale-Out </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1818\" id=\"link-id0x2aac00620518\"> In Hoc Signo Vinces (part 17): 100G and 300G Runs on Dual Xeon E5 2650v2 </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1819\" id=\"link-id0x2aabeaafeba8\"> In Hoc Signo Vinces (part 18): Cluster Dynamics </a>\n</li>\n<li>\nIn Hoc Signo Vinces (part 19): Scalability, 1000G, and 3000G<i> (this post)</i>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1824\" id=\"link-id0x2aab51a83638\"> In Hoc Signo Vinces (part 20): 100G and 1000G With Cluster; When is Cluster Worthwhile; Effects of I/O </a>\n</li>\n<li>\n  <a href=\"http://www.openlinksw.com/weblog/oerling/?id=1845\"> In Hoc Signo Vinces (part 21): Running TPC-H on Virtuoso Cluster on Amazon EC2 </a>\n</li>\n</ul>\n" .
@prefix dc:	<http://purl.org/dc/elements/1.1/> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	dc:title	"In Hoc Signo Vinces (part 19 of n): Scalability, 1000G, and 3000G" .
@prefix opl:	<http://www.openlinksw.com/schema/attribution#> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	opl:isDescribedUsing	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822/sioc.rdf> ;
	atom:source	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog> ;
	atom:updated	"2015-06-10T16:05:50Z" ;
	atom:title	"In Hoc Signo Vinces (part 19 of n): Scalability, 1000G, and 3000G" ;
	sioc:links_to	<http://www.openlinksw.com/weblog/oerling/?id=1755> ,
		<http://www.cwi.nl/> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1747> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1818> ,
		<http://www.tpc.org/tpch/> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1789> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1819> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1742> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1798> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1816> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1741> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1802> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1845> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1753> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1800> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1796> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1739> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1779> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1756> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1793> ,
		<http://scilens.project.cwi.nl/> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1744> ,
		<http://www.openlinksw.com/weblog/oerling/?id=1824> ;
	atom:author	ns1:this ;
	rdfs:label	"In Hoc Signo Vinces (part 19 of n): Scalability, 1000G, and 3000G" ;
	atom:published	"2014-09-30T20:33:29Z" .
@prefix ns9:	<http://rdfs.org/sioc/services#> .
@prefix ns10:	<http://www.openlinksw.com/dataspace/services/weblog/> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	ns9:has_services	ns10:item .
@prefix rdf:	<http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	rdf:type	atom:Entry .
@prefix schema:	<http://schema.org/> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	rdf:type	schema:BlogPosting .
@prefix sioct:	<http://rdfs.org/sioc/types#> .
<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822>	rdf:type	sioct:BlogPost .
ns10:item	ns9:services_of	<http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1822> .