You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@crail.apache.org by pe...@apache.org on 2018/06/07 11:27:15 UTC

[01/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Repository: incubator-crail-website
Updated Branches:
  refs/heads/asf-site 66f77a586 -> c782b73ad


http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/sort/net_vanilla.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/sort/net_vanilla.svg b/content/img/blog/sort/net_vanilla.svg
deleted file mode 100644
index cc9583c..0000000
--- a/content/img/blog/sort/net_vanilla.svg
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="600" height="200" 
- viewBox="0 0 600 200"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="600" height="200" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:black; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,142.4 L575.0,142.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,142.4 L80.9,142.4  h0.01'/>	<g transform="translate(63.6,146.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,117.3 L575.0,117.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,117.3 L80.9,117.3  h0.01'/>	<g transform="translate(63.6,121.8)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,92.1 L575.0,92.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,92.1 L80.9,92.1  h0.01'/>	<g transform="translate(63.6,96.6)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,67.0 L575.0,67.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,67.0 L80.9,67.0  h0.01'/>	<g transform="translate(63.6,71.5)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,41.8 L575.0,41.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,41.8 L80.9,41.8  h0.01'/>	<g transform="translate(63.6,46.3)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,16.7 L575.0,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,16.7 L80.9,16.7  h0.01'/>	<g transform="translate(63.6,21.2)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,142.4 L71.9,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,142.4 L71.9,133.4  h0.01'/>	<g transform="translate(71.9,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M163.4,142.4 L163.4,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M163.4,142.4 L163.4,133.4  h0.01'/>	<g transform="translate(163.4,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M254.8,142.4 L254.8,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M254.8,142.4 L254.8,133.4  h0.01'/>	<g transform="translate(254.8,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 200</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M346.3,142.4 L346.3,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M346.3,142.4 L346.3,133.4  h0.01'/>	<g transform="translate(346.3,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 300</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M437.8,142.4 L437.8,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M437.8,142.4 L437.8,133.4  h0.01'/>	<g transform="translate(437.8,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 400</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M529.3,142.4 L529.3,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M529.3,142.4 L529.3,133.4  h0.01'/>	<g transform="translate(529.3,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 500</text>
-	</g>
-	<path stroke='black'  d='M71.9,16.7 L71.9,142.4 L575.0,142.4 L575.0,16.7 L71.9,16.7 Z  h0.01'/>	<g transform="translate(17.6,79.6) rotate(270)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput [Gbit/s]</text>
-	</g>
-	<g transform="translate(323.4,191.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>Elapsed time (seconds)</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='rgb(228,  26,  28)'  d='M72.8,142.4 L73.7,142.4 L74.6,142.4 L75.6,142.4 L76.5,142.4 L77.4,142.4 L78.3,142.4 L79.2,142.4 
-		L80.1,142.4 L81.0,142.4 L82.0,142.4 L82.9,142.4 L83.8,142.4 L84.7,142.4 L85.6,142.4 L86.5,142.4 
-		L87.5,142.4 L88.4,142.4 L89.3,142.4 L90.2,142.4 L91.1,142.4 L92.0,142.4 L92.9,142.4 L93.9,142.4 
-		L94.8,142.4 L95.7,142.4 L96.6,142.4 L97.5,142.4 L98.4,142.4 L99.3,142.4 L100.3,142.4 L101.2,142.4 
-		L102.1,142.4 L103.0,142.4 L103.9,142.4 L104.8,142.4 L105.7,142.4 L106.7,142.4 L107.6,142.4 L108.5,142.4 
-		L109.4,142.4 L110.3,142.4 L111.2,142.4 L112.1,142.4 L113.1,142.4 L114.0,142.4 L114.9,142.4 L115.8,142.4 
-		L116.7,142.4 L117.6,142.4 L118.6,142.4 L119.5,142.4 L120.4,142.4 L121.3,142.4 L122.2,142.4 L123.1,142.4 
-		L124.0,142.4 L125.0,142.4 L125.9,142.4 L126.8,142.4 L127.7,142.4 L128.6,142.4 L129.5,142.4 L130.4,142.4 
-		L131.4,142.4 L132.3,142.4 L133.2,142.4 L134.1,142.4 L135.0,142.4 L135.9,142.4 L136.8,142.4 L137.8,142.4 
-		L138.7,142.4 L139.6,142.4 L140.5,142.4 L141.4,142.4 L142.3,142.4 L143.2,142.4 L144.2,142.4 L145.1,142.4 
-		L146.0,142.4 L146.9,142.4 L147.8,142.4 L148.7,142.4 L149.7,142.4 L150.6,142.4 L151.5,142.4 L152.4,142.4 
-		L153.3,142.4 L154.2,142.4 L155.1,142.4 L156.1,142.4 L157.0,142.4 L157.9,142.4 L158.8,142.4 L159.7,142.4 
-		L160.6,142.4 L161.5,142.4 L162.5,142.4 L163.4,142.4 L164.3,142.4 L165.2,142.4 L166.1,142.4 L167.0,142.4 
-		L167.9,142.4 L168.9,142.4 L169.8,142.4 L170.7,142.4 L171.6,142.4 L172.5,142.4 L173.4,142.4 L174.3,142.4 
-		L175.3,142.4 L176.2,142.4 L177.1,142.4 L178.0,142.4 L178.9,142.4 L179.8,142.4 L180.8,142.4 L181.7,142.4 
-		L182.6,142.4 L183.5,142.4 L184.4,142.4 L185.3,142.4 L186.2,142.4 L187.2,142.4 L188.1,142.4 L189.0,142.4 
-		L189.9,142.4 L190.8,142.4 L191.7,142.4 L192.6,142.4 L193.6,142.4 L194.5,142.4 L195.4,142.4 L196.3,142.4 
-		L197.2,142.4 L198.1,142.4 L199.0,142.4 L200.0,142.4 L200.9,142.4 L201.8,142.0 L202.7,139.5 L203.6,137.0 
-		L204.5,136.1 L205.5,141.5 L206.4,142.4 L207.3,137.7 L208.2,134.9 L209.1,140.8 L210.0,140.2 L210.9,141.1 
-		L211.9,141.7 L212.8,141.7 L213.7,142.2 L214.6,142.4 L215.5,142.4 L216.4,139.0 L217.3,140.2 L218.3,142.3 
-		L219.2,142.2 L220.1,141.8 L221.0,142.2 L221.9,142.3 L222.8,142.4 L223.7,142.2 L224.7,141.9 L225.6,140.8 
-		L226.5,139.2 L227.4,138.9 L228.3,139.9 L229.2,140.3 L230.1,135.5 L231.1,137.8 L232.0,140.7 L232.9,141.2 
-		L233.8,141.2 L234.7,141.6 L235.6,141.5 L236.6,138.9 L237.5,139.2 L238.4,141.1 L239.3,142.1 L240.2,141.4 
-		L241.1,142.1 L242.0,142.1 L243.0,141.9 L243.9,142.0 L244.8,141.6 L245.7,141.7 L246.6,141.6 L247.5,141.2 
-		L248.4,141.5 L249.4,140.1 L250.3,139.7 L251.2,140.8 L252.1,138.2 L253.0,138.6 L253.9,137.7 L254.8,137.1 
-		L255.8,138.0 L256.7,139.1 L257.6,140.8 L258.5,141.6 L259.4,141.7 L260.3,141.8 L261.2,142.0 L262.2,142.1 
-		L263.1,141.6 L264.0,141.1 L264.9,141.2 L265.8,141.2 L266.7,141.6 L267.7,139.4 L268.6,139.3 L269.5,140.6 
-		L270.4,139.5 L271.3,140.0 L272.2,140.7 L273.1,140.2 L274.1,137.5 L275.0,136.1 L275.9,139.7 L276.8,140.4 
-		L277.7,141.4 L278.6,140.7 L279.5,140.9 L280.5,141.1 L281.4,141.3 L282.3,141.1 L283.2,140.9 L284.1,140.6 
-		L285.0,139.9 L285.9,141.2 L286.9,138.0 L287.8,137.6 L288.7,139.3 L289.6,137.7 L290.5,139.7 L291.4,138.7 
-		L292.3,140.0 L293.3,140.5 L294.2,140.5 L295.1,140.8 L296.0,141.4 L296.9,140.7 L297.8,141.3 L298.8,141.3 
-		L299.7,141.2 L300.6,141.1 L301.5,141.4 L302.4,139.8 L303.3,136.9 L304.2,136.1 L305.2,139.3 L306.1,141.4 
-		L307.0,134.9 L307.9,139.0 L308.8,140.2 L309.7,140.7 L310.6,140.6 L311.6,140.5 L312.5,139.6 L313.4,141.8 
-		L314.3,139.9 L315.2,134.2 L316.1,135.5 L317.0,137.9 L318.0,141.1 L318.9,137.0 L319.8,140.1 L320.7,139.1 
-		L321.6,140.0 L322.5,139.9 L323.5,139.4 L324.4,140.1 L325.3,140.0 L326.2,137.1 L327.1,137.7 L328.0,139.4 
-		L328.9,137.3 L329.9,138.9 L330.8,138.3 L331.7,139.1 L332.6,140.7 L333.5,141.9 L334.4,142.0 L335.3,141.8 
-		L336.3,141.5 L337.2,139.5 L338.1,140.4 L339.0,140.3 L339.9,140.2 L340.8,139.2 L341.7,136.9 L342.7,135.3 
-		L343.6,139.1 L344.5,141.2 L345.4,135.8 L346.3,137.9 L347.2,139.4 L348.1,141.1 L349.1,140.6 L350.0,140.3 
-		L350.9,139.6 L351.8,141.0 L352.7,141.9 L353.6,142.4 L354.6,142.1 L355.5,140.2 L356.4,139.9 L357.3,137.9 
-		L358.2,137.8 L359.1,138.3 L360.0,139.6 L361.0,138.9 L361.9,136.7 L362.8,139.0 L363.7,141.2 L364.6,141.3 
-		L365.5,140.7 L366.4,139.1 L367.4,139.3 L368.3,141.8 L369.2,139.9 L370.1,140.0 L371.0,138.4 L371.9,139.2 
-		L372.8,139.6 L373.8,136.8 L374.7,139.1 L375.6,140.7 L376.5,137.0 L377.4,136.6 L378.3,140.3 L379.2,140.6 
-		L380.2,141.8 L381.1,141.3 L382.0,139.4 L382.9,138.7 L383.8,140.2 L384.7,141.0 L385.7,141.0 L386.6,141.1 
-		L387.5,139.6 L388.4,139.1 L389.3,138.3 L390.2,140.5 L391.1,135.7 L392.1,136.3 L393.0,134.8 L393.9,139.0 
-		L394.8,141.4 L395.7,139.1 L396.6,141.7 L397.5,142.2 L398.5,142.3 L399.4,141.8 L400.3,141.5 L401.2,141.3 
-		L402.1,140.0 L403.0,139.9 L403.9,140.0 L404.9,138.9 L405.8,138.0 L406.7,138.6 L407.6,137.1 L408.5,134.4 
-		L409.4,137.5 L410.3,140.1 L411.3,140.9 L412.2,139.8 L413.1,140.6 L414.0,138.8 L414.9,140.2 L415.8,138.8 
-		L416.8,138.9 L417.7,137.0 L418.6,136.8 L419.5,137.8 L420.4,138.6 L421.3,140.0 L422.2,141.5 L423.2,142.1 
-		L424.1,141.3 L425.0,140.0 L425.9,139.9 L426.8,141.5 L427.7,140.6 L428.6,140.4 L429.6,140.9 L430.5,140.2 
-		L431.4,140.0 L432.3,138.4 L433.2,135.8 L434.1,137.9 L435.0,137.6 L436.0,138.5 L436.9,138.9 L437.8,137.6 
-		L438.7,139.5 L439.6,140.0 L440.5,140.1 L441.4,140.0 L442.4,140.7 L443.3,141.6 L444.2,135.0 L445.1,136.1 
-		L446.0,136.8 L446.9,138.9 L447.9,137.8 L448.8,140.0 L449.7,139.6 L450.6,138.3 L451.5,139.9 L452.4,139.8 
-		L453.3,139.2 L454.3,139.1 L455.2,139.6 L456.1,137.7 L457.0,138.7 L457.9,135.8 L458.8,139.3 L459.7,139.2 
-		L460.7,138.5 L461.6,138.5 L462.5,139.0 L463.4,139.7 L464.3,140.8 L465.2,141.3 L466.1,140.8 L467.1,140.2 
-		L468.0,138.5 L468.9,137.9 L469.8,136.5 L470.7,135.3 L471.6,138.2 L472.6,139.3 L473.5,139.5 L474.4,140.6 
-		L475.3,140.9 L476.2,141.1 L477.1,140.0 L478.0,136.8 L479.0,140.6 L479.9,142.1 L480.8,142.0 L481.7,140.7 
-		L482.6,139.4 L483.5,137.8 L484.4,138.7 L485.4,140.5 L486.3,136.8 L487.2,135.7 L488.1,135.7 L489.0,138.5 
-		L489.9,138.9 L490.8,141.1 L491.8,140.6 L492.7,140.8 L493.6,138.6 L494.5,138.5 L495.4,139.4 L496.3,140.1 
-		L497.2,139.4 L498.2,140.1 L499.1,139.6 L500.0,138.0 L500.9,138.4 L501.8,139.3 L502.7,137.1 L503.7,137.4 
-		L504.6,137.5 L505.5,140.6 L506.4,141.6 L507.3,142.2 L508.2,141.2 L509.1,139.1 L510.1,137.2 L511.0,139.4 
-		L511.9,141.8 L512.8,137.3 L513.7,139.8 L514.6,137.7 L515.5,137.3 L516.5,137.2 L517.4,137.6 L518.3,140.9 
-		L519.2,141.3 L520.1,141.7 L521.0,142.0 L521.9,141.2 L522.9,139.9 L523.8,139.0 L524.7,139.0 L525.6,138.2 
-		L526.5,135.2 L527.4,138.0 L528.3,138.5 L529.3,134.6 L530.2,140.0 L531.1,141.2 L532.0,140.8 L532.9,141.4 
-		L533.8,142.2 L534.8,142.3 L535.7,142.4 L536.6,141.4 L537.5,140.2 L538.4,138.6 L539.3,136.9 L540.2,137.9 
-		L541.2,137.9 L542.1,137.1 L543.0,137.7 L543.9,134.5 L544.8,141.1 L545.7,140.7 L546.6,141.0 L547.6,139.7 
-		L548.5,139.1 L549.4,139.1 L550.3,140.0 L551.2,139.1 L552.1,141.5 L553.0,142.2 L554.0,141.9 L554.9,140.6 
-		L555.8,138.8 L556.7,138.4 L557.6,138.7 L558.5,139.0 L559.4,140.4 L560.4,142.2 L561.3,142.2 L562.2,139.9 
-		L563.1,139.3 L564.0,142.4 L564.9,142.4 L565.9,142.4 L566.8,142.4 L567.7,142.4 L568.6,142.4 L569.5,142.4 
-		L570.4,142.4 L571.3,142.4 L572.3,142.4 L573.2,142.4 L574.1,142.4 L575.0,142.4  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb(228,  26,  28); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,16.7 L71.9,142.4 L575.0,142.4 L575.0,16.7 L71.9,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/sort/performance_overall.png
----------------------------------------------------------------------
diff --git a/content/img/blog/sort/performance_overall.png b/content/img/blog/sort/performance_overall.png
deleted file mode 100644
index 8de369e..0000000
Binary files a/content/img/blog/sort/performance_overall.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/sort/shuffle_rdma.png
----------------------------------------------------------------------
diff --git a/content/img/blog/sort/shuffle_rdma.png b/content/img/blog/sort/shuffle_rdma.png
deleted file mode 100644
index 9d3d020..0000000
Binary files a/content/img/blog/sort/shuffle_rdma.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/sort/terasort_pipeline.png
----------------------------------------------------------------------
diff --git a/content/img/blog/sort/terasort_pipeline.png b/content/img/blog/sort/terasort_pipeline.png
deleted file mode 100644
index f5a11c8..0000000
Binary files a/content/img/blog/sort/terasort_pipeline.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/crail-stack-preview.png
----------------------------------------------------------------------
diff --git a/content/img/crail-stack-preview.png b/content/img/crail-stack-preview.png
deleted file mode 100644
index e1b258c..0000000
Binary files a/content/img/crail-stack-preview.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/crail_logo.png
----------------------------------------------------------------------
diff --git a/content/img/crail_logo.png b/content/img/crail_logo.png
deleted file mode 100644
index 1ca0ce5..0000000
Binary files a/content/img/crail_logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/crail_stack.png
----------------------------------------------------------------------
diff --git a/content/img/crail_stack.png b/content/img/crail_stack.png
deleted file mode 100644
index 9708e4b..0000000
Binary files a/content/img/crail_stack.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/crail_stack2.png
----------------------------------------------------------------------
diff --git a/content/img/crail_stack2.png b/content/img/crail_stack2.png
deleted file mode 100644
index f2b8315..0000000
Binary files a/content/img/crail_stack2.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/crail_stack3.png
----------------------------------------------------------------------
diff --git a/content/img/crail_stack3.png b/content/img/crail_stack3.png
deleted file mode 100644
index 424ba46..0000000
Binary files a/content/img/crail_stack3.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/index.html
----------------------------------------------------------------------
diff --git a/content/index.html b/content/index.html
deleted file mode 100644
index 2f044d0..0000000
--- a/content/index.html
+++ /dev/null
@@ -1,161 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Overview</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/crail-stack-preview.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/crail-stack-preview.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li class="active">
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-
-          <div class="jumbotron">
-<h4>Apache Crail is a high-performance distributed data store designed for fast sharing of ephemeral data in distributed data processing workloads</h4>
-</div>
-
-<br>
-<div>
-<center>
-<img src="http://crail.incubator.apache.org/img/crail_stack3.png" align="middle" style="width: 340px; text-align:center;">
-</center>
-</div>
-<br>
-
-<div class="row">
-<div class="col-lg-4">
-<h2>Fast</h2>
-<p align="justify">Crail is designed from ground up for modern high-performance networking and storage hardware (RDMA, NVMe, NVMf, etc.). It leverages user-level I/O to access hardware directly from the application context, providing bare-metal I/O performance to analytics workloads. For example, Crail achieves data access at rates close to the 100Gb/s network limit with latencies below 10 us.</p>
-<p><a class="btn btn-default" href="overview/index.html#overview">Learn more &raquo;</a></p>
-</div>
-<div class="col-lg-4">
-<h2>Heterogeneous</h2>
-<p align="justify">Crail offers a unified storage namespace over a heterogeneous set of storage resources distributed in a cluster, such as DRAM, non-volatile memory (NVM), Flash or GPU memory. Depending on the storage policy, data sets may be stored on a particular storage technology or even a specific storage device, or be distributed across multiple devices and storage technologies. 
-</p>
-<p><a class="btn btn-default" href="overview/index.html#fs">Learn more &raquo;</a></p>
-</div>
-<div class="col-lg-4">
-<h2>Modular</h2>
-<p align="justify">Crail provides a modular architecture where new network and storage technologies can be integrated in the form of pluggable modules. Crail further exports various application interfaces including File System (FS), Key-Value (KV) and Streaming, and integrates seamlessly with the Apache ecosystem, such as Apache Spark, Apache Parquet, Apache Arrow, etc.</p>
-<p><a class="btn btn-default" href="overview/index.html#spark">Learn more &raquo;</a></p>
-</div>
-</div>
-
-<h2>News</h2>
-<ul class="news list-unstyled">
-
-    
-        <li class="shortnews">
-            <span class="date">June 5, 2018</span>
-            <p>A Spark serverless architecture powered by Crail will be presented today at the <a href="https://databricks.com/session/serverless-machine-learning-on-modern-hardware-using-apache-spark">Spark Summit</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">June 5, 2018</span>
-            <p>Apache Crail (incubating) to feature in the <a href="https://dataworkssummit.com/san-jose-2018/session/data-processing-at-the-speed-of-100-gbpsapache-crail-incubating/">DataWorks Summit</a> on June 21st</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">June 4, 2018</span>
-            <p>Apache Crail 1.0 incubator <a href="https://dist.apache.org/repos/dist/release/incubator/crail/1.0-incubating/">release</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">January 22, 2018</span>
-            <p>Crail is now an Apache Incubator project!</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">November 23, 2017</span>
-            <p>New blog <a href="http://crail.incubator.apache.org/blog/2017/11/crail-metadata.html">post</a> about Crail’s metadata performance and scalability</p>
-
-        </li>
-    
-
-</ul>
-
-
-<p><a href="http://crail.incubator.apache.org/news/">Older posts&hellip;</a></p>
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/js/srcset-polyfill.js
----------------------------------------------------------------------
diff --git a/content/js/srcset-polyfill.js b/content/js/srcset-polyfill.js
deleted file mode 100644
index 9c8d2bc..0000000
--- a/content/js/srcset-polyfill.js
+++ /dev/null
@@ -1,52 +0,0 @@
-(function(window, document) {
-    // Test if it already supports srcset
-    if ('srcset' in document.createElement('img'))
-        return true;
-
-    // We want to get the device pixel ratio
-    var maxWidth   = (window.innerWidth > 0) ? window.innerWidth : screen.width,
-        maxHeight  = (window.innerHeight > 0) ? window.innerHeight : screen.height,
-        maxDensity = window.devicePixelRatio || 1;
-
-    // Implement srcset
-    function srcset(image) {
-        if (!image.attributes['srcset']) return false;
-
-        var candidates = image.attributes['srcset'].nodeValue.split(',');
-
-        for (var i = 0; i < candidates.length; i++) {
-            // The following regular expression was created based on the rules
-            // in the srcset W3C specification available at:
-            // http://www.w3.org/html/wg/drafts/srcset/w3c-srcset/
-
-            var descriptors = candidates[i].match(
-                    /^\s*([^\s]+)\s*(\s(\d+)w)?\s*(\s(\d+)h)?\s*(\s(\d+)x)?\s*$/
-                ),
-                filename = descriptors[1],
-                width    = descriptors[3] || false,
-                height   = descriptors[5] || false,
-                density  = descriptors[7] || 1;
-
-            if (width && width > maxWidth) {
-                continue;
-            }
-
-            if (height && height > maxHeight) {
-                continue;
-            }
-
-            if (density && density > maxDensity) {
-                continue;
-            }
-
-            image.src = filename;
-        }
-    }
-
-
-    var images = document.getElementsByTagName('img');
-
-    for (var i=0; i < images.length; i++) {
-        srcset(images[i]);
-    }
-})(window, document);
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/news/index.html
----------------------------------------------------------------------
diff --git a/content/news/index.html b/content/news/index.html
deleted file mode 100644
index ddb093b..0000000
--- a/content/news/index.html
+++ /dev/null
@@ -1,224 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: News</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/news-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/news-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>News</h2>   
-          
-
-          <ul class="news list-unstyled">
-
-    
-        <li class="shortnews">
-            <span class="date">June 5, 2018</span>
-            <p>A Spark serverless architecture powered by Crail will be presented today at the <a href="https://databricks.com/session/serverless-machine-learning-on-modern-hardware-using-apache-spark">Spark Summit</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">June 5, 2018</span>
-            <p>Apache Crail (incubating) to feature in the <a href="https://dataworkssummit.com/san-jose-2018/session/data-processing-at-the-speed-of-100-gbpsapache-crail-incubating/">DataWorks Summit</a> on June 21st</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">June 4, 2018</span>
-            <p>Apache Crail 1.0 incubator <a href="https://dist.apache.org/repos/dist/release/incubator/crail/1.0-incubating/">release</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">January 22, 2018</span>
-            <p>Crail is now an Apache Incubator project!</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">November 23, 2017</span>
-            <p>New blog <a href="http://crail.incubator.apache.org/blog/2017/11/crail-metadata.html">post</a> about Crail’s metadata performance and scalability</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">November 17, 2017</span>
-            <p>Crail features in the <a href="https://twit.tv/shows/floss-weekly/episodes/458?autostart=false">FLOSS weekly podcast</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">November 17, 2017</span>
-            <p>New blog <a href="http://crail.incubator.apache.org/blog/2017/11/rdmashuffle.html">post</a> about SparkRDMA and Crail shuffle plugins</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">August 4, 2017</span>
-            <p>Crail on OpenPower discussed by Peter Hofstee on <a href="https://www.youtube.com/watch?v=f-pgMaEmqn4&amp;feature=youtu.be&amp;platform=hootsuite">Youtube</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">June 17, 2017</span>
-            <p>DiSNI, the RDMA and NVMe user-level stack used in Crail is now available on <a href="https://search.maven.org/">Maven Central</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">March 29, 2017</span>
-            <p>First release of the NVMeF storage tier for Crail is available at <a href="http://github.com/zrlio/crail">GitHub</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">March 20, 2017</span>
-            <p>We are presenting Crail at the <a href="https://spark-summit.org/2017/events/running-apache-spark-on-a-high-performance-cluster-using-rdma-and-nvme-flash">Spark Summit</a> in San Francisco on June 6th</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">March 16, 2017</span>
-            <p>We are presenting Crail at a <a href="https://www.meetup.com/Big-Data-Developers-in-Munich/events/238408703/">meetup</a> before the <a href="https://dataworkssummit.com/munich-2017/agenda/#20170404">DataWorks Summit</a> in Munich on April 4th</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">March 12, 2017</span>
-            <p>We are presenting Crail at the <a href="https://www.openfabrics.org/index.php/abstracts-agenda.html">Open Fabrics Workshop</a> in Austin on March 28th</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">March 10, 2017</span>
-            <p>Our work on Storage disaggregation using Crail at the <a href="http://nvmw.ucsd.edu/2017/program">Non-Volatile Memories Workshop</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">January 17, 2017</span>
-            <p>New blog <a href="http://crail.incubator.apache.org/blog/2017/01/sorting.html">post</a> about sorting on a 100Gbit/s cluster using Spark/Crail</p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">January 1, 2017</span>
-            <p>First release of the Spark shuffle engine available at <a href="http://github.com/zrlio/spark-io">GitHub</a></p>
-
-        </li>
-    
-
-    
-        <li class="shortnews">
-            <span class="date">January 1, 2017</span>
-            <p>First release of the Crail distributed file system available at <a href="http://github.com/zrlio/crail">GitHub</a></p>
-
-        </li>
-    
-
-</ul>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/overview/architecture.png
----------------------------------------------------------------------
diff --git a/content/overview/architecture.png b/content/overview/architecture.png
deleted file mode 100644
index 2f11f95..0000000
Binary files a/content/overview/architecture.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/overview/filesystem.png
----------------------------------------------------------------------
diff --git a/content/overview/filesystem.png b/content/overview/filesystem.png
deleted file mode 100644
index 4b29413..0000000
Binary files a/content/overview/filesystem.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/overview/filesystem2.png
----------------------------------------------------------------------
diff --git a/content/overview/filesystem2.png b/content/overview/filesystem2.png
deleted file mode 100644
index 974e75a..0000000
Binary files a/content/overview/filesystem2.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/overview/index.html
----------------------------------------------------------------------
diff --git a/content/overview/index.html b/content/overview/index.html
deleted file mode 100644
index 1605363..0000000
--- a/content/overview/index.html
+++ /dev/null
@@ -1,247 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: I/O Challenges</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/overview-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/overview-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li class="active">
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>I/O Challenges</h2>   
-          
-
-          <div style="text-align: justify"> 
-<p>
-Modern storage and network technologies such as 100Gb/s Ethernet, RDMA, NVMe flash, etc., present new opportunities for data processing systems to further reduce the response times of analytics queries on large data sets. Unfortunately, leveraging modern hardware in systems like Spark, Flink or Hadoop remains challenging, for multiple reasons:
-</p>
-</div>
-
-<ul>
-  <li>
-    <p>Performance: today’s data processing stacks employ many software layers, which is key to making the stacks modular and flexible to use. But the software layers also impose overheads during I/O operations that prevent applications from enjoying the full potential of the high-performance hardware. To eliminate these overheads, I/O operations must interact with the hardware directly from within the application context using principles like RDMA, DPDK or SPDK.</p>
-  </li>
-  <li>
-    <p>New opportunities: the improved performance of modern networking and storage hardware opens the door to rethinking the interplay of I/O and compute in a distributed data processing system. For instance, low latency remote data access enables schedulers to relax on data locality and in turn make better use of compute resources. At one extreme, storage resources can be completely disaggregated which is more cost effective and simplifies maintenance.</p>
-  </li>
-  <li>
-    <p>Heterogeneity: with modern hardware, I/O operations are becoming more complex. Not only are there more options to store data (disk, flash, DRAM, disaggregated storage, etc.) but also it is getting increasingly important to use storage resources efficiently. For  instance, some newer technologies such as phase change memory (PCM) permit data access at byte granularity. Mediating storage access through a block device interface is a bad fit in such a case. Moreover, with accelerators like GPUs or FPGAs extending the traditional compute layer, new distributed interfaces to accelerator-local memories are needed.</p>
-  </li>
-</ul>
-
-<p>In the <a href="http://crail.incubator.apache.org/blog">Blog</a> section we discuss each of those challenges in more detail.</p>
-
-<h2 id="crail-architecture">Crail Architecture</h2>
-
-<div style="text-align: justify"> 
-<p>
-Crail aims at providing a comprehensive solution to the above challenges in a form that is non-intrusive and compatible with the Apache data processing ecosystem. In particular, Crail is designed to be consumeable by different compute engines such as Spark, Flink, Solr, etc., with very little integration effort. 
-</p>
-</div>
-
-<h3 id="overview">Overview</h3>
-
-<div style="text-align: justify">
-<p>
-The backbone of the Crail I/O architecture is Crail Store, a high-performance multi-tiered data store for temporary data in analytics workloads. If the context permits we often refer to Crail Store simply as Crail. Data processing frameworks and applications may directly interact with Crail for fast storage of in-flight data, but more commonly the interaction takes place through one of the Crail modules. As an example, the CrailHDFS adapter provides a standard HDFS interface allowing applications to use Crail Store the same way they use regular HDFS. Applications may want to use CrailHDFS for short-lived performance critical data, and regular HDFS for long-term data storage. CrailSparkIO is a Spark specific module which implements various I/O intensive Spark operations such as shuffle, broadcast, etc. Both CrailHDFS and CrailSparkIO can be used transparently with no need to recompile either the application or the data processing framework. 
-</p>
-</div>
-<p><br />
-<img src="architecture.png" width="500" align="middle" />
-<br /><br /></p>
-<div style="text-align: justify">
-<p>
-Crail modules are thin layers on top of Crail Store. Implementing new modules for a particular data processing framework or a specific I/O operation requires only a moderate amount of work. At the same time, modules inherit the full benefits of Crail in terms of user-level I/O, performance and storage tiering. For instance, in the blog section we show that the Crail-based shuffle engine for Spark permits all-to-all data shuffling very close to the speed of the 100Gb/s network fabric. 
-</p>
-</div>
-
-<h3 id="fs">Crail Store</h3>
-
-<div style="text-align: justify">
-<p>
-Crail Store implements a hierarchical namespace across a cluster of RDMA interconnected storage resources such as DRAM or flash. Storage resources may be co-located with the compute nodes of the cluster, or disagreggated inside the data center, or a mix of both. Nodes in the Crail namespace consist of arrays of blocks distributed across storage resources in the cluster. Crail groups storage resources into different tiers (e.g, DRAM, flash, disk) and permits node segments (blocks) to be allocated in specific tiers but also across tiers. For instance, by default Crail uses horizontal tiering where higher performing storage resources are filled up across the cluster prior to using lower performing tiers -- resulting in a more effective usage of storage hardware. 
-</p>
-<p>
-Crail currently supports five types of nodes to be stored in its namespace: regular data files, directories, multifiles, tables and keyvalue nodes. Regular data files are append-and-overwrite with only a single-writer permitted per file at a given time. Append-andoverwrite means that – aside from appending data to the file – overwriting existing content of a file is also permitted. Directories in Crail are just regular files containing fixed length directory records. The advantage
-is that directory enumeration becomes just a standard file read operation which makes enumeration fast and
-scalable with regard to the number of directory entries. Multifiles are files that can be written concurrently.
-Internally, a multifile very much resembles a flat directory. Multiple concurrent substreams on a multifile are
-backed with separate files inside the directory. Keyvalue nodes are similar to data files, except that keyvalue nodes can be updated with completely new values. Updating keyvalue nodes can happen concurrently by multiple clients in which case the last update prevails. Keyvalue nodes can only be attached to tables, which are similar to directory with the exception that tables cannot be nested.
-</p>
-</div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/overview/filesystem2.png" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify">
-<p>
-Access to storage resources over the network -- as happening during file read/write operations -- are implemented using a variety of network and stoage APIs and protocols. Which API and protocol is uses to read/write a particular block depends to the type of storage that is accessed. For instance, accesses to blocks residing in the DRAM tier are implemented using one-sided read/write RDMA operations. Similarly, access to blocks residing in the NVMe tier of Crail are implemented using NVMe of fabrics (NVMf). In most of the cases, the network and storage devices are access directly from user-space via RDMA or other user-level APIs such as DPDK or SPDK. Crail is built in a way that new storage tiers can be added easily: storage tiers are actual plugins. With this, Crail can support new protocols and APIs and leverage upcoming storage and network technologies efficiently. 
-</p>
-</div>
-<p><br />
-<img src="tiering.png" width="650" align="middle" />
-<br /><br /></p>
-<div style="text-align: justify">
-<p>
-Crail's top level storage API offers asynchronous non-blocking functions for reading and writing data. Typically, the user-level APIs used by the storage tiers offer an asynchronous interface to the hardware which Crail directly leverages, thus, Crail is naturally asynchronous and does not need to engage any extra threads to provide asynchronism. The asynchronous API is particular important in the context of data processing, as it facilitates interleaving of computation and I/O in data processing workloads. Aside from the standard read/write operations, Crail provides extra semantics geared towards its use case. For instance, Crail exports functions to allocate dedicated I/O buffers from a reuseable pool -- memory that is registered with the hardware if needed to support zero-copy I/O. Moreover, Crail provides detailed control as to which storage tier and location preference should be used when allocating file system resources. 
-</p>
-<p>
-Crail not only exports a Java API but also is written entirely in Java, which makes it easy to use and allows for a better integration with data processing frameworks like Spark, Flink, Hadoop, etc. A simple example of a Crail write operation is shown below:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>CrailConfiguration conf = new CrailConfiguration();
-CrailStore store = CrailStore.newInstance(conf);
-CrailFile file = store.createFile(filename, 0, 0).get().syncDir();
-CrailOutputStream outstream = file.getDirectOutputStream();
-ByteBuffer dataBuf = store.allocateBuffer();
-Future&lt;DataResult&gt; future = outputStream.write(dataBuf);
-...
-future.get();
-</code></pre></div></div>
-<div style="text-align: justify">
-<p>
-
-Crail uses <a href="https://github.com/zrlio/disni">DiSNI</a>, a user-level network and storage stack for the Java virtual machine. DiSNI allows data to be exchanged in a zero-copy fashion between Java I/O memory and remote storage resources over RDMA. 
-</p>
-</div>
-
-<h3>Crail HDFS Adapter</h3>
-
-<p>The Crail HDFS adaptor enables users to access Crail using the standard HDFS API. For instance, administrators can interact with Crail using the standard HDFS shell:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail fs -mkdir /test
-./bin/crail fs -ls /
-./bin/crail fs -copyFromLocal &lt;path-to-local-file&gt; 
-./bin/crail fs -cat /test/&lt;file-name&gt;
-</code></pre></div></div>
-
-<p>Moreover, regular HDFS-based applications will transparently work with Crail when using fully qualified path names (or when specifying Crail as the default Hadoop file system):</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Configuration conf = new Configuration();
-FileSystem fs = FileSystem.get(conf);
-fs.create("crail://test/hello.txt");
-</code></pre></div></div>
-
-<h3 id="spark">Crail Spark Module</h3>
-
-<div style="text-align: justify">
-<p>
-The Crail Spark module includes a Crail based shuffle engine as well as a broadcast service. The shuffle engine maps key ranges to directories in Crail. Each map task, while partitioning the data, appends key/value pairs to individual files in the corresponding directories. Tasks running on the same core within the cluster append to the same files, which reduces storage fragmentation. 
-</p>
-</div>
-
-<p><br />
-<img src="shuffle.png" width="550" align="middle" />
-<br /><br /></p>
-
-<div style="text-align: justify">
-<p>
-As is the case with the Crail HDFS adapter, the shuffle engine benefits from the performance and tiering advantages of the Crail data store. For instance, individual shuffle files are served using horizontal tiering. In most cases that means the files are filling up the memory tier as long as there is some DRAM available in the cluster, after which they extend to the flash tier. The shuffle engine further uses the Crail location affinity API to make sure local DRAM and flash is preferred over remote DRAM and flash respectively. Note that the shuffle engine is also completely zero-copy, as it transfers data directly from the I/O memory of the mappers to the I/O memory of the reducers. 
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-The Crail-based broadcast plugin for Spark stores broadcast variables in Crail files. In contrast to the shuffle engine, broadcast is implemented without location affinity, which makes sure the underlying blocks of the Crail files are distributed across the cluster, leading to a better load balancing when reading broadcast variables. Crail shuffle and broadcast components can be enabled in Spark by setting the following system properties in spark-defaults.conf:
-</p>
-</div>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>spark.shuffle.manager		org.apache.spark.shuffle.crail.CrailShuffleManager
-spark.broadcast.factory		org.apache.spark.broadcast.CrailBroadcastFactory
-</code></pre></div></div>
-
-<div style="text-align: justify">
-<p>
-Both broadcast and shuffle require Spark data objects to be serialized into byte streams (as is also the case for the default Spark broadcast and shuffle components). Even though both Crail components work fine with any of the Spark built-in serializers (e.g. Kryo), to achieve the best possible performance applications running on Crail are encouraged to provide serialization and deserialization methods for their data types explicitly. One reason for this is that the built-in Spark serializers assume byte streams of type java.io.(InputStream/OutputStream). These stream types are less powerful than Crail streams. For instance, streams of type InputStream/OutputStream expose a synchronous API and are restricted to on-heap memory. Crail streams, on the other hand, expose an asynchronous API and integrate well with off-heap memory to reduce data copies. By defining custom serialization/deserialization methods, applications can take full advantage of Crail streams during broadcast and shu
 ffle operations. Moreover, serializers dedicated to one particular application type may further exploit information about the specific application data types to achieve a better performance. As we show in the blog, a custom serializer for a sorting application running on key/value objects of a fixed length byte array will not need to store serialization meta data, which reduces the final data size and simplifies the serialization process. 
-</p>
-</div>
-
-<p><br />
-<img src="serializer.png" width="490" align="middle" />
-<br /><br /></p>
-
-<div style="text-align: justify">
-<p>
-Serialization is one important aspect for broadcast and shuffle operations, sorting another, even though specific to shuffling. Sorting directly follows the network fetch phase in a shuffle operation if a key ordering is requested by the application. Again, the Crail shuffle engine works fine with the Spark built-in sorter, but often the shuffle performance can be improved by an application specific sorter. For instance, an application may use the Crail GPU tier to store data. In that case, sorting can be pushed to the GPU, rather than fetching the data into main memory and sorting it on the CPU. In other cases, the application may know the data types in advance and use the information to simplify sorting (e.g. use Radix sort instead TimSort).
-</p>
-<p>
-Application specific serializers and sorters can be defined by setting the following system properties in spark-defaults.conf:
-</p>
-</div>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>spark.crail.shuffle.serializer  
-spark.crail.shuffle.sorter	
-</code></pre></div></div>
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/overview/serializer.png
----------------------------------------------------------------------
diff --git a/content/overview/serializer.png b/content/overview/serializer.png
deleted file mode 100644
index db99abb..0000000
Binary files a/content/overview/serializer.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/overview/shuffle.png
----------------------------------------------------------------------
diff --git a/content/overview/shuffle.png b/content/overview/shuffle.png
deleted file mode 100644
index 761b964..0000000
Binary files a/content/overview/shuffle.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/overview/tiering.png
----------------------------------------------------------------------
diff --git a/content/overview/tiering.png b/content/overview/tiering.png
deleted file mode 100644
index b131f59..0000000
Binary files a/content/overview/tiering.png and /dev/null differ


[04/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/terasort_namenode_iops.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/terasort_namenode_iops.svg b/content/img/blog/crail-metadata/terasort_namenode_iops.svg
deleted file mode 100644
index 573c583..0000000
--- a/content/img/blog/crail-metadata/terasort_namenode_iops.svg
+++ /dev/null
@@ -1,583 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,223.2 L606.3,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,223.2 L97.6,223.2 M606.3,223.2 L594.3,223.2  '/>	<g transform="translate(74.4,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,177.6 L606.3,177.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,177.6 L97.6,177.6 M606.3,177.6 L594.3,177.6  '/>	<g transform="translate(74.4,183.6)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,132.0 L606.3,132.0  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,132.0 L97.6,132.0 M606.3,132.0 L594.3,132.0  '/>	<g transform="translate(74.4,138.0)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,86.4 L291.9,86.4 M595.1,86.4 L606.3,86.4  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,86.4 L97.6,86.4 M606.3,86.4 L594.3,86.4  '/>	<g transform="translate(74.4,92.4)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 15</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,40.7 L291.9,40.7 M595.1,40.7 L606.3,40.7  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,40.7 L97.6,40.7 M606.3,40.7 L594.3,40.7  '/>	<g transform="translate(74.4,46.7)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,223.2 L85.6,211.2 M85.6,22.5 L85.6,34.5  '/>	<g transform="translate(85.6,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M143.5,223.2 L143.5,211.2 M143.5,22.5 L143.5,34.5  '/>	<g transform="translate(143.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M201.3,223.2 L201.3,211.2 M201.3,22.5 L201.3,34.5  '/>	<g transform="translate(201.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M259.2,223.2 L259.2,211.2 M259.2,22.5 L259.2,34.5  '/>	<g transform="translate(259.2,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 15</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M317.0,223.2 L317.0,211.2 M317.0,22.5 L317.0,34.5  '/>	<g transform="translate(317.0,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M374.9,223.2 L374.9,211.2 M374.9,22.5 L374.9,34.5  '/>	<g transform="translate(374.9,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 25</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M432.7,223.2 L432.7,211.2 M432.7,22.5 L432.7,34.5  '/>	<g transform="translate(432.7,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M490.6,223.2 L490.6,211.2 M490.6,22.5 L490.6,34.5  '/>	<g transform="translate(490.6,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 35</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M548.4,223.2 L548.4,211.2 M548.4,22.5 L548.4,34.5  '/>	<g transform="translate(548.4,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M606.3,223.2 L606.3,211.2 M606.3,22.5 L606.3,34.5  '/>	<g transform="translate(606.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 45</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L85.6,223.2 L606.3,223.2 L606.3,22.5 L85.6,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS at namenode [millions]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(345.9,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Elapsed time of TeraSort run [s]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>TeraSort 4 clients</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,52.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >TeraSort 4 clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '527.1,52.5 583.9,52.5 583.9,40.5 527.1,40.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M527.1,52.5 L583.9,52.5 L583.9,40.5 L527.1,40.5 L527.1,52.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '94.3,223.2 95.5,223.2 95.5,223.1 94.3,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M94.3,223.2 L95.4,223.2 L94.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '105.8,223.2 107.1,223.2 107.1,222.9 105.8,222.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M105.8,223.2 L105.8,223.0 L107.0,223.0 L107.0,223.2 L105.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '117.4,223.2 118.7,223.2 118.7,223.1 117.4,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M117.4,223.2 L118.6,223.2 L117.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '140.6,223.2 141.8,223.2 141.8,223.1 140.6,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M140.6,223.2 L141.7,223.2 L140.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '152.1,223.2 153.4,223.2 153.4,223.1 152.1,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M152.1,223.2 L153.3,223.2 L152.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '163.7,223.2 165.0,223.2 165.0,223.0 163.7,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M163.7,223.2 L163.7,223.1 L164.9,223.1 L164.9,223.2 L163.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '175.3,223.2 176.5,223.2 176.5,222.9 175.3,222.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M175.3,223.2 L175.3,223.0 L176.4,223.0 L176.4,223.2 L175.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '186.8,223.2 188.1,223.2 188.1,222.8 186.8,222.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M186.8,223.2 L186.8,222.9 L188.0,222.9 L188.0,223.2 L186.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '198.4,223.2 199.7,223.2 199.7,222.8 198.4,222.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M198.4,223.2 L198.4,222.9 L199.6,222.9 L199.6,223.2 L198.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '210.0,223.2 211.2,223.2 211.2,222.8 210.0,222.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M210.0,223.2 L210.0,222.9 L211.1,222.9 L211.1,223.2 L210.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '221.6,223.2 222.8,223.2 222.8,222.9 221.6,222.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M221.6,223.2 L221.6,223.0 L222.7,223.0 L222.7,223.2 L221.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '233.1,223.2 234.4,223.2 234.4,222.9 233.1,222.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M233.1,223.2 L233.1,223.0 L234.3,223.0 L234.3,223.2 L233.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '244.7,223.2 246.0,223.2 246.0,222.9 244.7,222.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M244.7,223.2 L244.7,223.0 L245.9,223.0 L245.9,223.2 L244.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '256.3,223.2 257.5,223.2 257.5,223.0 256.3,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M256.3,223.2 L256.3,223.1 L257.4,223.1 L257.4,223.2 L256.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '267.8,223.2 269.1,223.2 269.1,223.0 267.8,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M267.8,223.2 L267.8,223.1 L269.0,223.1 L269.0,223.2 L267.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '279.4,223.2 280.7,223.2 280.7,223.1 279.4,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M279.4,223.2 L280.6,223.2 L279.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '302.6,223.2 303.8,223.2 303.8,223.0 302.6,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M302.6,223.2 L302.6,223.1 L303.7,223.1 L303.7,223.2 L302.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '314.1,223.2 315.4,223.2 315.4,223.1 314.1,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M314.1,223.2 L315.3,223.2 L314.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '325.7,223.2 327.0,223.2 327.0,223.0 325.7,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M325.7,223.2 L325.7,223.1 L326.9,223.1 L326.9,223.2 L325.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '337.3,223.2 338.5,223.2 338.5,223.1 337.3,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M337.3,223.2 L338.4,223.2 L337.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '348.8,223.2 350.1,223.2 350.1,223.0 348.8,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M348.8,223.2 L348.8,223.1 L350.0,223.1 L350.0,223.2 L348.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '360.4,223.2 361.7,223.2 361.7,223.1 360.4,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M360.4,223.2 L361.6,223.2 L360.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '372.0,223.2 373.2,223.2 373.2,223.1 372.0,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M372.0,223.2 L373.1,223.2 L372.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '383.6,223.2 384.8,223.2 384.8,223.0 383.6,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M383.6,223.2 L383.6,223.1 L384.7,223.1 L384.7,223.2 L383.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '395.1,223.2 396.4,223.2 396.4,223.1 395.1,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M395.1,223.2 L396.3,223.2 L395.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '406.7,223.2 408.0,223.2 408.0,223.0 406.7,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M406.7,223.2 L406.7,223.1 L407.9,223.1 L407.9,223.2 L406.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '418.3,223.2 419.5,223.2 419.5,223.1 418.3,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M418.3,223.2 L419.4,223.2 L418.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '429.8,223.2 431.1,223.2 431.1,223.0 429.8,223.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M429.8,223.2 L429.8,223.1 L431.0,223.1 L431.0,223.2 L429.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '441.4,223.2 442.7,223.2 442.7,223.1 441.4,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M441.4,223.2 L442.6,223.2 L441.4,223.2 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>TeraSort 8 clients</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,76.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >TeraSort 8 clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '527.1,76.5 583.9,76.5 583.9,64.5 527.1,64.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M527.1,76.5 L583.9,76.5 L583.9,64.5 L527.1,64.5 L527.1,76.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '85.6,223.2 86.3,223.2 86.3,223.1 85.6,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M85.6,223.2 L86.2,223.2 L85.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '96.6,223.2 97.8,223.2 97.8,223.1 96.6,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M96.6,223.2 L97.7,223.2 L96.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '108.2,223.2 109.4,223.2 109.4,222.7 108.2,222.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M108.2,223.2 L108.2,222.8 L109.3,222.8 L109.3,223.2 L108.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '119.7,223.2 121.0,223.2 121.0,223.1 119.7,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M119.7,223.2 L120.9,223.2 L119.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '131.3,223.2 132.6,223.2 132.6,223.1 131.3,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M131.3,223.2 L132.5,223.2 L131.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '142.9,223.2 144.1,223.2 144.1,223.1 142.9,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M142.9,223.2 L144.0,223.2 L142.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '154.4,223.2 155.7,223.2 155.7,223.1 154.4,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M154.4,223.2 L155.6,223.2 L154.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '166.0,223.2 167.3,223.2 167.3,223.1 166.0,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M166.0,223.2 L167.2,223.2 L166.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '177.6,223.2 178.8,223.2 178.8,222.9 177.6,222.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M177.6,223.2 L177.6,223.0 L178.7,223.0 L178.7,223.2 L177.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '189.2,223.2 190.4,223.2 190.4,222.7 189.2,222.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M189.2,223.2 L189.2,222.8 L190.3,222.8 L190.3,223.2 L189.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '200.7,223.2 202.0,223.2 202.0,222.5 200.7,222.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M200.7,223.2 L200.7,222.6 L201.9,222.6 L201.9,223.2 L200.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '212.3,223.2 213.6,223.2 213.6,222.7 212.3,222.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M212.3,223.2 L212.3,222.8 L213.5,222.8 L213.5,223.2 L212.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '223.9,223.2 225.1,223.2 225.1,222.5 223.9,222.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M223.9,223.2 L223.9,222.6 L225.0,222.6 L225.0,223.2 L223.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '235.4,223.2 236.7,223.2 236.7,222.8 235.4,222.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M235.4,223.2 L235.4,222.9 L236.6,222.9 L236.6,223.2 L235.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '247.0,223.2 248.3,223.2 248.3,222.7 247.0,222.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M247.0,223.2 L247.0,222.8 L248.2,222.8 L248.2,223.2 L247.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '258.6,223.2 259.8,223.2 259.8,222.7 258.6,222.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M258.6,223.2 L258.6,222.8 L259.7,222.8 L259.7,223.2 L258.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '270.2,223.2 271.4,223.2 271.4,222.8 270.2,222.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M270.2,223.2 L270.2,222.9 L271.3,222.9 L271.3,223.2 L270.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '281.7,223.2 283.0,223.2 283.0,222.9 281.7,222.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M281.7,223.2 L281.7,223.0 L282.9,223.0 L282.9,223.2 L281.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '293.3,223.2 294.6,223.2 294.6,223.0 293.3,223.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M293.3,223.2 L293.3,223.1 L294.5,223.1 L294.5,223.2 L293.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '304.9,223.2 306.1,223.2 306.1,222.8 304.9,222.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M304.9,223.2 L304.9,222.9 L306.0,222.9 L306.0,223.2 L304.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '316.4,223.2 317.7,223.2 317.7,223.1 316.4,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M316.4,223.2 L317.6,223.2 L316.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '328.0,223.2 329.3,223.2 329.3,223.1 328.0,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M328.0,223.2 L329.2,223.2 L328.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '339.6,223.2 340.8,223.2 340.8,222.9 339.6,222.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M339.6,223.2 L339.6,223.0 L340.7,223.0 L340.7,223.2 L339.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '351.2,223.2 352.4,223.2 352.4,223.0 351.2,223.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M351.2,223.2 L351.2,223.1 L352.3,223.1 L352.3,223.2 L351.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '362.7,223.2 364.0,223.2 364.0,223.1 362.7,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M362.7,223.2 L363.9,223.2 L362.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '374.3,223.2 375.6,223.2 375.6,222.9 374.3,222.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M374.3,223.2 L374.3,223.0 L375.5,223.0 L375.5,223.2 L374.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '385.9,223.2 387.1,223.2 387.1,222.9 385.9,222.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M385.9,223.2 L385.9,223.0 L387.0,223.0 L387.0,223.2 L385.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '397.4,223.2 398.7,223.2 398.7,223.1 397.4,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M397.4,223.2 L398.6,223.2 L397.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '409.0,223.2 410.3,223.2 410.3,222.9 409.0,222.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M409.0,223.2 L409.0,223.0 L410.2,223.0 L410.2,223.2 L409.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '420.6,223.2 421.8,223.2 421.8,223.0 420.6,223.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M420.6,223.2 L420.6,223.1 L421.7,223.1 L421.7,223.2 L420.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '432.2,223.2 433.4,223.2 433.4,223.1 432.2,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M432.2,223.2 L433.3,223.2 L432.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '443.7,223.2 445.0,223.2 445.0,222.9 443.7,222.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M443.7,223.2 L443.7,223.0 L444.9,223.0 L444.9,223.2 L443.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '455.3,223.2 456.6,223.2 456.6,223.0 455.3,223.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M455.3,223.2 L455.3,223.1 L456.5,223.1 L456.5,223.2 L455.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '466.9,223.2 468.1,223.2 468.1,223.1 466.9,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M466.9,223.2 L468.0,223.2 L466.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '478.4,223.2 479.7,223.2 479.7,223.0 478.4,223.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M478.4,223.2 L478.4,223.1 L479.6,223.1 L479.6,223.2 L478.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '490.0,223.2 491.3,223.2 491.3,223.1 490.0,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M490.0,223.2 L491.2,223.2 L490.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '501.6,223.2 502.8,223.2 502.8,223.1 501.6,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M501.6,223.2 L502.7,223.2 L501.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '513.2,223.2 514.4,223.2 514.4,223.1 513.2,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M513.2,223.2 L514.3,223.2 L513.2,223.2 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>TeraSort 12 clients</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,100.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >TeraSort 12 clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '527.1,100.5 583.9,100.5 583.9,88.5 527.1,88.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M527.1,100.5 L583.9,100.5 L583.9,88.5 L527.1,88.5 L527.1,100.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '87.3,223.2 88.6,223.2 88.6,223.1 87.3,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M87.3,223.2 L88.5,223.2 L87.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '98.9,223.2 100.2,223.2 100.2,223.1 98.9,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M98.9,223.2 L100.1,223.2 L98.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '110.5,223.2 111.7,223.2 111.7,223.1 110.5,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M110.5,223.2 L111.6,223.2 L110.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '122.0,223.2 123.3,223.2 123.3,222.4 122.0,222.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M122.0,223.2 L122.0,222.5 L123.2,222.5 L123.2,223.2 L122.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '133.6,223.2 134.9,223.2 134.9,222.8 133.6,222.8 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M133.6,223.2 L133.6,222.9 L134.8,222.9 L134.8,223.2 L133.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '145.2,223.2 146.4,223.2 146.4,223.1 145.2,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M145.2,223.2 L146.3,223.2 L145.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '156.8,223.2 158.0,223.2 158.0,223.1 156.8,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M156.8,223.2 L157.9,223.2 L156.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '168.3,223.2 169.6,223.2 169.6,223.1 168.3,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M168.3,223.2 L169.5,223.2 L168.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '179.9,223.2 181.2,223.2 181.2,223.1 179.9,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M179.9,223.2 L181.1,223.2 L179.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '191.5,223.2 192.7,223.2 192.7,223.0 191.5,223.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M191.5,223.2 L191.5,223.1 L192.6,223.1 L192.6,223.2 L191.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '203.0,223.2 204.3,223.2 204.3,222.9 203.0,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M203.0,223.2 L203.0,223.0 L204.2,223.0 L204.2,223.2 L203.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '214.6,223.2 215.9,223.2 215.9,222.8 214.6,222.8 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M214.6,223.2 L214.6,222.9 L215.8,222.9 L215.8,223.2 L214.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '226.2,223.2 227.4,223.2 227.4,222.4 226.2,222.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M226.2,223.2 L226.2,222.5 L227.3,222.5 L227.3,223.2 L226.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '237.8,223.2 239.0,223.2 239.0,222.5 237.8,222.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M237.8,223.2 L237.8,222.6 L238.9,222.6 L238.9,223.2 L237.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '249.3,223.2 250.6,223.2 250.6,222.1 249.3,222.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M249.3,223.2 L249.3,222.2 L250.5,222.2 L250.5,223.2 L249.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '260.9,223.2 262.2,223.2 262.2,222.7 260.9,222.7 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M260.9,223.2 L260.9,222.8 L262.1,222.8 L262.1,223.2 L260.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '272.5,223.2 273.7,223.2 273.7,222.2 272.5,222.2 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M272.5,223.2 L272.5,222.3 L273.6,222.3 L273.6,223.2 L272.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '284.0,223.2 285.3,223.2 285.3,222.5 284.0,222.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M284.0,223.2 L284.0,222.6 L285.2,222.6 L285.2,223.2 L284.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '295.6,223.2 296.9,223.2 296.9,222.5 295.6,222.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M295.6,223.2 L295.6,222.6 L296.8,222.6 L296.8,223.2 L295.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '307.2,223.2 308.4,223.2 308.4,222.3 307.2,222.3 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M307.2,223.2 L307.2,222.4 L308.3,222.4 L308.3,223.2 L307.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '318.8,223.2 320.0,223.2 320.0,222.8 318.8,222.8 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M318.8,223.2 L318.8,222.9 L319.9,222.9 L319.9,223.2 L318.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '330.3,223.2 331.6,223.2 331.6,222.9 330.3,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M330.3,223.2 L330.3,223.0 L331.5,223.0 L331.5,223.2 L330.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '341.9,223.2 343.2,223.2 343.2,222.9 341.9,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M341.9,223.2 L341.9,223.0 L343.1,223.0 L343.1,223.2 L341.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '353.5,223.2 354.7,223.2 354.7,222.9 353.5,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M353.5,223.2 L353.5,223.0 L354.6,223.0 L354.6,223.2 L353.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '365.0,223.2 366.3,223.2 366.3,222.7 365.0,222.7 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M365.0,223.2 L365.0,222.8 L366.2,222.8 L366.2,223.2 L365.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '376.6,223.2 377.9,223.2 377.9,223.0 376.6,223.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M376.6,223.2 L376.6,223.1 L377.8,223.1 L377.8,223.2 L376.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '388.2,223.2 389.4,223.2 389.4,223.1 388.2,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M388.2,223.2 L389.3,223.2 L388.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '399.8,223.2 401.0,223.2 401.0,222.9 399.8,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M399.8,223.2 L399.8,223.0 L400.9,223.0 L400.9,223.2 L399.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '411.3,223.2 412.6,223.2 412.6,222.8 411.3,222.8 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M411.3,223.2 L411.3,222.9 L412.5,222.9 L412.5,223.2 L411.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '422.9,223.2 424.2,223.2 424.2,223.1 422.9,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M422.9,223.2 L424.1,223.2 L422.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '434.5,223.2 435.7,223.2 435.7,223.0 434.5,223.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M434.5,223.2 L434.5,223.1 L435.6,223.1 L435.6,223.2 L434.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '446.0,223.2 447.3,223.2 447.3,222.9 446.0,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M446.0,223.2 L446.0,223.0 L447.2,223.0 L447.2,223.2 L446.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '457.6,223.2 458.9,223.2 458.9,223.0 457.6,223.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M457.6,223.2 L457.6,223.1 L458.8,223.1 L458.8,223.2 L457.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '469.2,223.2 470.4,223.2 470.4,222.9 469.2,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M469.2,223.2 L469.2,223.0 L470.3,223.0 L470.3,223.2 L469.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '480.8,223.2 482.0,223.2 482.0,222.9 480.8,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M480.8,223.2 L480.8,223.0 L481.9,223.0 L481.9,223.2 L480.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '492.3,223.2 493.6,223.2 493.6,223.0 492.3,223.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M492.3,223.2 L492.3,223.1 L493.5,223.1 L493.5,223.2 L492.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '503.9,223.2 505.2,223.2 505.2,222.9 503.9,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M503.9,223.2 L503.9,223.0 L505.1,223.0 L505.1,223.2 L503.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '515.5,223.2 516.7,223.2 516.7,222.9 515.5,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M515.5,223.2 L515.5,223.0 L516.6,223.0 L516.6,223.2 L515.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '527.0,223.2 528.3,223.2 528.3,222.9 527.0,222.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M527.0,223.2 L527.0,223.0 L528.2,223.0 L528.2,223.2 L527.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '538.6,223.2 539.9,223.2 539.9,223.0 538.6,223.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M538.6,223.2 L538.6,223.1 L539.8,223.1 L539.8,223.2 L538.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '550.2,223.2 551.4,223.2 551.4,223.1 550.2,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M550.2,223.2 L551.3,223.2 L550.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '561.8,223.2 563.0,223.2 563.0,223.1 561.8,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M561.8,223.2 L562.9,223.2 L561.8,223.2 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_4" ><title>Single namenode IOPS</title>
-<g fill="none" color="white" stroke="rgb( 55, 126, 184)" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,124.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >Single namenode IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb(255,   0,   0)'  d='M527.1,118.5 L583.9,118.5 M85.6,132.0 L90.9,132.0 L96.1,132.0 L101.4,132.0 L106.6,132.0 L111.9,132.0
-		L117.2,132.0 L122.4,132.0 L127.7,132.0 L132.9,132.0 L138.2,132.0 L143.5,132.0 L148.7,132.0 L154.0,132.0
-		L159.2,132.0 L164.5,132.0 L169.8,132.0 L175.0,132.0 L180.3,132.0 L185.5,132.0 L190.8,132.0 L196.1,132.0
-		L201.3,132.0 L206.6,132.0 L211.8,132.0 L217.1,132.0 L222.3,132.0 L227.6,132.0 L232.9,132.0 L238.1,132.0
-		L243.4,132.0 L248.6,132.0 L253.9,132.0 L259.2,132.0 L264.4,132.0 L269.7,132.0 L274.9,132.0 L280.2,132.0
-		L285.5,132.0 L290.7,132.0 L296.0,132.0 L301.2,132.0 L306.5,132.0 L311.8,132.0 L317.0,132.0 L322.3,132.0
-		L327.5,132.0 L332.8,132.0 L338.1,132.0 L343.3,132.0 L348.6,132.0 L353.8,132.0 L359.1,132.0 L364.4,132.0
-		L369.6,132.0 L374.9,132.0 L380.1,132.0 L385.4,132.0 L390.7,132.0 L395.9,132.0 L401.2,132.0 L406.4,132.0
-		L411.7,132.0 L417.0,132.0 L422.2,132.0 L427.5,132.0 L432.7,132.0 L438.0,132.0 L443.3,132.0 L448.5,132.0
-		L453.8,132.0 L459.0,132.0 L464.3,132.0 L469.6,132.0 L474.8,132.0 L480.1,132.0 L485.3,132.0 L490.6,132.0
-		L495.8,132.0 L501.1,132.0 L506.4,132.0 L511.6,132.0 L516.9,132.0 L522.1,132.0 L527.4,132.0 L532.7,132.0
-		L537.9,132.0 L543.2,132.0 L548.4,132.0 L553.7,132.0 L559.0,132.0 L564.2,132.0 L569.5,132.0 L574.7,132.0
-		L580.0,132.0 L585.3,132.0 L590.5,132.0 L595.8,132.0 L601.0,132.0 L606.3,132.0  '/></g>
-	</g>
-<g fill="none" color="white" stroke="rgb(255,   0,   0)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L85.6,223.2 L606.3,223.2 L606.3,22.5 L85.6,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-nvmf/crail_tiering.png
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-nvmf/crail_tiering.png b/content/img/blog/crail-nvmf/crail_tiering.png
deleted file mode 100644
index 87e78cc..0000000
Binary files a/content/img/blog/crail-nvmf/crail_tiering.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-nvmf/latency.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-nvmf/latency.svg b/content/img/blog/crail-nvmf/latency.svg
deleted file mode 100644
index 9d204e6..0000000
--- a/content/img/blog/crail-nvmf/latency.svg
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="280" 
- viewBox="0 0 640 280"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="280" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,244.0 L615.0,244.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,244.0 L80.9,244.0 M615.0,244.0 L606.0,244.0  h0.01'/>	<g transform="translate(63.6,248.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,207.6 L615.0,207.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,207.6 L80.9,207.6 M615.0,207.6 L606.0,207.6  h0.01'/>	<g transform="translate(63.6,212.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,171.3 L615.0,171.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,171.3 L80.9,171.3 M615.0,171.3 L606.0,171.3  h0.01'/>	<g transform="translate(63.6,175.8)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,134.9 L615.0,134.9  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,134.9 L80.9,134.9 M615.0,134.9 L606.0,134.9  h0.01'/>	<g transform="translate(63.6,139.4)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,98.5 L615.0,98.5  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,98.5 L80.9,98.5 M615.0,98.5 L606.0,98.5  h0.01'/>	<g transform="translate(63.6,103.0)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,62.2 L80.2,62.2 M313.3,62.2 L615.0,62.2  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,62.2 L80.9,62.2 M615.0,62.2 L606.0,62.2  h0.01'/>	<g transform="translate(63.6,66.7)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,25.8 L80.2,25.8 M313.3,25.8 L615.0,25.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,25.8 L80.9,25.8 M615.0,25.8 L606.0,25.8  h0.01'/>	<g transform="translate(63.6,30.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 120</text>
-	</g>
-	<path stroke='black'  d='M230.3,244.0 L230.3,235.0 M230.3,16.7 L230.3,25.7  h0.01'/>	<g transform="translate(230.3,266.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>512B</text>
-	</g>
-	<path stroke='black'  d='M456.6,244.0 L456.6,235.0 M456.6,16.7 L456.6,25.7  h0.01'/>	<g transform="translate(456.6,266.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>4KB</text>
-	</g>
-	<path stroke='black'  d='M71.9,16.7 L71.9,244.0 L615.0,244.0 L615.0,16.7 L71.9,16.7 Z  h0.01'/>	<g transform="translate(17.6,130.4) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Latency [us]</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(254.5,39.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>SPDK - local</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '262.8,39.2 305.0,39.2 305.0,30.2 262.8,30.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M262.8,39.2 L305.0,39.2 L305.0,30.2 L262.8,30.2 L262.8,39.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '162.4,244.0 207.8,244.0 207.8,137.9 162.4,137.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M162.4,244.0 L162.4,138.0 L207.7,138.0 L207.7,244.0 L162.4,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '388.7,244.0 434.1,244.0 434.1,133.5 388.7,133.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M388.7,244.0 L388.7,133.6 L434.0,133.6 L434.0,244.0 L388.7,244.0 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(254.5,57.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>SPDK - NVMf</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '262.8,57.2 305.0,57.2 305.0,48.2 262.8,48.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M262.8,57.2 L305.0,57.2 L305.0,48.2 L262.8,48.2 L262.8,57.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '207.7,244.0 253.0,244.0 253.0,129.1 207.7,129.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M207.7,244.0 L207.7,129.2 L252.9,129.2 L252.9,244.0 L207.7,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '434.0,244.0 479.3,244.0 479.3,122.7 434.0,122.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M434.0,244.0 L434.0,122.8 L479.2,122.8 L479.2,244.0 L434.0,244.0 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(254.5,75.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail (lookup &amp; read)</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '262.8,75.2 305.0,75.2 305.0,66.2 262.8,66.2 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M262.8,75.2 L305.0,75.2 L305.0,66.2 L262.8,66.2 L262.8,75.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '252.9,244.0 298.3,244.0 298.3,114.5 252.9,114.5 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M252.9,244.0 L252.9,114.6 L298.2,114.6 L298.2,244.0 L252.9,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '479.2,244.0 524.6,244.0 524.6,105.5 479.2,105.5 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M479.2,244.0 L479.2,105.6 L524.5,105.6 L524.5,244.0 L479.2,244.0 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_4" ><title>gnuplot_plot_4</title>
-<g style="fill:none; color:cyan; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(254.5,93.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail (lookup only)</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '262.8,93.2 305.0,93.2 305.0,84.2 262.8,84.2 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M262.8,93.2 L305.0,93.2 L305.0,84.2 L262.8,84.2 L262.8,93.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '260.9,244.0 290.4,244.0 290.4,231.5 260.9,231.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M260.9,244.0 L260.9,231.6 L290.3,231.6 L290.3,244.0 L260.9,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '487.1,244.0 516.7,244.0 516.7,231.5 487.1,231.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M487.1,244.0 L487.1,231.6 L516.6,231.6 L516.6,244.0 L487.1,244.0 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb( 55, 126, 184); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,16.7 L71.9,244.0 L615.0,244.0 L615.0,16.7 L71.9,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-nvmf/latency2.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-nvmf/latency2.svg b/content/img/blog/crail-nvmf/latency2.svg
deleted file mode 100644
index cd43464..0000000
--- a/content/img/blog/crail-nvmf/latency2.svg
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="280" 
- viewBox="0 0 640 280"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="280" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,244.0 L615.0,244.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,244.0 L80.9,244.0 M615.0,244.0 L606.0,244.0  h0.01'/>	<g transform="translate(63.6,248.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,200.7 L615.0,200.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,200.7 L80.9,200.7 M615.0,200.7 L606.0,200.7  h0.01'/>	<g transform="translate(63.6,205.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,157.4 L615.0,157.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,157.4 L80.9,157.4 M615.0,157.4 L606.0,157.4  h0.01'/>	<g transform="translate(63.6,161.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,114.1 L615.0,114.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,114.1 L80.9,114.1 M615.0,114.1 L606.0,114.1  h0.01'/>	<g transform="translate(63.6,118.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,70.8 L615.0,70.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,70.8 L80.9,70.8 M615.0,70.8 L606.0,70.8  h0.01'/>	<g transform="translate(63.6,75.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,27.5 L80.2,27.5 M238.6,27.5 L615.0,27.5  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,27.5 L80.9,27.5 M615.0,27.5 L606.0,27.5  h0.01'/>	<g transform="translate(63.6,32.0)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-	<path stroke='black'  d='M156.8,244.0 L156.8,235.0 M156.8,16.7 L156.8,25.7  h0.01'/>	<g transform="translate(156.8,266.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>4B</text>
-	</g>
-	<path stroke='black'  d='M326.5,244.0 L326.5,235.0 M326.5,16.7 L326.5,25.7  h0.01'/>	<g transform="translate(326.5,266.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>512B</text>
-	</g>
-	<path stroke='black'  d='M496.2,244.0 L496.2,235.0 M496.2,16.7 L496.2,25.7  h0.01'/>	<g transform="translate(496.2,266.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>4K</text>
-	</g>
-	<path stroke='black'  d='M71.9,16.7 L71.9,244.0 L615.0,244.0 L615.0,16.7 L71.9,16.7 Z  h0.01'/>	<g transform="translate(17.6,130.4) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Latency [us]</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(179.8,39.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail - NVMf</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '188.1,39.2 230.3,39.2 230.3,30.2 188.1,30.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M188.1,39.2 L230.3,39.2 L230.3,30.2 L188.1,30.2 L188.1,39.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '139.8,244.0 173.8,244.0 173.8,91.5 139.8,91.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M139.8,244.0 L139.8,91.6 L173.7,91.6 L173.7,244.0 L139.8,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '309.5,244.0 343.6,244.0 343.6,89.8 309.5,89.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M309.5,244.0 L309.5,89.9 L343.5,89.9 L343.5,244.0 L309.5,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '479.2,244.0 513.3,244.0 513.3,79.1 479.2,79.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M479.2,244.0 L479.2,79.2 L513.2,79.2 L513.2,244.0 L479.2,244.0 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(179.8,57.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail - DRAM</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '188.1,57.2 230.3,57.2 230.3,48.2 188.1,48.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M188.1,57.2 L230.3,57.2 L230.3,48.2 L188.1,48.2 L188.1,57.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '173.7,244.0 207.8,244.0 207.8,219.5 173.7,219.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M173.7,244.0 L173.7,219.6 L207.7,219.6 L207.7,244.0 L173.7,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '343.5,244.0 377.5,244.0 377.5,218.9 343.5,218.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M343.5,244.0 L343.5,219.0 L377.4,219.0 L377.4,244.0 L343.5,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '513.2,244.0 547.2,244.0 547.2,215.8 513.2,215.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M513.2,244.0 L513.2,215.9 L547.1,215.9 L547.1,244.0 L513.2,244.0 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb(255, 127,   0); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,16.7 L71.9,244.0 L615.0,244.0 L615.0,16.7 L71.9,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-nvmf/throughput.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-nvmf/throughput.svg b/content/img/blog/crail-nvmf/throughput.svg
deleted file mode 100644
index cdd85a3..0000000
--- a/content/img/blog/crail-nvmf/throughput.svg
+++ /dev/null
@@ -1,129 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="280" 
- viewBox="0 0 640 280"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="280" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,244.0 L631.6,244.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,244.0 L72.6,244.0 M631.6,244.0 L622.6,244.0  h0.01'/>	<g transform="translate(55.3,248.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text xml:space="preserve">  0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,198.5 L631.6,198.5  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,198.5 L72.6,198.5 M631.6,198.5 L622.6,198.5  h0.01'/>	<g transform="translate(55.3,203.0)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text xml:space="preserve">  1</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,153.1 L631.6,153.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,153.1 L72.6,153.1 M631.6,153.1 L622.6,153.1  h0.01'/>	<g transform="translate(55.3,157.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text xml:space="preserve">  2</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,107.6 L631.6,107.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,107.6 L72.6,107.6 M631.6,107.6 L622.6,107.6  h0.01'/>	<g transform="translate(55.3,112.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text xml:space="preserve">  3</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,62.2 L631.6,62.2  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,62.2 L72.6,62.2 M631.6,62.2 L622.6,62.2  h0.01'/>	<g transform="translate(55.3,66.7)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text xml:space="preserve">  4</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,16.7 L631.6,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,16.7 L72.6,16.7 M631.6,16.7 L622.6,16.7  h0.01'/>	<g transform="translate(55.3,21.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text></text>
-	</g>
-	<path stroke='black'  d='M192.7,244.0 L192.7,235.0 M192.7,16.7 L192.7,25.7  h0.01'/>	<g transform="translate(192.7,266.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Read</text>
-	</g>
-	<path stroke='black'  d='M450.9,244.0 L450.9,235.0 M450.9,16.7 L450.9,25.7  h0.01'/>	<g transform="translate(450.9,266.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Write</text>
-	</g>
-	<path stroke='black'  d='M63.6,16.7 L63.6,244.0 L631.6,244.0 L631.6,16.7 L63.6,16.7 Z  h0.01'/>	<g transform="translate(17.6,130.4) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput [GB/s]</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(564.5,39.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>SPDK</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '572.8,39.2 615.0,39.2 615.0,30.2 572.8,30.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M572.8,39.2 L615.0,39.2 L615.0,30.2 L572.8,30.2 L572.8,39.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '166.9,244.0 218.6,244.0 218.6,97.6 166.9,97.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M166.9,244.0 L166.9,97.7 L218.5,97.7 L218.5,244.0 L166.9,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '425.1,244.0 476.8,244.0 476.8,151.0 425.1,151.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M425.1,244.0 L425.1,151.1 L476.7,151.1 L476.7,244.0 L425.1,244.0 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(564.5,57.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '572.8,57.2 615.0,57.2 615.0,48.2 572.8,48.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M572.8,57.2 L615.0,57.2 L615.0,48.2 L572.8,48.2 L572.8,57.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '218.5,244.0 270.2,244.0 270.2,96.6 218.5,96.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M218.5,244.0 L218.5,96.7 L270.1,96.7 L270.1,244.0 L218.5,244.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '476.7,244.0 528.4,244.0 528.4,149.9 476.7,149.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M476.7,244.0 L476.7,150.0 L528.3,150.0 L528.3,244.0 L476.7,244.0 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb(255, 127,   0); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,16.7 L63.6,244.0 L631.6,244.0 L631.6,16.7 L63.6,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-


[05/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/ramcloud_iops.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/ramcloud_iops.svg b/content/img/blog/crail-metadata/ramcloud_iops.svg
deleted file mode 100644
index 854dfc4..0000000
--- a/content/img/blog/crail-metadata/ramcloud_iops.svg
+++ /dev/null
@@ -1,311 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,223.2 L515.1,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,223.2 L120.0,223.2 M515.1,223.2 L503.1,223.2  '/>	<g transform="translate(96.8,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,196.4 L515.1,196.4  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,196.4 L120.0,196.4 M515.1,196.4 L503.1,196.4  '/>	<g transform="translate(96.8,202.4)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 200</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,169.7 L515.1,169.7  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,169.7 L120.0,169.7 M515.1,169.7 L503.1,169.7  '/>	<g transform="translate(96.8,175.7)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 400</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,142.9 L515.1,142.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,142.9 L120.0,142.9 M515.1,142.9 L503.1,142.9  '/>	<g transform="translate(96.8,148.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 600</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,116.2 L515.1,116.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,116.2 L120.0,116.2 M515.1,116.2 L503.1,116.2  '/>	<g transform="translate(96.8,122.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 800</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,89.4 L515.1,89.4  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,89.4 L120.0,89.4 M515.1,89.4 L503.1,89.4  '/>	<g transform="translate(96.8,95.4)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 1000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,62.6 L178.3,62.6 M503.9,62.6 L515.1,62.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,62.6 L120.0,62.6 M515.1,62.6 L503.1,62.6  '/>	<g transform="translate(96.8,68.6)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 1200</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M108.0,35.9 L178.3,35.9 M503.9,35.9 L515.1,35.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,35.9 L120.0,35.9 M515.1,35.9 L503.1,35.9  '/>	<g transform="translate(96.8,41.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 1400</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,223.2 L108.0,211.2 M108.0,22.5 L108.0,34.5  '/>	<g transform="translate(108.0,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M166.2,223.2 L166.2,211.2 M166.2,22.5 L166.2,34.5  '/>	<g transform="translate(166.2,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M224.3,223.2 L224.3,211.2 M224.3,22.5 L224.3,34.5  '/>	<g transform="translate(224.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M282.5,223.2 L282.5,211.2 M282.5,22.5 L282.5,34.5  '/>	<g transform="translate(282.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M340.6,223.2 L340.6,211.2 M340.6,22.5 L340.6,34.5  '/>	<g transform="translate(340.6,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M398.8,223.2 L398.8,211.2 M398.8,22.5 L398.8,34.5  '/>	<g transform="translate(398.8,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 50</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M456.9,223.2 L456.9,211.2 M456.9,22.5 L456.9,34.5  '/>	<g transform="translate(456.9,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 60</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M515.1,223.2 L515.1,211.2 M515.1,22.5 L515.1,34.5  '/>	<g transform="translate(515.1,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 70</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M515.1,223.2 L503.1,223.2  '/>	<g transform="translate(526.3,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="start">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M515.1,183.1 L503.1,183.1  '/>	<g transform="translate(526.3,189.1)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="start">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M515.1,142.9 L503.1,142.9  '/>	<g transform="translate(526.3,148.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="start">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M515.1,102.8 L503.1,102.8  '/>	<g transform="translate(526.3,108.8)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="start">
-		<text><tspan font-family="Times-Roman" > 60</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M515.1,62.6 L503.1,62.6  '/>	<g transform="translate(526.3,68.6)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="start">
-		<text><tspan font-family="Times-Roman" > 80</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M515.1,22.5 L503.1,22.5  '/>	<g transform="translate(526.3,28.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="start">
-		<text><tspan font-family="Times-Roman" > 100</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,22.5 L108.0,223.2 L515.1,223.2 L515.1,22.5 L108.0,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS [k]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(600.2,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Utilization [%]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(311.5,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Number of clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>RAMCloud IOPS</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(424.7,52.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >RAMCloud IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb(255, 170, 255)'  d='M435.9,46.5 L492.7,46.5 M113.8,194.8 L119.6,176.5 L125.4,155.9 L131.3,139.2 L137.1,123.0 L142.9,108.4
-		L148.7,100.8 L154.5,93.0 L160.3,92.6 L166.2,91.8 L172.0,92.1 L177.8,86.6 L183.6,83.6 L189.4,73.7
-		L195.2,88.7 L201.1,89.3  '/>	<use xlink:href='#gpPt2' transform='translate(113.8,194.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(119.6,176.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(125.4,155.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(131.3,139.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.1,123.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(142.9,108.4) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(148.7,100.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(154.5,93.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.3,92.6) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(166.2,91.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(172.0,92.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(177.8,86.6) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(183.6,83.6) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.4,73.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(195.2,88.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(201.1,89.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(464.3,46.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>Dispatcher utilization</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(424.7,76.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >Dispatcher utilization</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb(255,   0,   0)'  d='M435.9,70.5 L492.7,70.5 M113.8,183.3 L119.6,119.4 L125.4,91.3 L131.3,65.4 L137.1,41.8 L142.9,27.9
-		L148.7,24.1 L154.5,22.9 L160.3,22.7 L166.2,22.5 L172.0,22.5 L177.8,22.5 L183.6,22.5 L189.4,22.5
-		L195.2,22.7 L201.1,22.7  '/>	<use xlink:href='#gpPt2' transform='translate(113.8,183.3) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(119.6,119.4) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(125.4,91.3) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(131.3,65.4) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.1,41.8) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(142.9,27.9) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(148.7,24.1) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(154.5,22.9) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.3,22.7) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(166.2,22.5) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(172.0,22.5) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(177.8,22.5) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(183.6,22.5) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.4,22.5) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(195.2,22.7) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(201.1,22.7) scale(3.00)' color='rgb(255,   0,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(464.3,70.5) scale(3.00)' color='rgb(255,   0,   0)'/>
-</g>
-	</g>
-<g fill="none" color="white" stroke="rgb(255,   0,   0)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M108.0,22.5 L108.0,223.2 L515.1,223.2 L515.1,22.5 L108.0,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/rpc.png
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/rpc.png b/content/img/blog/crail-metadata/rpc.png
deleted file mode 100644
index 28ed0ee..0000000
Binary files a/content/img/blog/crail-metadata/rpc.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/terasort_iops.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/terasort_iops.svg b/content/img/blog/crail-metadata/terasort_iops.svg
deleted file mode 100644
index 0a30c67..0000000
--- a/content/img/blog/crail-metadata/terasort_iops.svg
+++ /dev/null
@@ -1,586 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,223.2 L606.3,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,223.2 L108.8,223.2 M606.3,223.2 L594.3,223.2  '/>	<g transform="translate(85.6,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,189.7 L606.3,189.7  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,189.7 L108.8,189.7 M606.3,189.7 L594.3,189.7  '/>	<g transform="translate(85.6,195.7)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,156.3 L606.3,156.3  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,156.3 L108.8,156.3 M606.3,156.3 L594.3,156.3  '/>	<g transform="translate(85.6,162.3)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,122.8 L606.3,122.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,122.8 L108.8,122.8 M606.3,122.8 L594.3,122.8  '/>	<g transform="translate(85.6,128.8)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 60</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,89.4 L303.1,89.4 M595.1,89.4 L606.3,89.4  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,89.4 L108.8,89.4 M606.3,89.4 L594.3,89.4  '/>	<g transform="translate(85.6,95.4)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 80</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,55.9 L303.1,55.9 M595.1,55.9 L606.3,55.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,55.9 L108.8,55.9 M606.3,55.9 L594.3,55.9  '/>	<g transform="translate(85.6,61.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 100</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,22.5 L606.3,22.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,22.5 L108.8,22.5 M606.3,22.5 L594.3,22.5  '/>	<g transform="translate(85.6,28.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 120</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,223.2 L96.8,211.2 M96.8,22.5 L96.8,34.5  '/>	<g transform="translate(96.8,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M153.4,223.2 L153.4,211.2 M153.4,22.5 L153.4,34.5  '/>	<g transform="translate(153.4,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M210.0,223.2 L210.0,211.2 M210.0,22.5 L210.0,34.5  '/>	<g transform="translate(210.0,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M266.6,223.2 L266.6,211.2 M266.6,22.5 L266.6,34.5  '/>	<g transform="translate(266.6,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 15</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M323.2,223.2 L323.2,211.2 M323.2,22.5 L323.2,34.5  '/>	<g transform="translate(323.2,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M379.9,223.2 L379.9,211.2 M379.9,22.5 L379.9,34.5  '/>	<g transform="translate(379.9,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 25</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M436.5,223.2 L436.5,211.2 M436.5,22.5 L436.5,34.5  '/>	<g transform="translate(436.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M493.1,223.2 L493.1,211.2 M493.1,22.5 L493.1,34.5  '/>	<g transform="translate(493.1,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 35</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M549.7,223.2 L549.7,211.2 M549.7,22.5 L549.7,34.5  '/>	<g transform="translate(549.7,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M606.3,223.2 L606.3,211.2 M606.3,22.5 L606.3,34.5  '/>	<g transform="translate(606.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 45</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,22.5 L96.8,223.2 L606.3,223.2 L606.3,22.5 L96.8,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS at namenode [k]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(351.5,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Elapsed time of TeraSort run [s]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>TeraSort 4 clients</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,52.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >TeraSort 4 clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '527.1,52.5 583.9,52.5 583.9,40.5 527.1,40.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M527.1,52.5 L583.9,52.5 L583.9,40.5 L527.1,40.5 L527.1,52.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '105.3,223.2 106.5,223.2 106.5,222.5 105.3,222.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M105.3,223.2 L105.3,222.6 L106.4,222.6 L106.4,223.2 L105.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '116.6,223.2 117.8,223.2 117.8,194.8 116.6,194.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M116.6,223.2 L116.6,194.9 L117.7,194.9 L117.7,223.2 L116.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '127.9,223.2 129.2,223.2 129.2,223.1 127.9,223.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M127.9,223.2 L129.1,223.2 L127.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '150.6,223.2 151.8,223.2 151.8,220.1 150.6,220.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M150.6,223.2 L150.6,220.2 L151.7,220.2 L151.7,223.2 L150.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '161.9,223.2 163.1,223.2 163.1,217.8 161.9,217.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M161.9,223.2 L161.9,217.9 L163.0,217.9 L163.0,223.2 L161.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '173.2,223.2 174.5,223.2 174.5,200.8 173.2,200.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M173.2,223.2 L173.2,200.9 L174.4,200.9 L174.4,223.2 L173.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '184.5,223.2 185.8,223.2 185.8,180.7 184.5,180.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M184.5,223.2 L184.5,180.8 L185.7,180.8 L185.7,223.2 L184.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '195.9,223.2 197.1,223.2 197.1,176.6 195.9,176.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M195.9,223.2 L195.9,176.7 L197.0,176.7 L197.0,223.2 L195.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '207.2,223.2 208.4,223.2 208.4,170.3 207.2,170.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M207.2,223.2 L207.2,170.4 L208.3,170.4 L208.3,223.2 L207.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '218.5,223.2 219.7,223.2 219.7,175.1 218.5,175.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M218.5,223.2 L218.5,175.2 L219.6,175.2 L219.6,223.2 L218.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '229.8,223.2 231.1,223.2 231.1,186.1 229.8,186.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M229.8,223.2 L229.8,186.2 L231.0,186.2 L231.0,223.2 L229.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '241.2,223.2 242.4,223.2 242.4,188.1 241.2,188.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M241.2,223.2 L241.2,188.2 L242.3,188.2 L242.3,223.2 L241.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '252.5,223.2 253.7,223.2 253.7,185.1 252.5,185.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M252.5,223.2 L252.5,185.2 L253.6,185.2 L253.6,223.2 L252.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '263.8,223.2 265.0,223.2 265.0,203.3 263.8,203.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M263.8,223.2 L263.8,203.4 L264.9,203.4 L264.9,223.2 L263.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '275.1,223.2 276.4,223.2 276.4,209.9 275.1,209.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M275.1,223.2 L275.1,210.0 L276.3,210.0 L276.3,223.2 L275.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '286.4,223.2 287.7,223.2 287.7,216.4 286.4,216.4 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M286.4,223.2 L286.4,216.5 L287.6,216.5 L287.6,223.2 L286.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '309.1,223.2 310.3,223.2 310.3,207.0 309.1,207.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M309.1,223.2 L309.1,207.1 L310.2,207.1 L310.2,223.2 L309.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '320.4,223.2 321.6,223.2 321.6,220.5 320.4,220.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M320.4,223.2 L320.4,220.6 L321.5,220.6 L321.5,223.2 L320.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '331.7,223.2 333.0,223.2 333.0,208.9 331.7,208.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M331.7,223.2 L331.7,209.0 L332.9,209.0 L332.9,223.2 L331.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '343.1,223.2 344.3,223.2 344.3,218.2 343.1,218.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M343.1,223.2 L343.1,218.3 L344.2,218.3 L344.2,223.2 L343.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '354.4,223.2 355.6,223.2 355.6,209.9 354.4,209.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M354.4,223.2 L354.4,210.0 L355.5,210.0 L355.5,223.2 L354.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '365.7,223.2 366.9,223.2 366.9,217.0 365.7,217.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M365.7,223.2 L365.7,217.1 L366.8,217.1 L366.8,223.2 L365.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '377.0,223.2 378.3,223.2 378.3,215.6 377.0,215.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M377.0,223.2 L377.0,215.7 L378.2,215.7 L378.2,223.2 L377.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '388.3,223.2 389.6,223.2 389.6,210.5 388.3,210.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M388.3,223.2 L388.3,210.6 L389.5,210.6 L389.5,223.2 L388.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '399.7,223.2 400.9,223.2 400.9,214.1 399.7,214.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M399.7,223.2 L399.7,214.2 L400.8,214.2 L400.8,223.2 L399.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '411.0,223.2 412.2,223.2 412.2,211.8 411.0,211.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M411.0,223.2 L411.0,211.9 L412.1,211.9 L412.1,223.2 L411.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '422.3,223.2 423.5,223.2 423.5,214.8 422.3,214.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M422.3,223.2 L422.3,214.9 L423.4,214.9 L423.4,223.2 L422.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '433.6,223.2 434.9,223.2 434.9,211.3 433.6,211.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M433.6,223.2 L433.6,211.4 L434.8,211.4 L434.8,223.2 L433.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.010000' points = '445.0,223.2 446.2,223.2 446.2,222.0 445.0,222.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M445.0,223.2 L445.0,222.1 L446.1,222.1 L446.1,223.2 L445.0,223.2 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>TeraSort 8 clients</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,76.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >TeraSort 8 clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '527.1,76.5 583.9,76.5 583.9,64.5 527.1,64.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M527.1,76.5 L583.9,76.5 L583.9,64.5 L527.1,64.5 L527.1,76.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '96.8,223.2 97.5,223.2 97.5,223.1 96.8,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M96.8,223.2 L97.4,223.2 L96.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '107.6,223.2 108.8,223.2 108.8,222.2 107.6,222.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M107.6,223.2 L107.6,222.3 L108.7,222.3 L108.7,223.2 L107.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '118.9,223.2 120.1,223.2 120.1,140.8 118.9,140.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M118.9,223.2 L118.9,140.9 L120.0,140.9 L120.0,223.2 L118.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '130.2,223.2 131.4,223.2 131.4,223.1 130.2,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M130.2,223.2 L131.3,223.2 L130.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '141.5,223.2 142.8,223.2 142.8,223.1 141.5,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M141.5,223.2 L142.7,223.2 L141.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '152.8,223.2 154.1,223.2 154.1,223.1 152.8,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M152.8,223.2 L154.0,223.2 L152.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '164.2,223.2 165.4,223.2 165.4,222.2 164.2,222.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M164.2,223.2 L164.2,222.3 L165.3,222.3 L165.3,223.2 L164.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '175.5,223.2 176.7,223.2 176.7,217.1 175.5,217.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M175.5,223.2 L175.5,217.2 L176.6,217.2 L176.6,223.2 L175.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '186.8,223.2 188.0,223.2 188.0,177.6 186.8,177.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M186.8,223.2 L186.8,177.7 L187.9,177.7 L187.9,223.2 L186.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '198.1,223.2 199.4,223.2 199.4,152.4 198.1,152.4 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M198.1,223.2 L198.1,152.5 L199.3,152.5 L199.3,223.2 L198.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '209.5,223.2 210.7,223.2 210.7,111.7 209.5,111.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M209.5,223.2 L209.5,111.8 L210.6,111.8 L210.6,223.2 L209.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '220.8,223.2 222.0,223.2 222.0,145.5 220.8,145.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M220.8,223.2 L220.8,145.6 L221.9,145.6 L221.9,223.2 L220.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '232.1,223.2 233.3,223.2 233.3,116.1 232.1,116.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M232.1,223.2 L232.1,116.2 L233.2,116.2 L233.2,223.2 L232.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '243.4,223.2 244.7,223.2 244.7,169.6 243.4,169.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M243.4,223.2 L243.4,169.7 L244.6,169.7 L244.6,223.2 L243.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '254.7,223.2 256.0,223.2 256.0,158.3 254.7,158.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M254.7,223.2 L254.7,158.4 L255.9,158.4 L255.9,223.2 L254.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '266.1,223.2 267.3,223.2 267.3,154.7 266.1,154.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M266.1,223.2 L266.1,154.8 L267.2,154.8 L267.2,223.2 L266.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '277.4,223.2 278.6,223.2 278.6,162.2 277.4,162.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M277.4,223.2 L277.4,162.3 L278.5,162.3 L278.5,223.2 L277.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '288.7,223.2 289.9,223.2 289.9,187.7 288.7,187.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M288.7,223.2 L288.7,187.8 L289.8,187.8 L289.8,223.2 L288.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '300.0,223.2 301.3,223.2 301.3,210.5 300.0,210.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M300.0,223.2 L300.0,210.6 L301.2,210.6 L301.2,223.2 L300.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '311.4,223.2 312.6,223.2 312.6,170.1 311.4,170.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M311.4,223.2 L311.4,170.2 L312.5,170.2 L312.5,223.2 L311.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '322.7,223.2 323.9,223.2 323.9,217.6 322.7,217.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M322.7,223.2 L322.7,217.7 L323.8,217.7 L323.8,223.2 L322.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '334.0,223.2 335.2,223.2 335.2,223.1 334.0,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M334.0,223.2 L335.1,223.2 L334.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '345.3,223.2 346.6,223.2 346.6,185.6 345.3,185.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M345.3,223.2 L345.3,185.7 L346.5,185.7 L346.5,223.2 L345.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '356.6,223.2 357.9,223.2 357.9,199.9 356.6,199.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M356.6,223.2 L356.6,200.0 L357.8,200.0 L357.8,223.2 L356.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '368.0,223.2 369.2,223.2 369.2,222.1 368.0,222.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M368.0,223.2 L368.0,222.2 L369.1,222.2 L369.1,223.2 L368.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '379.3,223.2 380.5,223.2 380.5,191.3 379.3,191.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M379.3,223.2 L379.3,191.4 L380.4,191.4 L380.4,223.2 L379.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '390.6,223.2 391.8,223.2 391.8,195.5 390.6,195.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M390.6,223.2 L390.6,195.6 L391.7,195.6 L391.7,223.2 L390.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '401.9,223.2 403.2,223.2 403.2,220.6 401.9,220.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M401.9,223.2 L401.9,220.7 L403.1,220.7 L403.1,223.2 L401.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '413.3,223.2 414.5,223.2 414.5,188.9 413.3,188.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M413.3,223.2 L413.3,189.0 L414.4,189.0 L414.4,223.2 L413.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '424.6,223.2 425.8,223.2 425.8,198.4 424.6,198.4 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M424.6,223.2 L424.6,198.5 L425.7,198.5 L425.7,223.2 L424.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '435.9,223.2 437.1,223.2 437.1,214.9 435.9,214.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M435.9,223.2 L435.9,215.0 L437.0,215.0 L437.0,223.2 L435.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '447.2,223.2 448.5,223.2 448.5,188.0 447.2,188.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M447.2,223.2 L447.2,188.1 L448.4,188.1 L448.4,223.2 L447.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '458.5,223.2 459.8,223.2 459.8,204.0 458.5,204.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M458.5,223.2 L458.5,204.1 L459.7,204.1 L459.7,223.2 L458.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '469.9,223.2 471.1,223.2 471.1,217.5 469.9,217.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M469.9,223.2 L469.9,217.6 L471.0,217.6 L471.0,223.2 L469.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '481.2,223.2 482.4,223.2 482.4,210.5 481.2,210.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M481.2,223.2 L481.2,210.6 L482.3,210.6 L482.3,223.2 L481.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '492.5,223.2 493.7,223.2 493.7,223.0 492.5,223.0 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M492.5,223.2 L492.5,223.1 L493.6,223.1 L493.6,223.2 L492.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '503.8,223.2 505.1,223.2 505.1,223.1 503.8,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M503.8,223.2 L505.0,223.2 L503.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.010000' points = '515.2,223.2 516.4,223.2 516.4,223.1 515.2,223.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M515.2,223.2 L516.3,223.2 L515.2,223.2 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>TeraSort 12 clients</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,100.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >TeraSort 12 clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '527.1,100.5 583.9,100.5 583.9,88.5 527.1,88.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M527.1,100.5 L583.9,100.5 L583.9,88.5 L527.1,88.5 L527.1,100.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '98.5,223.2 99.7,223.2 99.7,223.1 98.5,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M98.5,223.2 L99.6,223.2 L98.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '109.8,223.2 111.1,223.2 111.1,223.1 109.8,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M109.8,223.2 L111.0,223.2 L109.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '121.1,223.2 122.4,223.2 122.4,221.8 121.1,221.8 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M121.1,223.2 L121.1,221.9 L122.3,221.9 L122.3,223.2 L121.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '132.5,223.2 133.7,223.2 133.7,87.4 132.5,87.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M132.5,223.2 L132.5,87.5 L133.6,87.5 L133.6,223.2 L132.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '143.8,223.2 145.0,223.2 145.0,173.8 143.8,173.8 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M143.8,223.2 L143.8,173.9 L144.9,173.9 L144.9,223.2 L143.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '155.1,223.2 156.3,223.2 156.3,223.1 155.1,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M155.1,223.2 L156.2,223.2 L155.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '166.4,223.2 167.7,223.2 167.7,223.1 166.4,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M166.4,223.2 L167.6,223.2 L166.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '177.8,223.2 179.0,223.2 179.0,223.1 177.8,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M177.8,223.2 L178.9,223.2 L177.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '189.1,223.2 190.3,223.2 190.3,223.1 189.1,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M189.1,223.2 L190.2,223.2 L189.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '200.4,223.2 201.6,223.2 201.6,205.1 200.4,205.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M200.4,223.2 L200.4,205.2 L201.5,205.2 L201.5,223.2 L200.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '211.7,223.2 213.0,223.2 213.0,188.4 211.7,188.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M211.7,223.2 L211.7,188.5 L212.9,188.5 L212.9,223.2 L211.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '223.0,223.2 224.3,223.2 224.3,168.4 223.0,168.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M223.0,223.2 L223.0,168.5 L224.2,168.5 L224.2,223.2 L223.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '234.4,223.2 235.6,223.2 235.6,96.5 234.4,96.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M234.4,223.2 L234.4,96.6 L235.5,96.6 L235.5,223.2 L234.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '245.7,223.2 246.9,223.2 246.9,120.9 245.7,120.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M245.7,223.2 L245.7,121.0 L246.8,121.0 L246.8,223.2 L245.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '257.0,223.2 258.2,223.2 258.2,46.5 257.0,46.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M257.0,223.2 L257.0,46.6 L258.1,46.6 L258.1,223.2 L257.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '268.3,223.2 269.6,223.2 269.6,148.0 268.3,148.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M268.3,223.2 L268.3,148.1 L269.5,148.1 L269.5,223.2 L268.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '279.7,223.2 280.9,223.2 280.9,61.9 279.7,61.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M279.7,223.2 L279.7,62.0 L280.8,62.0 L280.8,223.2 L279.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '291.0,223.2 292.2,223.2 292.2,108.4 291.0,108.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M291.0,223.2 L291.0,108.5 L292.1,108.5 L292.1,223.2 L291.0,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '302.3,223.2 303.5,223.2 303.5,111.3 302.3,111.3 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M302.3,223.2 L302.3,111.4 L303.4,111.4 L303.4,223.2 L302.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '313.6,223.2 314.9,223.2 314.9,85.2 313.6,85.2 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M313.6,223.2 L313.6,85.3 L314.8,85.3 L314.8,223.2 L313.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '324.9,223.2 326.2,223.2 326.2,166.4 324.9,166.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M324.9,223.2 L324.9,166.5 L326.1,166.5 L326.1,223.2 L324.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '336.3,223.2 337.5,223.2 337.5,195.4 336.3,195.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M336.3,223.2 L336.3,195.5 L337.4,195.5 L337.4,223.2 L336.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '347.6,223.2 348.8,223.2 348.8,194.1 347.6,194.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M347.6,223.2 L347.6,194.2 L348.7,194.2 L348.7,223.2 L347.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '358.9,223.2 360.1,223.2 360.1,185.0 358.9,185.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M358.9,223.2 L358.9,185.1 L360.0,185.1 L360.0,223.2 L358.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '370.2,223.2 371.5,223.2 371.5,141.6 370.2,141.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M370.2,223.2 L370.2,141.7 L371.4,141.7 L371.4,223.2 L370.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '381.6,223.2 382.8,223.2 382.8,208.1 381.6,208.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M381.6,223.2 L381.6,208.2 L382.7,208.2 L382.7,223.2 L381.6,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '392.9,223.2 394.1,223.2 394.1,223.1 392.9,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M392.9,223.2 L394.0,223.2 L392.9,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '404.2,223.2 405.4,223.2 405.4,190.1 404.2,190.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M404.2,223.2 L404.2,190.2 L405.3,190.2 L405.3,223.2 L404.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '415.5,223.2 416.8,223.2 416.8,161.5 415.5,161.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M415.5,223.2 L415.5,161.6 L416.7,161.6 L416.7,223.2 L415.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '426.8,223.2 428.1,223.2 428.1,220.1 426.8,220.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M426.8,223.2 L426.8,220.2 L428.0,220.2 L428.0,223.2 L426.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '438.2,223.2 439.4,223.2 439.4,196.3 438.2,196.3 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M438.2,223.2 L438.2,196.4 L439.3,196.4 L439.3,223.2 L438.2,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '449.5,223.2 450.7,223.2 450.7,177.4 449.5,177.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M449.5,223.2 L449.5,177.5 L450.6,177.5 L450.6,223.2 L449.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '460.8,223.2 462.0,223.2 462.0,198.1 460.8,198.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M460.8,223.2 L460.8,198.2 L461.9,198.2 L461.9,223.2 L460.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '472.1,223.2 473.4,223.2 473.4,185.5 472.1,185.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M472.1,223.2 L472.1,185.6 L473.3,185.6 L473.3,223.2 L472.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '483.5,223.2 484.7,223.2 484.7,182.5 483.5,182.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M483.5,223.2 L483.5,182.6 L484.6,182.6 L484.6,223.2 L483.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '494.8,223.2 496.0,223.2 496.0,198.0 494.8,198.0 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M494.8,223.2 L494.8,198.1 L495.9,198.1 L495.9,223.2 L494.8,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '506.1,223.2 507.3,223.2 507.3,183.1 506.1,183.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M506.1,223.2 L506.1,183.2 L507.2,183.2 L507.2,223.2 L506.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '517.4,223.2 518.7,223.2 518.7,192.4 517.4,192.4 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M517.4,223.2 L517.4,192.5 L518.6,192.5 L518.6,223.2 L517.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '528.7,223.2 530.0,223.2 530.0,189.7 528.7,189.7 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M528.7,223.2 L528.7,189.8 L529.9,189.8 L529.9,223.2 L528.7,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '540.1,223.2 541.3,223.2 541.3,205.9 540.1,205.9 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M540.1,223.2 L540.1,206.0 L541.2,206.0 L541.2,223.2 L540.1,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '551.4,223.2 552.6,223.2 552.6,223.1 551.4,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M551.4,223.2 L552.5,223.2 L551.4,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.010000' points = '562.7,223.2 563.9,223.2 563.9,223.1 562.7,223.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M562.7,223.2 L563.8,223.2 L562.7,223.2 Z  '/></g>
-	</g>
-<g fill="none" color="white" stroke="rgb( 55, 126, 184)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,22.5 L96.8,223.2 L606.3,223.2 L606.3,22.5 L96.8,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-


[02/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/sort/multiread.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/sort/multiread.svg b/content/img/blog/sort/multiread.svg
deleted file mode 100644
index ea189a4..0000000
--- a/content/img/blog/sort/multiread.svg
+++ /dev/null
@@ -1,6547 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="600" height="200" 
- viewBox="0 0 600 200"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="600" height="200" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,142.4 L575.0,142.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,142.4 L80.9,142.4  h0.01'/>	<g transform="translate(63.6,146.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,117.3 L575.0,117.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,117.3 L80.9,117.3  h0.01'/>	<g transform="translate(63.6,121.8)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,92.1 L575.0,92.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,92.1 L80.9,92.1  h0.01'/>	<g transform="translate(63.6,96.6)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,67.0 L575.0,67.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,67.0 L80.9,67.0  h0.01'/>	<g transform="translate(63.6,71.5)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,41.8 L575.0,41.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,41.8 L80.9,41.8  h0.01'/>	<g transform="translate(63.6,46.3)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,16.7 L575.0,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,16.7 L80.9,16.7  h0.01'/>	<g transform="translate(63.6,21.2)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,142.4 L71.9,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,142.4 L71.9,133.4  h0.01'/>	<g transform="translate(71.9,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M150.5,142.4 L150.5,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M150.5,142.4 L150.5,133.4  h0.01'/>	<g transform="translate(150.5,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 1000</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M229.1,142.4 L229.1,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M229.1,142.4 L229.1,133.4  h0.01'/>	<g transform="translate(229.1,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 2000</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M307.8,142.4 L307.8,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M307.8,142.4 L307.8,133.4  h0.01'/>	<g transform="translate(307.8,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 3000</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M386.4,142.4 L386.4,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M386.4,142.4 L386.4,133.4  h0.01'/>	<g transform="translate(386.4,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 4000</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M465.0,142.4 L465.0,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M465.0,142.4 L465.0,133.4  h0.01'/>	<g transform="translate(465.0,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 5000</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M543.6,142.4 L543.6,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M543.6,142.4 L543.6,133.4  h0.01'/>	<g transform="translate(543.6,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text> 6000</text>
-	</g>
-	<path stroke='black'  d='M71.9,16.7 L71.9,142.4 L575.0,142.4 L575.0,16.7 L71.9,16.7 Z  h0.01'/>	<g transform="translate(17.6,79.6) rotate(270)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput [Gbit/s]</text>
-	</g>
-	<g transform="translate(323.4,191.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>Reduce task ID</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<use xlink:href='#gpDot' x='71.9' y='102.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.0' y='63.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.1' y='70.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.1' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.2' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.3' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.4' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.5' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.5' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.6' y='67.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.7' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.8' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.8' y='62.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='72.9' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.0' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.1' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.2' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.2' y='60.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.3' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.4' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.5' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.6' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.6' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.7' y='62.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.8' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.9' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='73.9' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.0' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.1' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.2' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.3' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.3' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.4' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.5' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.6' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.7' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.7' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.8' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='74.9' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.0' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.0' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.1' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.2' y='66.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.3' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.4' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.4' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.5' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.6' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.7' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.8' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.8' y='104.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='75.9' y='62.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.0' y='71.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.1' y='64.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.1' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.2' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.3' y='62.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.4' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.5' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.5' y='60.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.6' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.7' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.8' y='66.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.9' y='86.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='76.9' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.0' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.1' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.2' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.2' y='63.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.3' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.4' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.5' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.6' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.6' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.7' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.8' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='77.9' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.0' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.0' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.1' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.2' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.3' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.3' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.4' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.5' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.6' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.7' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.7' y='55.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.8' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='78.9' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.0' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.1' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.1' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.2' y='55.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.3' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.4' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.4' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.5' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.6' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.7' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.8' y='107.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.8' y='90.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='79.9' y='81.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.0' y='81.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.1' y='80.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.2' y='81.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.2' y='90.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.3' y='92.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.4' y='80.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.5' y='80.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.5' y='84.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.6' y='81.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.7' y='84.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.8' y='80.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.9' y='83.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='80.9' y='82.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.0' y='83.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.1' y='81.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.2' y='80.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.3' y='89.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.3' y='79.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.4' y='80.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.5' y='79.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.6' y='79.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.6' y='79.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.7' y='80.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.8' y='80.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='81.9' y='79.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.0' y='79.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.0' y='80.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.1' y='79.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.2' y='81.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.3' y='81.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.4' y='79.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.4' y='80.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.5' y='79.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.6' y='79.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.7' y='80.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.7' y='79.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.8' y='81.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='82.9' y='80.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.0' y='77.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.1' y='78.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.1' y='78.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.2' y='73.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.3' y='72.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.4' y='73.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.5' y='73.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.5' y='95.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.6' y='68.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.7' y='71.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.8' y='62.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.9' y='61.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='83.9' y='60.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.0' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.1' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.2' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.2' y='60.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.3' y='60.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.4' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.5' y='67.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.6' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.6' y='68.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.7' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.8' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='84.9' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.0' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.0' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.1' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.2' y='60.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.3' y='63.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.3' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.4' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.5' y='59.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.6' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.7' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.7' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.8' y='60.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='85.9' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.0' y='60.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.1' y='61.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.1' y='59.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.2' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.3' y='59.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.4' y='60.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.4' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.5' y='60.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.6' y='60.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.7' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.8' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.8' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='86.9' y='61.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.0' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.1' y='81.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.2' y='79.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.2' y='63.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.3' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.4' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.5' y='95.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.5' y='64.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.6' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.7' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.8' y='62.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.9' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='87.9' y='64.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.0' y='74.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.2' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.3' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.3' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.4' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.5' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.6' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.6' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.7' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.8' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='88.9' y='65.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.0' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.0' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.1' y='60.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.2' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.3' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.4' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.4' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.5' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.6' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.7' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.7' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.8' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='89.9' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.0' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.1' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.1' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.2' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.3' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.4' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.5' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.5' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.6' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.7' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.8' y='55.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.8' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='90.9' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.0' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.1' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.2' y='55.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.2' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.3' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.4' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.5' y='93.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.6' y='81.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.6' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.7' y='63.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.8' y='69.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.9' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='91.9' y='67.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.0' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.1' y='60.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.2' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.3' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.3' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.4' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.5' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.6' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.7' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.7' y='67.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.8' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='92.9' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.0' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.0' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.1' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.2' y='60.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.3' y='62.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.4' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.4' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.5' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.6' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.7' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.8' y='60.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.8' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='93.9' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.0' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.1' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.1' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.2' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.3' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.4' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.5' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.5' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.6' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.7' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.8' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.9' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='94.9' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.0' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.1' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.2' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.3' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.3' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.4' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.5' y='94.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.6' y='65.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.6' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.7' y='84.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.8' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='95.9' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.0' y='65.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.0' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.2' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.3' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.4' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.4' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.5' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.6' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.7' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.7' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.8' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='96.9' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.0' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.1' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.1' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.2' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.3' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.4' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.5' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.5' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.6' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.7' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.8' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.8' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='97.9' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.0' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.1' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.2' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.2' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.3' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.4' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.5' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.6' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.6' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.7' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.8' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.9' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='98.9' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.0' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.1' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.2' y='54.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.3' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.3' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.4' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.5' y='96.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.6' y='87.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.7' y='61.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.7' y='60.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.8' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='99.9' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.0' y='63.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.0' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.1' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.2' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.3' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.4' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.4' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.5' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.6' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.7' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.8' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.8' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='100.9' y='57.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.0' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.1' y='61.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.2' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.3' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.4' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.5' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.5' y='62.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.6' y='54.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.7' y='54.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.8' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.9' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='101.9' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.0' y='54.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.1' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.2' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.2' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.3' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.4' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.5' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.6' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.6' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.7' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.8' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='102.9' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.0' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.0' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.1' y='54.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.2' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.3' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.3' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.4' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.5' y='95.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.6' y='64.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.7' y='72.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.7' y='63.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.8' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='103.9' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.0' y='64.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.1' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.1' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.2' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.3' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.4' y='62.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.4' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.5' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.6' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.7' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.8' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.8' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='104.9' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.0' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.1' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.2' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.2' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.3' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.4' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.5' y='61.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.6' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.6' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.7' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.8' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.9' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='105.9' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.0' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.1' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.2' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.3' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.3' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.4' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.5' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.6' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.7' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.7' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.8' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='106.9' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.0' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.0' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.1' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.2' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.3' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.4' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.4' y='104.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.5' y='73.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.6' y='93.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.7' y='77.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.8' y='67.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.8' y='66.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='107.9' y='68.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.0' y='89.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.1' y='68.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.1' y='68.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.2' y='68.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.3' y='67.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.4' y='71.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.5' y='70.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.5' y='70.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.6' y='68.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.7' y='69.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.8' y='69.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.9' y='69.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='108.9' y='70.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.0' y='69.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.1' y='68.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.2' y='74.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.2' y='69.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.3' y='68.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.4' y='70.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.5' y='68.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.6' y='68.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.6' y='68.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.7' y='70.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.8' y='68.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='109.9' y='68.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.0' y='69.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.0' y='68.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.1' y='69.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.2' y='69.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.3' y='69.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.3' y='68.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.4' y='69.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.5' y='70.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.6' y='69.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.7' y='68.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.7' y='68.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.8' y='68.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='110.9' y='68.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.0' y='68.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.1' y='70.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.1' y='69.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.2' y='70.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.3' y='67.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.4' y='105.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.4' y='85.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.5' y='81.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.6' y='68.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.7' y='71.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.8' y='68.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.8' y='72.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='111.9' y='69.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.0' y='74.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.1' y='68.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.2' y='70.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.2' y='68.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.3' y='69.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.4' y='68.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.5' y='69.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.5' y='69.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.6' y='70.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.7' y='68.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.8' y='73.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.9' y='69.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='112.9' y='69.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.0' y='71.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.1' y='69.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.2' y='69.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.3' y='71.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.3' y='69.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.4' y='70.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.5' y='70.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.6' y='69.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.6' y='68.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.7' y='69.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.8' y='69.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='113.9' y='69.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.0' y='70.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.0' y='69.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.1' y='70.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.2' y='69.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.3' y='70.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.4' y='69.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.4' y='69.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.5' y='70.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.6' y='69.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.7' y='68.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.7' y='72.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.8' y='70.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='114.9' y='69.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.0' y='72.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.1' y='69.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.1' y='68.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.2' y='94.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.3' y='66.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.4' y='62.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.5' y='64.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.5' y='61.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.6' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.7' y='67.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.8' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.8' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='115.9' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.0' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.2' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.2' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.3' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.4' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.5' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.6' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.6' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.7' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.8' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='116.9' y='55.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.0' y='55.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.0' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.1' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.2' y='55.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.3' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.3' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.4' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.5' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.6' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.7' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.7' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.8' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='117.9' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.0' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.1' y='66.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.1' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.2' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.3' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.4' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.4' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.5' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.6' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.7' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.8' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.8' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='118.9' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.0' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.1' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.2' y='101.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.2' y='64.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.3' y='62.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.4' y='61.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.5' y='60.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.5' y='60.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.6' y='62.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.7' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.8' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.9' y='70.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='119.9' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.0' y='60.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.1' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.2' y='60.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.3' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.3' y='60.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.4' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.5' y='61.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.6' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.6' y='60.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.7' y='62.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.8' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='120.9' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.0' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.0' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.1' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.2' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.3' y='61.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.4' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.4' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.5' y='60.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.6' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.7' y='60.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.7' y='60.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.8' y='60.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='121.9' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.0' y='61.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.1' y='64.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.1' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.2' y='60.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.3' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.4' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.5' y='60.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.5' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.6' y='61.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.7' y='60.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.8' y='61.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.8' y='61.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='122.9' y='68.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.0' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.1' y='95.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.2' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.2' y='66.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.3' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.4' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.5' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.6' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.6' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.7' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.8' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.9' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='123.9' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.0' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.1' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.2' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.3' y='66.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.3' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.4' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.5' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.6' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.7' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.7' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.8' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='124.9' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.0' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.0' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.1' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.2' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.3' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.4' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.4' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.5' y='60.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.6' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.7' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.8' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.8' y='55.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='125.9' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.0' y='55.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.1' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.1' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.2' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.3' y='54.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.4' y='54.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.5' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.5' y='55.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.6' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.7' y='54.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.8' y='54.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.9' y='54.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='126.9' y='54.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.0' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.1' y='103.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.2' y='78.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.2' y='61.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.3' y='61.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.4' y='62.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.5' y='64.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.6' y='70.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.6' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.7' y='57.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.8' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='127.9' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.0' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.0' y='61.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.1' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.2' y='75.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.3' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.4' y='64.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.4' y='61.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.5' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.6' y='61.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.7' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.7' y='60.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.8' y='64.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='128.9' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.0' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.1' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.1' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.2' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.3' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.4' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.5' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.5' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.6' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.7' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.8' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.8' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='129.9' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.0' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.1' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.2' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.2' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.3' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.4' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.5' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.6' y='60.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.6' y='60.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.7' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.8' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.9' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='130.9' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.0' y='99.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.1' y='77.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.2' y='68.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.3' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.3' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.4' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.5' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.6' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.7' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.7' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.8' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='131.9' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.0' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.0' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.1' y='64.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.2' y='65.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.3' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.4' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.4' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.5' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.6' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.7' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.8' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.8' y='60.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='132.9' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.0' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.1' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.1' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.2' y='55.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.3' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.4' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.5' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.5' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.6' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.7' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.8' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.9' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='133.9' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.0' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.2' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.2' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.3' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.4' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.5' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.6' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.6' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.7' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.8' y='55.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='134.9' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.0' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.0' y='99.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.1' y='73.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.2' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.3' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.3' y='70.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.4' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.5' y='76.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.6' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.7' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.7' y='61.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.8' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='135.9' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.0' y='59.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.1' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.1' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.2' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.3' y='59.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.4' y='74.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.4' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.5' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.6' y='64.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.7' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.8' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.8' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='136.9' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.0' y='72.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.1' y='64.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.2' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.2' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.3' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.4' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.5' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.5' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.6' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.7' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.8' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.9' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='137.9' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.0' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.1' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.2' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.3' y='59.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.3' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.4' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.5' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.6' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.6' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.7' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.8' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='138.9' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.0' y='60.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.0' y='97.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.1' y='73.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.2' y='69.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.3' y='65.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.4' y='60.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.4' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.5' y='66.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.6' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.7' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.8' y='60.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.8' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='139.9' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.0' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.1' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.2' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.3' y='67.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.4' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.5' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.5' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.6' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.7' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.8' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.9' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='140.9' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.0' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.2' y='60.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.2' y='70.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.3' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.4' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.5' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.6' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.6' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.7' y='57.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.8' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='141.9' y='67.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.0' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.0' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.1' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.2' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.3' y='56.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.3' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.4' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.5' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.6' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.7' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.7' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.8' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='142.9' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.0' y='96.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.1' y='69.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.1' y='62.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.2' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.3' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.4' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.4' y='66.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.5' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.6' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.7' y='55.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.8' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.8' y='55.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='143.9' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.0' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.1' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.2' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.2' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.3' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.4' y='54.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.5' y='55.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.5' y='55.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.6' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.7' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.8' y='57.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.9' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='144.9' y='55.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.0' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.1' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.2' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.3' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.3' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.4' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.5' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.6' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.6' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.7' y='56.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.8' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='145.9' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.0' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.0' y='56.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.1' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.2' y='55.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.3' y='57.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.4' y='55.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.4' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.5' y='55.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.6' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.7' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.7' y='57.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.8' y='56.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='146.9' y='55.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.0' y='99.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.1' y='89.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.1' y='63.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.2' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.3' y='62.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.4' y='72.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.5' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.5' y='60.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.6' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.7' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.8' y='57.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.8' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='147.9' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.0' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.1' y='57.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.2' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.2' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.3' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.4' y='74.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.5' y='57.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.6' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.6' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.7' y='58.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.8' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.9' y='62.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='148.9' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.0' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.1' y='57.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.2' y='57.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.3' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.3' y='56.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.4' y='60.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.5' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.6' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.7' y='56.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.7' y='56.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.8' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='149.9' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.0' y='74.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.0' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.1' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.2' y='56.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.3' y='56.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.4' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.4' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.5' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.6' y='59.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.7' y='58.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.8' y='55.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.8' y='56.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='150.9' y='102.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.0' y='78.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.1' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.2' y='60.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.2' y='62.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.3' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.4' y='63.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.5' y='60.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.5' y='61.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.6' y='60.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.7' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.8' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.9' y='59.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='151.9' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.0' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.1' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.2' y='75.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.3' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.3' y='60.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.4' y='57.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.5' y='64.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.6' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.6' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.7' y='59.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.8' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='152.9' y='58.1' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.0' y='57.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.0' y='59.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.1' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.2' y='58.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.3' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.4' y='58.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.4' y='59.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.5' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.6' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.7' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.7' y='57.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.8' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='153.9' y='59.6' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.0' y='57.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.1' y='58.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.1' y='60.5' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.2' y='58.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.3' y='59.7' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.4' y='58.4' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.5' y='59.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.5' y='60.3' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.6' y='57.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.7' y='58.8' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.8' y='58.9' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.8' y='96.2' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='154.9' y='70.0' color='rgb(228,  26,  28)'/>
-	<use xlink:href='#gpDot' x='155.0' y='66.2' color='rgb(228,  26,  28)'/>
-	

<TRUNCATED>


[03/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-nvmf/throughput2.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-nvmf/throughput2.svg b/content/img/blog/crail-nvmf/throughput2.svg
deleted file mode 100644
index 23ec763..0000000
--- a/content/img/blog/crail-nvmf/throughput2.svg
+++ /dev/null
@@ -1,251 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="280" 
- viewBox="0 0 640 280"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="280" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,238.6 L615.0,238.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,238.6 L72.6,238.6  h0.01'/>	<g transform="translate(55.3,243.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,204.5 L423.4,204.5 M606.7,204.5 L615.0,204.5  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,204.5 L72.6,204.5  h0.01'/>	<g transform="translate(55.3,209.0)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 2</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,170.3 L615.0,170.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,170.3 L72.6,170.3  h0.01'/>	<g transform="translate(55.3,174.8)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 4</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,136.2 L615.0,136.2  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,136.2 L72.6,136.2  h0.01'/>	<g transform="translate(55.3,140.7)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 6</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,102.0 L615.0,102.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,102.0 L72.6,102.0  h0.01'/>	<g transform="translate(55.3,106.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 8</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,67.9 L615.0,67.9  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,67.9 L72.6,67.9  h0.01'/>	<g transform="translate(55.3,72.4)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 10</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,33.8 L615.0,33.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,33.8 L72.6,33.8  h0.01'/>	<g transform="translate(55.3,38.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 12</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,238.6 L63.6,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,238.6 M63.6,16.7  h0.01'/>	<g transform="translate(68.1,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>128</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M109.6,238.6 L109.6,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M109.6,238.6 M109.6,16.7  h0.01'/>	<g transform="translate(114.1,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>256</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M155.5,238.6 L155.5,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M155.5,238.6 M155.5,16.7  h0.01'/>	<g transform="translate(160.0,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>512</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M201.5,238.6 L201.5,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M201.5,238.6 M201.5,16.7  h0.01'/>	<g transform="translate(206.0,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>1K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M247.4,238.6 L247.4,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M247.4,238.6 M247.4,16.7  h0.01'/>	<g transform="translate(251.9,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>4K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M293.4,238.6 L293.4,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M293.4,238.6 M293.4,16.7  h0.01'/>	<g transform="translate(297.9,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>8K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M339.3,238.6 L339.3,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M339.3,238.6 M339.3,16.7  h0.01'/>	<g transform="translate(343.8,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>16K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M385.3,238.6 L385.3,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M385.3,238.6 M385.3,16.7  h0.01'/>	<g transform="translate(389.8,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>32K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M431.2,238.6 L431.2,229.6 M431.2,175.6 L431.2,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M431.2,238.6 M431.2,16.7  h0.01'/>	<g transform="translate(435.7,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>64K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M477.2,238.6 L477.2,229.6 M477.2,175.6 L477.2,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M477.2,238.6 M477.2,16.7  h0.01'/>	<g transform="translate(481.7,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>128K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M523.1,238.6 L523.1,229.6 M523.1,175.6 L523.1,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M523.1,238.6 M523.1,16.7  h0.01'/>	<g transform="translate(527.6,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>256K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M569.1,238.6 L569.1,229.6 M569.1,175.6 L569.1,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M569.1,238.6 M569.1,16.7  h0.01'/>	<g transform="translate(573.6,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>512K</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M615.0,238.6 L615.0,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M615.0,238.6 M615.0,16.7  h0.01'/>	<g transform="translate(619.5,246.9) rotate(45)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text></text>
-	</g>
-	<path stroke='black'  d='M63.6,16.7 L63.6,238.6 L615.0,238.6 L615.0,16.7 L63.6,16.7 Z  h0.01'/>	<g transform="translate(17.6,127.7) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput (GB/s)</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,189.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>NVMf - direct</text>
-	</g>
-	<path  d='M556.2,184.6 L598.4,184.6 M63.6,238.5 L109.6,238.3 L155.5,235.5 L201.5,232.3 L247.4,215.1 L293.4,187.1 
-		L339.3,138.3 L385.3,65.8 L431.2,43.8 L477.2,36.3 L523.1,34.7 L569.1,34.4 L615.0,33.8  h0.01'/>	<use xlink:href='#gpPt0' transform='translate(63.6,238.5) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(109.6,238.3) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(155.5,235.5) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(201.5,232.3) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(247.4,215.1) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(293.4,187.1) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(339.3,138.3) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(385.3,65.8) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(431.2,43.8) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(477.2,36.3) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(523.1,34.7) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(569.1,34.4) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(615.0,33.8) scale(4.50)'/>
-	<use xlink:href='#gpPt0' transform='translate(577.3,184.6) scale(4.50)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,207.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>NVMf - buffered</text>
-	</g>
-	<path  d='M556.2,202.6 L598.4,202.6 M63.6,190.0 L109.6,169.4 L155.5,86.4 L201.5,46.5 L247.4,42.9 L293.4,42.2 
-		L339.3,37.0 L385.3,37.8 L431.2,36.0 L477.2,35.1 L523.1,36.4 L569.1,34.6 L615.0,38.7  h0.01'/>	<use xlink:href='#gpPt1' transform='translate(63.6,190.0) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(109.6,169.4) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(155.5,86.4) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(201.5,46.5) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(247.4,42.9) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(293.4,42.2) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(339.3,37.0) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(385.3,37.8) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(431.2,36.0) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(477.2,35.1) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(523.1,36.4) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(569.1,34.6) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(615.0,38.7) scale(4.50)'/>
-	<use xlink:href='#gpPt1' transform='translate(577.3,202.6) scale(4.50)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,225.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>DRAM - buffered</text>
-	</g>
-	<path  d='M556.2,220.6 L598.4,220.6 M63.6,192.0 L109.6,151.3 L155.5,89.0 L201.5,39.2 L247.4,34.3 L293.4,31.1 
-		L339.3,30.4 L385.3,30.0 L431.2,29.5 L477.2,29.4 L523.1,27.8 L569.1,27.5 L615.0,27.4  h0.01'/>	<use xlink:href='#gpPt2' transform='translate(63.6,192.0) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(109.6,151.3) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(155.5,89.0) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(201.5,39.2) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(247.4,34.3) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.4,31.1) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(339.3,30.4) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(385.3,30.0) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(431.2,29.5) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(477.2,29.4) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(523.1,27.8) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(569.1,27.5) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(615.0,27.4) scale(4.50)'/>
-	<use xlink:href='#gpPt2' transform='translate(577.3,220.6) scale(4.50)'/>
-</g>
-	</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,16.7 L63.6,238.6 L615.0,238.6 L615.0,16.7 L63.6,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-nvmf/tiering.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-nvmf/tiering.svg b/content/img/blog/crail-nvmf/tiering.svg
deleted file mode 100644
index 2df6221..0000000
--- a/content/img/blog/crail-nvmf/tiering.svg
+++ /dev/null
@@ -1,193 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.206' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.206' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.206' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.206' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.206' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.206' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.206' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M78.5,238.0 L612.6,238.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,238.0 L88.2,238.0 M612.6,238.0 L602.9,238.0  h0.01'/>	<g transform="translate(69.4,242.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M78.5,201.4 L612.6,201.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,201.4 L88.2,201.4 M612.6,201.4 L602.9,201.4  h0.01'/>	<g transform="translate(69.4,206.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M78.5,164.8 L612.6,164.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,164.8 L88.2,164.8 M612.6,164.8 L602.9,164.8  h0.01'/>	<g transform="translate(69.4,169.7)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M78.5,128.1 L612.6,128.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,128.1 L88.2,128.1 M612.6,128.1 L602.9,128.1  h0.01'/>	<g transform="translate(69.4,133.0)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M78.5,91.5 L612.6,91.5  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,91.5 L88.2,91.5 M612.6,91.5 L602.9,91.5  h0.01'/>	<g transform="translate(69.4,96.4)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M78.5,54.9 L484.6,54.9 M603.5,54.9 L612.6,54.9  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,54.9 L88.2,54.9 M612.6,54.9 L602.9,54.9  h0.01'/>	<g transform="translate(69.4,59.8)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M78.5,18.3 L612.6,18.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,18.3 L88.2,18.3 M612.6,18.3 L602.9,18.3  h0.01'/>	<g transform="translate(69.4,23.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text> 120</text>
-	</g>
-	<path stroke='black'  d='M111.9,238.0 L111.9,228.3 M111.9,18.3 L111.9,28.0  h0.01'/>	<g transform="translate(111.9,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>100/0</text>
-	</g>
-	<path stroke='black'  d='M178.6,238.0 L178.6,228.3 M178.6,18.3 L178.6,28.0  h0.01'/>	<g transform="translate(178.6,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text></text>
-	</g>
-	<path stroke='black'  d='M245.4,238.0 L245.4,228.3 M245.4,18.3 L245.4,28.0  h0.01'/>	<g transform="translate(245.4,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>100/0</text>
-	</g>
-	<path stroke='black'  d='M312.2,238.0 L312.2,228.3 M312.2,18.3 L312.2,28.0  h0.01'/>	<g transform="translate(312.2,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>80/20</text>
-	</g>
-	<path stroke='black'  d='M378.9,238.0 L378.9,228.3 M378.9,18.3 L378.9,28.0  h0.01'/>	<g transform="translate(378.9,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>60/40</text>
-	</g>
-	<path stroke='black'  d='M445.7,238.0 L445.7,228.3 M445.7,18.3 L445.7,28.0  h0.01'/>	<g transform="translate(445.7,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>40/60</text>
-	</g>
-	<path stroke='black'  d='M512.5,238.0 L512.5,228.3 M512.5,18.3 L512.5,28.0  h0.01'/>	<g transform="translate(512.5,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>20/80</text>
-	</g>
-	<path stroke='black'  d='M579.2,238.0 L579.2,228.3 M579.2,18.3 L579.2,28.0  h0.01'/>	<g transform="translate(579.2,262.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>0/100</text>
-	</g>
-	<path stroke='black'  d='M78.5,18.3 L78.5,238.0 L612.6,238.0 L612.6,18.3 L78.5,18.3 Z  h0.01'/>	<g transform="translate(19.1,128.2) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>Runtime (seconds)</text>
-	</g>
-	<g transform="translate(345.5,291.4)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:middle">
-		<text>Memory to Flash Ratio</text>
-	</g>
-	<g transform="translate(145.3,78.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:start">
-		<text>Vanilla Spark </text>
-	</g>
-	<g transform="translate(145.3,97.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:start">
-		<text> (100% Memory)</text>
-	</g>
-	<path stroke='black'  d='M133.0,74.0 L128.6,75.1 L133.0,76.2 M143.9,75.1 L128.6,75.1  h0.01'/></g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(539.2,42.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text>Map</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '548.3,42.5 594.4,42.5 594.4,32.8 548.3,32.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M548.3,42.5 L594.4,42.5 L594.4,32.9 L548.3,32.9 L548.3,42.5 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '98.5,238.0 125.3,238.0 125.3,43.7 98.5,43.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M98.5,238.0 L98.5,43.8 L125.2,43.8 L125.2,238.0 L98.5,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '232.1,238.0 258.9,238.0 258.9,180.4 232.1,180.4 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M232.1,238.0 L232.1,180.5 L258.8,180.5 L258.8,238.0 L232.1,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '298.8,238.0 325.6,238.0 325.6,173.1 298.8,173.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M298.8,238.0 L298.8,173.2 L325.5,173.2 L325.5,238.0 L298.8,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '365.6,238.0 392.4,238.0 392.4,167.3 365.6,167.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M365.6,238.0 L365.6,167.4 L392.3,167.4 L392.3,238.0 L365.6,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '432.3,238.0 459.1,238.0 459.1,163.9 432.3,163.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M432.3,238.0 L432.3,164.0 L459.0,164.0 L459.0,238.0 L432.3,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '499.1,238.0 525.9,238.0 525.9,157.6 499.1,157.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M499.1,238.0 L499.1,157.7 L525.8,157.7 L525.8,238.0 L499.1,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '565.9,238.0 592.7,238.0 592.7,152.8 565.9,152.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M565.9,238.0 L565.9,152.9 L592.6,152.9 L592.6,238.0 L565.9,238.0 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(539.2,62.0)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:13.00pt; text-anchor:end">
-		<text>Reduce</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '548.3,61.9 594.4,61.9 594.4,52.2 548.3,52.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M548.3,61.9 L594.4,61.9 L594.4,52.3 L548.3,52.3 L548.3,61.9 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '98.5,238.0 125.3,238.0 125.3,78.3 98.5,78.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M98.5,238.0 L98.5,78.4 L125.2,78.4 L125.2,238.0 L98.5,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '232.1,238.0 258.9,238.0 258.9,207.2 232.1,207.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M232.1,238.0 L232.1,207.3 L258.8,207.3 L258.8,238.0 L232.1,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '298.8,238.0 325.6,238.0 325.6,199.8 298.8,199.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M298.8,238.0 L298.8,199.9 L325.5,199.9 L325.5,238.0 L298.8,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '365.6,238.0 392.4,238.0 392.4,204.8 365.6,204.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M365.6,238.0 L365.6,204.9 L392.3,204.9 L392.3,238.0 L365.6,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '432.3,238.0 459.1,238.0 459.1,202.8 432.3,202.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M432.3,238.0 L432.3,202.9 L459.0,202.9 L459.0,238.0 L432.3,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '499.1,238.0 525.9,238.0 525.9,203.9 499.1,203.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M499.1,238.0 L499.1,204.0 L525.8,204.0 L525.8,238.0 L499.1,238.0 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '565.9,238.0 592.7,238.0 592.7,203.8 565.9,203.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M565.9,238.0 L565.9,203.9 L592.6,203.9 L592.6,238.0 L565.9,238.0 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb(255, 127,   0); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M78.5,18.3 L78.5,238.0 L612.6,238.0 L612.6,18.3 L78.5,18.3 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/preview/crail-memory-summary.png
----------------------------------------------------------------------
diff --git a/content/img/blog/preview/crail-memory-summary.png b/content/img/blog/preview/crail-memory-summary.png
deleted file mode 100644
index 84a888d..0000000
Binary files a/content/img/blog/preview/crail-memory-summary.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/preview/crail-metadata-summary.png
----------------------------------------------------------------------
diff --git a/content/img/blog/preview/crail-metadata-summary.png b/content/img/blog/preview/crail-metadata-summary.png
deleted file mode 100644
index 6871528..0000000
Binary files a/content/img/blog/preview/crail-metadata-summary.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/preview/crail-nvme-fabrics-v1-summary.png
----------------------------------------------------------------------
diff --git a/content/img/blog/preview/crail-nvme-fabrics-v1-summary.png b/content/img/blog/preview/crail-nvme-fabrics-v1-summary.png
deleted file mode 100644
index 8a1f21a..0000000
Binary files a/content/img/blog/preview/crail-nvme-fabrics-v1-summary.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/preview/sorting-summary.png
----------------------------------------------------------------------
diff --git a/content/img/blog/preview/sorting-summary.png b/content/img/blog/preview/sorting-summary.png
deleted file mode 100644
index 84a888d..0000000
Binary files a/content/img/blog/preview/sorting-summary.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/rdma-shuffle/sql.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/rdma-shuffle/sql.svg b/content/img/blog/rdma-shuffle/sql.svg
deleted file mode 100644
index 2ffde39..0000000
--- a/content/img/blog/rdma-shuffle/sql.svg
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,283.4 L615.0,283.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,283.4 L72.6,283.4 M615.0,283.4 L606.0,283.4  h0.01'/>	<g transform="translate(55.3,287.9)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,245.2 L615.0,245.2  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,245.2 L72.6,245.2 M615.0,245.2 L606.0,245.2  h0.01'/>	<g transform="translate(55.3,249.7)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 5</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,207.0 L615.0,207.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,207.0 L72.6,207.0 M615.0,207.0 L606.0,207.0  h0.01'/>	<g transform="translate(55.3,211.5)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 10</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,168.7 L615.0,168.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,168.7 L72.6,168.7 M615.0,168.7 L606.0,168.7  h0.01'/>	<g transform="translate(55.3,173.2)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 15</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,130.5 L71.9,130.5 M288.4,130.5 L615.0,130.5  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,130.5 L72.6,130.5 M615.0,130.5 L606.0,130.5  h0.01'/>	<g transform="translate(55.3,135.0)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,92.3 L71.9,92.3 M288.4,92.3 L615.0,92.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,92.3 L72.6,92.3 M615.0,92.3 L606.0,92.3  h0.01'/>	<g transform="translate(55.3,96.8)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 25</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,54.1 L615.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,54.1 L72.6,54.1 M615.0,54.1 L606.0,54.1  h0.01'/>	<g transform="translate(55.3,58.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 30</text>
-	</g>
-	<path stroke='black'  d='M63.6,54.1 L63.6,283.4 L615.0,283.4 L615.0,54.1 L63.6,54.1 Z  h0.01'/>	<g transform="translate(17.6,168.8) rotate(270)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:middle">
-		<text>runtime [s]</text>
-	</g>
-	<g transform="translate(339.3,31.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:middle">
-		<text>Equijoin</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(229.6,76.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  Vanilla</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '237.9,76.6 280.1,76.6 280.1,67.6 237.9,67.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M237.9,76.6 L280.1,76.6 L280.1,67.6 L237.9,67.6 L237.9,76.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '311.7,283.4 367.0,283.4 367.0,103.1 311.7,103.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M311.7,283.4 L311.7,103.2 L366.9,103.2 L366.9,283.4 L311.7,283.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(229.6,94.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  SparkRDMA-Wrapper</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '237.9,94.6 280.1,94.6 280.1,85.6 237.9,85.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M237.9,94.6 L280.1,94.6 L280.1,85.6 L237.9,85.6 L237.9,94.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '375.1,283.4 430.4,283.4 430.4,88.7 375.1,88.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M375.1,283.4 L375.1,88.8 L430.3,88.8 L430.3,283.4 L375.1,283.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(229.6,112.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  SparkRDMA-Chunked</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.900000' points = '237.9,112.6 280.1,112.6 280.1,103.6 237.9,103.6 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M237.9,112.6 L280.1,112.6 L280.1,103.6 L237.9,103.6 L237.9,112.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.900000' points = '438.6,283.4 493.8,283.4 493.8,118.5 438.6,118.5 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M438.6,283.4 L438.6,118.6 L493.7,118.6 L493.7,283.4 L438.6,283.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_4" ><title>gnuplot_plot_4</title>
-<g style="fill:none; color:cyan; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(229.6,130.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  Crail</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.900000' points = '237.9,130.6 280.1,130.6 280.1,121.6 237.9,121.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M237.9,130.6 L280.1,130.6 L280.1,121.6 L237.9,121.6 L237.9,130.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.900000' points = '502.0,283.4 557.2,283.4 557.2,169.3 502.0,169.3 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M502.0,283.4 L502.0,169.4 L557.1,169.4 L557.1,283.4 L502.0,283.4 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb( 55, 126, 184); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,54.1 L63.6,283.4 L615.0,283.4 L615.0,54.1 L63.6,54.1 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/rdma-shuffle/terasort.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/rdma-shuffle/terasort.svg b/content/img/blog/rdma-shuffle/terasort.svg
deleted file mode 100644
index a958a80..0000000
--- a/content/img/blog/rdma-shuffle/terasort.svg
+++ /dev/null
@@ -1,160 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,283.4 L615.0,283.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,283.4 L80.9,283.4 M615.0,283.4 L606.0,283.4  h0.01'/>	<g transform="translate(63.6,287.9)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,250.6 L615.0,250.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,250.6 L80.9,250.6 M615.0,250.6 L606.0,250.6  h0.01'/>	<g transform="translate(63.6,255.1)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,217.9 L615.0,217.9  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,217.9 L80.9,217.9 M615.0,217.9 L606.0,217.9  h0.01'/>	<g transform="translate(63.6,222.4)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,185.1 L615.0,185.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,185.1 L80.9,185.1 M615.0,185.1 L606.0,185.1  h0.01'/>	<g transform="translate(63.6,189.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,152.4 L615.0,152.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,152.4 L80.9,152.4 M615.0,152.4 L606.0,152.4  h0.01'/>	<g transform="translate(63.6,156.9)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,119.6 L80.2,119.6 M296.7,119.6 L615.0,119.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,119.6 L80.9,119.6 M615.0,119.6 L606.0,119.6  h0.01'/>	<g transform="translate(63.6,124.1)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,86.9 L80.2,86.9 M296.7,86.9 L615.0,86.9  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,86.9 L80.9,86.9 M615.0,86.9 L606.0,86.9  h0.01'/>	<g transform="translate(63.6,91.4)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 120</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,54.1 L615.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,54.1 L80.9,54.1 M615.0,54.1 L606.0,54.1  h0.01'/>	<g transform="translate(63.6,58.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text> 140</text>
-	</g>
-	<path stroke='black'  d='M71.9,54.1 L71.9,283.4 L615.0,283.4 L615.0,54.1 L71.9,54.1 Z  h0.01'/>	<g transform="translate(17.6,168.8) rotate(270)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:middle">
-		<text>runtime [s]</text>
-	</g>
-	<g transform="translate(343.4,31.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:middle">
-		<text>TeraSort</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(237.9,76.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  Vanilla</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '246.2,76.6 288.4,76.6 288.4,67.6 246.2,67.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M246.2,76.6 L288.4,76.6 L288.4,67.6 L246.2,67.6 L246.2,76.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '283.1,283.4 343.6,283.4 343.6,144.9 283.1,144.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M283.1,283.4 L283.1,145.0 L343.5,145.0 L343.5,283.4 L283.1,283.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(237.9,94.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  SparkRDMA-Wrapper</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '246.2,94.6 288.4,94.6 288.4,85.6 246.2,85.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M246.2,94.6 L288.4,94.6 L288.4,85.6 L246.2,85.6 L246.2,94.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '352.5,283.4 412.9,283.4 412.9,148.7 352.5,148.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M352.5,283.4 L352.5,148.8 L412.8,148.8 L412.8,283.4 L352.5,283.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(237.9,112.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  SparkRDMA-Chunked</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.900000' points = '246.2,112.6 288.4,112.6 288.4,103.6 246.2,103.6 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M246.2,112.6 L288.4,112.6 L288.4,103.6 L246.2,103.6 L246.2,112.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.900000' points = '421.9,283.4 482.3,283.4 482.3,103.9 421.9,103.9 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M421.9,283.4 L421.9,104.0 L482.2,104.0 L482.2,283.4 L421.9,283.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_4" ><title>gnuplot_plot_4</title>
-<g style="fill:none; color:cyan; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(237.9,130.6)" style="stroke:none; fill:black; font-family:Sans-Serif; font-size:10.00pt; text-anchor:end">
-		<text xml:space="preserve">  Crail</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.900000' points = '246.2,130.6 288.4,130.6 288.4,121.6 246.2,121.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M246.2,130.6 L288.4,130.6 L288.4,121.6 L246.2,121.6 L246.2,130.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.900000' points = '491.3,283.4 551.7,283.4 551.7,225.1 491.3,225.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M491.3,283.4 L491.3,225.2 L551.6,225.2 L551.6,283.4 L491.3,283.4 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb( 55, 126, 184); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,54.1 L71.9,283.4 L615.0,283.4 L615.0,54.1 L71.9,54.1 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/sort/cpu_network.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/sort/cpu_network.svg b/content/img/blog/sort/cpu_network.svg
deleted file mode 100644
index 6416d28..0000000
--- a/content/img/blog/sort/cpu_network.svg
+++ /dev/null
@@ -1,145 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="300" height="200" 
- viewBox="0 0 300 200"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="300" height="200" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,142.4 L275.0,142.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,142.4 L72.6,142.4 M275.0,142.4 L266.0,142.4  h0.01'/>	<g transform="translate(55.3,146.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text>0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,107.5 L275.0,107.5  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,107.5 L72.6,107.5 M275.0,107.5 L266.0,107.5  h0.01'/>	<g transform="translate(55.3,112.0)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text>50</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,72.6 L275.0,72.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,72.6 L72.6,72.6 M275.0,72.6 L266.0,72.6  h0.01'/>	<g transform="translate(55.3,77.1)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text>100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M105.9,142.4 L105.9,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M105.9,142.4 L105.9,133.4 M105.9,16.7 L105.9,25.7  h0.01'/>	<g transform="translate(105.9,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>1</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M148.2,142.4 L148.2,61.7 M148.2,25.7 L148.2,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M148.2,142.4 L148.2,133.4 M148.2,16.7 L148.2,25.7  h0.01'/>	<g transform="translate(148.2,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>10</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M190.4,142.4 L190.4,61.7 M190.4,25.7 L190.4,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M190.4,142.4 L190.4,133.4 M190.4,16.7 L190.4,25.7  h0.01'/>	<g transform="translate(190.4,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M232.7,142.4 L232.7,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M232.7,142.4 L232.7,133.4 M232.7,16.7 L232.7,25.7  h0.01'/>	<g transform="translate(232.7,164.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>100</text>
-	</g>
-	<path stroke='black'  d='M63.6,16.7 L63.6,142.4 L275.0,142.4 L275.0,16.7 L63.6,16.7 Z  h0.01'/>	<g transform="translate(17.6,79.6) rotate(270)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>Time [%]</text>
-	</g>
-	<g transform="translate(169.3,191.9)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:middle">
-		<text>Network Bandwidth [Gbps]</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(169.0,39.2)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text>Network</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' points = '177.3,39.2 219.5,39.2 219.5,30.2 177.3,30.2 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M177.3,39.2 L219.5,39.2 L219.5,30.2 L177.3,30.2 L177.3,39.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' points = '89.0,142.4 122.9,142.4 122.9,108.8 89.0,108.8 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M89.0,142.4 L89.0,108.9 L122.8,108.9 L122.8,142.4 L89.0,142.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' points = '131.2,142.4 165.2,142.4 165.2,136.7 131.2,136.7 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M131.2,142.4 L131.2,136.8 L165.1,136.8 L165.1,142.4 L131.2,142.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' points = '173.5,142.4 207.5,142.4 207.5,140.2 173.5,140.2 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M173.5,142.4 L173.5,140.3 L207.4,140.3 L207.4,142.4 L173.5,142.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' points = '215.8,142.4 249.7,142.4 249.7,141.6 215.8,141.6 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M215.8,142.4 L215.8,141.7 L249.6,141.7 L249.6,142.4 L215.8,142.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(169.0,57.2)" style="stroke:none; fill:black; font-family:Verdana; font-size:12.00pt; text-anchor:end">
-		<text>CPU</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '177.3,57.2 219.5,57.2 219.5,48.2 177.3,48.2 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M177.3,57.2 L219.5,57.2 L219.5,48.2 L177.3,48.2 L177.3,57.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '89.0,108.9 122.9,108.9 122.9,72.5 89.0,72.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M89.0,108.9 L89.0,72.6 L122.8,72.6 L122.8,108.9 L89.0,108.9 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '131.2,136.8 165.2,136.8 165.2,72.5 131.2,72.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M131.2,136.8 L131.2,72.6 L165.1,72.6 L165.1,136.8 L131.2,136.8 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '173.5,140.3 207.5,140.3 207.5,72.5 173.5,72.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M173.5,140.3 L173.5,72.6 L207.4,72.6 L207.4,140.3 L173.5,140.3 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '215.8,141.7 249.7,141.7 249.7,72.5 215.8,72.5 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M215.8,141.7 L215.8,72.6 L249.6,72.6 L249.6,141.7 L215.8,141.7 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb( 55, 126, 184); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,16.7 L63.6,142.4 L275.0,142.4 L275.0,16.7 L63.6,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-


[09/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-machine-learning/cocoa.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-machine-learning/cocoa.svg b/content/img/blog/crail-machine-learning/cocoa.svg
deleted file mode 100644
index 25f6565..0000000
--- a/content/img/blog/crail-machine-learning/cocoa.svg
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="136pt" height="155pt" viewBox="0 0 136 155" version="1.2">
-<defs>
-<g>
-<symbol overflow="visible" id="glyph0-0">
-<path style="stroke:none;" d=""/>
-</symbol>
-<symbol overflow="visible" id="glyph0-1">
-<path style="stroke:none;" d="M 5.640625 -2.71875 C 5.640625 -4.28125 4.46875 -5.53125 3.046875 -5.53125 L 0.78125 -5.53125 L 0.78125 0 L 3.046875 0 C 4.484375 0 5.640625 -1.21875 5.640625 -2.71875 Z M 4.859375 -2.71875 C 4.859375 -1.25 3.875 -0.46875 2.828125 -0.46875 L 1.5625 -0.46875 L 1.5625 -5.0625 L 2.828125 -5.0625 C 3.921875 -5.0625 4.859375 -4.1875 4.859375 -2.71875 Z M 4.859375 -2.71875 "/>
-</symbol>
-<symbol overflow="visible" id="glyph0-2">
-<path style="stroke:none;" d="M 7.859375 -5.53125 L 7.25 -5.53125 L 6.46875 -3.015625 C 6.421875 -2.859375 5.859375 -1.0625 5.8125 -0.640625 L 5.796875 -0.640625 C 5.75 -1.046875 5.171875 -2.921875 5.15625 -2.96875 L 4.359375 -5.53125 L 3.703125 -5.53125 L 2.953125 -3.140625 C 2.875 -2.875 2.34375 -1.15625 2.28125 -0.640625 C 2.234375 -1.125 1.640625 -3.03125 1.625 -3.125 L 0.875 -5.53125 L 0.125 -5.53125 L 1.84375 0 L 2.53125 0 L 3.34375 -2.671875 L 3.734375 -4 C 3.859375 -4.421875 3.921875 -4.671875 3.953125 -4.890625 L 3.96875 -4.890625 C 4.015625 -4.515625 4.21875 -3.859375 4.359375 -3.390625 L 5.015625 -1.21875 L 5.40625 0 L 6.140625 0 Z M 7.859375 -5.53125 "/>
-</symbol>
-<symbol overflow="visible" id="glyph1-0">
-<path style="stroke:none;" d=""/>
-</symbol>
-<symbol overflow="visible" id="glyph1-1">
-<path style="stroke:none;" d="M 2.921875 -1.9375 C 2.921875 -2.234375 2.921875 -2.9375 2.640625 -3.421875 C 2.328125 -3.96875 1.875 -4.046875 1.578125 -4.046875 C 1.3125 -4.046875 0.84375 -3.96875 0.546875 -3.453125 C 0.265625 -2.96875 0.25 -2.328125 0.25 -1.9375 C 0.25 -1.5 0.28125 -0.953125 0.53125 -0.5 C 0.796875 -0.015625 1.234375 0.125 1.578125 0.125 C 2.1875 0.125 2.515625 -0.21875 2.6875 -0.59375 C 2.90625 -1.015625 2.921875 -1.578125 2.921875 -1.9375 Z M 2.40625 -2.015625 C 2.40625 -1.625 2.40625 -1.171875 2.25 -0.796875 C 2.09375 -0.359375 1.78125 -0.265625 1.578125 -0.265625 C 1.328125 -0.265625 1.046875 -0.40625 0.890625 -0.84375 C 0.78125 -1.203125 0.765625 -1.578125 0.765625 -2.015625 C 0.765625 -2.578125 0.765625 -3.65625 1.578125 -3.65625 C 2.40625 -3.65625 2.40625 -2.578125 2.40625 -2.015625 Z M 2.40625 -2.015625 "/>
-</symbol>
-<symbol overflow="visible" id="glyph1-2">
-<path style="stroke:none;" d="M 2.71875 0 L 2.71875 -0.375 L 1.921875 -0.375 L 1.921875 -4.046875 L 1.796875 -4.046875 C 1.40625 -3.6875 0.90625 -3.671875 0.546875 -3.65625 L 0.546875 -3.28125 C 0.78125 -3.28125 1.078125 -3.296875 1.375 -3.421875 L 1.375 -0.375 L 0.59375 -0.375 L 0.59375 0 Z M 2.71875 0 "/>
-</symbol>
-</g>
-</defs>
-<g id="surface1">
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 9.172656 9.920656 L -9.175 9.920656 C -9.585156 9.920656 -9.921094 9.588625 -9.921094 9.174563 L -9.921094 -9.173094 C -9.921094 -9.587156 -9.585156 -9.923094 -9.175 -9.923094 L 9.172656 -9.923094 C 9.586719 -9.923094 9.922656 -9.587156 9.922656 -9.173094 L 9.922656 9.174563 C 9.922656 9.588625 9.586719 9.920656 9.172656 9.920656 Z M 9.172656 9.920656 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
-  <use xlink:href="#glyph0-1" x="64.867" y="13.84"/>
-</g>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M -47.51875 9.920656 L -65.866406 9.920656 C -66.280469 9.920656 -66.616406 9.588625 -66.616406 9.174563 L -66.616406 -9.173094 C -66.616406 -9.587156 -66.280469 -9.923094 -65.866406 -9.923094 L -47.51875 -9.923094 C -47.108594 -9.923094 -46.772656 -9.587156 -46.772656 -9.173094 L -46.772656 9.174563 C -46.772656 9.588625 -47.108594 9.920656 -47.51875 9.920656 Z M -47.51875 9.920656 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
-  <use xlink:href="#glyph0-2" x="5.397" y="13.251"/>
-</g>
-<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
-  <use xlink:href="#glyph1-1" x="13.395" y="14.429"/>
-</g>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 65.867969 9.920656 L 47.520313 9.920656 C 47.10625 9.920656 46.770313 9.588625 46.770313 9.174563 L 46.770313 -9.173094 C 46.770313 -9.587156 47.10625 -9.923094 47.520313 -9.923094 L 65.867969 -9.923094 C 66.282031 -9.923094 66.614063 -9.587156 66.614063 -9.173094 L 66.614063 9.174563 C 66.614063 9.588625 66.282031 9.920656 65.867969 9.920656 Z M 65.867969 9.920656 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
-  <use xlink:href="#glyph0-2" x="118.782" y="13.251"/>
-</g>
-<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
-  <use xlink:href="#glyph1-2" x="126.78" y="14.429"/>
-</g>
-<path style="fill:none;stroke-width:0.59776;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-dasharray:0.59776,1.99255;stroke-miterlimit:10;" d="M 0.00078125 -11.016844 L 0.00078125 -144.669187 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill:none;stroke-width:0.59776;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-dasharray:0.59776,1.99255;stroke-miterlimit:10;" d="M -56.694531 -11.016844 L -56.694531 -144.669187 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill:none;stroke-width:0.59776;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-dasharray:0.59776,1.99255;stroke-miterlimit:10;" d="M 56.692188 -11.016844 L 56.692188 -144.669187 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.66875 -17.009031 L -0.671094 -17.009031 C -1.08125 -17.009031 -1.417187 -17.341062 -1.417187 -17.755125 L -1.417187 -21.930906 C -1.417187 -22.341062 -1.08125 -22.677 -0.671094 -22.677 L 0.66875 -22.677 C 1.082813 -22.677 1.41875 -22.341062 1.41875 -21.930906 L 1.41875 -17.755125 C 1.41875 -17.341062 1.082813 -17.009031 0.66875 -17.009031 Z M 0.66875 -17.009031 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M -56.022656 -34.016844 L -57.3625 -34.016844 C -57.776562 -34.016844 -58.1125 -34.348875 -58.1125 -34.762937 L -58.1125 -44.606687 C -58.1125 -45.02075 -57.776562 -45.352781 -57.3625 -45.352781 L -56.022656 -45.352781 C -55.6125 -45.352781 -55.276562 -45.02075 -55.276562 -44.606687 L -55.276562 -34.762937 C -55.276562 -34.348875 -55.6125 -34.016844 -56.022656 -34.016844 Z M -56.022656 -34.016844 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 57.364063 -34.016844 L 56.024219 -34.016844 C 55.610156 -34.016844 55.278125 -34.348875 55.278125 -34.762937 L 55.278125 -44.606687 C 55.278125 -45.02075 55.610156 -45.352781 56.024219 -45.352781 L 57.364063 -45.352781 C 57.778125 -45.352781 58.110156 -45.02075 58.110156 -44.606687 L 58.110156 -34.762937 C 58.110156 -34.348875 57.778125 -34.016844 57.364063 -34.016844 Z M 57.364063 -34.016844 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(12.998962%,28.999329%,52.999878%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.492969 -24.169187 L 53.633594 -32.141844 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(12.998962%,28.999329%,52.999878%);fill-opacity:1;" d="M 124.125 43.597656 L 120.328125 40.929688 L 121.558594 43.210938 L 119.714844 45.035156 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(12.998962%,28.999329%,52.999878%);stroke-opacity:1;stroke-miterlimit:10;" d="M -0.491406 -24.169187 L -53.635937 -32.141844 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(12.998962%,28.999329%,52.999878%);fill-opacity:1;" d="M 11.726562 43.597656 L 16.136719 45.035156 L 14.289062 43.210938 L 15.519531 40.929688 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(30.999756%,59.999084%,1.998901%);stroke-opacity:1;stroke-miterlimit:10;" d="M 3.059375 -54.817625 L 56.2 -46.844969 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(30.999756%,59.999084%,1.998901%);fill-opacity:1;" d="M 68.417969 66.273438 L 72.832031 67.710938 L 70.984375 65.890625 L 72.214844 63.609375 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(30.999756%,59.999084%,1.998901%);stroke-opacity:1;stroke-miterlimit:10;" d="M -3.057812 -54.817625 L -56.198437 -46.844969 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(30.999756%,59.999084%,1.998901%);fill-opacity:1;" d="M 67.433594 66.273438 L 63.636719 63.609375 L 64.867188 65.890625 L 63.019531 67.710938 "/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.66875 -56.692625 L -0.671094 -56.692625 C -1.08125 -56.692625 -1.417187 -57.028562 -1.417187 -57.442625 L -1.417187 -61.6145 C -1.417187 -62.028562 -1.08125 -62.3645 -0.671094 -62.3645 L 0.66875 -62.3645 C 1.082813 -62.3645 1.41875 -62.028562 1.41875 -61.6145 L 1.41875 -57.442625 C 1.41875 -57.028562 1.082813 -56.692625 0.66875 -56.692625 Z M 0.66875 -56.692625 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M -56.022656 -73.700437 L -57.3625 -73.700437 C -57.776562 -73.700437 -58.1125 -74.036375 -58.1125 -74.450437 L -58.1125 -84.294187 C -58.1125 -84.704344 -57.776562 -85.040281 -57.3625 -85.040281 L -56.022656 -85.040281 C -55.6125 -85.040281 -55.276562 -84.704344 -55.276562 -84.294187 L -55.276562 -74.450437 C -55.276562 -74.036375 -55.6125 -73.700437 -56.022656 -73.700437 Z M -56.022656 -73.700437 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 57.364063 -73.700437 L 56.024219 -73.700437 C 55.610156 -73.700437 55.278125 -74.036375 55.278125 -74.450437 L 55.278125 -84.294187 C 55.278125 -84.704344 55.610156 -85.040281 56.024219 -85.040281 L 57.364063 -85.040281 C 57.778125 -85.040281 58.110156 -84.704344 58.110156 -84.294187 L 58.110156 -74.450437 C 58.110156 -74.036375 57.778125 -73.700437 57.364063 -73.700437 Z M 57.364063 -73.700437 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(12.998962%,28.999329%,52.999878%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.492969 -63.852781 L 53.633594 -71.825437 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(12.998962%,28.999329%,52.999878%);fill-opacity:1;" d="M 124.125 83.285156 L 120.328125 80.617188 L 121.558594 82.898438 L 119.714844 84.71875 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(12.998962%,28.999329%,52.999878%);stroke-opacity:1;stroke-miterlimit:10;" d="M -0.491406 -63.852781 L -53.635937 -71.825437 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(12.998962%,28.999329%,52.999878%);fill-opacity:1;" d="M 11.726562 83.285156 L 16.136719 84.71875 L 14.289062 82.898438 L 15.519531 80.617188 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(30.999756%,59.999084%,1.998901%);stroke-opacity:1;stroke-miterlimit:10;" d="M 3.059375 -94.505125 L 56.2 -86.532469 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(30.999756%,59.999084%,1.998901%);fill-opacity:1;" d="M 68.417969 105.960938 L 72.832031 107.398438 L 70.984375 105.578125 L 72.214844 103.292969 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(30.999756%,59.999084%,1.998901%);stroke-opacity:1;stroke-miterlimit:10;" d="M -3.057812 -94.505125 L -56.198437 -86.532469 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(30.999756%,59.999084%,1.998901%);fill-opacity:1;" d="M 67.433594 105.960938 L 63.636719 103.292969 L 64.867188 105.578125 L 63.019531 107.398438 "/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.66875 -96.380125 L -0.671094 -96.380125 C -1.08125 -96.380125 -1.417187 -96.712156 -1.417187 -97.126219 L -1.417187 -101.302 C -1.417187 -101.712156 -1.08125 -102.048094 -0.671094 -102.048094 L 0.66875 -102.048094 C 1.082813 -102.048094 1.41875 -101.712156 1.41875 -101.302 L 1.41875 -97.126219 C 1.41875 -96.712156 1.082813 -96.380125 0.66875 -96.380125 Z M 0.66875 -96.380125 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M -56.022656 -113.387937 L -57.3625 -113.387937 C -57.776562 -113.387937 -58.1125 -113.719969 -58.1125 -114.134031 L -58.1125 -123.977781 C -58.1125 -124.391844 -57.776562 -124.727781 -57.3625 -124.727781 L -56.022656 -124.727781 C -55.6125 -124.727781 -55.276562 -124.391844 -55.276562 -123.977781 L -55.276562 -114.134031 C -55.276562 -113.719969 -55.6125 -113.387937 -56.022656 -113.387937 Z M -56.022656 -113.387937 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 57.364063 -113.387937 L 56.024219 -113.387937 C 55.610156 -113.387937 55.278125 -113.719969 55.278125 -114.134031 L 55.278125 -123.977781 C 55.278125 -124.391844 55.610156 -124.727781 56.024219 -124.727781 L 57.364063 -124.727781 C 57.778125 -124.727781 58.110156 -124.391844 58.110156 -123.977781 L 58.110156 -114.134031 C 58.110156 -113.719969 57.778125 -113.387937 57.364063 -113.387937 Z M 57.364063 -113.387937 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(12.998962%,28.999329%,52.999878%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.492969 -103.540281 L 53.633594 -111.512937 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(12.998962%,28.999329%,52.999878%);fill-opacity:1;" d="M 124.125 122.96875 L 120.328125 120.300781 L 121.558594 122.585938 L 119.714844 124.40625 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(12.998962%,28.999329%,52.999878%);stroke-opacity:1;stroke-miterlimit:10;" d="M -0.491406 -103.540281 L -53.635937 -111.512937 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(12.998962%,28.999329%,52.999878%);fill-opacity:1;" d="M 11.726562 122.96875 L 16.136719 124.40625 L 14.289062 122.585938 L 15.519531 120.300781 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(30.999756%,59.999084%,1.998901%);stroke-opacity:1;stroke-miterlimit:10;" d="M 3.059375 -134.188719 L 56.2 -126.216062 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(30.999756%,59.999084%,1.998901%);fill-opacity:1;" d="M 68.417969 145.644531 L 72.832031 147.082031 L 70.984375 145.261719 L 72.214844 142.980469 "/>
-<path style="fill:none;stroke-width:0.79701;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(30.999756%,59.999084%,1.998901%);stroke-opacity:1;stroke-miterlimit:10;" d="M -3.057812 -134.188719 L -56.198437 -126.216062 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-<path style=" stroke:none;fill-rule:nonzero;fill:rgb(30.999756%,59.999084%,1.998901%);fill-opacity:1;" d="M 67.433594 145.644531 L 63.636719 142.980469 L 64.867188 145.261719 L 63.019531 147.082031 "/>
-<path style="fill-rule:nonzero;fill:rgb(94.999695%,94.999695%,94.999695%);fill-opacity:1;stroke-width:1.19553;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.66875 -136.063719 L -0.671094 -136.063719 C -1.08125 -136.063719 -1.417187 -136.399656 -1.417187 -136.813719 L -1.417187 -140.985594 C -1.417187 -141.399656 -1.08125 -141.735594 -0.671094 -141.735594 L 0.66875 -141.735594 C 1.082813 -141.735594 1.41875 -141.399656 1.41875 -140.985594 L 1.41875 -136.813719 C 1.41875 -136.399656 1.082813 -136.063719 0.66875 -136.063719 Z M 0.66875 -136.063719 " transform="matrix(1,0,0,-1,67.925,11.073)"/>
-</g>
-</svg>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-machine-learning/final.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-machine-learning/final.svg b/content/img/blog/crail-machine-learning/final.svg
deleted file mode 100644
index bd9a21d..0000000
--- a/content/img/blog/crail-machine-learning/final.svg
+++ /dev/null
@@ -1,326 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 6 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.267' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.267' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.267' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.267' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.267' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.267' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.267' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.267' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M60.5,286.0 L618.9,286.0  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,286.0 L68.0,286.0 M618.9,286.0 L611.4,286.0  '/>	<g transform="translate(53.5,289.3)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M60.5,237.8 L618.9,237.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,237.8 L68.0,237.8 M618.9,237.8 L611.4,237.8  '/>	<g transform="translate(53.5,241.1)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > 0.5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M60.5,189.6 L618.9,189.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,189.6 L68.0,189.6 M618.9,189.6 L611.4,189.6  '/>	<g transform="translate(53.5,192.9)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > 1</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M60.5,141.5 L67.5,141.5 M257.0,141.5 L618.9,141.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,141.5 L68.0,141.5 M618.9,141.5 L611.4,141.5  '/>	<g transform="translate(53.5,144.8)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > 1.5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M60.5,93.3 L67.5,93.3 M257.0,93.3 L618.9,93.3  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,93.3 L68.0,93.3 M618.9,93.3 L611.4,93.3  '/>	<g transform="translate(53.5,96.6)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > 2</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M60.5,45.1 L618.9,45.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,45.1 L68.0,45.1 M618.9,45.1 L611.4,45.1  '/>	<g transform="translate(53.5,48.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > 2.5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,45.1 L60.5,286.0 L618.9,286.0 L618.9,45.1 L60.5,45.1 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(14.2,165.6) rotate(270)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="middle">
-		<text><tspan font-family="Sans" >time [s]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(339.7,25.9)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="middle">
-		<text><tspan font-family="Sans" >Machine Learning</tspan></text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title> Compute (Vanilla)</title>
-<g fill="none" color="white" stroke="black" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,63.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Compute (Vanilla)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '214.5,63.8 250.0,63.8 250.0,56.3 214.5,56.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M214.5,63.8 L250.0,63.8 L250.0,56.4 L214.5,56.4 L214.5,63.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '259.2,286.0 299.1,286.0 299.1,240.5 259.2,240.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M259.2,286.0 L259.2,240.6 L299.0,240.6 L299.0,286.0 L259.2,286.0 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title> Compute (Crail)</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,78.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Compute (Crail)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat1' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(77,175,164)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat1)' points = '214.5,78.8 250.0,78.8 250.0,71.3 214.5,71.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M214.5,78.8 L250.0,78.8 L250.0,71.4 L214.5,71.4 L214.5,78.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat2' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(77,175,164)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat2)' points = '304.9,286.0 344.8,286.0 344.8,241.5 304.9,241.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M304.9,286.0 L304.9,241.6 L344.7,241.6 L344.7,286.0 L304.9,286.0 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title> Broadcast (Vanilla)</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,93.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Broadcast (Vanilla)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '214.5,93.8 250.0,93.8 250.0,86.3 214.5,86.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M214.5,93.8 L250.0,93.8 L250.0,86.4 L214.5,86.4 L214.5,93.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '350.6,286.0 390.5,286.0 390.5,248.6 350.6,248.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M350.6,286.0 L350.6,248.7 L390.4,248.7 L390.4,286.0 L350.6,286.0 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_4" ><title> Broadcast (Crail)</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,108.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Broadcast (Crail)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat3' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(255,127,0)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat3)' points = '214.5,108.8 250.0,108.8 250.0,101.3 214.5,101.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M214.5,108.8 L250.0,108.8 L250.0,101.4 L214.5,101.4 L214.5,108.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat4' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(255,127,0)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat4)' points = '396.3,286.0 436.2,286.0 436.2,277.9 396.3,277.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M396.3,286.0 L396.3,278.0 L436.1,278.0 L436.1,286.0 L396.3,286.0 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_5" ><title> Reduce (Vanilla)</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,123.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Reduce (Vanilla)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.900000' points = '214.5,123.8 250.0,123.8 250.0,116.3 214.5,116.3 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M214.5,123.8 L250.0,123.8 L250.0,116.4 L214.5,116.4 L214.5,123.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.900000' points = '442.0,286.0 481.9,286.0 481.9,171.7 442.0,171.7 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M442.0,286.0 L442.0,171.8 L481.8,171.8 L481.8,286.0 L442.0,286.0 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_6" ><title> Reduce (Crail)</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,138.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Reduce (Crail)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat5' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(228,26,28)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat5)' points = '214.5,138.8 250.0,138.8 250.0,131.3 214.5,131.3 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M214.5,138.8 L250.0,138.8 L250.0,131.4 L214.5,131.4 L214.5,138.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat6' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(228,26,28)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat6)' points = '487.7,286.0 527.6,286.0 527.6,220.4 487.7,220.4 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M487.7,286.0 L487.7,220.5 L527.5,220.5 L527.5,286.0 L487.7,286.0 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_7" ><title> Total (Vanilla)</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,153.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Total (Vanilla)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.900000' points = '214.5,153.8 250.0,153.8 250.0,146.3 214.5,146.3 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M214.5,153.8 L250.0,153.8 L250.0,146.4 L214.5,146.4 L214.5,153.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' fill-opacity = '0.900000' points = '533.5,286.0 573.3,286.0 573.3,46.2 533.5,46.2 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M533.5,286.0 L533.5,46.3 L573.2,46.3 L573.2,286.0 L533.5,286.0 Z  '/></g>
-	</g>
-	<g id="gnuplot_plot_8" ><title> Total (Crail)</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(207.5,168.4)" stroke="none" fill="black" font-family="Sans" font-size="10.00"  text-anchor="end">
-		<text><tspan font-family="Sans" > Total (Crail)</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat7' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(55,126,184)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat7)' points = '214.5,168.8 250.0,168.8 250.0,161.3 214.5,161.3 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M214.5,168.8 L250.0,168.8 L250.0,161.4 L214.5,161.4 L214.5,168.8 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="4.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<defs>
-		<pattern id='gpPat8' patternUnits='userSpaceOnUse' x='0' y='0' width='8' height='8'>
-			<path style='fill:none; stroke:rgb(55,126,184)' d='M0,0 L8,8 M0,8 L8,0'/>
-		</pattern>
-	</defs>
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon  fill = 'url(#gpPat8)' points = '579.2,286.0 619.0,286.0 619.0,150.1 579.2,150.1 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M579.2,286.0 L579.2,150.2 L618.9,150.2 L618.9,286.0 L579.2,286.0 Z  '/></g>
-	</g>
-<g fill="none" color="white" stroke="rgb( 55, 126, 184)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M60.5,45.1 L60.5,286.0 L618.9,286.0 L618.9,45.1 L60.5,45.1 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-memory/anatomy.png
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-memory/anatomy.png b/content/img/blog/crail-memory/anatomy.png
deleted file mode 100644
index c37ab7e..0000000
Binary files a/content/img/blog/crail-memory/anatomy.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-memory/cdf-broadcast-128-read.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-memory/cdf-broadcast-128-read.svg b/content/img/blog/crail-memory/cdf-broadcast-128-read.svg
deleted file mode 100644
index ab7f7b3..0000000
--- a/content/img/blog/crail-memory/cdf-broadcast-128-read.svg
+++ /dev/null
@@ -1,190 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L611.0,242.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L80.9,242.4 M611.0,242.4 L602.0,242.4  h0.01'/>	<g transform="translate(63.6,246.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,197.3 L611.0,197.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,197.3 L80.9,197.3 M611.0,197.3 L602.0,197.3  h0.01'/>	<g transform="translate(63.6,201.8)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,152.1 L611.0,152.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,152.1 L80.9,152.1 M611.0,152.1 L602.0,152.1  h0.01'/>	<g transform="translate(63.6,156.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,107.0 L611.0,107.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,107.0 L80.9,107.0 M611.0,107.0 L602.0,107.0  h0.01'/>	<g transform="translate(63.6,111.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,61.8 L611.0,61.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,61.8 L80.9,61.8 M611.0,61.8 L602.0,61.8  h0.01'/>	<g transform="translate(63.6,66.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,16.7 L611.0,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,16.7 L80.9,16.7 M611.0,16.7 L602.0,16.7  h0.01'/>	<g transform="translate(63.6,21.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L71.9,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L71.9,233.4 M71.9,16.7 L71.9,25.7  h0.01'/>	<g transform="translate(71.9,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>1us</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M179.7,242.4 L179.7,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M179.7,242.4 L179.7,233.4 M179.7,16.7 L179.7,25.7  h0.01'/>	<g transform="translate(179.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>10us</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M287.5,242.4 L287.5,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M287.5,242.4 L287.5,233.4 M287.5,16.7 L287.5,25.7  h0.01'/>	<g transform="translate(287.5,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>100us</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M395.4,242.4 L395.4,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M395.4,242.4 L395.4,233.4 M395.4,16.7 L395.4,25.7  h0.01'/>	<g transform="translate(395.4,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>1ms</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M503.2,242.4 L503.2,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M503.2,242.4 L503.2,233.4 M503.2,16.7 L503.2,25.7  h0.01'/>	<g transform="translate(503.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>10ms</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M611.0,242.4 L611.0,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M611.0,242.4 L611.0,233.4 M611.0,16.7 L611.0,25.7  h0.01'/>	<g transform="translate(611.0,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>100ms</text>
-	</g>
-	<path stroke='black'  d='M71.9,16.7 L71.9,242.4 L611.0,242.4 L611.0,16.7 L71.9,16.7 Z  h0.01'/>	<g transform="translate(17.6,129.6) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>CDF</text>
-	</g>
-	<g transform="translate(341.4,291.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>read 128b broadcast latency</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(568.8,210.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>crail</text>
-	</g>
-	<path stroke='rgb(  0, 255,   0)'  d='M577.1,206.4 L594.4,206.4 M198.7,240.1 L201.7,237.9 L201.7,235.6 L204.6,233.4 L204.6,231.1 L207.2,228.9 
-		L207.2,226.6 L209.8,224.3 L212.2,222.1 L212.2,219.8 L212.2,217.6 L212.2,215.3 L212.2,213.1 L212.2,210.8 
-		L212.2,208.5 L214.5,206.3 L214.5,204.0 L214.5,201.8 L214.5,199.5 L214.5,197.3 L214.5,195.0 L214.5,192.7 
-		L214.5,190.5 L214.5,188.2 L214.5,186.0 L214.5,183.7 L214.5,181.5 L214.5,179.2 L214.5,176.9 L214.5,174.7 
-		L214.5,172.4 L214.5,170.2 L214.5,167.9 L214.5,165.7 L214.5,163.4 L214.5,161.1 L214.5,158.9 L214.5,156.6 
-		L214.5,154.4 L214.5,152.1 L216.6,149.9 L216.6,147.6 L216.6,145.3 L216.6,143.1 L216.6,140.8 L216.6,138.6 
-		L216.6,136.3 L216.6,134.1 L216.6,131.8 L216.6,129.5 L216.6,127.3 L216.6,125.0 L216.6,122.8 L216.6,120.5 
-		L216.6,118.3 L216.6,116.0 L216.6,113.8 L216.6,111.5 L216.6,109.2 L216.6,107.0 L216.6,104.7 L216.6,102.5 
-		L218.7,100.2 L218.7,98.0 L218.7,95.7 L218.7,93.4 L218.7,91.2 L218.7,88.9 L218.7,86.7 L218.7,84.4 
-		L218.7,82.2 L218.7,79.9 L218.7,77.6 L218.7,75.4 L220.7,73.1 L220.7,70.9 L220.7,68.6 L220.7,66.4 
-		L220.7,64.1 L220.7,61.8 L220.7,59.6 L222.6,57.3 L222.6,55.1 L222.6,52.8 L222.6,50.6 L222.6,48.3 
-		L224.5,46.0 L224.5,43.8 L224.5,41.5 L226.2,39.3 L226.2,37.0 L227.9,34.8 L227.9,32.5 L229.6,30.2 
-		L231.2,28.0 L231.2,25.7 L232.7,23.5 L235.6,21.2 L238.4,19.0 L417.2,16.7  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(568.8,228.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>vanilla</text>
-	</g>
-	<path stroke='rgb(255,   0,   0)'  d='M577.1,224.4 L594.4,224.4 M361.5,240.1 L362.2,237.9 L362.7,235.6 L363.2,233.4 L363.6,231.1 L363.9,228.9 
-		L364.2,226.6 L364.6,224.3 L364.8,222.1 L365.1,219.8 L365.4,217.6 L365.6,215.3 L365.9,213.1 L366.2,210.8 
-		L366.5,208.5 L366.8,206.3 L367.0,204.0 L367.3,201.8 L367.5,199.5 L367.8,197.3 L368.1,195.0 L368.4,192.7 
-		L368.6,190.5 L369.0,188.2 L369.2,186.0 L369.4,183.7 L369.8,181.5 L370.0,179.2 L370.3,176.9 L370.7,174.7 
-		L370.9,172.4 L371.2,170.2 L371.4,167.9 L371.8,165.7 L372.1,163.4 L372.3,161.1 L372.6,158.9 L372.9,156.6 
-		L373.1,154.4 L373.4,152.1 L373.7,149.9 L374.0,147.6 L374.3,145.3 L374.6,143.1 L374.9,140.8 L375.2,138.6 
-		L375.5,136.3 L375.8,134.1 L376.1,131.8 L376.5,129.5 L376.7,127.3 L377.0,125.0 L377.3,122.8 L377.6,120.5 
-		L378.0,118.3 L378.3,116.0 L378.7,113.8 L379.0,111.5 L379.3,109.2 L379.7,107.0 L380.0,104.7 L380.3,102.5 
-		L380.7,100.2 L381.1,98.0 L381.5,95.7 L381.8,93.4 L382.3,91.2 L382.7,88.9 L383.1,86.7 L383.6,84.4 
-		L384.1,82.2 L384.6,79.9 L385.1,77.6 L385.6,75.4 L386.2,73.1 L386.8,70.9 L387.5,68.6 L388.1,66.4 
-		L388.9,64.1 L389.9,61.8 L390.9,59.6 L392.3,57.3 L393.9,55.1 L396.2,52.8 L399.3,50.6 L404.1,48.3 
-		L411.7,46.0 L423.9,43.8 L431.2,41.5 L434.9,39.3 L437.4,37.0 L439.4,34.8 L441.2,32.5 L443.0,30.2 
-		L444.9,28.0 L446.9,25.7 L449.7,23.5 L452.5,21.2 L454.9,19.0 L559.1,16.7  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='rgb(192, 192, 192)'  d='M204.6,240.1 L204.6,237.9 L204.6,235.6 L204.6,233.4 L204.6,231.1 L204.6,228.9 L204.6,226.6 L204.6,224.3 
-		L204.6,222.1 L204.6,219.8 L204.6,217.6 L204.6,215.3 L204.6,213.1 L204.6,210.8 L204.6,208.5 L204.6,206.3 
-		L204.6,204.0 L204.6,201.8 L204.6,199.5 L204.6,197.3 L204.6,195.0 L204.6,192.7 L204.6,190.5 L204.6,188.2 
-		L204.6,186.0 L204.6,183.7 L204.6,181.5 L204.6,179.2 L204.6,176.9 L204.6,174.7 L204.6,172.4 L204.6,170.2 
-		L204.6,167.9 L204.6,165.7 L204.6,163.4 L204.6,161.1 L204.6,158.9 L204.6,156.6 L204.6,154.4 L204.6,152.1 
-		L204.6,149.9 L204.6,147.6 L204.6,145.3 L204.6,143.1 L204.6,140.8 L204.6,138.6 L204.6,136.3 L204.6,134.1 
-		L204.6,131.8 L204.6,129.5 L204.6,127.3 L204.6,125.0 L204.6,122.8 L204.6,120.5 L204.6,118.3 L204.6,116.0 
-		L204.6,113.8 L204.6,111.5 L204.6,109.2 L204.6,107.0 L204.6,104.7 L204.6,102.5 L204.6,100.2 L204.6,98.0 
-		L204.6,95.7 L204.6,93.4 L204.6,91.2 L204.6,88.9 L204.6,86.7 L204.6,84.4 L204.6,82.2 L204.6,79.9 
-		L204.6,77.6 L204.6,75.4 L204.6,73.1 L204.6,70.9 L204.6,68.6 L204.6,66.4 L204.6,64.1 L204.6,61.8 
-		L204.6,59.6 L204.6,57.3 L204.6,55.1 L204.6,52.8 L204.6,50.6 L204.6,48.3 L204.6,46.0 L204.6,43.8 
-		L204.6,41.5 L204.6,39.3 L204.6,37.0 L204.6,34.8 L204.6,32.5 L204.6,30.2 L204.6,28.0 L204.6,25.7 
-		L204.6,23.5 L204.6,21.2 L204.6,19.0 L204.6,16.7  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb(192, 192, 192); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,16.7 L71.9,242.4 L611.0,242.4 L611.0,16.7 L71.9,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-memory/crail-groupby.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-memory/crail-groupby.svg b/content/img/blog/crail-memory/crail-groupby.svg
deleted file mode 100644
index 042c983..0000000
--- a/content/img/blog/crail-memory/crail-groupby.svg
+++ /dev/null
@@ -1,213 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L615.0,242.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L80.9,242.4  h0.01'/>	<g transform="translate(63.6,246.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,204.7 L615.0,204.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,204.7 L80.9,204.7  h0.01'/>	<g transform="translate(63.6,209.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,167.1 L615.0,167.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,167.1 L80.9,167.1  h0.01'/>	<g transform="translate(63.6,171.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,129.4 L615.0,129.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,129.4 L80.9,129.4  h0.01'/>	<g transform="translate(63.6,133.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,91.8 L489.8,91.8 M606.7,91.8 L615.0,91.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,91.8 L80.9,91.8  h0.01'/>	<g transform="translate(63.6,96.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,54.1 L615.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,54.1 L80.9,54.1  h0.01'/>	<g transform="translate(63.6,58.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L71.9,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L71.9,233.4  h0.01'/>	<g transform="translate(71.9,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M117.2,242.4 L117.2,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M117.2,242.4 L117.2,233.4  h0.01'/>	<g transform="translate(117.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 10</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M162.4,242.4 L162.4,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M162.4,242.4 L162.4,233.4  h0.01'/>	<g transform="translate(162.4,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M207.7,242.4 L207.7,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M207.7,242.4 L207.7,233.4  h0.01'/>	<g transform="translate(207.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 30</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M252.9,242.4 L252.9,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M252.9,242.4 L252.9,233.4  h0.01'/>	<g transform="translate(252.9,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M298.2,242.4 L298.2,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M298.2,242.4 L298.2,233.4  h0.01'/>	<g transform="translate(298.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 50</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M343.5,242.4 L343.5,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M343.5,242.4 L343.5,233.4  h0.01'/>	<g transform="translate(343.5,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M388.7,242.4 L388.7,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M388.7,242.4 L388.7,233.4  h0.01'/>	<g transform="translate(388.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 70</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M434.0,242.4 L434.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M434.0,242.4 L434.0,233.4  h0.01'/>	<g transform="translate(434.0,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M479.2,242.4 L479.2,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M479.2,242.4 L479.2,233.4  h0.01'/>	<g transform="translate(479.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 90</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M524.5,242.4 L524.5,117.1 M524.5,63.1 L524.5,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M524.5,242.4 L524.5,233.4  h0.01'/>	<g transform="translate(524.5,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M569.7,242.4 L569.7,117.1 M569.7,63.1 L569.7,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M569.7,242.4 L569.7,233.4  h0.01'/>	<g transform="translate(569.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 110</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M615.0,242.4 L615.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M615.0,242.4 L615.0,233.4  h0.01'/>	<g transform="translate(615.0,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 120</text>
-	</g>
-	<path stroke='black'  d='M71.9,54.1 L71.9,242.4 L615.0,242.4 L615.0,54.1 L71.9,54.1 Z  h0.01'/>	<g transform="translate(17.6,148.3) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput (Gbit/s)</text>
-	</g>
-	<g transform="translate(343.4,291.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Elapsed time (seconds)</text>
-	</g>
-	<g transform="translate(343.4,31.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Groupby Spark/Crail</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,76.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>1 core</text>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M556.2,72.1 L598.4,72.1 M71.9,242.4 L76.4,242.4 L81.0,242.4 L85.5,242.4 L90.0,242.4 L94.5,242.4 
-		L99.1,242.4 L103.6,242.4 L108.1,242.4 L112.6,242.4 L117.2,157.6 L121.7,101.6 L126.2,96.3 L130.7,96.5 
-		L135.3,198.6 L139.8,242.4 L144.3,242.4  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,94.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>4 cores</text>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M556.2,90.1 L598.4,90.1 M71.9,242.4 L76.4,242.4 L81.0,242.4 L85.5,242.4 L90.0,242.4 L94.5,242.4 
-		L99.1,177.0 L103.6,107.0 L108.1,99.9 L112.6,91.0 L117.2,177.2 L121.7,242.4  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,112.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>8 cores</text>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M556.2,108.1 L598.4,108.1 M71.9,242.4 L76.4,242.4 L81.0,242.4 L85.5,242.4 L90.0,242.4 L94.5,242.4 
-		L99.1,128.0 L103.6,101.9 L108.1,106.1 L112.6,117.1 L117.2,198.6 L121.7,242.4  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb( 77, 175, 164); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,54.1 L71.9,242.4 L615.0,242.4 L615.0,54.1 L71.9,54.1 Z  h0.01'/></g>
-</g>
-</svg>
-


[06/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/namenode_ibsend_iops64.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/namenode_ibsend_iops64.svg b/content/img/blog/crail-metadata/namenode_ibsend_iops64.svg
deleted file mode 100644
index 40a2c3e..0000000
--- a/content/img/blog/crail-metadata/namenode_ibsend_iops64.svg
+++ /dev/null
@@ -1,438 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,223.2 L606.3,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,223.2 L97.6,223.2 M606.3,223.2 L594.3,223.2  '/>	<g transform="translate(74.4,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,183.1 L606.3,183.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,183.1 L97.6,183.1 M606.3,183.1 L594.3,183.1  '/>	<g transform="translate(74.4,189.1)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,142.9 L606.3,142.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,142.9 L97.6,142.9 M606.3,142.9 L594.3,142.9  '/>	<g transform="translate(74.4,148.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,102.8 L359.1,102.8 M595.1,102.8 L606.3,102.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,102.8 L97.6,102.8 M606.3,102.8 L594.3,102.8  '/>	<g transform="translate(74.4,108.8)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 15</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,62.6 L359.1,62.6 M595.1,62.6 L606.3,62.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,62.6 L97.6,62.6 M606.3,62.6 L594.3,62.6  '/>	<g transform="translate(74.4,68.6)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,22.5 L606.3,22.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L97.6,22.5 M606.3,22.5 L594.3,22.5  '/>	<g transform="translate(74.4,28.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 25</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,223.2 L85.6,211.2 M85.6,22.5 L85.6,34.5  '/>	<g transform="translate(85.6,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M160.0,223.2 L160.0,211.2 M160.0,22.5 L160.0,34.5  '/>	<g transform="translate(160.0,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M234.4,223.2 L234.4,211.2 M234.4,22.5 L234.4,34.5  '/>	<g transform="translate(234.4,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M308.8,223.2 L308.8,211.2 M308.8,22.5 L308.8,34.5  '/>	<g transform="translate(308.8,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M383.1,223.2 L383.1,211.2 M383.1,22.5 L383.1,34.5  '/>	<g transform="translate(383.1,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M457.5,223.2 L457.5,211.2 M457.5,22.5 L457.5,34.5  '/>	<g transform="translate(457.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 50</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M531.9,223.2 L531.9,211.2 M531.9,22.5 L531.9,34.5  '/>	<g transform="translate(531.9,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 60</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M606.3,223.2 L606.3,211.2 M606.3,22.5 L606.3,34.5  '/>	<g transform="translate(606.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 70</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L85.6,223.2 L606.3,223.2 L606.3,22.5 L85.6,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS [millions]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(345.9,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Number of clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>Namenode IOPS</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,52.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >Namenode IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb( 77, 175, 164)'  d='M527.1,46.5 L583.9,46.5 M93.0,215.8 L100.5,208.1 L107.9,201.9 L115.4,193.9 L122.8,186.0 L130.2,178.6
-		L137.7,171.2 L145.1,163.2 L152.5,162.9 L160.0,159.6 L167.4,155.8 L174.9,155.5 L182.3,154.0 L189.7,150.9
-		L197.2,148.0 L204.6,146.9 L212.1,145.5 L219.5,148.1 L226.9,148.9 L234.4,148.1 L241.8,148.0 L249.2,147.2
-		L256.7,149.0 L264.1,146.0 L271.6,148.3 L279.0,149.6 L286.4,149.7 L293.9,149.5 L301.3,149.2 L308.8,149.2
-		L316.2,151.1 L323.6,154.3 L331.1,151.3 L338.5,149.9 L346.0,148.9 L353.4,150.9 L360.8,150.0 L368.3,149.5
-		L375.7,151.0 L383.1,152.0 L390.6,152.1 L398.0,150.8 L405.5,152.4 L412.9,152.5 L420.3,150.7 L427.8,153.8
-		L435.2,154.2 L442.7,153.1 L450.1,155.3 L457.5,153.2 L465.0,153.9 L472.4,153.1 L479.8,154.9 L487.3,158.7
-		L494.7,157.1 L502.2,155.8 L509.6,156.0 L517.0,155.5 L524.5,156.1 L531.9,159.1 L539.4,158.5 L546.8,159.5
-		L554.2,157.5 L561.7,160.3  '/>	<use xlink:href='#gpPt2' transform='translate(93.0,215.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(100.5,208.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(107.9,201.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(115.4,193.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(122.8,186.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(130.2,178.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.7,171.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(145.1,163.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(152.5,162.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.0,159.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.4,155.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,155.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(182.3,154.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.7,150.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(197.2,148.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(204.6,146.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(212.1,145.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(219.5,148.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(226.9,148.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(234.4,148.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(241.8,148.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(249.2,147.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(256.7,149.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(264.1,146.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(271.6,148.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.0,149.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.4,149.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.9,149.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(301.3,149.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(308.8,149.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(316.2,151.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(323.6,154.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(331.1,151.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(338.5,149.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(346.0,148.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(353.4,150.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(360.8,150.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(368.3,149.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(375.7,151.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.1,152.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,152.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(398.0,150.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(405.5,152.4) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(412.9,152.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(420.3,150.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(427.8,153.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(435.2,154.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(442.7,153.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(450.1,155.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(457.5,153.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(465.0,153.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(472.4,153.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(479.8,154.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(487.3,158.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(494.7,157.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(502.2,155.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(509.6,156.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(517.0,155.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(524.5,156.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(531.9,159.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(539.4,158.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(546.8,159.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(554.2,157.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(561.7,160.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.5,46.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>ib send</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,76.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >ib send</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb( 64,  64, 255)'  d='M527.1,70.5 L583.9,70.5 M93.0,176.5 L100.5,161.7 L107.9,150.8 L115.4,150.9 L122.8,153.5 L130.2,155.1
-		L137.7,151.7 L145.1,156.2 L152.5,159.4 L160.0,149.4 L167.4,156.8 L174.9,155.9 L182.3,147.1 L189.7,155.7
-		L197.2,153.0 L204.6,155.1 L212.1,157.8 L219.5,154.6 L226.9,154.5 L234.4,155.5 L241.8,155.5 L249.2,156.8
-		L256.7,155.3 L264.1,156.1 L271.6,157.0 L279.0,155.7 L286.4,157.7 L293.9,156.9 L301.3,153.8 L308.8,156.7
-		L316.2,156.7 L323.6,155.9 L331.1,155.3 L338.5,156.5 L346.0,155.5 L353.4,156.3 L360.8,154.0 L368.3,154.4
-		L375.7,154.8 L383.1,154.1 L390.6,153.7 L398.0,153.0 L405.5,153.5 L412.9,152.1 L420.3,150.3 L427.8,151.9
-		L435.2,151.4 L442.7,152.5 L450.1,152.9 L457.5,151.1 L465.0,152.3 L472.4,152.3 L479.8,151.3 L487.3,151.9
-		L494.7,152.1 L502.2,151.3 L509.6,151.3 L517.0,149.6 L524.5,150.9 L531.9,151.4 L539.4,150.0 L546.8,150.9
-		L554.2,151.1  '/>	<use xlink:href='#gpPt2' transform='translate(93.0,176.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(100.5,161.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(107.9,150.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(115.4,150.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(122.8,153.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(130.2,155.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.7,151.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(145.1,156.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(152.5,159.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.0,149.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.4,156.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,155.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(182.3,147.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.7,155.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(197.2,153.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(204.6,155.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(212.1,157.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(219.5,154.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(226.9,154.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(234.4,155.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(241.8,155.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(249.2,156.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(256.7,155.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(264.1,156.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(271.6,157.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.0,155.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.4,157.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.9,156.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(301.3,153.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(308.8,156.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(316.2,156.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(323.6,155.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(331.1,155.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(338.5,156.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(346.0,155.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(353.4,156.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(360.8,154.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(368.3,154.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(375.7,154.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.1,154.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,153.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(398.0,153.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(405.5,153.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(412.9,152.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(420.3,150.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(427.8,151.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(435.2,151.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(442.7,152.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(450.1,152.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(457.5,151.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(465.0,152.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(472.4,152.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(479.8,151.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(487.3,151.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(494.7,152.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(502.2,151.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(509.6,151.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(517.0,149.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(524.5,150.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(531.9,151.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(539.4,150.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(546.8,150.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(554.2,151.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.5,70.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>ib send CQ mod</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,100.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >ib send CQ mod</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb(255, 170, 255)'  d='M527.1,94.5 L583.9,94.5 M93.0,139.0 L100.5,87.9 L107.9,98.0 L115.4,103.3 L122.8,103.0 L130.2,102.7
-		L137.7,105.7 L145.1,100.1 L152.5,85.5 L160.0,104.8 L167.4,95.1 L174.9,104.7 L182.3,90.7 L189.7,100.5
-		L197.2,119.6 L204.6,112.2 L212.1,112.5 L219.5,101.5 L226.9,100.5 L234.4,107.0 L241.8,112.3 L249.2,115.8
-		L256.7,110.8 L264.1,118.3 L271.6,113.2 L279.0,107.6 L286.4,109.2 L293.9,116.9 L301.3,114.9 L308.8,114.7
-		L316.2,117.1 L323.6,114.0 L331.1,110.7 L338.5,116.5 L346.0,114.6 L353.4,112.7 L360.8,115.7 L368.3,113.8
-		L375.7,111.8 L383.1,110.0 L390.6,116.5 L398.0,115.1 L405.5,105.5 L412.9,116.7 L420.3,110.9 L427.8,113.9
-		L435.2,115.9 L442.7,110.2 L450.1,109.2 L457.5,117.5 L465.0,110.9 L472.4,112.8 L479.8,111.3 L487.3,108.9
-		L494.7,114.1 L502.2,117.7 L509.6,110.1 L517.0,110.5 L524.5,117.2 L531.9,111.6 L539.4,110.0 L546.8,115.3
-		L554.2,112.9  '/>	<use xlink:href='#gpPt2' transform='translate(93.0,139.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(100.5,87.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(107.9,98.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(115.4,103.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(122.8,103.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(130.2,102.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.7,105.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(145.1,100.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(152.5,85.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.0,104.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.4,95.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,104.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(182.3,90.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.7,100.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(197.2,119.6) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(204.6,112.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(212.1,112.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(219.5,101.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(226.9,100.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(234.4,107.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(241.8,112.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(249.2,115.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(256.7,110.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(264.1,118.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(271.6,113.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.0,107.6) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.4,109.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.9,116.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(301.3,114.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(308.8,114.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(316.2,117.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(323.6,114.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(331.1,110.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(338.5,116.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(346.0,114.6) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(353.4,112.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(360.8,115.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(368.3,113.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(375.7,111.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.1,110.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,116.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(398.0,115.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(405.5,105.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(412.9,116.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(420.3,110.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(427.8,113.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(435.2,115.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(442.7,110.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(450.1,109.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(457.5,117.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(465.0,110.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(472.4,112.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(479.8,111.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(487.3,108.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(494.7,114.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(502.2,117.7) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(509.6,110.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(517.0,110.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(524.5,117.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(531.9,111.6) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(539.4,110.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(546.8,115.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(554.2,112.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.5,94.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-</g>
-	</g>
-<g fill="none" color="white" stroke="rgb(255, 170, 255)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L85.6,223.2 L606.3,223.2 L606.3,22.5 L85.6,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/namenode_multi64.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/namenode_multi64.svg b/content/img/blog/crail-metadata/namenode_multi64.svg
deleted file mode 100644
index eaf46cd..0000000
--- a/content/img/blog/crail-metadata/namenode_multi64.svg
+++ /dev/null
@@ -1,466 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,223.2 L606.3,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,223.2 L97.6,223.2 M606.3,223.2 L594.3,223.2  '/>	<g transform="translate(74.4,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,194.5 L606.3,194.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,194.5 L97.6,194.5 M606.3,194.5 L594.3,194.5  '/>	<g transform="translate(74.4,200.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 5</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,165.9 L606.3,165.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,165.9 L97.6,165.9 M606.3,165.9 L594.3,165.9  '/>	<g transform="translate(74.4,171.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,137.2 L606.3,137.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,137.2 L97.6,137.2 M606.3,137.2 L594.3,137.2  '/>	<g transform="translate(74.4,143.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 15</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,108.5 L606.3,108.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,108.5 L97.6,108.5 M606.3,108.5 L594.3,108.5  '/>	<g transform="translate(74.4,114.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,79.8 L96.8,79.8 M355.2,79.8 L606.3,79.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,79.8 L97.6,79.8 M606.3,79.8 L594.3,79.8  '/>	<g transform="translate(74.4,85.8)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 25</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,51.2 L96.8,51.2 M355.2,51.2 L606.3,51.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,51.2 L97.6,51.2 M606.3,51.2 L594.3,51.2  '/>	<g transform="translate(74.4,57.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M85.6,22.5 L606.3,22.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L97.6,22.5 M606.3,22.5 L594.3,22.5  '/>	<g transform="translate(74.4,28.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 35</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,223.2 L85.6,211.2 M85.6,22.5 L85.6,34.5  '/>	<g transform="translate(85.6,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M160.0,223.2 L160.0,211.2 M160.0,22.5 L160.0,34.5  '/>	<g transform="translate(160.0,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M234.4,223.2 L234.4,211.2 M234.4,22.5 L234.4,34.5  '/>	<g transform="translate(234.4,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M308.8,223.2 L308.8,211.2 M308.8,22.5 L308.8,34.5  '/>	<g transform="translate(308.8,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M383.1,223.2 L383.1,211.2 M383.1,22.5 L383.1,34.5  '/>	<g transform="translate(383.1,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M457.5,223.2 L457.5,211.2 M457.5,22.5 L457.5,34.5  '/>	<g transform="translate(457.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 50</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M531.9,223.2 L531.9,211.2 M531.9,22.5 L531.9,34.5  '/>	<g transform="translate(531.9,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 60</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M606.3,223.2 L606.3,211.2 M606.3,22.5 L606.3,34.5  '/>	<g transform="translate(606.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 70</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L85.6,223.2 L606.3,223.2 L606.3,22.5 L85.6,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS [millions]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(345.9,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Number of clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>Namenode IOPS</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(276.0,52.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >Namenode IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb( 77, 175, 164)'  d='M287.2,46.5 L344.0,46.5 M93.0,217.9 L100.5,212.4 L107.9,208.0 L115.4,202.3 L122.8,196.6 L130.2,191.3
-		L137.7,186.1 L145.1,180.3 L152.5,180.1 L160.0,177.8 L167.4,175.1 L174.9,174.8 L182.3,173.8 L189.7,171.5
-		L197.2,169.5 L204.6,168.7 L212.1,167.7 L219.5,169.6 L226.9,170.1 L234.4,169.6 L241.8,169.5 L249.2,168.9
-		L256.7,170.2 L264.1,168.1 L271.6,169.7 L279.0,170.6 L286.4,170.7 L293.9,170.5 L301.3,170.3 L308.8,170.3
-		L316.2,171.7 L323.6,174.0 L331.1,171.9 L338.5,170.8 L346.0,170.1 L353.4,171.6 L360.8,170.9 L368.3,170.6
-		L375.7,171.7 L383.1,172.3 L390.6,172.4 L398.0,171.5 L405.5,172.6 L412.9,172.7 L420.3,171.4 L427.8,173.6
-		L435.2,173.9 L442.7,173.1 L450.1,174.7 L457.5,173.2 L465.0,173.7 L472.4,173.1 L479.8,174.4 L487.3,177.1
-		L494.7,176.0 L502.2,175.1 L509.6,175.2 L517.0,174.8 L524.5,175.3 L531.9,177.4 L539.4,177.0 L546.8,177.7
-		L554.2,176.3 L561.7,178.3  '/>	<use xlink:href='#gpPt2' transform='translate(93.0,217.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(100.5,212.4) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(107.9,208.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(115.4,202.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(122.8,196.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(130.2,191.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.7,186.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(145.1,180.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(152.5,180.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.0,177.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.4,175.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,174.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(182.3,173.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.7,171.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(197.2,169.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(204.6,168.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(212.1,167.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(219.5,169.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(226.9,170.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(234.4,169.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(241.8,169.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(249.2,168.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(256.7,170.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(264.1,168.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(271.6,169.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.0,170.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.4,170.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.9,170.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(301.3,170.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(308.8,170.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(316.2,171.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(323.6,174.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(331.1,171.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(338.5,170.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(346.0,170.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(353.4,171.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(360.8,170.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(368.3,170.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(375.7,171.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.1,172.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,172.4) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(398.0,171.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(405.5,172.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(412.9,172.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(420.3,171.4) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(427.8,173.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(435.2,173.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(442.7,173.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(450.1,174.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(457.5,173.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(465.0,173.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(472.4,173.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(479.8,174.4) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(487.3,177.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(494.7,176.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(502.2,175.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(509.6,175.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(517.0,174.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(524.5,175.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(531.9,177.4) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(539.4,177.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(546.8,177.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(554.2,176.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(561.7,178.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(315.6,46.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>2 Namenodes IOPS</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(276.0,76.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >2 Namenodes IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb(255, 127,   0)'  d='M287.2,70.5 L344.0,70.5 M93.0,218.2 L100.5,212.9 L107.9,207.6 L115.4,202.1 L122.8,197.7 L130.2,191.8
-		L137.7,187.0 L145.1,182.0 L152.5,177.4 L160.0,173.6 L167.4,169.4 L174.9,166.4 L182.3,164.1 L189.7,160.2
-		L197.2,156.9 L204.6,154.0 L212.1,152.7 L219.5,151.9 L226.9,147.7 L234.4,147.1 L241.8,143.1 L249.2,141.1
-		L256.7,141.1 L264.1,138.5 L271.6,140.9 L279.0,136.3 L286.4,137.1 L293.9,138.2 L301.3,134.1 L308.8,136.2
-		L316.2,135.6 L323.6,133.6 L331.1,133.0 L338.5,133.0 L346.0,129.6 L353.4,130.6 L360.8,131.8 L368.3,130.5
-		L375.7,131.5 L383.1,135.3 L390.6,131.1 L398.0,129.6 L405.5,128.9 L412.9,130.3 L420.3,129.6 L427.8,130.7
-		L435.2,128.7 L442.7,130.8 L450.1,127.2 L457.5,126.7 L465.0,127.8 L472.4,127.8 L479.8,127.2 L487.3,128.2
-		L494.7,128.4 L502.2,125.5 L509.6,127.9 L517.0,127.5 L524.5,127.2 L531.9,125.1 L539.4,125.9 L546.8,126.5
-		L554.2,126.9 L561.7,127.0  '/>	<use xlink:href='#gpPt2' transform='translate(93.0,218.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(100.5,212.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(107.9,207.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(115.4,202.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(122.8,197.7) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(130.2,191.8) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.7,187.0) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(145.1,182.0) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(152.5,177.4) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.0,173.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.4,169.4) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,166.4) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(182.3,164.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.7,160.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(197.2,156.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(204.6,154.0) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(212.1,152.7) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(219.5,151.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(226.9,147.7) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(234.4,147.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(241.8,143.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(249.2,141.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(256.7,141.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(264.1,138.5) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(271.6,140.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.0,136.3) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.4,137.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.9,138.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(301.3,134.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(308.8,136.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(316.2,135.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(323.6,133.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(331.1,133.0) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(338.5,133.0) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(346.0,129.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(353.4,130.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(360.8,131.8) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(368.3,130.5) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(375.7,131.5) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.1,135.3) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,131.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(398.0,129.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(405.5,128.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(412.9,130.3) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(420.3,129.6) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(427.8,130.7) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(435.2,128.7) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(442.7,130.8) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(450.1,127.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(457.5,126.7) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(465.0,127.8) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(472.4,127.8) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(479.8,127.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(487.3,128.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(494.7,128.4) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(502.2,125.5) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(509.6,127.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(517.0,127.5) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(524.5,127.2) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(531.9,125.1) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(539.4,125.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(546.8,126.5) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(554.2,126.9) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(561.7,127.0) scale(3.00)' color='rgb(255, 127,   0)'/>
-	<use xlink:href='#gpPt2' transform='translate(315.6,70.5) scale(3.00)' color='rgb(255, 127,   0)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>4 Namenodes IOPS</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(276.0,100.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >4 Namenodes IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb(127, 127, 255)'  d='M287.2,94.5 L344.0,94.5 M93.0,218.0 L100.5,213.0 L107.9,207.4 L115.4,202.7 L122.8,197.4 L130.2,192.6
-		L137.7,187.6 L145.1,182.0 L152.5,178.1 L160.0,172.8 L167.4,168.4 L174.9,163.4 L182.3,160.5 L189.7,156.4
-		L197.2,150.3 L204.6,145.8 L212.1,142.5 L219.5,140.0 L226.9,136.9 L234.4,132.2 L241.8,129.7 L249.2,126.0
-		L256.7,124.9 L264.1,121.5 L271.6,119.4 L279.0,116.5 L286.4,113.5 L293.9,110.5 L301.3,109.9 L308.8,104.9
-		L316.2,103.4 L323.6,102.2 L331.1,99.9 L338.5,97.2 L346.0,95.5 L353.4,95.4 L360.8,93.8 L368.3,91.1
-		L375.7,89.1 L383.1,86.5 L390.6,88.1 L398.0,86.1 L405.5,85.6 L412.9,82.2 L420.3,81.2 L427.8,79.1
-		L435.2,79.1 L442.7,76.4 L450.1,79.4 L457.5,74.4 L465.0,74.0 L472.4,76.8 L479.8,72.3 L487.3,74.9
-		L494.7,70.3 L502.2,72.5 L509.6,70.5 L517.0,70.3 L524.5,71.3 L531.9,69.7 L539.4,67.8 L546.8,69.6
-		L554.2,66.0 L561.7,66.1  '/>	<use xlink:href='#gpPt2' transform='translate(93.0,218.0) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(100.5,213.0) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(107.9,207.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(115.4,202.7) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(122.8,197.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(130.2,192.6) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(137.7,187.6) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(145.1,182.0) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(152.5,178.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(160.0,172.8) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.4,168.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,163.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(182.3,160.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(189.7,156.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(197.2,150.3) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(204.6,145.8) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(212.1,142.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(219.5,140.0) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(226.9,136.9) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(234.4,132.2) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(241.8,129.7) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(249.2,126.0) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(256.7,124.9) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(264.1,121.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(271.6,119.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.0,116.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.4,113.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.9,110.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(301.3,109.9) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(308.8,104.9) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(316.2,103.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(323.6,102.2) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(331.1,99.9) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(338.5,97.2) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(346.0,95.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(353.4,95.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(360.8,93.8) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(368.3,91.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(375.7,89.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.1,86.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,88.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(398.0,86.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(405.5,85.6) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(412.9,82.2) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(420.3,81.2) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(427.8,79.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(435.2,79.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(442.7,76.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(450.1,79.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(457.5,74.4) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(465.0,74.0) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(472.4,76.8) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(479.8,72.3) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(487.3,74.9) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(494.7,70.3) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(502.2,72.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(509.6,70.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(517.0,70.3) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(524.5,71.3) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(531.9,69.7) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(539.4,67.8) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(546.8,69.6) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(554.2,66.0) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(561.7,66.1) scale(3.00)' color='rgb(127, 127, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(315.6,94.5) scale(3.00)' color='rgb(127, 127, 255)'/>
-</g>
-	</g>
-<g fill="none" color="white" stroke="rgb(127, 127, 255)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M85.6,22.5 L85.6,223.2 L606.3,223.2 L606.3,22.5 L85.6,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-


[12/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/11/floss.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/11/floss.html b/content/blog/2017/11/floss.html
deleted file mode 100644
index c429c1a..0000000
--- a/content/blog/2017/11/floss.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Floss</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/floss-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/floss-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Floss</h2>   
-          
-
-          <p>Crail features in the <a href="https://twit.tv/shows/floss-weekly/episodes/458?autostart=false">FLOSS weekly podcast</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/11/iops.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/11/iops.html b/content/blog/2017/11/iops.html
deleted file mode 100644
index 19cc49e..0000000
--- a/content/blog/2017/11/iops.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Iops</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/iops-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/iops-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Iops</h2>   
-          
-
-          <p>New blog <a href="http://crail.incubator.apache.org/blog/2017/11/crail-metadata.html">post</a> about Crail’s metadata performance and scalability</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/11/rdmashuffle.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/11/rdmashuffle.html b/content/blog/2017/11/rdmashuffle.html
deleted file mode 100644
index 4482592..0000000
--- a/content/blog/2017/11/rdmashuffle.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Spark Shuffle: SparkRDMA vs Crail</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/rdmashuffle-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/rdmashuffle-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Spark Shuffle: SparkRDMA vs Crail</h2>   
-          
-
-          <p class="meta">17 Nov 2017</p>
-
-<div class="post">
-<div style="text-align: justify">
-<p>
-This blog is comparing the shuffle performance of Crail with SparkRDMA, an alternative RDMA-based shuffle plugin for Spark.
-</p>
-</div>
-
-<h3 id="hardware-configuration">Hardware Configuration</h3>
-
-<p>The specific cluster configuration used for the experiments in this blog:</p>
-
-<ul>
-  <li>Cluster
-    <ul>
-      <li>8 compute + 1 management node x86_64 cluster</li>
-    </ul>
-  </li>
-  <li>Node configuration
-    <ul>
-      <li>CPU: 2 x Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz</li>
-      <li>DRAM: 96GB DDR3</li>
-      <li>Network: 1x100Gbit/s Mellanox ConnectX-5</li>
-    </ul>
-  </li>
-  <li>Software
-    <ul>
-      <li>Ubuntu 16.04.3 LTS (Xenial Xerus) with Linux kernel version 4.10.0-33-generic</li>
-      <li><a href="https://github.com/zrlio/crail">Crail 1.0</a>, commit a45c8382050f471e9342e1c6cf25f9f2001af6b5</li>
-      <li><a href="">Crail Shuffle plugin</a>, commit 2273b5dd53405cab3389f5c1fc2ee4cd30f02ae6</li>
-      <li><a href="https://github.com/Mellanox/SparkRDMA">SparkRDMA</a>, commit d95ce3e370a8e3b5146f4e0ab5e67a19c6f405a5 (latest master on 8th of November 2017)</li>
-    </ul>
-  </li>
-</ul>
-
-<h3 id="overview">Overview</h3>
-<div style="text-align: justify">
-<p>
-Lately there has been an increasing interest in the community to include RDMA networking into data processing frameworks like Spark and Hadoop. One natural spot to integrate RDMA is in the shuffle operation that involves all-to-all network communication pattern. Naturally, due to its performance requirements the shuffle operation is of interest to us as well, and we have developed a Spark plugin for shuffle. In our previous blog posts, we have already shown that the Crail Shuffler achieves great workload-level speedups compared to vanilla Spark. In this blog post, we take a look at another recently proposed design called <a href="https://github.com/Mellanox/SparkRDMA">SparkRDMA</a> (<a href="https://issues.apache.org/jira/browse/SPARK-22229">SPARK-22229 JIRA</a>). SparkRDMA proposes to improve the shuffle performance of Spark by performing data transfers over RDMA. For this, the code manages its own off-heap memory which needs to be registered with the NIC for RDMA use. It supports 
 two ways to store shuffle data between the stages: (1) shuffle data is stored in regular files (just like vanilla Spark) but the data transfer is implemented via RDMA, (2) data is stored in memory (allocated and registered for RDMA transfer) and the data transfer is implemented via RDMA. We call it the "last-mile" approach where just the networking operations are replaced by the RDMA operations.
-</p>
-<p>
-In contrast, the Crail shuffler plugin takes a more holistic approach and leverages the high performance of Crail distributed data store to deliver gains. It uses Crail store to efficiently manage I/O resources, storage and networking devices, memory registrations, client sessions, data distribution, etc. Consequently, the shuffle operation becomes as simple as writing and reading files. And recall that Crail store is designed as a fast data bus for the intermediate data. The shuffle operation is just one of many operations that can be accelerated using Crail store. Beyond these operations, the modular architecture of Crail store enables us to seamlessly leverage different storage types (DRAM, NVMe, and more), perform tiering, support disaggregation, share inter-job data, jointly optimize I/O resources for various workloads, etc. These capabilities and performance gains give us confidence in the design choices we made for the Crail project.
-</p>
-</div>
-
-<h3 id="performance-comparison">Performance comparison</h3>
-<div style="text-align: justify">
-<p>Lets start by quantitatively assessing performance gains from the Crail shuffle plugin and SparkRDMA. As described above, SparkRDMA can be operated in two different modes. Users decide which mode to use by selecting a particular type of shuffle writer (spark.shuffle.rdma.shuffleWriterMethod). The Wrapper shuffle writer writes shuffle data to files between the stages, the Chunked shuffle writer stores shuffle data in memory. We evaluate both writer methods for terasort and SQL equijoin.
-</p>
-</div>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/rdma-shuffle/terasort.svg" width="550" /></div>
-<p><br /></p>
-<div style="text-align: justify">
-<p>
-First we run <a href="https://github.com/zrlio/crail-spark-terasort">terasort</a> on our 8+1 machine cluster (see above). We sort 200GB, thus, each node gets 25GB of data (equal distribution). We further did a basic search of the parameter space for each of the systems to find the best possible configuration. In all the experiments we use 8 executors with 12 cores each. Note that in a typical Spark run more CPU cores than assigned are engaged because of garbabge collection, etc. In our test runs assigning 12 cores lead to the best performance.
-</p>
-<p>
-The plot above shows runtimes of the various configuration we run with terasort. SparkRDMA with the Wrapper shuffle writer performance slightly better (3-4%) than vanilla Spark whereas the Chunked shuffle writer shows a 30% overhead. On a quick inspection we found that this overhead stems from memory allocation and registration for the shuffle data that is kept in memory between the stages. Compared to vanilla Spark, Crail's shuffle plugin shows performance improvement of around 235%.
-</p>
-</div>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/rdma-shuffle/sql.svg" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify">
-<p>
-For our second workload we choose the <a href="https://github.com/zrlio/sql-benchmarks">SQL equijoin</a> with a <a href="https://github.com/zrlio/spark-nullio-fileformat">special fileformat</a> that allows data to be generated on the fly. By generating data on the fly we eliminate any costs for reading data from storage and focus entirely on the shuffle performance. The shuffle data size is around 148GB. Here the Wrapper shuffle writer is slightly slower than vanilla Spark but instead the Chunked shuffle writer is roughly the same amount faster. The Crail shuffle plugin again delivers a great performance increase over vanilla Spark.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>Please let us know if your have recommendations about how these experiments can be improved.</p>
-</div>
-
-<h3 id="summary">Summary</h3>
-
-<div style="text-align: justify">
-<p>
-These benchmarks validate our belief that a "last-mile" integration cannot deliver the same performance gains as a holistic approach, i.e. one has to look at the whole picture in how to integrate RDMA into Spark applications (and for that matter any framework or application). Only replacing the data transfer alone does not lead to the anticipated performance increase. We learned this the hard way when we intially started working on Crail.
-</p>
-
-</div>
-
-
-</div>
-
-<!-- 
-
-<div id="disqus_thread"></div>
-<script>
-
-/**
-*  RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
-*  LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/
-/*
-var disqus_config = function () {
-this.page.url = PAGE_URL;  // Replace PAGE_URL with your page's canonical URL variable
-this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
-};
-*/
-(function() { // DON'T EDIT BELOW THIS LINE
-var d = document, s = d.createElement('script');
-s.src = '//crail-io.disqus.com/embed.js';
-s.setAttribute('data-timestamp', +new Date());
-(d.head || d.body).appendChild(s);
-})();
-</script>
-<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
-
--->
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2018/01/apache.html
----------------------------------------------------------------------
diff --git a/content/blog/2018/01/apache.html b/content/blog/2018/01/apache.html
deleted file mode 100644
index bf1bdca..0000000
--- a/content/blog/2018/01/apache.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Apache</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/apache-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/apache-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Apache</h2>   
-          
-
-          <p>Crail is now an Apache Incubator project!</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2018/06/apache-release.html
----------------------------------------------------------------------
diff --git a/content/blog/2018/06/apache-release.html b/content/blog/2018/06/apache-release.html
deleted file mode 100644
index 3c0dc23..0000000
--- a/content/blog/2018/06/apache-release.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Apache Release</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/apache-release-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/apache-release-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Apache Release</h2>   
-          
-
-          <p>Apache Crail 1.0 incubator <a href="https://dist.apache.org/repos/dist/release/incubator/crail/1.0-incubating/">release</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2018/06/dataworks.html
----------------------------------------------------------------------
diff --git a/content/blog/2018/06/dataworks.html b/content/blog/2018/06/dataworks.html
deleted file mode 100644
index 0b2030b..0000000
--- a/content/blog/2018/06/dataworks.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Dataworks</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/dataworks-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/dataworks-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Dataworks</h2>   
-          
-
-          <p>Apache Crail (incubating) to feature in the <a href="https://dataworkssummit.com/san-jose-2018/session/data-processing-at-the-speed-of-100-gbpsapache-crail-incubating/">DataWorks Summit</a> on June 21st</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2018/06/sparksummit.html
----------------------------------------------------------------------
diff --git a/content/blog/2018/06/sparksummit.html b/content/blog/2018/06/sparksummit.html
deleted file mode 100644
index 764924e..0000000
--- a/content/blog/2018/06/sparksummit.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Sparksummit</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/sparksummit-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/sparksummit-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Sparksummit</h2>   
-          
-
-          <p>A Spark serverless architecture powered by Crail will be presented today at the <a href="https://databricks.com/session/serverless-machine-learning-on-modern-hardware-using-apache-spark">Spark Summit</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/index.html
----------------------------------------------------------------------
diff --git a/content/blog/index.html b/content/blog/index.html
deleted file mode 100644
index 732428f..0000000
--- a/content/blog/index.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Latest posts</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/blog-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/blog-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li class="active">
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Latest posts</h2>   
-          
-
-          
-<div class="post-preview">
-    <a href="/blog/2017/11/crail-metadata.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part III: Metadata
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Adrian Schuepbach and Patrick Stuedi on November 21, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/11/rdmashuffle.html">
-        <h2 class="post-title">
-            Spark Shuffle: SparkRDMA vs Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle, Patrick Stuedi, Animesh Trivedi, Bernard Metzler, Adrian Schuepbach on November 17, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-nvme-fabrics-v1.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part II: NVMf
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle on August 22, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-memory.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part I: DRAM
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on August 18, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/01/sorting.html">
-        <h2 class="post-title">
-            Sorting on a 100Gbit/s Cluster using Spark/Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on January 17, 2017</p>
-</div>
-<hr>
-
-
-<!-- Pager -->
-
-<ul class="pager">
-    
-    
-    <li class="next">
-        <a href="/blog/page2">Older Posts &rarr;</a>
-    </li>
-    
-</ul>
-
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/page2/index.html
----------------------------------------------------------------------
diff --git a/content/blog/page2/index.html b/content/blog/page2/index.html
deleted file mode 100644
index 9796b04..0000000
--- a/content/blog/page2/index.html
+++ /dev/null
@@ -1,158 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Latest posts</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/page2-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/page2-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Latest posts</h2>   
-          
-
-          
-<div class="post-preview">
-    <a href="/blog/2017/11/crail-metadata.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part III: Metadata
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Adrian Schuepbach and Patrick Stuedi on November 21, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/11/rdmashuffle.html">
-        <h2 class="post-title">
-            Spark Shuffle: SparkRDMA vs Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle, Patrick Stuedi, Animesh Trivedi, Bernard Metzler, Adrian Schuepbach on November 17, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-nvme-fabrics-v1.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part II: NVMf
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle on August 22, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-memory.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part I: DRAM
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on August 18, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/01/sorting.html">
-        <h2 class="post-title">
-            Sorting on a 100Gbit/s Cluster using Spark/Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on January 17, 2017</p>
-</div>
-<hr>
-
-
-<!-- Pager -->
-
-<ul class="pager">
-    
-    <li class="previous">
-        <a href="/blog/">&larr; Newer Posts</a>
-    </li>
-    
-    
-    <li class="next">
-        <a href="/blog/page3">Older Posts &rarr;</a>
-    </li>
-    
-</ul>
-
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/page3/index.html
----------------------------------------------------------------------
diff --git a/content/blog/page3/index.html b/content/blog/page3/index.html
deleted file mode 100644
index dbd2d51..0000000
--- a/content/blog/page3/index.html
+++ /dev/null
@@ -1,158 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Latest posts</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/page3-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/page3-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Latest posts</h2>   
-          
-
-          
-<div class="post-preview">
-    <a href="/blog/2017/11/crail-metadata.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part III: Metadata
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Adrian Schuepbach and Patrick Stuedi on November 21, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/11/rdmashuffle.html">
-        <h2 class="post-title">
-            Spark Shuffle: SparkRDMA vs Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle, Patrick Stuedi, Animesh Trivedi, Bernard Metzler, Adrian Schuepbach on November 17, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-nvme-fabrics-v1.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part II: NVMf
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle on August 22, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-memory.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part I: DRAM
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on August 18, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/01/sorting.html">
-        <h2 class="post-title">
-            Sorting on a 100Gbit/s Cluster using Spark/Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on January 17, 2017</p>
-</div>
-<hr>
-
-
-<!-- Pager -->
-
-<ul class="pager">
-    
-    <li class="previous">
-        <a href="/blog/page2">&larr; Newer Posts</a>
-    </li>
-    
-    
-    <li class="next">
-        <a href="/blog/page4">Older Posts &rarr;</a>
-    </li>
-    
-</ul>
-
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/page4/index.html
----------------------------------------------------------------------
diff --git a/content/blog/page4/index.html b/content/blog/page4/index.html
deleted file mode 100644
index 606469c..0000000
--- a/content/blog/page4/index.html
+++ /dev/null
@@ -1,158 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Latest posts</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/page4-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/page4-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Latest posts</h2>   
-          
-
-          
-<div class="post-preview">
-    <a href="/blog/2017/11/crail-metadata.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part III: Metadata
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Adrian Schuepbach and Patrick Stuedi on November 21, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/11/rdmashuffle.html">
-        <h2 class="post-title">
-            Spark Shuffle: SparkRDMA vs Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle, Patrick Stuedi, Animesh Trivedi, Bernard Metzler, Adrian Schuepbach on November 17, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-nvme-fabrics-v1.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part II: NVMf
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle on August 22, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-memory.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part I: DRAM
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on August 18, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/01/sorting.html">
-        <h2 class="post-title">
-            Sorting on a 100Gbit/s Cluster using Spark/Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on January 17, 2017</p>
-</div>
-<hr>
-
-
-<!-- Pager -->
-
-<ul class="pager">
-    
-    <li class="previous">
-        <a href="/blog/page3">&larr; Newer Posts</a>
-    </li>
-    
-    
-    <li class="next">
-        <a href="/blog/page5">Older Posts &rarr;</a>
-    </li>
-    
-</ul>
-
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/page5/index.html
----------------------------------------------------------------------
diff --git a/content/blog/page5/index.html b/content/blog/page5/index.html
deleted file mode 100644
index bc1e12f..0000000
--- a/content/blog/page5/index.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Latest posts</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/page5-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/page5-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Latest posts</h2>   
-          
-
-          
-<div class="post-preview">
-    <a href="/blog/2017/11/crail-metadata.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part III: Metadata
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Adrian Schuepbach and Patrick Stuedi on November 21, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/11/rdmashuffle.html">
-        <h2 class="post-title">
-            Spark Shuffle: SparkRDMA vs Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle, Patrick Stuedi, Animesh Trivedi, Bernard Metzler, Adrian Schuepbach on November 17, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-nvme-fabrics-v1.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part II: NVMf
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Jonas Pfefferle on August 22, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/08/crail-memory.html">
-        <h2 class="post-title">
-            Crail Storage Performance -- Part I: DRAM
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on August 18, 2017</p>
-</div>
-<hr>
-
-<div class="post-preview">
-    <a href="/blog/2017/01/sorting.html">
-        <h2 class="post-title">
-            Sorting on a 100Gbit/s Cluster using Spark/Crail
-        </h2>
-        
-    </a>
-    <p class="post-meta">Posted by Patrick Stuedi on January 17, 2017</p>
-</div>
-<hr>
-
-
-<!-- Pager -->
-
-<ul class="pager">
-    
-    <li class="previous">
-        <a href="/blog/page4">&larr; Newer Posts</a>
-    </li>
-    
-    
-</ul>
-
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/community/index.html
----------------------------------------------------------------------
diff --git a/content/community/index.html b/content/community/index.html
deleted file mode 100644
index 3584720..0000000
--- a/content/community/index.html
+++ /dev/null
@@ -1,110 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Community</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/community-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/community-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li class="active">
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Community</h2>   
-          
-
-          <p>If you&rsquo;d like to contribute to Apache Crail, please use the follwing resources.</p>
-
-<h3 id="soucre-code">Source code</h3>
-
-The versioned source code history is available from the Apache git repository at <a href="http://git-wip-us.apache.org/repos/asf/incubator-crail.git">http://git-wip-us.apache.org/repos/asf/incubator-crail.git</a> or from the github mirror <a href="https://github.com/apache/incubator-crail">https://github.com/apache/incubator-crail</a>
-
-<h3 id="howto-contribute"> How to contribute to Crail</h3>
-
-For any potential changes/proposals we recommend that you open a JIRA ticket to have a disucssion. After making necessary code changes, please open a pull request at Github, and update the JIRA.
-
-<h3 id="bug-tracking">Bug/JIRA tracking</h3>
-
-<a href="https://issues.apache.org/jira/browse/CRAIL">https://issues.apache.org/jira/browse/CRAIL</a>
-
-<h3 id="mailing-list">Mailing list</h3>
-
-<p>Please join the Crail developer mailing list for discussions and notifications. The list is at: <a href="mailto:dev@crail.incubator.apache.org">dev@crail.incubator.apache.org</a>.</p>
-
-<ul>
-<li><a href="mailto: dev-subscribe@crail.incubator.apache.org">Subscribe to List</a></li>
-<li><a href="mailto: dev-unsubscribe@crail.incubator.apache.org">Unsubscribe from List</a></li>
-<li><a href="http://mail-archives.apache.org/mod_mbox/crail-dev/">Archives</a></li>
-</ul>
-
-<p>To post to the list, it is necessary to subscribe to it.</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>


[11/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/css/bootstrap.min.css
----------------------------------------------------------------------
diff --git a/content/css/bootstrap.min.css b/content/css/bootstrap.min.css
deleted file mode 100644
index 494f06b..0000000
--- a/content/css/bootstrap.min.css
+++ /dev/null
@@ -1,5198 +0,0 @@
-/*!
- * Bootstrap v3.0.2 by @fat and @mdo
- * Copyright 2013 Twitter, Inc.
- * Licensed under http://www.apache.org/licenses/LICENSE-2.0
- *
- * Designed and built with all the love in the world by @mdo and @fat.
- */
-
-/*! normalize.css v2.1.3 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary {
-	display:block
-}
-audio,canvas,video {
-	display:inline-block
-}
-audio:not([controls]) {
-	display:none;
-	height:0
-}
-[hidden],template {
-	display:none
-}
-html {
-	font-family:sans-serif;
-	-webkit-text-size-adjust:100%;
-	-ms-text-size-adjust:100%
-}
-body {
-	margin:0
-}
-a {
-	background:transparent
-}
-a:focus {
-	outline:thin dotted
-}
-a:active,a:hover {
-	outline:0
-}
-h1 {
-	margin:.67em 0;
-	font-size:2em
-}
-abbr[title] {
-	border-bottom:1px dotted
-}
-b,strong {
-	font-weight:bold
-}
-dfn {
-	font-style:italic
-}
-hr {
-	height:0;
-	-moz-box-sizing:content-box;
-	box-sizing:content-box
-}
-mark {
-	color:#000;
-	background:#ff0
-}
-code,kbd,pre,samp {
-	font-family:monospace,serif;
-	font-size:1em
-}
-pre {
-	white-space:pre-wrap
-}
-q {
-	quotes:"\201C" "\201D" "\2018" "\2019"
-}
-small {
-	font-size:80%
-}
-sub,sup {
-	position:relative;
-	font-size:75%;
-	line-height:0;
-	vertical-align:baseline
-}
-sup {
-	top:-0.5em
-}
-sub {
-	bottom:-0.25em
-}
-img {
-	border:0
-}
-svg:not(:root) {
-	overflow:hidden
-}
-figure {
-	margin:0
-}
-fieldset {
-	padding:.35em .625em .75em;
-	margin:0 2px;
-	border:1px solid #c0c0c0
-}
-legend {
-	padding:0;
-	border:0
-}
-button,input,select,textarea {
-	margin:0;
-	font-family:inherit;
-	font-size:100%
-}
-button,input {
-	line-height:normal
-}
-button,select {
-	text-transform:none
-}
-button,html input[type="button"],input[type="reset"],input[type="submit"] {
-	cursor:pointer;
-	-webkit-appearance:button
-}
-button[disabled],html input[disabled] {
-	cursor:default
-}
-input[type="checkbox"],input[type="radio"] {
-	padding:0;
-	box-sizing:border-box
-}
-input[type="search"] {
-	-webkit-box-sizing:content-box;
-	-moz-box-sizing:content-box;
-	box-sizing:content-box;
-	-webkit-appearance:textfield
-}
-input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration {
-	-webkit-appearance:none
-}
-button::-moz-focus-inner,input::-moz-focus-inner {
-	padding:0;
-	border:0
-}
-textarea {
-	overflow:auto;
-	vertical-align:top
-}
-table {
-	border-collapse:collapse;
-	border-spacing:0
-}
-@media print {
-	* {
-		color:#000!important;
-		text-shadow:none!important;
-		background:transparent!important;
-		box-shadow:none!important
-	}
-	a,a:visited {
-		text-decoration:underline
-	}
-	a[href]:after {
-		content:" (" attr(href) ")"
-	}
-	abbr[title]:after {
-		content:" (" attr(title) ")"
-	}
-	a[href^="javascript:"]:after,a[href^="#"]:after {
-		content:""
-	}
-	pre,blockquote {
-		border:1px solid #999;
-		page-break-inside:avoid
-	}
-	thead {
-		display:table-header-group
-	}
-	tr,img {
-		page-break-inside:avoid
-	}
-	img {
-		max-width:100%!important
-	}
-	@page {
-		margin:2cm .5cm
-	}
-	p,h2,h3 {
-		orphans:3;
-		widows:3
-	}
-	h2,h3 {
-		page-break-after:avoid
-	}
-	select {
-		background:#fff!important
-	}
-	.navbar {
-		display:none
-	}
-	.table td,.table th {
-		background-color:#fff!important
-	}
-	.btn>.caret,.dropup>.btn>.caret {
-		border-top-color:#000!important
-	}
-	.label {
-		border:1px solid #000
-	}
-	.table {
-		border-collapse:collapse!important
-	}
-	.table-bordered th,.table-bordered td {
-		border:1px solid #ddd!important
-	}
-}
-*,*:before,*:after {
-	-webkit-box-sizing:border-box;
-	-moz-box-sizing:border-box;
-	box-sizing:border-box
-}
-html {
-	font-size:62.5%;
-	-webkit-tap-highlight-color:rgba(0,0,0,0)
-}
-body {
-	font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
-	font-size:14px;
-	line-height:1.428571429;
-	color:#333;
-	background-color:#fff
-}
-input,button,select,textarea {
-	font-family:inherit;
-	font-size:inherit;
-	line-height:inherit
-}
-a {
-	color:#428bca;
-	text-decoration:none
-}
-a:hover,a:focus {
-	color:#2a6496;
-	text-decoration:underline
-}
-a:focus {
-	outline:thin dotted #333;
-	outline:5px auto -webkit-focus-ring-color;
-	outline-offset:-2px
-}
-img {
-	vertical-align:middle
-}
-.img-responsive {
-	display:block;
-	height:auto;
-	max-width:100%
-}
-.img-rounded {
-	border-radius:6px
-}
-.img-thumbnail {
-	display:inline-block;
-	height:auto;
-	max-width:100%;
-	padding:4px;
-	line-height:1.428571429;
-	background-color:#fff;
-	border:1px solid #ddd;
-	border-radius:4px;
-	-webkit-transition:all .2s ease-in-out;
-	transition:all .2s ease-in-out
-}
-.img-circle {
-	border-radius:50%
-}
-hr {
-	margin-top:20px;
-	margin-bottom:20px;
-	border:0;
-	border-top:1px solid #eee
-}
-.sr-only {
-	position:absolute;
-	width:1px;
-	height:1px;
-	padding:0;
-	margin:-1px;
-	overflow:hidden;
-	clip:rect(0,0,0,0);
-	border:0
-}
-p {
-	margin:0 0 10px
-}
-.lead {
-	margin-bottom:20px;
-	font-size:16px;
-	font-weight:200;
-	line-height:1.4
-}
-@media(min-width:768px) {
-	.lead {
-		font-size:21px
-	}
-}
-small,.small {
-	font-size:85%
-}
-cite {
-	font-style:normal
-}
-.text-muted {
-	color:#999
-}
-.text-primary {
-	color:#428bca
-}
-.text-primary:hover {
-	color:#3071a9
-}
-.text-warning {
-	color:#c09853
-}
-.text-warning:hover {
-	color:#a47e3c
-}
-.text-danger {
-	color:#b94a48
-}
-.text-danger:hover {
-	color:#953b39
-}
-.text-success {
-	color:#468847
-}
-.text-success:hover {
-	color:#356635
-}
-.text-info {
-	color:#3a87ad
-}
-.text-info:hover {
-	color:#2d6987
-}
-.text-left {
-	text-align:left
-}
-.text-right {
-	text-align:right
-}
-.text-center {
-	text-align:center
-}
-h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 {
-	font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
-	font-weight:500;
-	line-height:1.1;
-	color:inherit
-}
-h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small {
-	font-weight:normal;
-	line-height:1;
-	color:#999
-}
-h1,h2,h3 {
-	margin-top:20px;
-	margin-bottom:10px
-}
-h1 small,h2 small,h3 small,h1 .small,h2 .small,h3 .small {
-	font-size:65%
-}
-h4,h5,h6 {
-	margin-top:10px;
-	margin-bottom:10px
-}
-h4 small,h5 small,h6 small,h4 .small,h5 .small,h6 .small {
-	font-size:75%
-}
-h1,.h1 {
-	font-size:36px
-}
-h2,.h2 {
-	font-size:30px
-}
-h3,.h3 {
-	font-size:24px
-}
-h4,.h4 {
-	font-size:18px
-}
-h5,.h5 {
-	font-size:14px
-}
-h6,.h6 {
-	font-size:12px
-}
-.page-header {
-	padding-bottom:9px;
-	margin:40px 0 20px;
-	border-bottom:1px solid #eee
-}
-ul,ol {
-	margin-top:0;
-	margin-bottom:10px
-}
-ul ul,ol ul,ul ol,ol ol {
-	margin-bottom:0
-}
-.list-unstyled {
-	padding-left:0;
-	list-style:none
-}
-.list-inline {
-	padding-left:0;
-	list-style:none
-}
-.list-inline>li {
-	display:inline-block;
-	padding-right:5px;
-	padding-left:5px
-}
-.list-inline>li:first-child {
-	padding-left:0
-}
-dl {
-	margin-bottom:20px
-}
-dt,dd {
-	line-height:1.428571429
-}
-dt {
-	font-weight:bold
-}
-dd {
-	margin-left:0
-}
-@media(min-width:768px) {
-	.dl-horizontal dt {
-		float:left;
-		width:160px;
-		overflow:hidden;
-		clear:left;
-		text-align:right;
-		text-overflow:ellipsis;
-		white-space:nowrap
-	}
-	.dl-horizontal dd {
-		margin-left:180px
-	}
-	.dl-horizontal dd:before,.dl-horizontal dd:after {
-		display:table;
-		content:" "
-	}
-	.dl-horizontal dd:after {
-		clear:both
-	}
-	.dl-horizontal dd:before,.dl-horizontal dd:after {
-		display:table;
-		content:" "
-	}
-	.dl-horizontal dd:after {
-		clear:both
-	}
-}
-abbr[title],abbr[data-original-title] {
-	cursor:help;
-	border-bottom:1px dotted #999
-}
-abbr.initialism {
-	font-size:90%;
-	text-transform:uppercase
-}
-blockquote {
-	padding:10px 20px;
-	margin:0 0 20px;
-	border-left:5px solid #eee
-}
-blockquote p {
-	font-size:17.5px;
-	font-weight:300;
-	line-height:1.25
-}
-blockquote p:last-child {
-	margin-bottom:0
-}
-blockquote small {
-	display:block;
-	line-height:1.428571429;
-	color:#999
-}
-blockquote small:before {
-	content:'\2014 \00A0'
-}
-blockquote.pull-right {
-	padding-right:15px;
-	padding-left:0;
-	border-right:5px solid #eee;
-	border-left:0
-}
-blockquote.pull-right p,blockquote.pull-right small,blockquote.pull-right .small {
-	text-align:right
-}
-blockquote.pull-right small:before,blockquote.pull-right .small:before {
-	content:''
-}
-blockquote.pull-right small:after,blockquote.pull-right .small:after {
-	content:'\00A0 \2014'
-}
-blockquote:before,blockquote:after {
-	content:""
-}
-address {
-	margin-bottom:20px;
-	font-style:normal;
-	line-height:1.428571429
-}
-code,kbd,pre,samp {
-	font-family:Monaco,Menlo,Consolas,"Courier New",monospace
-}
-code {
-	padding:2px 4px;
-	font-size:90%;
-	color:#c7254e;
-	white-space:nowrap;
-	background-color:#f9f2f4;
-	border-radius:4px
-}
-pre {
-	display:block;
-	padding:9.5px;
-	margin:0 0 10px;
-	font-size:13px;
-	line-height:1.428571429;
-	color:#333;
-	word-break:break-all;
-	word-wrap:break-word;
-	background-color:#f5f5f5;
-	border:1px solid #ccc;
-	border-radius:4px
-}
-pre code {
-	padding:0;
-	font-size:inherit;
-	color:inherit;
-	white-space:pre-wrap;
-	background-color:transparent;
-	border-radius:0
-}
-.pre-scrollable {
-	max-height:340px;
-	overflow-y:scroll
-}
-.container {
-	padding-right:15px;
-	padding-left:15px;
-	margin-right:auto;
-	margin-left:auto
-}
-.container:before,.container:after {
-	display:table;
-	content:" "
-}
-.container:after {
-	clear:both
-}
-.container:before,.container:after {
-	display:table;
-	content:" "
-}
-.container:after {
-	clear:both
-}
-.row {
-	margin-right:-15px;
-	margin-left:-15px
-}
-.row:before,.row:after {
-	display:table;
-	content:" "
-}
-.row:after {
-	clear:both
-}
-.row:before,.row:after {
-	display:table;
-	content:" "
-}
-.row:after {
-	clear:both
-}
-.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12 {
-	position:relative;
-	min-height:1px;
-	padding-right:15px;
-	padding-left:15px
-}
-.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11 {
-	float:left
-}
-.col-xs-12 {
-	width:100%
-}
-.col-xs-11 {
-	width:91.66666666666666%
-}
-.col-xs-10 {
-	width:83.33333333333334%
-}
-.col-xs-9 {
-	width:75%
-}
-.col-xs-8 {
-	width:66.66666666666666%
-}
-.col-xs-7 {
-	width:58.333333333333336%
-}
-.col-xs-6 {
-	width:50%
-}
-.col-xs-5 {
-	width:41.66666666666667%
-}
-.col-xs-4 {
-	width:33.33333333333333%
-}
-.col-xs-3 {
-	width:25%
-}
-.col-xs-2 {
-	width:16.666666666666664%
-}
-.col-xs-1 {
-	width:8.333333333333332%
-}
-.col-xs-pull-12 {
-	right:100%
-}
-.col-xs-pull-11 {
-	right:91.66666666666666%
-}
-.col-xs-pull-10 {
-	right:83.33333333333334%
-}
-.col-xs-pull-9 {
-	right:75%
-}
-.col-xs-pull-8 {
-	right:66.66666666666666%
-}
-.col-xs-pull-7 {
-	right:58.333333333333336%
-}
-.col-xs-pull-6 {
-	right:50%
-}
-.col-xs-pull-5 {
-	right:41.66666666666667%
-}
-.col-xs-pull-4 {
-	right:33.33333333333333%
-}
-.col-xs-pull-3 {
-	right:25%
-}
-.col-xs-pull-2 {
-	right:16.666666666666664%
-}
-.col-xs-pull-1 {
-	right:8.333333333333332%
-}
-.col-xs-pull-0 {
-	right:0
-}
-.col-xs-push-12 {
-	left:100%
-}
-.col-xs-push-11 {
-	left:91.66666666666666%
-}
-.col-xs-push-10 {
-	left:83.33333333333334%
-}
-.col-xs-push-9 {
-	left:75%
-}
-.col-xs-push-8 {
-	left:66.66666666666666%
-}
-.col-xs-push-7 {
-	left:58.333333333333336%
-}
-.col-xs-push-6 {
-	left:50%
-}
-.col-xs-push-5 {
-	left:41.66666666666667%
-}
-.col-xs-push-4 {
-	left:33.33333333333333%
-}
-.col-xs-push-3 {
-	left:25%
-}
-.col-xs-push-2 {
-	left:16.666666666666664%
-}
-.col-xs-push-1 {
-	left:8.333333333333332%
-}
-.col-xs-push-0 {
-	left:0
-}
-.col-xs-offset-12 {
-	margin-left:100%
-}
-.col-xs-offset-11 {
-	margin-left:91.66666666666666%
-}
-.col-xs-offset-10 {
-	margin-left:83.33333333333334%
-}
-.col-xs-offset-9 {
-	margin-left:75%
-}
-.col-xs-offset-8 {
-	margin-left:66.66666666666666%
-}
-.col-xs-offset-7 {
-	margin-left:58.333333333333336%
-}
-.col-xs-offset-6 {
-	margin-left:50%
-}
-.col-xs-offset-5 {
-	margin-left:41.66666666666667%
-}
-.col-xs-offset-4 {
-	margin-left:33.33333333333333%
-}
-.col-xs-offset-3 {
-	margin-left:25%
-}
-.col-xs-offset-2 {
-	margin-left:16.666666666666664%
-}
-.col-xs-offset-1 {
-	margin-left:8.333333333333332%
-}
-.col-xs-offset-0 {
-	margin-left:0
-}
-@media(min-width:768px) {
-	.container {
-		width:767px
-	}
-	.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11 {
-		float:left
-	}
-	.col-sm-12 {
-		width:100%
-	}
-	.col-sm-11 {
-		width:91.66666666666666%
-	}
-	.col-sm-10 {
-		width:83.33333333333334%
-	}
-	.col-sm-9 {
-		width:75%
-	}
-	.col-sm-8 {
-		width:66.66666666666666%
-	}
-	.col-sm-7 {
-		width:58.333333333333336%
-	}
-	.col-sm-6 {
-		width:50%
-	}
-	.col-sm-5 {
-		width:41.66666666666667%
-	}
-	.col-sm-4 {
-		width:33.33333333333333%
-	}
-	.col-sm-3 {
-		width:25%
-	}
-	.col-sm-2 {
-		width:16.666666666666664%
-	}
-	.col-sm-1 {
-		width:8.333333333333332%
-	}
-	.col-sm-pull-12 {
-		right:100%
-	}
-	.col-sm-pull-11 {
-		right:91.66666666666666%
-	}
-	.col-sm-pull-10 {
-		right:83.33333333333334%
-	}
-	.col-sm-pull-9 {
-		right:75%
-	}
-	.col-sm-pull-8 {
-		right:66.66666666666666%
-	}
-	.col-sm-pull-7 {
-		right:58.333333333333336%
-	}
-	.col-sm-pull-6 {
-		right:50%
-	}
-	.col-sm-pull-5 {
-		right:41.66666666666667%
-	}
-	.col-sm-pull-4 {
-		right:33.33333333333333%
-	}
-	.col-sm-pull-3 {
-		right:25%
-	}
-	.col-sm-pull-2 {
-		right:16.666666666666664%
-	}
-	.col-sm-pull-1 {
-		right:8.333333333333332%
-	}
-	.col-sm-pull-0 {
-		right:0
-	}
-	.col-sm-push-12 {
-		left:100%
-	}
-	.col-sm-push-11 {
-		left:91.66666666666666%
-	}
-	.col-sm-push-10 {
-		left:83.33333333333334%
-	}
-	.col-sm-push-9 {
-		left:75%
-	}
-	.col-sm-push-8 {
-		left:66.66666666666666%
-	}
-	.col-sm-push-7 {
-		left:58.333333333333336%
-	}
-	.col-sm-push-6 {
-		left:50%
-	}
-	.col-sm-push-5 {
-		left:41.66666666666667%
-	}
-	.col-sm-push-4 {
-		left:33.33333333333333%
-	}
-	.col-sm-push-3 {
-		left:25%
-	}
-	.col-sm-push-2 {
-		left:16.666666666666664%
-	}
-	.col-sm-push-1 {
-		left:8.333333333333332%
-	}
-	.col-sm-push-0 {
-		left:0
-	}
-	.col-sm-offset-12 {
-		margin-left:100%
-	}
-	.col-sm-offset-11 {
-		margin-left:91.66666666666666%
-	}
-	.col-sm-offset-10 {
-		margin-left:83.33333333333334%
-	}
-	.col-sm-offset-9 {
-		margin-left:75%
-	}
-	.col-sm-offset-8 {
-		margin-left:66.66666666666666%
-	}
-	.col-sm-offset-7 {
-		margin-left:58.333333333333336%
-	}
-	.col-sm-offset-6 {
-		margin-left:50%
-	}
-	.col-sm-offset-5 {
-		margin-left:41.66666666666667%
-	}
-	.col-sm-offset-4 {
-		margin-left:33.33333333333333%
-	}
-	.col-sm-offset-3 {
-		margin-left:25%
-	}
-	.col-sm-offset-2 {
-		margin-left:16.666666666666664%
-	}
-	.col-sm-offset-1 {
-		margin-left:8.333333333333332%
-	}
-	.col-sm-offset-0 {
-		margin-left:0
-	}
-}
-@media(min-width:992px) {
-	.container {
-		width:767px;
-	}
-	.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11 {
-		float:left
-	}
-	.col-md-12 {
-		width:100%
-	}
-	.col-md-11 {
-		width:91.66666666666666%
-	}
-	.col-md-10 {
-		width:83.33333333333334%
-	}
-	.col-md-9 {
-		width:75%
-	}
-	.col-md-8 {
-		width:66.66666666666666%
-	}
-	.col-md-7 {
-		width:58.333333333333336%
-	}
-	.col-md-6 {
-		width:50%
-	}
-	.col-md-5 {
-		width:41.66666666666667%
-	}
-	.col-md-4 {
-		width:33.33333333333333%
-	}
-	.col-md-3 {
-		width:25%
-	}
-	.col-md-2 {
-		width:16.666666666666664%
-	}
-	.col-md-1 {
-		width:8.333333333333332%
-	}
-	.col-md-pull-12 {
-		right:100%
-	}
-	.col-md-pull-11 {
-		right:91.66666666666666%
-	}
-	.col-md-pull-10 {
-		right:83.33333333333334%
-	}
-	.col-md-pull-9 {
-		right:75%
-	}
-	.col-md-pull-8 {
-		right:66.66666666666666%
-	}
-	.col-md-pull-7 {
-		right:58.333333333333336%
-	}
-	.col-md-pull-6 {
-		right:50%
-	}
-	.col-md-pull-5 {
-		right:41.66666666666667%
-	}
-	.col-md-pull-4 {
-		right:33.33333333333333%
-	}
-	.col-md-pull-3 {
-		right:25%
-	}
-	.col-md-pull-2 {
-		right:16.666666666666664%
-	}
-	.col-md-pull-1 {
-		right:8.333333333333332%
-	}
-	.col-md-pull-0 {
-		right:0
-	}
-	.col-md-push-12 {
-		left:100%
-	}
-	.col-md-push-11 {
-		left:91.66666666666666%
-	}
-	.col-md-push-10 {
-		left:83.33333333333334%
-	}
-	.col-md-push-9 {
-		left:75%
-	}
-	.col-md-push-8 {
-		left:66.66666666666666%
-	}
-	.col-md-push-7 {
-		left:58.333333333333336%
-	}
-	.col-md-push-6 {
-		left:50%
-	}
-	.col-md-push-5 {
-		left:41.66666666666667%
-	}
-	.col-md-push-4 {
-		left:33.33333333333333%
-	}
-	.col-md-push-3 {
-		left:25%
-	}
-	.col-md-push-2 {
-		left:16.666666666666664%
-	}
-	.col-md-push-1 {
-		left:8.333333333333332%
-	}
-	.col-md-push-0 {
-		left:0
-	}
-	.col-md-offset-12 {
-		margin-left:100%
-	}
-	.col-md-offset-11 {
-		margin-left:91.66666666666666%
-	}
-	.col-md-offset-10 {
-		margin-left:83.33333333333334%
-	}
-	.col-md-offset-9 {
-		margin-left:75%
-	}
-	.col-md-offset-8 {
-		margin-left:66.66666666666666%
-	}
-	.col-md-offset-7 {
-		margin-left:58.333333333333336%
-	}
-	.col-md-offset-6 {
-		margin-left:50%
-	}
-	.col-md-offset-5 {
-		margin-left:41.66666666666667%
-	}
-	.col-md-offset-4 {
-		margin-left:33.33333333333333%
-	}
-	.col-md-offset-3 {
-		margin-left:25%
-	}
-	.col-md-offset-2 {
-		margin-left:16.666666666666664%
-	}
-	.col-md-offset-1 {
-		margin-left:8.333333333333332%
-	}
-	.col-md-offset-0 {
-		margin-left:0
-	}
-}
-@media(min-width:1200px) {
-	.container {
-		width:1170px
-	}
-	.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11 {
-		float:left
-	}
-	.col-lg-12 {
-		width:100%
-	}
-	.col-lg-11 {
-		width:91.66666666666666%
-	}
-	.col-lg-10 {
-		width:83.33333333333334%
-	}
-	.col-lg-9 {
-		width:75%
-	}
-	.col-lg-8 {
-		width:66.66666666666666%
-	}
-	.col-lg-7 {
-		width:58.333333333333336%
-	}
-	.col-lg-6 {
-		width:50%
-	}
-	.col-lg-5 {
-		width:41.66666666666667%
-	}
-	.col-lg-4 {
-		width:33.33333333333333%
-	}
-	.col-lg-3 {
-		width:25%
-	}
-	.col-lg-2 {
-		width:16.666666666666664%
-	}
-	.col-lg-1 {
-		width:8.333333333333332%
-	}
-	.col-lg-pull-12 {
-		right:100%
-	}
-	.col-lg-pull-11 {
-		right:91.66666666666666%
-	}
-	.col-lg-pull-10 {
-		right:83.33333333333334%
-	}
-	.col-lg-pull-9 {
-		right:75%
-	}
-	.col-lg-pull-8 {
-		right:66.66666666666666%
-	}
-	.col-lg-pull-7 {
-		right:58.333333333333336%
-	}
-	.col-lg-pull-6 {
-		right:50%
-	}
-	.col-lg-pull-5 {
-		right:41.66666666666667%
-	}
-	.col-lg-pull-4 {
-		right:33.33333333333333%
-	}
-	.col-lg-pull-3 {
-		right:25%
-	}
-	.col-lg-pull-2 {
-		right:16.666666666666664%
-	}
-	.col-lg-pull-1 {
-		right:8.333333333333332%
-	}
-	.col-lg-pull-0 {
-		right:0
-	}
-	.col-lg-push-12 {
-		left:100%
-	}
-	.col-lg-push-11 {
-		left:91.66666666666666%
-	}
-	.col-lg-push-10 {
-		left:83.33333333333334%
-	}
-	.col-lg-push-9 {
-		left:75%
-	}
-	.col-lg-push-8 {
-		left:66.66666666666666%
-	}
-	.col-lg-push-7 {
-		left:58.333333333333336%
-	}
-	.col-lg-push-6 {
-		left:50%
-	}
-	.col-lg-push-5 {
-		left:41.66666666666667%
-	}
-	.col-lg-push-4 {
-		left:33.33333333333333%
-	}
-	.col-lg-push-3 {
-		left:25%
-	}
-	.col-lg-push-2 {
-		left:16.666666666666664%
-	}
-	.col-lg-push-1 {
-		left:8.333333333333332%
-	}
-	.col-lg-push-0 {
-		left:0
-	}
-	.col-lg-offset-12 {
-		margin-left:100%
-	}
-	.col-lg-offset-11 {
-		margin-left:91.66666666666666%
-	}
-	.col-lg-offset-10 {
-		margin-left:83.33333333333334%
-	}
-	.col-lg-offset-9 {
-		margin-left:75%
-	}
-	.col-lg-offset-8 {
-		margin-left:66.66666666666666%
-	}
-	.col-lg-offset-7 {
-		margin-left:58.333333333333336%
-	}
-	.col-lg-offset-6 {
-		margin-left:50%
-	}
-	.col-lg-offset-5 {
-		margin-left:41.66666666666667%
-	}
-	.col-lg-offset-4 {
-		margin-left:33.33333333333333%
-	}
-	.col-lg-offset-3 {
-		margin-left:25%
-	}
-	.col-lg-offset-2 {
-		margin-left:16.666666666666664%
-	}
-	.col-lg-offset-1 {
-		margin-left:8.333333333333332%
-	}
-	.col-lg-offset-0 {
-		margin-left:0
-	}
-}
-table {
-	max-width:100%;
-	background-color:transparent
-}
-th {
-	text-align:left
-}
-.table {
-	width:100%;
-	margin-bottom:20px
-}
-.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td {
-	padding:8px;
-	line-height:1.428571429;
-	vertical-align:top;
-	border-top:1px solid #ddd
-}
-.table>thead>tr>th {
-	vertical-align:bottom;
-	border-bottom:2px solid #ddd
-}
-.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td {
-	border-top:0
-}
-.table>tbody+tbody {
-	border-top:2px solid #ddd
-}
-.table .table {
-	background-color:#fff
-}
-.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td {
-	padding:5px
-}
-.table-bordered {
-	border:1px solid #ddd
-}
-.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td {
-	border:1px solid #ddd
-}
-.table-bordered>thead>tr>th,.table-bordered>thead>tr>td {
-	border-bottom-width:2px
-}
-.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th {
-	background-color:#f9f9f9
-}
-.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th {
-	background-color:#f5f5f5
-}
-table col[class*="col-"] {
-	display:table-column;
-	float:none
-}
-table td[class*="col-"],table th[class*="col-"] {
-	display:table-cell;
-	float:none
-}
-.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th {
-	background-color:#f5f5f5
-}
-.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th {
-	background-color:#dff0d8
-}
-.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th {
-	background-color:#d0e9c6
-}
-.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th {
-	background-color:#f2dede
-}
-.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th {
-	background-color:#ebcccc
-}
-.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th {
-	background-color:#fcf8e3
-}
-.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th {
-	background-color:#faf2cc
-}
-@media(max-width:767px) {
-	.table-responsive {
-		width:100%;
-		margin-bottom:15px;
-		overflow-x:scroll;
-		overflow-y:hidden;
-		border:1px solid #ddd;
-		-ms-overflow-style:-ms-autohiding-scrollbar;
-		-webkit-overflow-scrolling:touch
-	}
-	.table-responsive>.table {
-		margin-bottom:0
-	}
-	.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td {
-		white-space:nowrap
-	}
-	.table-responsive>.table-bordered {
-		border:0
-	}
-	.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child {
-		border-left:0
-	}
-	.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child {
-		border-right:0
-	}
-	.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td {
-		border-bottom:0
-	}
-}
-fieldset {
-	padding:0;
-	margin:0;
-	border:0
-}
-legend {
-	display:block;
-	width:100%;
-	padding:0;
-	margin-bottom:20px;
-	font-size:21px;
-	line-height:inherit;
-	color:#333;
-	border:0;
-	border-bottom:1px solid #e5e5e5
-}
-label {
-	display:inline-block;
-	margin-bottom:5px;
-	font-weight:bold
-}
-input[type="search"] {
-	-webkit-box-sizing:border-box;
-	-moz-box-sizing:border-box;
-	box-sizing:border-box
-}
-input[type="radio"],input[type="checkbox"] {
-	margin:4px 0 0;
-	margin-top:1px \9;
-	line-height:normal
-}
-input[type="file"] {
-	display:block
-}
-select[multiple],select[size] {
-	height:auto
-}
-select optgroup {
-	font-family:inherit;
-	font-size:inherit;
-	font-style:inherit
-}
-input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus {
-	outline:thin dotted #333;
-	outline:5px auto -webkit-focus-ring-color;
-	outline-offset:-2px
-}
-input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button {
-	height:auto
-}
-output {
-	display:block;
-	padding-top:7px;
-	font-size:14px;
-	line-height:1.428571429;
-	color:#555;
-	vertical-align:middle
-}
-.form-control {
-	display:block;
-	width:100%;
-	height:34px;
-	padding:6px 12px;
-	font-size:14px;
-	line-height:1.428571429;
-	color:#555;
-	vertical-align:middle;
-	background-color:#fff;
-	background-image:none;
-	border:1px solid #ccc;
-	border-radius:4px;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
-	-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;
-	transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s
-}
-.form-control:focus {
-	border-color:#66afe9;
-	outline:0;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)
-}
-.form-control:-moz-placeholder {
-	color:#999
-}
-.form-control::-moz-placeholder {
-	color:#999
-}
-.form-control:-ms-input-placeholder {
-	color:#999
-}
-.form-control::-webkit-input-placeholder {
-	color:#999
-}
-.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control {
-	cursor:not-allowed;
-	background-color:#eee
-}
-textarea.form-control {
-	height:auto
-}
-.form-group {
-	margin-bottom:15px
-}
-.radio,.checkbox {
-	display:block;
-	min-height:20px;
-	padding-left:20px;
-	margin-top:10px;
-	margin-bottom:10px;
-	vertical-align:middle
-}
-.radio label,.checkbox label {
-	display:inline;
-	margin-bottom:0;
-	font-weight:normal;
-	cursor:pointer
-}
-.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"] {
-	float:left;
-	margin-left:-20px
-}
-.radio+.radio,.checkbox+.checkbox {
-	margin-top:-5px
-}
-.radio-inline,.checkbox-inline {
-	display:inline-block;
-	padding-left:20px;
-	margin-bottom:0;
-	font-weight:normal;
-	vertical-align:middle;
-	cursor:pointer
-}
-.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline {
-	margin-top:0;
-	margin-left:10px
-}
-input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline {
-	cursor:not-allowed
-}
-.input-sm {
-	height:30px;
-	padding:5px 10px;
-	font-size:12px;
-	line-height:1.5;
-	border-radius:3px
-}
-select.input-sm {
-	height:30px;
-	line-height:30px
-}
-textarea.input-sm {
-	height:auto
-}
-.input-lg {
-	height:45px;
-	padding:10px 16px;
-	font-size:18px;
-	line-height:1.33;
-	border-radius:6px
-}
-select.input-lg {
-	height:45px;
-	line-height:45px
-}
-textarea.input-lg {
-	height:auto
-}
-.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline {
-	color:#c09853
-}
-.has-warning .form-control {
-	border-color:#c09853;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)
-}
-.has-warning .form-control:focus {
-	border-color:#a47e3c;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e
-}
-.has-warning .input-group-addon {
-	color:#c09853;
-	background-color:#fcf8e3;
-	border-color:#c09853
-}
-.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline {
-	color:#b94a48
-}
-.has-error .form-control {
-	border-color:#b94a48;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)
-}
-.has-error .form-control:focus {
-	border-color:#953b39;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392
-}
-.has-error .input-group-addon {
-	color:#b94a48;
-	background-color:#f2dede;
-	border-color:#b94a48
-}
-.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline {
-	color:#468847
-}
-.has-success .form-control {
-	border-color:#468847;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)
-}
-.has-success .form-control:focus {
-	border-color:#356635;
-	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;
-	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b
-}
-.has-success .input-group-addon {
-	color:#468847;
-	background-color:#dff0d8;
-	border-color:#468847
-}
-.form-control-static {
-	margin-bottom:0
-}
-.help-block {
-	display:block;
-	margin-top:5px;
-	margin-bottom:10px;
-	color:#737373
-}
-@media(min-width:768px) {
-	.form-inline .form-group {
-		display:inline-block;
-		margin-bottom:0;
-		vertical-align:middle
-	}
-	.form-inline .form-control {
-		display:inline-block
-	}
-	.form-inline .radio,.form-inline .checkbox {
-		display:inline-block;
-		padding-left:0;
-		margin-top:0;
-		margin-bottom:0
-	}
-	.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"] {
-		float:none;
-		margin-left:0
-	}
-}
-.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline {
-	padding-top:7px;
-	margin-top:0;
-	margin-bottom:0
-}
-.form-horizontal .form-group {
-	margin-right:-15px;
-	margin-left:-15px
-}
-.form-horizontal .form-group:before,.form-horizontal .form-group:after {
-	display:table;
-	content:" "
-}
-.form-horizontal .form-group:after {
-	clear:both
-}
-.form-horizontal .form-group:before,.form-horizontal .form-group:after {
-	display:table;
-	content:" "
-}
-.form-horizontal .form-group:after {
-	clear:both
-}
-.form-horizontal .form-control-static {
-	padding-top:7px
-}
-@media(min-width:768px) {
-	.form-horizontal .control-label {
-		text-align:right
-	}
-}
-.btn {
-	display:inline-block;
-	padding:6px 12px;
-	margin-bottom:0;
-	font-size:14px;
-	font-weight:normal;
-	line-height:1.428571429;
-	text-align:center;
-	white-space:nowrap;
-	vertical-align:middle;
-	cursor:pointer;
-	background-image:none;
-	border:1px solid transparent;
-	border-radius:4px;
-	-webkit-user-select:none;
-	-moz-user-select:none;
-	-ms-user-select:none;
-	-o-user-select:none;
-	user-select:none
-}
-.btn:focus {
-	outline:thin dotted #333;
-	outline:5px auto -webkit-focus-ring-color;
-	outline-offset:-2px
-}
-.btn:hover,.btn:focus {
-	color:#333;
-	text-decoration:none
-}
-.btn:active,.btn.active {
-	background-image:none;
-	outline:0;
-	-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);
-	box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)
-}
-.btn.disabled,.btn[disabled],fieldset[disabled] .btn {
-	pointer-events:none;
-	cursor:not-allowed;
-	opacity:.65;
-	filter:alpha(opacity=65);
-	-webkit-box-shadow:none;
-	box-shadow:none
-}
-.btn-default {
-	color:#333;
-	background-color:#fff;
-	border-color:#ccc
-}
-.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default {
-	color:#333;
-	background-color:#ebebeb;
-	border-color:#adadad
-}
-.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default {
-	background-image:none
-}
-.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active {
-	background-color:#fff;
-	border-color:#ccc
-}
-.btn-primary {
-	color:#fff;
-	background-color:#428bca;
-	border-color:#357ebd
-}
-.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary {
-	color:#fff;
-	background-color:#3276b1;
-	border-color:#285e8e
-}
-.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary {
-	background-image:none
-}
-.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active {
-	background-color:#428bca;
-	border-color:#357ebd
-}
-.btn-warning {
-	color:#fff;
-	background-color:#f0ad4e;
-	border-color:#eea236
-}
-.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning {
-	color:#fff;
-	background-color:#ed9c28;
-	border-color:#d58512
-}
-.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning {
-	background-image:none
-}
-.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active {
-	background-color:#f0ad4e;
-	border-color:#eea236
-}
-.btn-danger {
-	color:#fff;
-	background-color:#d9534f;
-	border-color:#d43f3a
-}
-.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger {
-	color:#fff;
-	background-color:#d2322d;
-	border-color:#ac2925
-}
-.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger {
-	background-image:none
-}
-.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active {
-	background-color:#d9534f;
-	border-color:#d43f3a
-}
-.btn-success {
-	color:#fff;
-	background-color:#5cb85c;
-	border-color:#4cae4c
-}
-.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success {
-	color:#fff;
-	background-color:#47a447;
-	border-color:#398439
-}
-.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success {
-	background-image:none
-}
-.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active {
-	background-color:#5cb85c;
-	border-color:#4cae4c
-}
-.btn-info {
-	color:#fff;
-	background-color:#5bc0de;
-	border-color:#46b8da
-}
-.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info {
-	color:#fff;
-	background-color:#39b3d7;
-	border-color:#269abc
-}
-.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info {
-	background-image:none
-}
-.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active {
-	background-color:#5bc0de;
-	border-color:#46b8da
-}
-.btn-link {
-	font-weight:normal;
-	color:#428bca;
-	cursor:pointer;
-	border-radius:0
-}
-.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link {
-	background-color:transparent;
-	-webkit-box-shadow:none;
-	box-shadow:none
-}
-.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active {
-	border-color:transparent
-}
-.btn-link:hover,.btn-link:focus {
-	color:#2a6496;
-	text-decoration:underline;
-	background-color:transparent
-}
-.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus {
-	color:#999;
-	text-decoration:none
-}
-.btn-lg {
-	padding:10px 16px;
-	font-size:18px;
-	line-height:1.33;
-	border-radius:6px
-}
-.btn-sm,.btn-xs {
-	padding:5px 10px;
-	font-size:12px;
-	line-height:1.5;
-	border-radius:3px
-}
-.btn-xs {
-	padding:1px 5px
-}
-.btn-block {
-	display:block;
-	width:100%;
-	padding-right:0;
-	padding-left:0
-}
-.btn-block+.btn-block {
-	margin-top:5px
-}
-input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block {
-	width:100%
-}
-.fade {
-	opacity:0;
-	-webkit-transition:opacity .15s linear;
-	transition:opacity .15s linear
-}
-.fade.in {
-	opacity:1
-}
-.collapse {
-	display:none
-}
-.collapse.in {
-	display:block
-}
-.collapsing {
-	position:relative;
-	height:0;
-	overflow:hidden;
-	-webkit-transition:height .35s ease;
-	transition:height .35s ease
-}
-@font-face {
-	font-family:'Glyphicons Halflings';
-	src:url('../fonts/glyphicons-halflings-regular.eot');
-	src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg')
-}
-.glyphicon {
-	position:relative;
-	top:1px;
-	display:inline-block;
-	font-family:'Glyphicons Halflings';
-	-webkit-font-smoothing:antialiased;
-	font-style:normal;
-	font-weight:normal;
-	line-height:1;
-	-moz-osx-font-smoothing:grayscale
-}
-.glyphicon:empty {
-	width:1em
-}
-.glyphicon-asterisk:before {
-	content:"\2a"
-}
-.glyphicon-plus:before {
-	content:"\2b"
-}
-.glyphicon-euro:before {
-	content:"\20ac"
-}
-.glyphicon-minus:before {
-	content:"\2212"
-}
-.glyphicon-cloud:before {
-	content:"\2601"
-}
-.glyphicon-envelope:before {
-	content:"\2709"
-}
-.glyphicon-pencil:before {
-	content:"\270f"
-}
-.glyphicon-glass:before {
-	content:"\e001"
-}
-.glyphicon-music:before {
-	content:"\e002"
-}
-.glyphicon-search:before {
-	content:"\e003"
-}
-.glyphicon-heart:before {
-	content:"\e005"
-}
-.glyphicon-star:before {
-	content:"\e006"
-}
-.glyphicon-star-empty:before {
-	content:"\e007"
-}
-.glyphicon-user:before {
-	content:"\e008"
-}
-.glyphicon-film:before {
-	content:"\e009"
-}
-.glyphicon-th-large:before {
-	content:"\e010"
-}
-.glyphicon-th:before {
-	content:"\e011"
-}
-.glyphicon-th-list:before {
-	content:"\e012"
-}
-.glyphicon-ok:before {
-	content:"\e013"
-}
-.glyphicon-remove:before {
-	content:"\e014"
-}
-.glyphicon-zoom-in:before {
-	content:"\e015"
-}
-.glyphicon-zoom-out:before {
-	content:"\e016"
-}
-.glyphicon-off:before {
-	content:"\e017"
-}
-.glyphicon-signal:before {
-	content:"\e018"
-}
-.glyphicon-cog:before {
-	content:"\e019"
-}
-.glyphicon-trash:before {
-	content:"\e020"
-}
-.glyphicon-home:before {
-	content:"\e021"
-}
-.glyphicon-file:before {
-	content:"\e022"
-}
-.glyphicon-time:before {
-	content:"\e023"
-}
-.glyphicon-road:before {
-	content:"\e024"
-}
-.glyphicon-download-alt:before {
-	content:"\e025"
-}
-.glyphicon-download:before {
-	content:"\e026"
-}
-.glyphicon-upload:before {
-	content:"\e027"
-}
-.glyphicon-inbox:before {
-	content:"\e028"
-}
-.glyphicon-play-circle:before {
-	content:"\e029"
-}
-.glyphicon-repeat:before {
-	content:"\e030"
-}
-.glyphicon-refresh:before {
-	content:"\e031"
-}
-.glyphicon-list-alt:before {
-	content:"\e032"
-}
-.glyphicon-lock:before {
-	content:"\e033"
-}
-.glyphicon-flag:before {
-	content:"\e034"
-}
-.glyphicon-headphones:before {
-	content:"\e035"
-}
-.glyphicon-volume-off:before {
-	content:"\e036"
-}
-.glyphicon-volume-down:before {
-	content:"\e037"
-}
-.glyphicon-volume-up:before {
-	content:"\e038"
-}
-.glyphicon-qrcode:before {
-	content:"\e039"
-}
-.glyphicon-barcode:before {
-	content:"\e040"
-}
-.glyphicon-tag:before {
-	content:"\e041"
-}
-.glyphicon-tags:before {
-	content:"\e042"
-}
-.glyphicon-book:before {
-	content:"\e043"
-}
-.glyphicon-bookmark:before {
-	content:"\e044"
-}
-.glyphicon-print:before {
-	content:"\e045"
-}
-.glyphicon-camera:before {
-	content:"\e046"
-}
-.glyphicon-font:before {
-	content:"\e047"
-}
-.glyphicon-bold:before {
-	content:"\e048"
-}
-.glyphicon-italic:before {
-	content:"\e049"
-}
-.glyphicon-text-height:before {
-	content:"\e050"
-}
-.glyphicon-text-width:before {
-	content:"\e051"
-}
-.glyphicon-align-left:before {
-	content:"\e052"
-}
-.glyphicon-align-center:before {
-	content:"\e053"
-}
-.glyphicon-align-right:before {
-	content:"\e054"
-}
-.glyphicon-align-justify:before {
-	content:"\e055"
-}
-.glyphicon-list:before {
-	content:"\e056"
-}
-.glyphicon-indent-left:before {
-	content:"\e057"
-}
-.glyphicon-indent-right:before {
-	content:"\e058"
-}
-.glyphicon-facetime-video:before {
-	content:"\e059"
-}
-.glyphicon-picture:before {
-	content:"\e060"
-}
-.glyphicon-map-marker:before {
-	content:"\e062"
-}
-.glyphicon-adjust:before {
-	content:"\e063"
-}
-.glyphicon-tint:before {
-	content:"\e064"
-}
-.glyphicon-edit:before {
-	content:"\e065"
-}
-.glyphicon-share:before {
-	content:"\e066"
-}
-.glyphicon-check:before {
-	content:"\e067"
-}
-.glyphicon-move:before {
-	content:"\e068"
-}
-.glyphicon-step-backward:before {
-	content:"\e069"
-}
-.glyphicon-fast-backward:before {
-	content:"\e070"
-}
-.glyphicon-backward:before {
-	content:"\e071"
-}
-.glyphicon-play:before {
-	content:"\e072"
-}
-.glyphicon-pause:before {
-	content:"\e073"
-}
-.glyphicon-stop:before {
-	content:"\e074"
-}
-.glyphicon-forward:before {
-	content:"\e075"
-}
-.glyphicon-fast-forward:before {
-	content:"\e076"
-}
-.glyphicon-step-forward:before {
-	content:"\e077"
-}
-.glyphicon-eject:before {
-	content:"\e078"
-}
-.glyphicon-chevron-left:before {
-	content:"\e079"
-}
-.glyphicon-chevron-right:before {
-	content:"\e080"
-}
-.glyphicon-plus-sign:before {
-	content:"\e081"
-}
-.glyphicon-minus-sign:before {
-	content:"\e082"
-}
-.glyphicon-remove-sign:before {
-	content:"\e083"
-}
-.glyphicon-ok-sign:before {
-	content:"\e084"
-}
-.glyphicon-question-sign:before {
-	content:"\e085"
-}
-.glyphicon-info-sign:before {
-	content:"\e086"
-}
-.glyphicon-screenshot:before {
-	content:"\e087"
-}
-.glyphicon-remove-circle:before {
-	content:"\e088"
-}
-.glyphicon-ok-circle:before {
-	content:"\e089"
-}
-.glyphicon-ban-circle:before {
-	content:"\e090"
-}
-.glyphicon-arrow-left:before {
-	content:"\e091"
-}
-.glyphicon-arrow-right:before {
-	content:"\e092"
-}
-.glyphicon-arrow-up:before {
-	content:"\e093"
-}
-.glyphicon-arrow-down:before {
-	content:"\e094"
-}
-.glyphicon-share-alt:before {
-	content:"\e095"
-}
-.glyphicon-resize-full:before {
-	content:"\e096"
-}
-.glyphicon-resize-small:before {
-	content:"\e097"
-}
-.glyphicon-exclamation-sign:before {
-	content:"\e101"
-}
-.glyphicon-gift:before {
-	content:"\e102"
-}
-.glyphicon-leaf:before {
-	content:"\e103"
-}
-.glyphicon-fire:before {
-	content:"\e104"
-}
-.glyphicon-eye-open:before {
-	content:"\e105"
-}
-.glyphicon-eye-close:before {
-	content:"\e106"
-}
-.glyphicon-warning-sign:before {
-	content:"\e107"
-}
-.glyphicon-plane:before {
-	content:"\e108"
-}
-.glyphicon-calendar:before {
-	content:"\e109"
-}
-.glyphicon-random:before {
-	content:"\e110"
-}
-.glyphicon-comment:before {
-	content:"\e111"
-}
-.glyphicon-magnet:before {
-	content:"\e112"
-}
-.glyphicon-chevron-up:before {
-	content:"\e113"
-}
-.glyphicon-chevron-down:before {
-	content:"\e114"
-}
-.glyphicon-retweet:before {
-	content:"\e115"
-}
-.glyphicon-shopping-cart:before {
-	content:"\e116"
-}
-.glyphicon-folder-close:before {
-	content:"\e117"
-}
-.glyphicon-folder-open:before {
-	content:"\e118"
-}
-.glyphicon-resize-vertical:before {
-	content:"\e119"
-}
-.glyphicon-resize-horizontal:before {
-	content:"\e120"
-}
-.glyphicon-hdd:before {
-	content:"\e121"
-}
-.glyphicon-bullhorn:before {
-	content:"\e122"
-}
-.glyphicon-bell:before {
-	content:"\e123"
-}
-.glyphicon-certificate:before {
-	content:"\e124"
-}
-.glyphicon-thumbs-up:before {
-	content:"\e125"
-}
-.glyphicon-thumbs-down:before {
-	content:"\e126"
-}
-.glyphicon-hand-right:before {
-	content:"\e127"
-}
-.glyphicon-hand-left:before {
-	content:"\e128"
-}
-.glyphicon-hand-up:before {
-	content:"\e129"
-}
-.glyphicon-hand-down:before {
-	content:"\e130"
-}
-.glyphicon-circle-arrow-right:before {
-	content:"\e131"
-}
-.glyphicon-circle-arrow-left:before {
-	content:"\e132"
-}
-.glyphicon-circle-arrow-up:before {
-	content:"\e133"
-}
-.glyphicon-circle-arrow-down:before {
-	content:"\e134"
-}
-.glyphicon-globe:before {
-	content:"\e135"
-}
-.glyphicon-wrench:before {
-	content:"\e136"
-}
-.glyphicon-tasks:before {
-	content:"\e137"
-}
-.glyphicon-filter:before {
-	content:"\e138"
-}
-.glyphicon-briefcase:before {
-	content:"\e139"
-}
-.glyphicon-fullscreen:before {
-	content:"\e140"
-}
-.glyphicon-dashboard:before {
-	content:"\e141"
-}
-.glyphicon-paperclip:before {
-	content:"\e142"
-}
-.glyphicon-heart-empty:before {
-	content:"\e143"
-}
-.glyphicon-link:before {
-	content:"\e144"
-}
-.glyphicon-phone:before {
-	content:"\e145"
-}
-.glyphicon-pushpin:before {
-	content:"\e146"
-}
-.glyphicon-usd:before {
-	content:"\e148"
-}
-.glyphicon-gbp:before {
-	content:"\e149"
-}
-.glyphicon-sort:before {
-	content:"\e150"
-}
-.glyphicon-sort-by-alphabet:before {
-	content:"\e151"
-}
-.glyphicon-sort-by-alphabet-alt:before {
-	content:"\e152"
-}
-.glyphicon-sort-by-order:before {
-	content:"\e153"
-}
-.glyphicon-sort-by-order-alt:before {
-	content:"\e154"
-}
-.glyphicon-sort-by-attributes:before {
-	content:"\e155"
-}
-.glyphicon-sort-by-attributes-alt:before {
-	content:"\e156"
-}
-.glyphicon-unchecked:before {
-	content:"\e157"
-}
-.glyphicon-expand:before {
-	content:"\e158"
-}
-.glyphicon-collapse-down:before {
-	content:"\e159"
-}
-.glyphicon-collapse-up:before {
-	content:"\e160"
-}
-.glyphicon-log-in:before {
-	content:"\e161"
-}
-.glyphicon-flash:before {
-	content:"\e162"
-}
-.glyphicon-log-out:before {
-	content:"\e163"
-}
-.glyphicon-new-window:before {
-	content:"\e164"
-}
-.glyphicon-record:before {
-	content:"\e165"
-}
-.glyphicon-save:before {
-	content:"\e166"
-}
-.glyphicon-open:before {
-	content:"\e167"
-}
-.glyphicon-saved:before {
-	content:"\e168"
-}
-.glyphicon-import:before {
-	content:"\e169"
-}
-.glyphicon-export:before {
-	content:"\e170"
-}
-.glyphicon-send:before {
-	content:"\e171"
-}
-.glyphicon-floppy-disk:before {
-	content:"\e172"
-}
-.glyphicon-floppy-saved:before {
-	content:"\e173"
-}
-.glyphicon-floppy-remove:before {
-	content:"\e174"
-}
-.glyphicon-floppy-save:before {
-	content:"\e175"
-}
-.glyphicon-floppy-open:before {
-	content:"\e176"
-}
-.glyphicon-credit-card:before {
-	content:"\e177"
-}
-.glyphicon-transfer:before {
-	content:"\e178"
-}
-.glyphicon-cutlery:before {
-	content:"\e179"
-}
-.glyphicon-header:before {
-	content:"\e180"
-}
-.glyphicon-compressed:before {
-	content:"\e181"
-}
-.glyphicon-earphone:before {
-	content:"\e182"
-}
-.glyphicon-phone-alt:before {
-	content:"\e183"
-}
-.glyphicon-tower:before {
-	content:"\e184"
-}
-.glyphicon-stats:before {
-	content:"\e185"
-}
-.glyphicon-sd-video:before {
-	content:"\e186"
-}
-.glyphicon-hd-video:before {
-	content:"\e187"
-}
-.glyphicon-subtitles:before {
-	content:"\e188"
-}
-.glyphicon-sound-stereo:before {
-	content:"\e189"
-}
-.glyphicon-sound-dolby:before {
-	content:"\e190"
-}
-.glyphicon-sound-5-1:before {
-	content:"\e191"
-}
-.glyphicon-sound-6-1:before {
-	content:"\e192"
-}
-.glyphicon-sound-7-1:before {
-	content:"\e193"
-}
-.glyphicon-copyright-mark:before {
-	content:"\e194"
-}
-.glyphicon-registration-mark:before {
-	content:"\e195"
-}
-.glyphicon-cloud-download:before {
-	content:"\e197"
-}
-.glyphicon-cloud-upload:before {
-	content:"\e198"
-}
-.glyphicon-tree-conifer:before {
-	content:"\e199"
-}
-.glyphicon-tree-deciduous:before {
-	content:"\e200"
-}
-.caret {
-	display:inline-block;
-	width:0;
-	height:0;
-	margin-left:2px;
-	vertical-align:middle;
-	border-top:4px solid #000;
-	border-right:4px solid transparent;
-	border-bottom:0 dotted;
-	border-left:4px solid transparent
-}
-.dropdown {
-	position:relative
-}
-.dropdown-toggle:focus {
-	outline:0
-}
-.dropdown-menu {
-	position:absolute;
-	top:100%;
-	left:0;
-	z-index:1000;
-	display:none;
-	float:left;
-	min-width:160px;
-	padding:5px 0;
-	margin:2px 0 0;
-	font-size:14px;
-	list-style:none;
-	background-color:#fff;
-	border:1px solid #ccc;
-	border:1px solid rgba(0,0,0,0.15);
-	border-radius:4px;
-	-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);
-	box-shadow:0 6px 12px rgba(0,0,0,0.175);
-	background-clip:padding-box
-}
-.dropdown-menu.pull-right {
-	right:0;
-	left:auto
-}
-.dropdown-menu .divider {
-	height:1px;
-	margin:9px 0;
-	overflow:hidden;
-	background-color:#e5e5e5
-}
-.dropdown-menu>li>a {
-	display:block;
-	padding:3px 20px;
-	clear:both;
-	font-weight:normal;
-	line-height:1.428571429;
-	color:#333;
-	white-space:nowrap
-}
-.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus {
-	color:#262626;
-	text-decoration:none;
-	background-color:#f5f5f5
-}
-.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus {
-	color:#fff;
-	text-decoration:none;
-	background-color:#428bca;
-	outline:0
-}
-.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus {
-	color:#999
-}
-.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus {
-	text-decoration:none;
-	cursor:not-allowed;
-	background-color:transparent;
-	background-image:none;
-	filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)
-}
-.open>.dropdown-menu {
-	display:block
-}
-.open>a {
-	outline:0
-}
-.dropdown-header {
-	display:block;
-	padding:3px 20px;
-	font-size:12px;
-	line-height:1.428571429;
-	color:#999
-}
-.dropdown-backdrop {
-	position:fixed;
-	top:0;
-	right:0;
-	bottom:0;
-	left:0;
-	z-index:990
-}
-.pull-right>.dropdown-menu {
-	right:0;
-	left:auto
-}
-.dropup .caret,.navbar-fixed-bottom .dropdown .caret {
-	border-top:0 dotted;
-	border-bottom:4px solid #000;
-	content:""
-}
-.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu {
-	top:auto;
-	bottom:100%;
-	margin-bottom:1px
-}
-@media(min-width:768px) {
-	.navbar-right .dropdown-menu {
-		right:0;
-		left:auto
-	}
-}
-.btn-default .caret {
-	border-top-color:#333
-}
-.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret {
-	border-top-color:#fff
-}
-.dropup .btn-default .caret {
-	border-bottom-color:#333
-}
-.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret {
-	border-bottom-color:#fff
-}
-.btn-group,.btn-group-vertical {
-	position:relative;
-	display:inline-block;
-	vertical-align:middle
-}
-.btn-group>.btn,.btn-group-vertical>.btn {
-	position:relative;
-	float:left
-}
-.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active {
-	z-index:2
-}
-.btn-group>.btn:focus,.btn-group-vertical>.btn:focus {
-	outline:0
-}
-.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group {
-	margin-left:-1px
-}
-.btn-toolbar:before,.btn-toolbar:after {
-	display:table;
-	content:" "
-}
-.btn-toolbar:after {
-	clear:both
-}
-.btn-toolbar:before,.btn-toolbar:after {
-	display:table;
-	content:" "
-}
-.btn-toolbar:after {
-	clear:both
-}
-.btn-toolbar .btn-group {
-	float:left
-}
-.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group {
-	margin-left:5px
-}
-.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
-	border-radius:0
-}
-.btn-group>.btn:first-child {
-	margin-left:0
-}
-.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle) {
-	border-top-right-radius:0;
-	border-bottom-right-radius:0
-}
-.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child) {
-	border-bottom-left-radius:0;
-	border-top-left-radius:0
-}
-.btn-group>.btn-group {
-	float:left
-}
-.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn {
-	border-radius:0
-}
-.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle {
-	border-top-right-radius:0;
-	border-bottom-right-radius:0
-}
-.btn-group>.btn-group:last-child>.btn:first-child {
-	border-bottom-left-radius:0;
-	border-top-left-radius:0
-}
-.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle {
-	outline:0
-}
-.btn-group-xs>.btn {
-	padding:5px 10px;
-	padding:1px 5px;
-	font-size:12px;
-	line-height:1.5;
-	border-radius:3px
-}
-.btn-group-sm>.btn {
-	padding:5px 10px;
-	font-size:12px;
-	line-height:1.5;
-	border-radius:3px
-}
-.btn-group-lg>.btn {
-	padding:10px 16px;
-	font-size:18px;
-	line-height:1.33;
-	border-radius:6px
-}
-.btn-group>.btn+.dropdown-toggle {
-	padding-right:8px;
-	padding-left:8px
-}
-.btn-group>.btn-lg+.dropdown-toggle {
-	padding-right:12px;
-	padding-left:12px
-}
-.btn-group.open .dropdown-toggle {
-	-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);
-	box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)
-}
-.btn-group.open .dropdown-toggle.btn-link {
-	-webkit-box-shadow:none;
-	box-shadow:none
-}
-.btn .caret {
-	margin-left:0
-}
-.btn-lg .caret {
-	border-width:5px 5px 0;
-	border-bottom-width:0
-}
-.dropup .btn-lg .caret {
-	border-width:0 5px 5px
-}
-.btn-group-vertical>.btn,.btn-group-vertical>.btn-group {
-	display:block;
-	float:none;
-	width:100%;
-	max-width:100%
-}
-.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after {
-	display:table;
-	content:" "
-}
-.btn-group-vertical>.btn-group:after {
-	clear:both
-}
-.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after {
-	display:table;
-	content:" "
-}
-.btn-group-vertical>.btn-group:after {
-	clear:both
-}
-.btn-group-vertical>.btn-group>.btn {
-	float:none
-}
-.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group {
-	margin-top:-1px;
-	margin-left:0
-}
-.btn-group-vertical>.btn:not(:first-child):not(:last-child) {
-	border-radius:0
-}
-.btn-group-vertical>.btn:first-child:not(:last-child) {
-	border-top-right-radius:4px;
-	border-bottom-right-radius:0;
-	border-bottom-left-radius:0
-}
-.btn-group-vertical>.btn:last-child:not(:first-child) {
-	border-top-right-radius:0;
-	border-bottom-left-radius:4px;
-	border-top-left-radius:0
-}
-.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn {
-	border-radius:0
-}
-.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle {
-	border-bottom-right-radius:0;
-	border-bottom-left-radius:0
-}
-.btn-group-vertical>.btn-group:last-child>.btn:first-child {
-	border-top-right-radius:0;
-	border-top-left-radius:0
-}
-.btn-group-justified {
-	display:table;
-	width:100%;
-	border-collapse:separate;
-	table-layout:fixed
-}
-.btn-group-justified .btn {
-	display:table-cell;
-	float:none;
-	width:1%
-}
-[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"] {
-	display:none
-}
-.input-group {
-	position:relative;
-	display:table;
-	border-collapse:separate
-}
-.input-group.col {
-	float:none;
-	padding-right:0;
-	padding-left:0
-}
-.input-group .form-control {
-	width:100%;
-	margin-bottom:0
-}
-.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn {
-	height:45px;
-	padding:10px 16px;
-	font-size:18px;
-	line-height:1.33;
-	border-radius:6px
-}
-select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn {
-	height:45px;
-	line-height:45px
-}
-textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn {
-	height:auto
-}
-.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn {
-	height:30px;
-	padding:5px 10px;
-	font-size:12px;
-	line-height:1.5;
-	border-radius:3px
-}
-select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn {
-	height:30px;
-	line-height:30px
-}
-textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn {
-	height:auto
-}
-.input-group-addon,.input-group-btn,.input-group .form-control {
-	display:table-cell
-}
-.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child) {
-	border-radius:0
-}
-.input-group-addon,.input-group-btn {
-	width:1%;
-	white-space:nowrap;
-	vertical-align:middle
-}
-.input-group-addon {
-	padding:6px 12px;
-	font-size:14px;
-	font-weight:normal;
-	line-height:1;
-	color:#555;
-	text-align:center;
-	background-color:#eee;
-	border:1px solid #ccc;
-	border-radius:4px
-}
-.input-group-addon.input-sm {
-	padding:5px 10px;
-	font-size:12px;
-	border-radius:3px
-}
-.input-group-addon.input-lg {
-	padding:10px 16px;
-	font-size:18px;
-	border-radius:6px
-}
-.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"] {
-	margin-top:0
-}
-.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle) {
-	border-top-right-radius:0;
-	border-bottom-right-radius:0
-}
-.input-group-addon:first-child {
-	border-right:0
-}
-.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child) {
-	border-bottom-left-radius:0;
-	border-top-left-radius:0
-}
-.input-group-addon:last-child {
-	border-left:0
-}
-.input-group-btn {
-	position:relative;
-	white-space:nowrap
-}
-.input-group-btn:first-child>.btn {
-	margin-right:-1px
-}
-.input-group-btn:last-child>.btn {
-	margin-left:-1px
-}
-.input-group-btn>.btn {
-	position:relative
-}
-.input-group-btn>.btn+.btn {
-	margin-left:-4px
-}
-.input-group-btn>.btn:hover,.input-group-btn>.btn:active {
-	z-index:2
-}
-.nav {
-	padding-left:0;
-	margin-bottom:0;
-	list-style:none
-}
-.nav:before,.nav:after {
-	display:table;
-	content:" "
-}
-.nav:after {
-	clear:both
-}
-.nav:before,.nav:after {
-	display:table;
-	content:" "
-}
-.nav:after {
-	clear:both
-}
-.nav>li {
-	position:relative;
-	display:block
-}
-.nav>li>a {
-	position:relative;
-	display:block;
-	padding:10px 15px
-}
-.nav>li>a:hover,.nav>li>a:focus {
-	text-decoration:none;
-	background-color:#eee
-}
-.nav>li.disabled>a {
-	color:#999
-}
-.nav>li.disabled>a:hover,.nav>li.disabled>a:focus {
-	color:#999;
-	text-decoration:none;
-	cursor:not-allowed;
-	background-color:transparent
-}
-.nav .open>a,.nav .open>a:hover,.nav .open>a:focus {
-	background-color:#eee;
-	border-color:#428bca
-}
-.nav .open>a .caret,.nav .open>a:hover .caret,.nav .open>a:focus .caret {
-	border-top-color:#2a6496;
-	border-bottom-color:#2a6496
-}
-.nav .nav-divider {
-	height:1px;
-	margin:9px 0;
-	overflow:hidden;
-	background-color:#e5e5e5
-}
-.nav>li>a>img {
-	max-width:none
-}
-.nav-tabs {
-	border-bottom:1px solid #ddd
-}
-.nav-tabs>li {
-	float:left;
-	margin-bottom:-1px
-}
-.nav-tabs>li>a {
-	margin-right:2px;
-	line-height:1.428571429;
-	border:1px solid transparent;
-	border-radius:4px 4px 0 0
-}
-.nav-tabs>li>a:hover {
-	border-color:#eee #eee #ddd
-}
-.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus {
-	color:#555;
-	cursor:default;
-	background-color:#fff;
-	border:1px solid #ddd;
-	border-bottom-color:transparent
-}
-.nav-tabs.nav-justified {
-	width:100%;
-	border-bottom:0
-}
-.nav-tabs.nav-justified>li {
-	float:none
-}
-.nav-tabs.nav-justified>li>a {
-	margin-bottom:5px;
-	text-align:center
-}
-.nav-tabs.nav-justified>.dropdown .dropdown-menu {
-	top:auto;
-	left:auto
-}
-@media(min-width:768px) {
-	.nav-tabs.nav-justified>li {
-		display:table-cell;
-		width:1%
-	}
-	.nav-tabs.nav-justified>li>a {
-		margin-bottom:0
-	}
-}
-.nav-tabs.nav-justified>li>a {
-	margin-right:0;
-	border-radius:4px
-}
-.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus {
-	border:1px solid #ddd
-}
-@media(min-width:768px) {
-	.nav-tabs.nav-justified>li>a {
-		border-bottom:1px solid #ddd;
-		border-radius:4px 4px 0 0
-	}
-	.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus {
-		border-bottom-color:#fff
-	}
-}
-.nav-pills>li {
-	float:left
-}
-.nav-pills>li>a {
-	border-radius:4px
-}
-.nav-pills>li+li {
-	margin-left:2px
-}
-.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus {
-	color:#fff;
-	background-color:#428bca
-}
-.nav-pills>li.active>a .caret,.nav-pills>li.active>a:hover .caret,.nav-pills>li.active>a:focus .caret {
-	border-top-color:#fff;
-	border-bottom-color:#fff
-}
-.nav-stacked>li {
-	float:none
-}
-.nav-stacked>li+li {
-	margin-top:2px;
-	margin-left:0
-}
-.nav-justified {
-	width:100%
-}
-.nav-justified>li {
-	float:none
-}
-.nav-justified>li>a {
-	margin-bottom:5px;
-	text-align:center
-}
-.nav-justified>.dropdown .dropdown-menu {
-	top:auto;
-	left:auto
-}
-@media(min-width:768px) {
-	.nav-justified>li {
-		display:table-cell;
-		width:1%
-	}
-	.nav-justified>li>a {
-		margin-bottom:0
-	}
-}
-.nav-tabs-justified {
-	border-bottom:0
-}
-.nav-tabs-justified>li>a {
-	margin-right:0;
-	border-radius:4px
-}
-.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus {
-	border:1px solid #ddd
-}
-@media(min-width:768px) {
-	.nav-tabs-justified>li>a {
-		border-bottom:1px solid #ddd;
-		border-radius:4px 4px 0 0
-	}
-	.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus {
-		border-bottom-color:#fff
-	}
-}
-.tab-content>.tab-pane {
-	display:none
-}
-.tab-content>.active {
-	display:block
-}
-.nav .caret {
-	border-top-color:#428bca;
-	border-bottom-color:#428bca
-}
-.nav a:hover .caret {
-	border-top-color:#2a6496;
-	border-bottom-color:#2a6496
-}
-.nav-tabs .dropdown-menu {
-	margin-top:-1px;
-	border-top-right-radius:0;
-	border-top-left-radius:0
-}
-.navbar {
-	position:relative;
-	min-height:50px;
-	margin-bottom:20px;
-	border:1px solid transparent
-}
-.navbar:before,.navbar:after {
-	display:table;
-	content:" "
-}
-.navbar:after {
-	clear:both
-}
-.navbar:before,.navbar:after {
-	display:table;
-	content:" "
-}
-.navbar:after {
-	clear:both
-}
-@media(min-width:768px) {
-	.navbar {
-		border-radius:4px
-	}
-}
-.navbar-header:before,.navbar-header:after {
-	display:table;
-	content:" "
-}
-.navbar-header:after {
-	clear:both
-}
-.navbar-header:before,.navbar-header:after {
-	display:table;
-	content:" "
-}
-.navbar-header:after {
-	clear:both
-}
-@media(min-width:768px) {
-	.navbar-header {
-		float:left
-	}
-}
-.navbar-collapse {
-	max-height:340px;
-	padding-right:15px;
-	padding-left:15px;
-	overflow-x:visible;
-	border-top:1px solid transparent;
-	box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);
-	-webkit-overflow-scrolling:touch
-}
-.navbar-collapse:before,.navbar-collapse:after {
-	display:table;
-	content:" "
-}
-.navbar-collapse:after {
-	clear:both
-}
-.navbar-collapse:before,.navbar-collapse:after {
-	display:table;
-	content:" "
-}
-.navbar-collapse:after {
-	clear:both
-}
-.navbar-collapse.in {
-	overflow-y:auto
-}
-@media(min-width:768px) {
-	.navbar-collapse {
-		width:auto;
-		border-top:0;
-		box-shadow:none
-	}
-	.navbar-collapse.collapse {
-		display:block!important;
-		height:auto!important;
-		padding-bottom:0;
-		overflow:visible!important
-	}
-	.navbar-collapse.in {
-		overflow-y:auto
-	}
-	.navbar-collapse .navbar-nav.navbar-left:first-child {
-		margin-left:-15px
-	}
-	.navbar-collapse .navbar-nav.navbar-right:last-child {
-		margin-right:-15px
-	}
-	.navbar-collapse .navbar-text:last-child {
-		margin-right:0
-	}
-}
-.container>.navbar-header,.container>.navbar-collapse {
-	margin-right:-15px;
-	margin-left:-15px
-}
-@media(min-width:768px) {
-	.container>.navbar-header,.container>.navbar-collapse {
-		margin-right:0;
-		margin-left:0
-	}
-}
-.navbar-static-top {
-	z-index:1000;
-	border-width:0 0 1px
-}
-@media(min-width:768px) {
-	.navbar-static-top {
-		border-radius:0
-	}
-}
-.navbar-fixed-top,.navbar-fixed-bottom {
-	position:fixed;
-	right:0;
-	left:0;
-	z-index:1030
-}
-@media(min-width:768px) {
-	.navbar-fixed-top,.navbar-fixed-bottom {
-		border-radius:0
-	}
-}
-.navbar-fixed-top {
-	top:0;
-	border-width:0 0 1px
-}
-.navbar-fixed-bottom {
-	bottom:0;
-	margin-bottom:0;
-	border-width:1px 0 0
-}
-.navbar-brand {
-	float:left;
-	padding:15px 15px;
-	font-size:18px;
-	line-height:20px
-}
-.navbar-brand:hover,.navbar-brand:focus {
-	text-decoration:none
-}
-@media(min-width:768px) {
-	.navbar>.container .navbar-brand {
-		margin-left:-15px
-	}
-}
-.navbar-toggle {
-	position:relative;
-	float:right;
-	padding:9px 10px;
-	margin-top:8px;
-	margin-right:15px;
-	margin-bottom:8px;
-	background-color:transparent;
-	border:1px solid transparent;
-	border-radius:4px
-}
-.navbar-toggle .icon-bar {
-	display:block;
-	width:22px;
-	height:2px;
-	border-radius:1px
-}
-.navbar-toggle .icon-bar+.icon-bar {
-	margin-top:4px
-}
-@media(min-width:768px) {
-	.navbar-toggle {
-		display:none
-	}
-}
-.navbar-nav {
-	margin:7.5px -15px
-}
-.navbar-nav>li>a {
-	padding-top:10px;
-	padding-bottom:10px;
-	line-height:20px
-}
-@media(max-width:767px) {
-	.navbar-nav .open .dropdown-menu {
-		position:static;
-		float:none;
-		width:auto;
-		margin-top:0;
-		background-color:transparent;
-		border:0;
-		box-shadow:none
-	}
-	.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header {
-		padding:5px 15px 5px 25px
-	}
-	.navbar-nav .open .dropdown-menu>li>a {
-		line-height:20px
-	}
-	.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus {
-		background-image:none
-	}
-}
-@media(min-width:768px) {
-	.navbar-nav {
-		float:left;
-		margin:0
-	}
-	.navbar-nav>li {
-		float:left
-	}
-	.navbar-nav>li>a {
-		padding-top:15px;
-		padding-bottom:15px
-	}
-}
-@media(min-width:768px) {
-	.navbar-left {
-		float:left!important
-	}
-	.navbar-right {
-		float:right!important
-	}
-}
-.navbar-form {
-	padding:10px 15px;
-	margin-top:8px;
-	margin-right:-15px;
-	margin-bottom:8px;
-	margin-left:-15px;
-	border-top:1px solid transparent;
-	border-bottom:1px solid transparent;
-	-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);
-	box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)
-}
-@media(min-width:768px) {
-	.navbar-form .form-group {
-		display:inline-block;
-		margin-bottom:0;
-		vertical-align:middle
-	}
-	.navbar-form .form-control {
-		display:inline-block
-	}
-	.navbar-form .radio,.navbar-form .checkbox {
-		display:inline-block;
-		padding-left:0;
-		margin-top:0;
-		margin-bottom:0
-	}
-	.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"] {
-		float:none;
-		margin-left:0
-	}
-}
-@media(max-width:767px) {
-	.navbar-form .form-group {
-		margin-bottom:5px
-	}
-}
-@media(min-width:768px) {
-	.navbar-form {
-		width:auto;
-		padding-top:0;
-		padding-bottom:0;
-		margin-right:0;
-		margin-left:0;
-		border:0;
-		-webkit-box-shadow:none;
-		box-shadow:none
-	}
-}
-.navbar-nav>li>.dropdown-menu {
-	margin-top:0;
-	border-top-right-radius:0;
-	border-top-left-radius:0
-}
-.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu {
-	border-bottom-right-radius:0;
-	border-bottom-left-radius:0
-}
-.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right {
-	right:0;
-	left:auto
-}
-.navbar-btn {
-	margin-top:8px;
-	margin-bottom:8px
-}
-.navbar-text {
-	float:left;
-	margin-top:15px;
-	margin-bottom:15px
-}
-@media(min-width:768px) {
-	.navbar-text {
-		margin-right:15px;
-		margin-left:15px
-	}
-}
-.navbar-default {
-	background-color:#f8f8f8;
-	border-color:#e7e7e7
-}
-.navbar-default .navbar-brand {
-	color:#777
-}
-.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus {
-	color:#5e5e5e;
-	background-color:transparent
-}
-.navbar-default .navbar-text {
-	color:#777
-}
-.navbar-default .navbar-nav>li>a {
-	color:#777
-}
-.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus {
-	color:#333;
-	background-color:transparent
-}
-.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus {
-	color:#555;
-	background-color:#e7e7e7
-}
-.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus {
-	color:#ccc;
-	background-color:transparent
-}
-.navbar-default .navbar-toggle {
-	border-color:#ddd
-}
-.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus {
-	background-color:#ddd
-}
-.navbar-default .navbar-toggle .icon-bar {
-	background-color:#ccc
-}
-.navbar-default .navbar-collapse,.navbar-default .navbar-form {
-	border-color:#e7e7e7
-}
-.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret {
-	border-top-color:#333;
-	border-bottom-color:#333
-}
-.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus {
-	color:#555;
-	background-color:#e7e7e7
-}
-.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret {
-	border-top-color:#555;
-	border-bottom-color:#555
-}
-.navbar-default .navbar-nav>.dropdown>a .caret {
-	border-top-color:#777;
-	border-bottom-color:#777
-}
-@media(max-width:767px) {
-	.navbar-default .navbar-nav .open .dropdown-menu>li>a {
-		color:#777
-	}
-	.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus {
-		color:#333;
-		background-color:transparent
-	}
-	.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus {
-		color:#555;
-		background-color:#e7e7e7
-	}
-	.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus {
-		color:#ccc;
-		background-color:transparent
-	}
-}
-.navbar-default .navbar-link {
-	color:#777
-}
-.navbar-default .navbar-link:hover {
-	color:#333
-}
-.navbar-inverse {
-	background-color:#222;
-	border-color:#080808
-}
-.navbar-inverse .navbar-brand {
-	color:#999
-}
-.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus {
-	color:#fff;
-	background-color:transparent
-}
-.navbar-inverse .navbar-text {
-	color:#999
-}
-.navbar-inverse .navbar-nav>li>a {
-	color:#999
-}
-.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus {
-	color:#fff;
-	background-color:transparent
-}
-.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus {
-	color:#fff;
-	background-color:#080808
-}
-.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus {
-	color:#444;
-	background-color:transparent
-}
-.navbar-inverse .navbar-toggle {
-	border-color:#333
-}
-.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus {
-	background-color:#333
-}
-.navbar-inverse .navbar-toggle .icon-bar {
-	background-color:#fff
-}
-.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form {
-	border-color:#101010
-}
-.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus {
-	color:#fff;
-	background-color:#080808
-}
-.navbar-inverse .navbar-nav>.dropdown>a:hover .caret {
-	border-top-color:#fff;
-	border-bottom-color:#fff
-}
-.navbar-inverse .navbar-nav>.dropdown>a .caret {
-	border-top-color:#999;
-	border-bottom-color:#999
-}
-.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret {
-	border-top-color:#fff;
-	border-bottom-color:#fff
-}
-@media(max-width:767px) {
-	.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header {
-		border-color:#080808
-	}
-	.navbar-inverse .navbar-nav .open .dropdown-menu>li>a {
-		color:#999
-	}
-	.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus {
-		color:#fff;
-		background-color:transparent
-	}
-	.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus {
-		color:#fff;
-		background-color:#080808
-	}
-	.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus {
-		color:#444;
-		background-color:transparent
-	}
-}
-.navbar-inverse .navbar-link {
-	color:#999
-}
-.navbar-inverse .navbar-link:hover {
-	color:#fff
-}
-.breadcrumb {
-	padding:8px 15px;
-	margin-bottom:20px;
-	list-style:none;
-	background-color:#f5f5f5;
-	border-radius:4px
-}
-.breadcrumb>li {
-	display:inline-block
-}
-.breadcrumb>li+li:before {
-	padding:0 5px;
-	color:#ccc;
-	content:"/\00a0"
-}
-.breadcrumb>.active {
-	color:#999
-}
-.pagination {
-	display:inline-block;
-	padding-left:0;
-	margin:20px 0;
-	border-radius:4px
-}
-.pagination>li {
-	display:inline
-}
-.pagination>li>a,.pagination>li>span {
-	position:relative;
-	float:left;
-	padding:6px 12px;
-	margin-left:-1px;
-	line-height:1.428571429;
-	text-decoration:none;
-	background-color:#fff;
-	border:1px solid #ddd
-}
-.pagination>li:first-child>a,.pagination>li:first-child>span {
-	margin-left:0;
-	border-bottom-left-radius:4px;
-	border-top-left-radius:4px
-}
-.pagination>li:last-child>a,.pagination>li:last-child>span {
-	border-top-right-radius:4px;
-	border-bottom-right-radius:4px
-}
-.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus {
-	background-color:#eee
-}
-.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus {
-	z-index:2;
-	color:#fff;
-	cursor:default;
-	background-color:#428bca;
-	border-color:#428bca
-}
-.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus {
-	color:#999;
-	cursor:not-allowed;
-	background-color:#fff;
-	border-color:#ddd
-}
-.pagination-lg>li>a,.pagination-lg>li>span {
-	padding:10px 16px;
-	font-size:18px
-}
-.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span {
-	border-bottom-left-radius:6px;
-	border-top-left-radius:6px
-}
-.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span {
-	border-top-right-radius:6px;
-	border-bottom-right-radius:6px
-}
-.pagination-sm>li>a,.pagination-sm>li>span {
-	padding:5px 10px;
-	font-size:12px
-}
-.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span {
-	border-bottom-left-radius:3px;
-	border-top-left-radius:3px
-}
-.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span {
-	border-top-right-radius:3px;
-	border-bottom-right-radius:3px
-}
-.pager {
-	padding-left:0;
-	margin:20px 0;
-	text-align:center;
-	list-style:none
-}
-.pager:before,.pager:after {
-	display:table;
-	content:" "
-}
-.pager:after {
-	clear:both
-}
-.pager:before,.pager:after {
-	display:table;
-	content:" "
-}
-.pager:after {
-	clear:both
-}
-.pager li {
-	display:inline
-}
-.pager li>a,.pager li>span {
-	display:inline-block;
-	padding:5px 14px;
-	background-color:#fff;
-	border:1px solid #ddd;
-	border-radius:15px
-}
-.pager li>a:hover,.pager li>a:focus {
-	text-decoration:none;
-	background-color:#eee
-}
-.pager .next>a,.pager .next>span {
-	float:right
-}
-.pager .previous>a,.pager .previous>span {
-	float:left
-}
-.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span {
-	color:#999;
-	cursor:not-allowed;
-	background-color:#fff
-}
-.label {
-	display:inline;
-	padding:.2em .6em .3em;
-	font-size:75%;
-	font-weight:bold;
-	line-height:1;
-	color:#fff;
-	text-align:center;
-	white-space:nowrap;
-	vertical-align:baseline;
-	border-radius:.25em
-}
-.label[href]:hover,.label[href]:focus {
-	color:#fff;
-	text-decoration:none;
-	cursor:pointer
-}
-.label:empty {
-	display:none
-}
-.label-default {
-	background-color:#999
-}
-.label-default[href]:hover,.label-default[href]:focus {
-	background-color:#808080
-}
-.label-primary {
-	background-color:#428bca
-}
-.label-primary[href]:hover,.label-primary[href]:focus {
-	background-color:#3071a9
-}
-.label-success {
-	background-color:#5cb85c
-}
-.label-success[href]:hover,.label-success[href]:focus {
-	background-color:#449d44
-}
-.label-info {
-	background-color:#5bc0de
-}
-.label-info[href]:hover,.label-info[href]:focus {
-	background-color:#31b0d5
-}
-.label-warning {
-	background-color:#f0ad4e
-}
-.label-warning[href]:hover,.label-warning[href]:focus {
-	background-color:#ec971f
-}
-.label-danger {
-	background-color:#d9534f
-}
-.label-danger[href]:hover,.label-danger[href]:focus {
-	background-color:#c9302c
-}
-.badge {
-	display:inline-block;
-	min-width:10px;
-	padding:3px 7px;
-	font-size:12px;
-	font-weight:bold;
-	line-height:1;
-	color:#fff;
-	text-align:center;
-	white-space:nowrap;
-	vertical-align:baseline;
-	background-color:#999;
-	border-radius:10px
-}
-.badge:empty {
-	display:none
-}
-a.badge:hover,a.badge:focus {
-	color:#fff;
-	text-decoration:none;
-	cursor:pointer
-}
-.btn .badge {
-	position:relative;
-	top:-1px
-}
-a.list-group-item.active>.badge,.nav-pills>.active>a>.badge {
-	color:#428bca;
-	background-color:#fff
-}
-.nav-pills>li>a>.badge {
-	margin-left:3px
-}
-.jumbotron {
-	padding:30px;
-	margin-bottom:30px;
-	font-size:21px;
-	font-weight:200;
-	line-height:2.1428571435;
-	color:inherit;
-	background-color:#eee
-}
-.jumbotron h1 {
-	line-height:1;
-	color:inherit
-}
-.jumbotron p {
-	line-height:1.4
-}
-.container .jumbotron {
-	border-radius:6px
-}
-@media screen and (min-width:768px) {
-	.jumbotron {
-		padding-top:48px;
-		padding-bottom:48px
-	}
-	.container .jumbotron {
-		padding-right:60px;
-		padding-left:60px
-	}
-	.jumbotron h1 {
-		font-size:63px
-	}
-}
-.thumbnail {
-	display:inline-block;
-	display:block;
-	height:auto;
-	max-width:100%;
-	padding:4px;
-	margin-bottom:20px;
-	line-height:1.428571429;
-	background-color:#fff;
-	border:1px solid #ddd;
-	border-radius:4px;
-	-webkit-transition:all .2s ease-in-out;
-	transition:all .2s ease-in-out
-}
-.thumbnail>img {
-	display:block;
-	height:auto;
-	max-width:100%;
-	margin-right:auto;
-	margin-left:auto
-}
-a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active {
-	border-color:#428bca
-}
-.thumbnail .caption {
-	padding:9px;
-	color:#333
-}
-.alert {
-	padding:15px;
-	margin-bottom:20px;
-	border:1px solid transparent;
-	border-radius:4px
-}
-.alert h4 {
-	margin-top:0;
-	color:inherit
-}
-.alert .alert-link {
-	font-weight:bold
-}
-.alert>p,.alert>ul {
-	margin-bottom:0
-}
-.alert>p+p {
-	margin-top:5px
-}
-.alert-dismissable {
-	padding-right:35px
-}
-.alert-dismissable .close {
-	position:relative;
-	top:-2px;
-	right:-21px;
-	color:inherit
-}
-.alert-success {
-	color:#468847;
-	background-color:#dff0d8;
-	border-color:#d6e9c6
-}
-.alert-success hr {
-	border-top-color:#c9e2b3
-}
-.alert-success .alert-link {
-	color:#356635
-}
-.alert-info {
-	color:#3a87ad;
-	background-color:#d9edf7;
-	border-color:#bce8f1
-}
-.alert-info hr {
-	border-top-color:#a6e1ec
-}
-.alert-info .alert-link {
-	color:#2d6987
-}
-.alert-warning {
-	color:#c09853;
-	background-color:#fcf8e3;
-	border-color:#faebcc
-}
-.alert-warning hr {
-	border-top-color:#f7e1b5
-}
-.alert-warning .alert-link {
-	color:#a47e3c
-}
-.alert-danger {
-	color:#b94a48;
-	background-color:#f2dede;
-	border-color:#ebccd1
-}
-.alert-danger hr {
-	border-top-color:#e4b9c0
-}
-.alert-danger .alert-link {
-	color:#953b39
-}
-@-webkit-keyframes progress-bar-stripes {
-	from {
-		background-position:40px 0
-	}
-	to {
-		background-position:0 0
-	}
-}
-@-moz-keyframes progress-bar-stripes {
-	from {
-		background-position:40px 0
-	}
-	to {
-		background-position:0 0
-	}
-}
-@-o-keyframes progress-bar-stripes {
-	from {
-		background-position:0 0
-	}
-	to {
-		background-position:40px 0
-	}
-}
-@keyframes progress-bar-stripes {
-	from {
-		background-position:40px 0
-	}
-	to {
-		background-position:0 0
-	}
-}
-.progress {
-	height:20px;
-	margin-bottom:20px;
-	overflow:hidden;
-	background-color:#f5f5f5;
-	border-radius:4px;
-	-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);
-	box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)
-}
-.progress-bar {
-	float:left;
-	width:0;
-	height:100%;
-	font-size:12px;
-	line-height:20px;
-	color:#fff;
-	text-align:center;
-	background-color:#428bca;
-	-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);
-	box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);
-	-webkit-transition:width .6s ease;
-	transition:width .6s ease
-}
-.progress-striped .progress-bar {
-	background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));
-	background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-size:40px 40px
-}
-.progress.active .progress-bar {
-	-webkit-animation:progress-bar-stripes 2s linear infinite;
-	animation:progress-bar-stripes 2s linear infinite
-}
-.progress-bar-success {
-	background-color:#5cb85c
-}
-.progress-striped .progress-bar-success {
-	background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));
-	background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)
-}
-.progress-bar-info {
-	background-color:#5bc0de
-}
-.progress-striped .progress-bar-info {
-	background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));
-	background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)
-}
-.progress-bar-warning {
-	background-color:#f0ad4e
-}
-.progress-striped .progress-bar-warning {
-	background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));
-	background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);
-	ba

<TRUNCATED>


[07/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/namenode_crail_hdfs_iops.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/namenode_crail_hdfs_iops.svg b/content/img/blog/crail-metadata/namenode_crail_hdfs_iops.svg
deleted file mode 100644
index c27a5ea..0000000
--- a/content/img/blog/crail-metadata/namenode_crail_hdfs_iops.svg
+++ /dev/null
@@ -1,426 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,223.2 L606.3,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,223.2 L131.2,223.2 M606.3,223.2 L594.3,223.2  '/>	<g transform="translate(108.0,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,203.1 L606.3,203.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,203.1 L125.2,203.1 M606.3,203.1 L600.3,203.1  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,183.1 L606.3,183.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,183.1 L131.2,183.1 M606.3,183.1 L594.3,183.1  '/>	<g transform="translate(108.0,189.1)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 5000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,163.0 L606.3,163.0  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,163.0 L125.2,163.0 M606.3,163.0 L600.3,163.0  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,142.9 L606.3,142.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,142.9 L131.2,142.9 M606.3,142.9 L594.3,142.9  '/>	<g transform="translate(108.0,148.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 10000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,122.8 L606.3,122.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,122.8 L125.2,122.8 M606.3,122.8 L600.3,122.8  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,102.8 L303.1,102.8 M595.1,102.8 L606.3,102.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,102.8 L131.2,102.8 M606.3,102.8 L594.3,102.8  '/>	<g transform="translate(108.0,108.8)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 15000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,82.7 L303.1,82.7 M595.1,82.7 L606.3,82.7  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,82.7 L125.2,82.7 M606.3,82.7 L600.3,82.7  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,62.6 L303.1,62.6 M595.1,62.6 L606.3,62.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,62.6 L131.2,62.6 M606.3,62.6 L594.3,62.6  '/>	<g transform="translate(108.0,68.6)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 20000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,42.6 L303.1,42.6 M595.1,42.6 L606.3,42.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,42.6 L125.2,42.6 M606.3,42.6 L600.3,42.6  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,22.5 L606.3,22.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,22.5 L131.2,22.5 M606.3,22.5 L594.3,22.5  '/>	<g transform="translate(108.0,28.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 25000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,223.2 L119.2,211.2 M119.2,22.5 L119.2,34.5  '/>	<g transform="translate(119.2,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M188.8,223.2 L188.8,211.2 M188.8,22.5 L188.8,34.5  '/>	<g transform="translate(188.8,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M258.4,223.2 L258.4,211.2 M258.4,22.5 L258.4,34.5  '/>	<g transform="translate(258.4,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M328.0,223.2 L328.0,211.2 M328.0,22.5 L328.0,34.5  '/>	<g transform="translate(328.0,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M397.5,223.2 L397.5,211.2 M397.5,22.5 L397.5,34.5  '/>	<g transform="translate(397.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M467.1,223.2 L467.1,211.2 M467.1,22.5 L467.1,34.5  '/>	<g transform="translate(467.1,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 50</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M536.7,223.2 L536.7,211.2 M536.7,22.5 L536.7,34.5  '/>	<g transform="translate(536.7,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 60</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M606.3,223.2 L606.3,211.2 M606.3,22.5 L606.3,34.5  '/>	<g transform="translate(606.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 70</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,22.5 L119.2,223.2 L606.3,223.2 L606.3,22.5 L119.2,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS [k]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(362.7,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Number of clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>Crail namenode IOPS</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,52.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >Crail namenode IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb( 77, 175, 164)'  d='M527.1,46.5 L583.9,46.5 M126.2,215.8 L133.1,208.1 L140.1,201.9 L147.0,193.9 L154.0,186.0 L161.0,178.6
-		L167.9,171.2 L174.9,163.2 L181.8,162.9 L188.8,159.6 L195.7,155.8 L202.7,155.5 L209.7,154.0 L216.6,150.9
-		L223.6,148.0 L230.5,146.9 L237.5,145.5 L244.5,148.1 L251.4,148.9 L258.4,148.1 L265.3,148.0 L272.3,147.2
-		L279.2,149.0 L286.2,146.0 L293.2,148.3 L300.1,149.6 L307.1,149.7 L314.0,149.5 L321.0,149.2 L328.0,149.2
-		L334.9,151.1 L341.9,154.3 L348.8,151.3 L355.8,149.9 L362.8,148.9 L369.7,150.9 L376.7,150.0 L383.6,149.5
-		L390.6,151.0 L397.5,152.0 L404.5,152.1 L411.5,150.8 L418.4,152.4 L425.4,152.5 L432.3,150.7 L439.3,153.8
-		L446.3,154.2 L453.2,153.1 L460.2,155.3 L467.1,153.2 L474.1,153.9 L481.0,153.1 L488.0,154.9 L495.0,158.7
-		L501.9,157.1 L508.9,155.8 L515.8,156.0 L522.8,155.5 L529.8,156.1 L536.7,159.1 L543.7,158.5 L550.6,159.5
-		L557.6,157.5 L564.5,160.3  '/>	<use xlink:href='#gpPt2' transform='translate(126.2,215.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(133.1,208.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(140.1,201.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(147.0,193.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(154.0,186.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(161.0,178.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.9,171.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,163.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(181.8,162.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(188.8,159.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(195.7,155.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(202.7,155.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(209.7,154.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(216.6,150.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(223.6,148.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(230.5,146.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(237.5,145.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(244.5,148.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(251.4,148.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(258.4,148.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(265.3,148.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(272.3,147.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.2,149.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.2,146.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.2,148.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(300.1,149.6) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(307.1,149.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(314.0,149.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(321.0,149.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(328.0,149.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(334.9,151.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(341.9,154.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(348.8,151.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(355.8,149.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(362.8,148.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(369.7,150.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(376.7,150.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.6,149.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,151.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(397.5,152.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(404.5,152.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(411.5,150.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(418.4,152.4) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(425.4,152.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(432.3,150.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(439.3,153.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(446.3,154.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(453.2,153.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(460.2,155.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(467.1,153.2) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(474.1,153.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(481.0,153.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(488.0,154.9) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(495.0,158.7) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(501.9,157.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(508.9,155.8) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(515.8,156.0) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(522.8,155.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(529.8,156.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(536.7,159.1) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(543.7,158.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(550.6,159.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(557.6,157.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(564.5,160.3) scale(3.00)' color='rgb( 77, 175, 164)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.5,46.5) scale(3.00)' color='rgb( 77, 175, 164)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>HDFS namenode IOPS</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,76.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >HDFS namenode IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb( 64,  64, 255)'  d='M527.1,70.5 L583.9,70.5 M126.2,223.2 L133.1,223.1 L140.1,223.1 L147.0,222.9 L154.0,222.9 L161.0,222.8
-		L167.9,222.8 L174.9,222.8 L181.8,222.7 L188.8,222.6 L195.7,222.5 L202.7,222.4 L209.7,222.4 L216.6,222.4
-		L223.6,222.3 L230.5,222.3 L237.5,222.3 L244.5,222.3 L251.4,222.2 L258.4,222.2 L265.3,222.2 L272.3,222.2
-		L279.2,222.1 L286.2,222.1 L293.2,222.1 L300.1,222.1 L307.1,222.1 L314.0,222.0 L321.0,222.0 L328.0,222.0
-		L334.9,221.9 L341.9,221.9 L348.8,221.9 L355.8,221.9 L362.8,221.9 L369.7,221.9 L376.7,221.9 L383.6,221.8
-		L390.6,221.9 L397.5,221.9 L404.5,221.8 L411.5,221.8 L418.4,221.8 L425.4,221.8 L432.3,221.8 L439.3,221.8
-		L446.3,221.8 L453.2,221.8 L460.2,221.8 L467.1,221.8 L474.1,221.7 L481.0,221.7 L488.0,221.8 L495.0,221.7
-		L501.9,221.7 L508.9,221.7 L515.8,221.7 L522.8,221.7 L529.8,221.7 L536.7,221.7 L543.7,221.7 L550.6,221.7
-		L557.6,221.8 L564.5,221.7  '/>	<use xlink:href='#gpPt2' transform='translate(126.2,223.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(133.1,223.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(140.1,223.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(147.0,222.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(154.0,222.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(161.0,222.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.9,222.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,222.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(181.8,222.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(188.8,222.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(195.7,222.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(202.7,222.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(209.7,222.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(216.6,222.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(223.6,222.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(230.5,222.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(237.5,222.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(244.5,222.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(251.4,222.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(258.4,222.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(265.3,222.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(272.3,222.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(279.2,222.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.2,222.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.2,222.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(300.1,222.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(307.1,222.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(314.0,222.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(321.0,222.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(328.0,222.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(334.9,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(341.9,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(348.8,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(355.8,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(362.8,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(369.7,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(376.7,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(383.6,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(390.6,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(397.5,221.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(404.5,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(411.5,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(418.4,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(425.4,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(432.3,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(439.3,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(446.3,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(453.2,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(460.2,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(467.1,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(474.1,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(481.0,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(488.0,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(495.0,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(501.9,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(508.9,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(515.8,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(522.8,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(529.8,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(536.7,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(543.7,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(550.6,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(557.6,221.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(564.5,221.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.5,70.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-</g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>RAMCloud IOPS</title>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,100.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >RAMCloud IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb(255, 170, 255)'  d='M527.1,94.5 L583.9,94.5 M126.2,221.5 L133.1,220.4 L140.1,219.2 L147.0,218.2 L154.0,217.2 L161.0,216.3
-		L167.9,215.9 L174.9,215.4 L181.8,215.4 L188.8,215.3 L195.7,215.3 L202.7,215.0 L209.7,214.8 L216.6,214.2
-		L223.6,215.1 L230.5,215.2  '/>	<use xlink:href='#gpPt2' transform='translate(126.2,221.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(133.1,220.4) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(140.1,219.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(147.0,218.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(154.0,217.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(161.0,216.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(167.9,215.9) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(174.9,215.4) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(181.8,215.4) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(188.8,215.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(195.7,215.3) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(202.7,215.0) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(209.7,214.8) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(216.6,214.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(223.6,215.1) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(230.5,215.2) scale(3.00)' color='rgb(255, 170, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.5,94.5) scale(3.00)' color='rgb(255, 170, 255)'/>
-</g>
-	</g>
-<g fill="none" color="white" stroke="rgb(255, 170, 255)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,22.5 L119.2,223.2 L606.3,223.2 L606.3,22.5 L119.2,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/namenode_hdfs_iops.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/namenode_hdfs_iops.svg b/content/img/blog/crail-metadata/namenode_hdfs_iops.svg
deleted file mode 100644
index 9601c34..0000000
--- a/content/img/blog/crail-metadata/namenode_hdfs_iops.svg
+++ /dev/null
@@ -1,316 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,223.2 L606.3,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,223.2 L108.8,223.2 M606.3,223.2 L594.3,223.2  '/>	<g transform="translate(85.6,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,203.1 L606.3,203.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,203.1 L102.8,203.1 M606.3,203.1 L600.3,203.1  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,183.1 L606.3,183.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,183.1 L108.8,183.1 M606.3,183.1 L594.3,183.1  '/>	<g transform="translate(85.6,189.1)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 50</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,163.0 L606.3,163.0  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,163.0 L102.8,163.0 M606.3,163.0 L600.3,163.0  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,142.9 L606.3,142.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,142.9 L108.8,142.9 M606.3,142.9 L594.3,142.9  '/>	<g transform="translate(85.6,148.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 100</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,122.8 L606.3,122.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,122.8 L102.8,122.8 M606.3,122.8 L600.3,122.8  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,102.8 L606.3,102.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,102.8 L108.8,102.8 M606.3,102.8 L594.3,102.8  '/>	<g transform="translate(85.6,108.8)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 150</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,82.7 L606.3,82.7  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,82.7 L102.8,82.7 M606.3,82.7 L600.3,82.7  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,62.6 L606.3,62.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,62.6 L108.8,62.6 M606.3,62.6 L594.3,62.6  '/>	<g transform="translate(85.6,68.6)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 200</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,42.6 L314.3,42.6 M595.1,42.6 L606.3,42.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,42.6 L102.8,42.6 M606.3,42.6 L600.3,42.6  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M96.8,22.5 L606.3,22.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,22.5 L108.8,22.5 M606.3,22.5 L594.3,22.5  '/>	<g transform="translate(85.6,28.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 250</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,223.2 L96.8,211.2 M96.8,22.5 L96.8,34.5  '/>	<g transform="translate(96.8,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M169.6,223.2 L169.6,211.2 M169.6,22.5 L169.6,34.5  '/>	<g transform="translate(169.6,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 10</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M242.4,223.2 L242.4,211.2 M242.4,22.5 L242.4,34.5  '/>	<g transform="translate(242.4,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 20</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M315.2,223.2 L315.2,211.2 M315.2,22.5 L315.2,34.5  '/>	<g transform="translate(315.2,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 30</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M387.9,223.2 L387.9,211.2 M387.9,22.5 L387.9,34.5  '/>	<g transform="translate(387.9,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 40</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M460.7,223.2 L460.7,211.2 M460.7,22.5 L460.7,34.5  '/>	<g transform="translate(460.7,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 50</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M533.5,223.2 L533.5,211.2 M533.5,22.5 L533.5,34.5  '/>	<g transform="translate(533.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 60</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M606.3,223.2 L606.3,211.2 M606.3,22.5 L606.3,34.5  '/>	<g transform="translate(606.3,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" > 70</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,22.5 L96.8,223.2 L606.3,223.2 L606.3,22.5 L96.8,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS [k]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(351.5,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Number of clients</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>HDFS namenode IOPS</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(515.9,52.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" >HDFS namenode IOPS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='rgb( 64,  64, 255)'  d='M527.1,46.5 L583.9,46.5 M104.1,218.3 L111.4,213.0 L118.6,208.8 L125.9,195.9 L133.2,188.8 L140.5,187.0
-		L147.8,183.7 L155.0,178.9 L162.3,169.8 L169.6,160.6 L176.9,151.7 L184.1,147.1 L191.4,143.9 L198.7,139.3
-		L206.0,133.2 L213.3,133.5 L220.5,131.3 L227.8,130.0 L235.1,127.6 L242.4,122.6 L249.7,122.1 L256.9,119.4
-		L264.2,116.0 L271.5,117.0 L278.8,115.1 L286.0,111.9 L293.3,112.4 L300.6,105.6 L307.9,106.2 L315.2,100.9
-		L322.4,95.8 L329.7,92.9 L337.0,95.4 L344.3,94.2 L351.6,89.3 L358.8,90.0 L366.1,92.1 L373.4,87.4
-		L380.7,88.8 L387.9,88.5 L395.2,84.4 L402.5,88.0 L409.8,85.3 L417.1,84.9 L424.3,83.4 L431.6,86.1
-		L438.9,84.0 L446.2,83.4 L453.5,80.2 L460.7,81.2 L468.0,75.5 L475.3,77.1 L482.6,80.2 L489.8,75.5
-		L497.1,77.9 L504.4,76.0 L511.7,72.7 L519.0,74.6 L526.2,76.5 L533.5,75.2 L540.8,74.0 L548.1,74.3
-		L555.4,79.0 L562.6,73.6  '/>	<use xlink:href='#gpPt2' transform='translate(104.1,218.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(111.4,213.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(118.6,208.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(125.9,195.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(133.2,188.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(140.5,187.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(147.8,183.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(155.0,178.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(162.3,169.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(169.6,160.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(176.9,151.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(184.1,147.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(191.4,143.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(198.7,139.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(206.0,133.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(213.3,133.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(220.5,131.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(227.8,130.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(235.1,127.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(242.4,122.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(249.7,122.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(256.9,119.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(264.2,116.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(271.5,117.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(278.8,115.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(286.0,111.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(293.3,112.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(300.6,105.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(307.9,106.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(315.2,100.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(322.4,95.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(329.7,92.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(337.0,95.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(344.3,94.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(351.6,89.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(358.8,90.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(366.1,92.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(373.4,87.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(380.7,88.8) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(387.9,88.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(395.2,84.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(402.5,88.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(409.8,85.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(417.1,84.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(424.3,83.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(431.6,86.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(438.9,84.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(446.2,83.4) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(453.5,80.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(460.7,81.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(468.0,75.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(475.3,77.1) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(482.6,80.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(489.8,75.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(497.1,77.9) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(504.4,76.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(511.7,72.7) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(519.0,74.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(526.2,76.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(533.5,75.2) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(540.8,74.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(548.1,74.3) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.4,79.0) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(562.6,73.6) scale(3.00)' color='rgb( 64,  64, 255)'/>
-	<use xlink:href='#gpPt2' transform='translate(555.5,46.5) scale(3.00)' color='rgb( 64,  64, 255)'/>
-</g>
-	</g>
-<g fill="none" color="white" stroke="rgb( 64,  64, 255)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M96.8,22.5 L96.8,223.2 L606.3,223.2 L606.3,22.5 L96.8,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-


[14/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d


Project: http://git-wip-us.apache.org/repos/asf/incubator-crail-website/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-crail-website/commit/c782b73a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-crail-website/tree/c782b73a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-crail-website/diff/c782b73a

Branch: refs/heads/asf-site
Commit: c782b73ad66deeb3bd3a1ce1d29e9c70afbaa060
Parents: 66f77a5
Author: Jonas Pfefferle <jp...@zurich.ibm.com>
Authored: Thu Jun 7 13:27:01 2018 +0200
Committer: Jonas Pfefferle <jp...@zurich.ibm.com>
Committed: Thu Jun 7 13:27:01 2018 +0200

----------------------------------------------------------------------
 content/404.html                                |   91 -
 content/Gemfile                                 |    6 -
 content/Gemfile.lock                            |  220 +-
 content/LICENSE.txt                             |  585 --
 content/blog/2017/01/firstrelease.html          |   86 -
 content/blog/2017/01/sorting-post.html          |   86 -
 content/blog/2017/01/sorting.html               |  327 -
 content/blog/2017/01/spark-io.html              |   86 -
 content/blog/2017/03/dataworkssummit.html       |   86 -
 content/blog/2017/03/nvmf.html                  |   86 -
 content/blog/2017/03/nvmw.html                  |   86 -
 content/blog/2017/03/ofa.html                   |   86 -
 content/blog/2017/03/sparksummit.html           |   86 -
 content/blog/2017/06/disni.html                 |   86 -
 content/blog/2017/08/crail-memory.html          |  269 -
 content/blog/2017/08/crail-nvme-fabrics-v1.html |  262 -
 content/blog/2017/08/openpower.html             |   86 -
 content/blog/2017/11/blog.html                  |   86 -
 content/blog/2017/11/crail-metadata.html        |  563 --
 content/blog/2017/11/floss.html                 |   86 -
 content/blog/2017/11/iops.html                  |   86 -
 content/blog/2017/11/rdmashuffle.html           |  195 -
 content/blog/2018/01/apache.html                |   86 -
 content/blog/2018/06/apache-release.html        |   86 -
 content/blog/2018/06/dataworks.html             |   86 -
 content/blog/2018/06/sparksummit.html           |   86 -
 content/blog/index.html                         |  154 -
 content/blog/page2/index.html                   |  158 -
 content/blog/page3/index.html                   |  158 -
 content/blog/page4/index.html                   |  158 -
 content/blog/page5/index.html                   |  154 -
 content/community/index.html                    |  110 -
 content/css/bootstrap.min.css                   | 5198 --------------
 content/css/group.css                           |  215 -
 content/css/print.css                           |   36 -
 content/documentation/index.html                |  358 -
 content/feed.xml                                |  671 +-
 content/img/apache_incubator.png                |  Bin 8249 -> 0 bytes
 .../img/blog/crail-machine-learning/cocoa.svg   |   82 -
 .../img/blog/crail-machine-learning/final.svg   |  326 -
 content/img/blog/crail-memory/anatomy.png       |  Bin 104235 -> 0 bytes
 .../crail-memory/cdf-broadcast-128-read.svg     |  190 -
 content/img/blog/crail-memory/crail-groupby.svg |  213 -
 content/img/blog/crail-memory/latency.svg       |  231 -
 content/img/blog/crail-memory/read.svg          |  189 -
 content/img/blog/crail-memory/spark-groupby.svg |  224 -
 content/img/blog/crail-memory/write.svg         |  189 -
 .../max_iops_crail_hdfs_ramcloud.svg            |  222 -
 .../crail-metadata/namenode_crail_hdfs_iops.svg |  426 --
 .../blog/crail-metadata/namenode_hdfs_iops.svg  |  316 -
 .../crail-metadata/namenode_ibsend_iops64.svg   |  438 --
 .../blog/crail-metadata/namenode_multi64.svg    |  466 --
 .../img/blog/crail-metadata/ramcloud_iops.svg   |  311 -
 content/img/blog/crail-metadata/rpc.png         |  Bin 74411 -> 0 bytes
 .../img/blog/crail-metadata/terasort_iops.svg   |  586 --
 .../crail-metadata/terasort_namenode_iops.svg   |  583 --
 content/img/blog/crail-nvmf/crail_tiering.png   |  Bin 27560 -> 0 bytes
 content/img/blog/crail-nvmf/latency.svg         |  168 -
 content/img/blog/crail-nvmf/latency2.svg        |  138 -
 content/img/blog/crail-nvmf/throughput.svg      |  129 -
 content/img/blog/crail-nvmf/throughput2.svg     |  251 -
 content/img/blog/crail-nvmf/tiering.svg         |  193 -
 .../img/blog/preview/crail-memory-summary.png   |  Bin 43953 -> 0 bytes
 .../img/blog/preview/crail-metadata-summary.png |  Bin 271329 -> 0 bytes
 .../preview/crail-nvme-fabrics-v1-summary.png   |  Bin 755911 -> 0 bytes
 content/img/blog/preview/sorting-summary.png    |  Bin 43953 -> 0 bytes
 content/img/blog/rdma-shuffle/sql.svg           |  153 -
 content/img/blog/rdma-shuffle/terasort.svg      |  160 -
 content/img/blog/sort/cpu_network.svg           |  145 -
 content/img/blog/sort/multiread.svg             | 6547 ------------------
 content/img/blog/sort/net_vanilla.svg           |  208 -
 content/img/blog/sort/performance_overall.png   |  Bin 62706 -> 0 bytes
 content/img/blog/sort/shuffle_rdma.png          |  Bin 67139 -> 0 bytes
 content/img/blog/sort/terasort_pipeline.png     |  Bin 91225 -> 0 bytes
 content/img/crail-stack-preview.png             |  Bin 195268 -> 0 bytes
 content/img/crail_logo.png                      |  Bin 14782 -> 0 bytes
 content/img/crail_stack.png                     |  Bin 96329 -> 0 bytes
 content/img/crail_stack2.png                    |  Bin 111104 -> 0 bytes
 content/img/crail_stack3.png                    |  Bin 185331 -> 0 bytes
 content/index.html                              |  161 -
 content/js/srcset-polyfill.js                   |   52 -
 content/news/index.html                         |  224 -
 content/overview/architecture.png               |  Bin 86212 -> 0 bytes
 content/overview/filesystem.png                 |  Bin 60991 -> 0 bytes
 content/overview/filesystem2.png                |  Bin 90351 -> 0 bytes
 content/overview/index.html                     |  247 -
 content/overview/serializer.png                 |  Bin 28760 -> 0 bytes
 content/overview/shuffle.png                    |  Bin 78159 -> 0 bytes
 content/overview/tiering.png                    |  Bin 128845 -> 0 bytes
 89 files changed, 29 insertions(+), 25089 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/404.html
----------------------------------------------------------------------
diff --git a/content/404.html b/content/404.html
deleted file mode 100644
index 2bfbc7f..0000000
--- a/content/404.html
+++ /dev/null
@@ -1,91 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: 404 Not Found</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/404-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/404-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>404 Not Found</h2>   
-          
-
-          <p>Sorry! The server can’t find that page.</p>
-
-<p>Please consider trying to find what you need from <a href="http://crail.incubator.apache.org/">the home page</a>.</p>
-
-<p>If you think something might be broken, please notify the developers at the <a href="mailto:dev@crail.incubator.apache.org">dev mailing list</a>.</p>
-
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/Gemfile
----------------------------------------------------------------------
diff --git a/content/Gemfile b/content/Gemfile
deleted file mode 100644
index d204088..0000000
--- a/content/Gemfile
+++ /dev/null
@@ -1,6 +0,0 @@
-source 'https://rubygems.org'
-gem 'rouge'
-gem 'jekyll-paginate'
-gem 'jekyll-feed'
-gem 'jekyll-gist'
-gem 'jekyll-oembed', :require => 'jekyll_oembed'

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/Gemfile.lock
----------------------------------------------------------------------
diff --git a/content/Gemfile.lock b/content/Gemfile.lock
index 9962c76..0245cdf 100644
--- a/content/Gemfile.lock
+++ b/content/Gemfile.lock
@@ -1,222 +1,67 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    activesupport (4.2.9)
-      i18n (~> 0.7)
-      minitest (~> 5.1)
-      thread_safe (~> 0.3, >= 0.3.4)
-      tzinfo (~> 1.1)
     addressable (2.5.2)
       public_suffix (>= 2.0.2, < 4.0)
-    coffee-script (2.4.1)
-      coffee-script-source
-      execjs
-    coffee-script-source (1.11.1)
     colorator (1.1.0)
-    commonmarker (0.17.7.1)
-      ruby-enum (~> 0.5)
     concurrent-ruby (1.0.5)
-    ethon (0.11.0)
-      ffi (>= 1.3.0)
-    execjs (2.7.0)
-    faraday (0.14.0)
+    em-websocket (0.5.1)
+      eventmachine (>= 0.12.9)
+      http_parser.rb (~> 0.6.0)
+    eventmachine (1.2.7)
+    faraday (0.15.2)
       multipart-post (>= 1.2, < 3)
-    ffi (1.9.21)
+    ffi (1.9.25)
     forwardable-extended (2.6.0)
-    gemoji (3.0.0)
-    github-pages (177)
-      activesupport (= 4.2.9)
-      github-pages-health-check (= 1.3.5)
-      jekyll (= 3.6.2)
-      jekyll-avatar (= 0.5.0)
-      jekyll-coffeescript (= 1.0.2)
-      jekyll-commonmark-ghpages (= 0.1.5)
-      jekyll-default-layout (= 0.1.4)
-      jekyll-feed (= 0.9.2)
-      jekyll-gist (= 1.4.1)
-      jekyll-github-metadata (= 2.9.3)
-      jekyll-mentions (= 1.2.0)
-      jekyll-optional-front-matter (= 0.3.0)
-      jekyll-paginate (= 1.1.0)
-      jekyll-readme-index (= 0.2.0)
-      jekyll-redirect-from (= 0.12.1)
-      jekyll-relative-links (= 0.5.2)
-      jekyll-remote-theme (= 0.2.3)
-      jekyll-sass-converter (= 1.5.0)
-      jekyll-seo-tag (= 2.3.0)
-      jekyll-sitemap (= 1.1.1)
-      jekyll-swiss (= 0.4.0)
-      jekyll-theme-architect (= 0.1.0)
-      jekyll-theme-cayman (= 0.1.0)
-      jekyll-theme-dinky (= 0.1.0)
-      jekyll-theme-hacker (= 0.1.0)
-      jekyll-theme-leap-day (= 0.1.0)
-      jekyll-theme-merlot (= 0.1.0)
-      jekyll-theme-midnight (= 0.1.0)
-      jekyll-theme-minimal (= 0.1.0)
-      jekyll-theme-modernist (= 0.1.0)
-      jekyll-theme-primer (= 0.5.2)
-      jekyll-theme-slate (= 0.1.0)
-      jekyll-theme-tactile (= 0.1.0)
-      jekyll-theme-time-machine (= 0.1.0)
-      jekyll-titles-from-headings (= 0.5.0)
-      jemoji (= 0.8.1)
-      kramdown (= 1.16.2)
-      liquid (= 4.0.0)
-      listen (= 3.0.6)
-      mercenary (~> 0.3)
-      minima (= 2.1.1)
-      nokogiri (>= 1.8.1, < 2.0)
-      rouge (= 2.2.1)
-      terminal-table (~> 1.4)
-    github-pages-health-check (1.3.5)
-      addressable (~> 2.3)
-      net-dns (~> 0.8)
-      octokit (~> 4.0)
-      public_suffix (~> 2.0)
-      typhoeus (~> 0.7)
-    html-pipeline (2.7.1)
-      activesupport (>= 2)
-      nokogiri (>= 1.4)
+    http_parser.rb (0.6.0)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
-    jekyll (3.6.2)
+    jekyll (3.8.3)
       addressable (~> 2.4)
       colorator (~> 1.0)
+      em-websocket (~> 0.5)
+      i18n (~> 0.7)
       jekyll-sass-converter (~> 1.0)
-      jekyll-watch (~> 1.1)
+      jekyll-watch (~> 2.0)
       kramdown (~> 1.14)
       liquid (~> 4.0)
       mercenary (~> 0.3.3)
       pathutil (~> 0.9)
-      rouge (>= 1.7, < 3)
+      rouge (>= 1.7, < 4)
       safe_yaml (~> 1.0)
-    jekyll-avatar (0.5.0)
-      jekyll (~> 3.0)
-    jekyll-coffeescript (1.0.2)
-      coffee-script (~> 2.2)
-      coffee-script-source (~> 1.11.1)
-    jekyll-commonmark (1.1.0)
-      commonmarker (~> 0.14)
-      jekyll (>= 3.0, < 4.0)
-    jekyll-commonmark-ghpages (0.1.5)
-      commonmarker (~> 0.17.6)
-      jekyll-commonmark (~> 1)
-      rouge (~> 2)
-    jekyll-default-layout (0.1.4)
-      jekyll (~> 3.0)
-    jekyll-feed (0.9.2)
+    jekyll-feed (0.10.0)
       jekyll (~> 3.3)
-    jekyll-gist (1.4.1)
+    jekyll-gist (1.5.0)
       octokit (~> 4.2)
-    jekyll-github-metadata (2.9.3)
-      jekyll (~> 3.1)
-      octokit (~> 4.0, != 4.4.0)
-    jekyll-mentions (1.2.0)
-      activesupport (~> 4.0)
-      html-pipeline (~> 2.3)
-      jekyll (~> 3.0)
     jekyll-oembed (0.0.1)
       jekyll
       ruby-oembed (= 0.8.8)
-    jekyll-optional-front-matter (0.3.0)
-      jekyll (~> 3.0)
     jekyll-paginate (1.1.0)
-    jekyll-readme-index (0.2.0)
-      jekyll (~> 3.0)
-    jekyll-redirect-from (0.12.1)
-      jekyll (~> 3.3)
-    jekyll-relative-links (0.5.2)
-      jekyll (~> 3.3)
-    jekyll-remote-theme (0.2.3)
-      jekyll (~> 3.5)
-      rubyzip (>= 1.2.1, < 3.0)
-      typhoeus (>= 0.7, < 2.0)
-    jekyll-sass-converter (1.5.0)
+    jekyll-sass-converter (1.5.2)
       sass (~> 3.4)
-    jekyll-seo-tag (2.3.0)
-      jekyll (~> 3.3)
-    jekyll-sitemap (1.1.1)
-      jekyll (~> 3.3)
-    jekyll-swiss (0.4.0)
-    jekyll-theme-architect (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-cayman (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-dinky (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-hacker (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-leap-day (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-merlot (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-midnight (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-minimal (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-modernist (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-primer (0.5.2)
-      jekyll (~> 3.5)
-      jekyll-github-metadata (~> 2.9)
-      jekyll-seo-tag (~> 2.2)
-    jekyll-theme-slate (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-tactile (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-theme-time-machine (0.1.0)
-      jekyll (~> 3.5)
-      jekyll-seo-tag (~> 2.0)
-    jekyll-titles-from-headings (0.5.0)
-      jekyll (~> 3.3)
-    jekyll-watch (1.5.1)
+    jekyll-watch (2.0.0)
       listen (~> 3.0)
-    jemoji (0.8.1)
-      activesupport (~> 4.0, >= 4.2.9)
-      gemoji (~> 3.0)
-      html-pipeline (~> 2.2)
-      jekyll (>= 3.0)
-    kramdown (1.16.2)
+    kramdown (1.17.0)
     liquid (4.0.0)
-    listen (3.0.6)
-      rb-fsevent (>= 0.9.3)
-      rb-inotify (>= 0.9.7)
+    listen (3.1.5)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+      ruby_dep (~> 1.2)
     mercenary (0.3.6)
-    mini_portile2 (2.3.0)
-    minima (2.1.1)
-      jekyll (~> 3.3)
-    minitest (5.11.3)
     multipart-post (2.0.0)
-    net-dns (0.8.0)
-    nokogiri (1.8.2)
-      mini_portile2 (~> 2.3.0)
-    octokit (4.8.0)
+    octokit (4.9.0)
       sawyer (~> 0.8.0, >= 0.5.3)
     pathutil (0.16.1)
       forwardable-extended (~> 2.6)
-    public_suffix (2.0.5)
-    rb-fsevent (0.10.2)
+    public_suffix (3.0.2)
+    rb-fsevent (0.10.3)
     rb-inotify (0.9.10)
       ffi (>= 0.5.0, < 2)
-    rouge (2.2.1)
-    ruby-enum (0.7.1)
-      i18n
+    rouge (3.1.1)
     ruby-oembed (0.8.8)
-    rubyzip (1.2.1)
+    ruby_dep (1.5.0)
     safe_yaml (1.0.4)
-    sass (3.5.5)
+    sass (3.5.6)
       sass-listen (~> 4.0.0)
     sass-listen (4.0.0)
       rb-fsevent (~> 0.9, >= 0.9.4)
@@ -224,20 +69,11 @@ GEM
     sawyer (0.8.1)
       addressable (>= 2.3.5, < 2.6)
       faraday (~> 0.8, < 1.0)
-    terminal-table (1.8.0)
-      unicode-display_width (~> 1.1, >= 1.1.1)
-    thread_safe (0.3.6)
-    typhoeus (0.8.0)
-      ethon (>= 0.8.0)
-    tzinfo (1.2.5)
-      thread_safe (~> 0.1)
-    unicode-display_width (1.3.0)
 
 PLATFORMS
   ruby
 
 DEPENDENCIES
-  github-pages
   jekyll-feed
   jekyll-gist
   jekyll-oembed
@@ -245,4 +81,4 @@ DEPENDENCIES
   rouge
 
 BUNDLED WITH
-   1.16.1
+   1.11.2

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/LICENSE.txt
----------------------------------------------------------------------
diff --git a/content/LICENSE.txt b/content/LICENSE.txt
deleted file mode 100644
index 30966d3..0000000
--- a/content/LICENSE.txt
+++ /dev/null
@@ -1,585 +0,0 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   Licensed under the Apache License, Version 2.0 (the "License");
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
-
---------------------------------------------------------------------------------
-
-src/plasma/fling.cc and src/plasma/fling.h: Apache 2.0
-
-Copyright 2013 Sharvil Nanavati
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---------------------------------------------------------------------------------
-
-src/plasma/thirdparty/ae: Modified / 3-Clause BSD
-
-Copyright (c) 2006-2010, Salvatore Sanfilippo <antirez at gmail dot com>
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
-   this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
- * Neither the name of Redis nor the names of its contributors may be used
-   to endorse or promote products derived from this software without
-   specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGE.
-
---------------------------------------------------------------------------------
-
-src/plasma/thirdparty/dlmalloc.c: CC0
-
-This is a version (aka dlmalloc) of malloc/free/realloc written by
-Doug Lea and released to the public domain, as explained at
-http://creativecommons.org/publicdomain/zero/1.0/ Send questions,
-comments, complaints, performance data, etc to dl@cs.oswego.edu
-
---------------------------------------------------------------------------------
-
-src/plasma/thirdparty/xxhash: BSD 2-Clause License
-
-xxHash - Fast Hash algorithm
-Copyright (C) 2012-2016, Yann Collet
-
-BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php)
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
-* Redistributions of source code must retain the above copyright
-notice, this list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above
-copyright notice, this list of conditions and the following disclaimer
-in the documentation and/or other materials provided with the
-distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-You can contact the author at :
-- xxHash homepage: http://www.xxhash.com
-- xxHash source repository : https://github.com/Cyan4973/xxHash
-
---------------------------------------------------------------------------------
-
-src/arrow/util (some portions): Apache 2.0, and 3-clause BSD
-
-Some portions of this module are derived from code in the Chromium project,
-copyright (c) Google inc and (c) The Chromium Authors and licensed under the
-Apache 2.0 License or the under the 3-clause BSD license:
-
-  Copyright (c) 2013 The Chromium Authors. All rights reserved.
-
-  Redistribution and use in source and binary forms, with or without
-  modification, are permitted provided that the following conditions are
-  met:
-
-     * Redistributions of source code must retain the above copyright
-  notice, this list of conditions and the following disclaimer.
-     * Redistributions in binary form must reproduce the above
-  copyright notice, this list of conditions and the following disclaimer
-  in the documentation and/or other materials provided with the
-  distribution.
-     * Neither the name of Google Inc. nor the names of its
-  contributors may be used to endorse or promote products derived from
-  this software without specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
---------------------------------------------------------------------------------
-
-This project includes code from Daniel Lemire's FrameOfReference project.
-
-https://github.com/lemire/FrameOfReference/blob/6ccaf9e97160f9a3b299e23a8ef739e711ef0c71/src/bpacking.cpp
-
-Copyright: 2013 Daniel Lemire
-Home page: http://lemire.me/en/
-Project page: https://github.com/lemire/FrameOfReference
-License: Apache License Version 2.0 http://www.apache.org/licenses/LICENSE-2.0
-
---------------------------------------------------------------------------------
-
-This project includes code from the TensorFlow project
-
-Copyright 2015 The TensorFlow Authors. All Rights Reserved.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---------------------------------------------------------------------------------
-
-This project includes code from the NumPy project.
-
-https://github.com/numpy/numpy/blob/e1f191c46f2eebd6cb892a4bfe14d9dd43a06c4e/numpy/core/src/multiarray/multiarraymodule.c#L2910
-
-https://github.com/numpy/numpy/blob/68fd82271b9ea5a9e50d4e761061dfcca851382a/numpy/core/src/multiarray/datetime.c
-
-Copyright (c) 2005-2017, NumPy Developers.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
-    * Redistributions of source code must retain the above copyright
-       notice, this list of conditions and the following disclaimer.
-
-    * Redistributions in binary form must reproduce the above
-       copyright notice, this list of conditions and the following
-       disclaimer in the documentation and/or other materials provided
-       with the distribution.
-
-    * Neither the name of the NumPy Developers nor the names of any
-       contributors may be used to endorse or promote products derived
-       from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
---------------------------------------------------------------------------------
-
-This project includes code from the Boost project
-
-Boost Software License - Version 1.0 - August 17th, 2003
-
-Permission is hereby granted, free of charge, to any person or organization
-obtaining a copy of the software and accompanying documentation covered by
-this license (the "Software") to use, reproduce, display, distribute,
-execute, and transmit the Software, and to prepare derivative works of the
-Software, and to permit third-parties to whom the Software is furnished to
-do so, all subject to the following:
-
-The copyright notices in the Software and this entire statement, including
-the above license grant, this restriction and the following disclaimer,
-must be included in all copies of the Software, in whole or in part, and
-all derivative works of the Software, unless such copies or derivative
-works are solely in the form of machine-executable object code generated by
-a source language processor.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
-
---------------------------------------------------------------------------------
-
-This project includes code from the mapbox/variant project, BSD 3-clause
-license
-
-Copyright (c) MapBox
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-- Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-- Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-- Neither the name "MapBox" nor the names of its contributors may be
-  used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
---------------------------------------------------------------------------------
-
-This project includes code from the Boost project
-
-Boost Software License - Version 1.0 - August 17th, 2003
-
-Permission is hereby granted, free of charge, to any person or organization
-obtaining a copy of the software and accompanying documentation covered by
-this license (the "Software") to use, reproduce, display, distribute,
-execute, and transmit the Software, and to prepare derivative works of the
-Software, and to permit third-parties to whom the Software is furnished to
-do so, all subject to the following:
-
-The copyright notices in the Software and this entire statement, including
-the above license grant, this restriction and the following disclaimer,
-must be included in all copies of the Software, in whole or in part, and
-all derivative works of the Software, unless such copies or derivative
-works are solely in the form of machine-executable object code generated by
-a source language processor.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-DEALINGS IN THE SOFTWARE.
-
---------------------------------------------------------------------------------
-
-This project includes code from the mapbox/variant project, BSD 3-clause
-license
-
-Copyright (c) MapBox
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-- Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-- Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-- Neither the name "MapBox" nor the names of its contributors may be
-  used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
---------------------------------------------------------------------------------
-
-This project includes code from the FlatBuffers project
-
-Copyright 2014 Google Inc.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---------------------------------------------------------------------------------
-
-This project includes code from the tslib project
-
-Copyright 2015 Microsoft Corporation. All rights reserved.
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
---------------------------------------------------------------------------------
-
-This project includes code from the jemalloc project
-
-https://github.com/jemalloc/jemalloc
-
-Copyright (C) 2002-2017 Jason Evans <ja...@canonware.com>.
-All rights reserved.
-Copyright (C) 2007-2012 Mozilla Foundation.  All rights reserved.
-Copyright (C) 2009-2017 Facebook, Inc.  All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-1. Redistributions of source code must retain the above copyright notice(s),
-   this list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright notice(s),
-   this list of conditions and the following disclaimer in the documentation
-   and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY EXPRESS
-OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO
-EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---------------------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/01/firstrelease.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/01/firstrelease.html b/content/blog/2017/01/firstrelease.html
deleted file mode 100644
index 1975fdf..0000000
--- a/content/blog/2017/01/firstrelease.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Firstrelease</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/firstrelease-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/firstrelease-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Firstrelease</h2>   
-          
-
-          <p>First release of the Crail distributed file system available at <a href="http://github.com/zrlio/crail">GitHub</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/01/sorting-post.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/01/sorting-post.html b/content/blog/2017/01/sorting-post.html
deleted file mode 100644
index 8da987d..0000000
--- a/content/blog/2017/01/sorting-post.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Sorting Post</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/sorting-post-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/sorting-post-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Sorting Post</h2>   
-          
-
-          <p>New blog <a href="http://crail.incubator.apache.org/blog/2017/01/sorting.html">post</a> about sorting on a 100Gbit/s cluster using Spark/Crail</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/01/sorting.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/01/sorting.html b/content/blog/2017/01/sorting.html
deleted file mode 100644
index 6b955ac..0000000
--- a/content/blog/2017/01/sorting.html
+++ /dev/null
@@ -1,327 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Sorting on a 100Gbit/s Cluster using Spark/Crail</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/sorting-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/sorting-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Sorting on a 100Gbit/s Cluster using Spark/Crail</h2>   
-          
-
-          <p class="meta">17 Jan 2017</p>
-
-<div class="post">
-<div style="text-align: justify"> 
-<p>
-In this blog we explore the sorting performance of Spark/Crail on a 100Gbit/s RDMA cluster. Sorting large data sets efficiently on a cluster is particularly interesting from a network perspective as most of the input data will have to cross the network at least once. Hence, a sorting workload should be an ideal candidate to be accelerated by a fast network. 
-</p>
-<p>
-The following table summarizes the results of this blog and provides a comparison with other sorting benchmarks. In essence, Spark/Crail is sorting 12.8 TB of data in 98 seconds, which calculates to a sorting rate of 3.13 GB/min/core. This is about a factor of 5 faster than the sorting performance of the <a href="https://databricks.com/blog/2014/11/05/spark-officially-sets-a-new-record-in-large-scale-sorting.html">Spark 2014 benchmark winner</a>, and only about 28% slower than the <a href="http://sortbenchmark.org/TencentSort2016.pdf">2016 winner of the sorting benchmark</a> -- a sorting benchmark running native code optimized specifically for sorting. 
-</p>
-</div>
-<p><br /></p>
-
-<center>
-<table>
-  <thead>
-    <tr>
-      <th> </th>
-      <th>Spark/Crail</th>
-      <th>Spark/Vanilla</th>
-      <th>Spark/Winner2014</th>
-      <th>Tencent/Winner2016</th>
-    </tr>
-  </thead>
-  <tbody>
-    <tr>
-      <td>Data Size</td>
-      <td>12.8 TB</td>
-      <td>12.8 TB</td>
-      <td>100 TB</td>
-      <td>100 TB</td>
-    </tr>
-    <tr>
-      <td>Elapsed Time</td>
-      <td>98 s</td>
-      <td>527 s</td>
-      <td>1406 s</td>
-      <td>98.8 s</td>
-    </tr>
-    <tr>
-      <td>Cores</td>
-      <td>2560</td>
-      <td>2560</td>
-      <td>6592</td>
-      <td>10240</td>
-    </tr>
-    <tr>
-      <td>Nodes</td>
-      <td>128</td>
-      <td>128</td>
-      <td>206</td>
-      <td>512</td>
-    </tr>
-    <tr>
-      <td>Network</td>
-      <td>100 Gbit/s</td>
-      <td>100 Gbit/s</td>
-      <td>10 Gbit/s</td>
-      <td>100 Gbit/s</td>
-    </tr>
-    <tr>
-      <td>Sorting rate</td>
-      <td>7.8 TB/min</td>
-      <td>1.4 TB/min</td>
-      <td>4.27 TB/min</td>
-      <td>44.78 TB/min</td>
-    </tr>
-    <tr>
-      <td>Sorting rate/core</td>
-      <td>3.13 GB/min</td>
-      <td>0.58 GB/min</td>
-      <td>0.66 GB/min</td>
-      <td>4.4 GB/min</td>
-    </tr>
-  </tbody>
-</table>
-</center>
-
-<p><br /></p>
-
-<h3 id="hardware-configuration">Hardware Configuration</h3>
-
-<p>The specific cluster configuration used for the experiments in this blog:</p>
-
-<ul>
-  <li>Cluster
-    <ul>
-      <li>128 node OpenPower cluster</li>
-    </ul>
-  </li>
-  <li>Node configuration
-    <ul>
-      <li>CPU: 2x OpenPOWER Power8 10-core @2.9Ghz</li>
-      <li>DRAM: 512GB DDR4</li>
-      <li>Storage: 4x Huawei ES3600P V3 1.2TB NVMe SSD</li>
-      <li>Network: 100Gbit/s Ethernet Mellanox ConnectX-4 EN (RoCE)</li>
-    </ul>
-  </li>
-  <li>Software
-    <ul>
-      <li>Ubuntu 16.04 with Linux kernel version 4.4.0-31</li>
-      <li>Spark 2.0.0</li>
-      <li>Crail 1.0 (Crail only used during shuffle, input/output is on HDFS)</li>
-    </ul>
-  </li>
-</ul>
-
-<h3 id="anatomy-spark-sorting">Anatomy Spark Sorting</h3>
-
-<div style="text-align: justify"> 
-<p>
-A Spark sorting job  consists of two phases. The first phase is a mapping or classification phase - where individual workers read their part of the key-value (KV) input data and classify the KV pairs based on their keys. This phase involves only very little networking as most of the workers run locally on the nodes that host the HDFS data blocks. During the second so called reduce phase, each worker collects all KV pairs for a particular key range from all the workers, de-serializes the data and sorts the resulting objects. This pipeline runs on all cores in multiple waves of tasks on all the compute nodes in the cluster. Naturally, the performance of such a pipeline depends upon both the network as well as the CPU performance, which together should dictate the overall job run time.
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/sort/terasort_pipeline.png" width="490" /></div>
-<p><br /><br /></p>
-
-<h3 id="using-vanilla-spark">Using Vanilla Spark</h3>
-
-<div style="text-align: justify"> 
-<p>
-The first question we are interested in is to what extent such a sorting benchmark can drive the 100Gbit/s network fabric. Making good use of the network is important since a reduce task needs to first fetch all the relevant data from the network before it can start sorting the data. Unfortunately, it turns out that when running vanilla Spark on the cluster, the network usage stays at only 5-10%. 
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/sort/net_vanilla.svg" /></div>
-<p><br /><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-The poor network usage matches with the general observation we made in our previous <a href="http://dl.acm.org/citation.cfm?id=3027062">HotCloud'16 publication</a> where we show that a faster network does not necessarily lead to a better runtime. The problem can be understood by looking at a single reduce task in the sorting benchmark. While the actual time for fetching all the data over the network decreases with increasing network bandwidth, the time a reduce task spends on funneling the data through the stack, deserializing and sorting it outweighs the transmission time by far. The figure below shows percentage wise for different network technologies, how much time a reduce task spends on waiting for data versus executing CPU instructions (a more detailed breakdown of the time can be found in the <a href="http://dl.acm.org/citation.cfm?id=3027062">paper</a>). Clearly, in such a situation, a higher network bandwidth will only improve the increasinlgy small red part and, and thus, 
 will not result in a substantial runtime reduction. 
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/sort/cpu_network.svg" /></div>
-<p><br /><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-Consequently, to improve the runtime of the sorting benchmark and to make good use of the 100Gbit/s network, the number of CPU instructions executed per byte transferred need to be reduced massively. In the following, we show how we use the Crail shuffle engine to cut down the software overheads related to networking, deserialization and sorting and thereby empower the reduce tasks in the sorting benchmark to consume data at a speed that is very close to the network limit (~70Gbit/s all-to-all). 
-</p>
-</div>
-
-<h3 id="using-the-crail-shuffler">Using the Crail Shuffler</h3>
-
-<div style="text-align: justify"> 
-<p>
-An overview of the Crail shuffler is provided in the <a href="http://crail.incubator.apache.org/docs">documentation section</a>. The main difference between the Crail shuffler and the Spark built-in shuffler lies in the way data from the network is processed in a reduce task. The Spark shuffler is based on TCP sockets, thus, many CPU instructions are necessary to bring the data from the networking interface to the buffer inside Spark. In contrast, the Crail shuffler shares shuffle data through the Crail file system, and therefore data is transferred directly via DMA from the network interface to the Spark shuffle buffer within the JVM. 
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/sort/shuffle_rdma.png" width="470" /></div>
-<p><br /><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-During the map phase, the Crail shuffler organizes each key range in a set of Crail files, one file per Spark core per key range. Reading the shuffle data from the Crail file system in the reduce phase not only eliminates data copies and avoids system calls, it also makes sure the different segments (files) are placed at the right offset within the reduce buffer to create one contiguous memory area that can immediately be used for deserialization and sorting.  
-</p>
-
-<p>
-As illustrated in the <a href="http://crail.incubator.apache.org/docs">documentation section</a>, the Crail shuffler allows applications to use their own custom serializer and sorter. The recommended serializer for Spark is Kryo, which is a generic serializer. Being generic, however, comes at a cost. Specifically, Kryo requires more type information to be stored along with the serialized data than a custom serializer would need, and also the parsing is more complex for a generic serializer. On top of this, Kryo also comes with its own buffering, introducing additional memory copies. In our benchmark, we use a custom serializer that takes advantage of the fact that the data consists of fixed size key/value pairs. The custom serializer further avoids extra buffering and directly interfaces with Crail file system streams when reading and writing data. 
-</p>
-<p>
-As with serialization, the Spark built-in sorter is a general purpose TimSort that can sort arbitrary collections of comparable objects. In our benchmark, we instruct the Crail shuffler to use a Radix sorter instead. The Radix sorter cannot be applied to arbitrary objects but works well for keys of a fixed byte length. The standard pipeline of a reduce task is to first deserialize the data and then sort it. In the particular configuration of the Crail shuffler, we turn these two steps around and first sort the data and deserialize it later. This is possible because the data is read into a contiguous off-heap buffer that can be sorted almost in-place. 
-</p>
-</div>
-
-<h3 id="sparkcrail-sorting-performance">Spark/Crail Sorting Performance</h3>
-
-<div style="text-align: justify"> 
-<p>
-The figure below shows the overall performance of Spark/Crail vs Spark/Vanilla on a 12.8 TB data set. With a cluster size of 128 nodes, each node gets to sort 100GB of data - if the data distribution is uniform. As can be seen, using the Crail shuffler, the total job runtime is reduced by a factor of 6. Most of the gains come from the reduce side, which is where the networking takes place. However, the map phase is also faster which comes from the more efficient serialization but also from a faster I/O. The built-in Spark shuffler dumps data into files absorbed by the buffer cache (no disk writes took place during shuffle), which requires file system calls and data copies. The Crail shuffler instead uses memory mapped I/O to write local Crail files, avoiding both data copies, system calls and kernel context switches. 
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/sort/performance_overall.png" width="470" /></div>
-<p><br /><br /></p>
-
-<p>One key question of interest is about the network usage of the Crail shuffler during the sorting benchmark. In the figure below, we show the data rate at which the different reduce tasks fetch data from the network. Each point in the figure corresponds to one reduce task. In our configuration, we run 3 Spark executors per node and 5 Spark cores per executor. Thus, 1920 reduce tasks are running concurrently (out of 6400 reduce tasks in total) generating a cluster-wide all-to-all traffic of about 70Gbit/s per node during that phase.</p>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/sort/multiread.svg" /></div>
-<p><br /><br /></p>
-
-<p>In this blog post, we have shown that Crail successfully manages to translate the raw network performance into actual workload level gains. The exercise with TeraSort as an application validates the design decisions we made in Crail. Stay tuned for more results with different workloads and hardware configurations.</p>
-
-<h3 id="how-to-run-sorting-with-sparkcrail">How to run Sorting with Spark/Crail</h3>
-
-<p>All the components required to run the sorting benchmark using Spark/Crail are open source. Here is some guidance how to run the benchmark:</p>
-
-<ul>
-  <li>Build and deploy Crail using the instructions at <a href="http://crail.incubator.apache.org/documentation#crail">documentation</a></li>
-  <li>Enable the Crail shuffler for Spark by building Spark-IO using the instructions at <a href="http://crail.incubator.apache.org/documentation#spark">documentation</a></li>
-  <li>Configure the DRAM storage tier of Crail so that all the shuffle data fits into the DRAM tier.</li>
-  <li>Build the sorting benchmark using the instructions on <a href="https://github.com/zrlio/crail-terasort">GitHub</a></li>
-  <li>Make sure you have the custom serializer and sorter specified in spark-defaults.conf</li>
-  <li>Run Hadoop TeraGen to produce a valid data set. We used standard HDFS for both input and output data.</li>
-  <li>Run the Crail-TeraSort on your Spark cluster. The command line we have used on the 128 node cluster is the following:</li>
-</ul>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/spark-submit -v --num-executors 384 --executor-cores 5 --executor-memory 64G 
---driver-memory 64G --master yarn 
---class com.ibm.crail.terasort.TeraSort path/to/crail-terasort-2.0.jar 
--i /terasort-input-1280g -o /terasort-output-1280g
-</code></pre></div></div>
-
-<p>Have questions or comments? Feel free to discuss at the dev mailing list at <a href="mailto:dev@crail.incubator.apache.org">dev@crail.incubator.apache.org</a></p>
-<hr />
-
-
-</div>
-
-<!-- 
-
-<div id="disqus_thread"></div>
-<script>
-
-/**
-*  RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
-*  LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/
-/*
-var disqus_config = function () {
-this.page.url = PAGE_URL;  // Replace PAGE_URL with your page's canonical URL variable
-this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
-};
-*/
-(function() { // DON'T EDIT BELOW THIS LINE
-var d = document, s = d.createElement('script');
-s.src = '//crail-io.disqus.com/embed.js';
-s.setAttribute('data-timestamp', +new Date());
-(d.head || d.body).appendChild(s);
-})();
-</script>
-<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
-
--->
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/01/spark-io.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/01/spark-io.html b/content/blog/2017/01/spark-io.html
deleted file mode 100644
index 91ce364..0000000
--- a/content/blog/2017/01/spark-io.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Spark Io</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/spark-io-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/spark-io-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Spark Io</h2>   
-          
-
-          <p>First release of the Spark shuffle engine available at <a href="http://github.com/zrlio/spark-io">GitHub</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/03/dataworkssummit.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/03/dataworkssummit.html b/content/blog/2017/03/dataworkssummit.html
deleted file mode 100644
index c80a33c..0000000
--- a/content/blog/2017/03/dataworkssummit.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Dataworkssummit</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/dataworkssummit-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/dataworkssummit-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Dataworkssummit</h2>   
-          
-
-          <p>We are presenting Crail at a <a href="https://www.meetup.com/Big-Data-Developers-in-Munich/events/238408703/">meetup</a> before the <a href="https://dataworkssummit.com/munich-2017/agenda/#20170404">DataWorks Summit</a> in Munich on April 4th</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/03/nvmf.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/03/nvmf.html b/content/blog/2017/03/nvmf.html
deleted file mode 100644
index 209def7..0000000
--- a/content/blog/2017/03/nvmf.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Nvmf</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/nvmf-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/nvmf-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Nvmf</h2>   
-          
-
-          <p>First release of the NVMeF storage tier for Crail is available at <a href="http://github.com/zrlio/crail">GitHub</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>


[13/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/03/nvmw.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/03/nvmw.html b/content/blog/2017/03/nvmw.html
deleted file mode 100644
index e5cd8e5..0000000
--- a/content/blog/2017/03/nvmw.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Nvmw</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/nvmw-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/nvmw-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Nvmw</h2>   
-          
-
-          <p>Our work on Storage disaggregation using Crail at the <a href="http://nvmw.ucsd.edu/2017/program">Non-Volatile Memories Workshop</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/03/ofa.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/03/ofa.html b/content/blog/2017/03/ofa.html
deleted file mode 100644
index 3d8b14e..0000000
--- a/content/blog/2017/03/ofa.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Ofa</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/ofa-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/ofa-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Ofa</h2>   
-          
-
-          <p>We are presenting Crail at the <a href="https://www.openfabrics.org/index.php/abstracts-agenda.html">Open Fabrics Workshop</a> in Austin on March 28th</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/03/sparksummit.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/03/sparksummit.html b/content/blog/2017/03/sparksummit.html
deleted file mode 100644
index 91c5ecb..0000000
--- a/content/blog/2017/03/sparksummit.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Sparksummit</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/sparksummit-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/sparksummit-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Sparksummit</h2>   
-          
-
-          <p>We are presenting Crail at the <a href="https://spark-summit.org/2017/events/running-apache-spark-on-a-high-performance-cluster-using-rdma-and-nvme-flash">Spark Summit</a> in San Francisco on June 6th</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/06/disni.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/06/disni.html b/content/blog/2017/06/disni.html
deleted file mode 100644
index 1eb5df1..0000000
--- a/content/blog/2017/06/disni.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Disni</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/disni-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/disni-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Disni</h2>   
-          
-
-          <p>DiSNI, the RDMA and NVMe user-level stack used in Crail is now available on <a href="https://search.maven.org/">Maven Central</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/08/crail-memory.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/08/crail-memory.html b/content/blog/2017/08/crail-memory.html
deleted file mode 100644
index 0f50c2f..0000000
--- a/content/blog/2017/08/crail-memory.html
+++ /dev/null
@@ -1,269 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Crail Storage Performance -- Part I: DRAM</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/crail-memory-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/crail-memory-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Crail Storage Performance -- Part I: DRAM</h2>   
-          
-
-          <p class="meta">18 Aug 2017</p>
-
-<div class="post">
-<div style="text-align: justify"> 
-<p>
-It's summer and there is some time to blog about things. This blog post is the first in a series of three posts where we illustrate Crail's raw storage performance on our 100Gbps cluster. In part I we cover Crail's DRAM storage tier, part II will be about Crail's NVMe flash storage tier, and part III will be about Crail's metadata performance. 
-</p>
-<p>
-I recently read the <a href="https://www.usenix.org/conference/atc17/technical-sessions/presentation/lu">Octopus file system</a> Usenix'17 paper, where the authors show Crail performance numbers that do not match the performance we measure on our clusters. Like many other distributed systems, Crail also requires a careful system configuration and wrong or mismatching configuration settings can easily lead to poor performance. Therefore, in this blog we try to point out the key parameter settings that are necessary to obtain proper performance numbers with Crail. 
-</p>
-</div>
-
-<h3 id="hardware-configuration">Hardware Configuration</h3>
-
-<p>The specific cluster configuration used for the experiments in this blog:</p>
-
-<ul>
-  <li>Cluster
-    <ul>
-      <li>8 node OpenPower cluster (for Crail)</li>
-      <li>2 node X86 cluster (for RAMCloud)</li>
-    </ul>
-  </li>
-  <li>OpenPower Node configuration
-    <ul>
-      <li>CPU: 2x OpenPOWER Power8 10-core @2.9Ghz</li>
-      <li>DRAM: 512GB DDR4</li>
-      <li>Network: 1x100Gbit/s Ethernet Mellanox ConnectX-4 EN (Ethernet/RoCE)
-        <ul>
-          <li>RDMA send/recv latency, ib_send_lat (RTT): 3.1us</li>
-          <li>RDMA read latency, ib_read_lat (RTT): 2.3us</li>
-        </ul>
-      </li>
-    </ul>
-  </li>
-  <li>Software
-    <ul>
-      <li>RedHat 7.2 with Linux kernel version 4.10.13</li>
-      <li>Crail 1.0, internal version 2842</li>
-      <li>Alluxio 1.4</li>
-      <li>RAMCloud commit f53202398b4720f20b0cdc42732edf48b928b8d7</li>
-    </ul>
-  </li>
-</ul>
-
-<h3 id="anatomy-of-a-crail-data-operation">Anatomy of a Crail Data Operation</h3>
-
-<div style="text-align: justify"> 
-<p>
-Data operations in Crail -- such as the reading or writing of files -- are internally composed of metadata operations and actual data transfers. Let's look at a simple Crail application that opens a file and reads the file sequentially:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>CrailConfiguration conf = new CrailConfiguration();
-CrailFS fs = CrailFS.newInstance(conf);
-CrailFile file = fs.lookup(filename).get().asFile();
-CrailInputStream stream = file.getDirectInputStream();
-while(stream.available() &gt; 0){
-    Future&lt;Buffer&gt; future = stream.read(buf);
-    //Do something useful
-    ...
-    //Await completion of operation
-    future.get();
-}
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-One challenge with file read/write operations is to avoid blocking in case block metadata information is missing. Crail caches block metadata at the client, but caching is ineffective for both random reads and write-once read-once data. To avoid blocking for sequential read/write operations, Crail interleaves metadata operations and actual data transfers. Each read operation always triggers the lookup of block metadata for the next block immediately after issuing the RDMA read operation for the current block. The asynchronous and non-blocking nature of RDMA allows both operations to be executed in the process context of the application, without context switching or any additional background threads. The figure illustrates the case of one outstanding operation a time. The asynchronous Crail storage API, however, permits any number of outstanding operations. 
-</p>
-</div>
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-memory/anatomy.png" width="420" /></div>
-<p><br /></p>
-<div style="text-align: justify"> 
-<p>
-As a side note, it's also worth mentioning that Crail does not actually use RPCs for the data transfers but uses RDMA one-sided read/write operations instead. Moreover, Crail is designed from ground up for byte-addressable storage and memory. For instance, files in Crail are essentially a sequence of virtual memory windows on different hosts which allows for a very effective handling of small data operations. As shown in the figure, during the last operation, with only a few bytes left to be read, the byte-granular nature of Crail's block access protocol makes sure that only the relevant bytes are transmitted over the network, as opposed to transmitting the entire block. 
-</p>
-<p>
-The basic read/write logic shown in the figure above is common to all storage tiers in Crail, including the NVMe flash tier. In the remainder of this post, we specificially look at the performance of Crail's DRAM storage tier though. 
-</p>
-</div>
-
-<h3 id="sequential-readwrite-throughput">Sequential Read/Write Throughput</h3>
-
-<div style="text-align: justify"> 
-<p>
-Let's start by looking at sequential read/write performance. These benchmarks can be run easily from the command line. Below  is an example for a sequential write experiment issuing 100M write operations of size 1K to produce a file of roughly 100GB size. The -w switch indicates that we are using 32 warmup operations. 
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t write -s 1024 -k 100000000 -w 32 -f /tmp.dat
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-Crail offers direct I/O streams as well as buffered streams. For sequential operations it is important to use the buffered streams. Even though the buffered streams impose one extra copy (from the Crail stream to the application buffer) they are typically more effective for sequential access as they make sure that at least one network operation is in-flight at any time. The buffer size in a Crail buffered stream and the number of oustanding operations can be controlled by setting the buffersize and the slicesize properties in crail-site.conf. For our experiments we used a 1MB buffer per stream sliced up into two slices of 512K each which eventually leads to two operations in flight. 
-</p>
-</div>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.buffersize     1048576
-crail.slicesize      524288
-</code></pre></div></div>
-
-<div style="text-align: justify"> 
-<p>
-The figure below illustrates the sequential write (top) and read (bottom) performance of Crail (DRAM tier) for different application buffer sizes (not to be mixed up with crail.buffersize used within streams) and shows a comparison to other systems. As of now, we only show a comparison with Alluxio, an in-memory file system for caching data in Spark or Hadoop applications. We are, however, working on including results for other storage systems such as Apache Ignite and GlusterFS and we plan to update the blog post accordingly soon. If there is a particular storage system that is not included but you would like to see included as a comparison, please write us. And <b>important</b>: if you find that the results we show for a particular storage system do not match your experience, please write to us too, we are happy to revisit the configuration.
-</p>
-</div>
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-memory/write.svg" width="550" /></div>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-memory/read.svg" width="550" /></div>
-<p><br /><br /></p>
-<div style="text-align: justify"> 
-<p>
-One first observation from the figure is that there is almost no difference in performance for write and read operations. Second, at a buffer size of around 1K Crail reaches a bandwidth close to 95Gbit/s (for read), which is approaching the network hardware limit of 100Gbps. And third, Crail performs significantly faster than other in-memory storage systems, in this case Alluxio. This because Crail is built on of user-level networking and thereby avoids the overheads of both the Linux network stack (memory copies, context switches, etc.) and the Java runtime. 
-</p>
-<p>
-Note that both figures show single-client performance numbers. With Crail being a user-level storage system executing I/O operations directly within the application context this means the entire benchmark is truly runninig on one single core. Often, systems that perform poorly in single-client experiments are being defended saying that nobody cares about the single-client performance. Especially throughput problems can easily be fixed by adding more cores. This is, however, not at all cloudy to say the least. At the level hardware is multiplexed and priced in today's cloud computing data centers every core counts. The figure below shows a simple Spark group-by experiment on the same 8-node cluster. As can be seen, with Crail the benchmark executes faster using a single core per machine than with default Spark using 8 cores per machine, which is a direct consequence from Crail's superb single-core I/O performance. 
-</p>
-</div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-memory/crail-groupby.svg" width="550" /></div>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-memory/spark-groupby.svg" width="550" /></div>
-
-<h3 id="random-read-latency">Random Read Latency</h3>
-
-<div style="text-align: justify"> 
-<p>
-Typically, distributed storage systems are either built for sequential access to large data sets (e.g., HDFS) or they are optimized for random access to small data sets (e.g., key/value stores). We have already shown that Crail performs well for large sequentially accessed data sets, let's now look at the latencies of small random read operations. For this, we mimic the behavior of a key/value store by storing key/value pairs in Crail files with the key being the filename. We then measure the time it takes to open the file and read its content. Again, the benchmark can easily be executed from the command line. The following example issues 1M get() operations on a small file filled with a 4 byte value. 
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t getkey -s 4 -k 1000000 -f /tmp.dat -w 32
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-The figure below illustrates the latencies of get() operations for different key/value sizes and compares them to the latencies we obtained with RAMCloud for the same type of operations (measured using RAMClouds C and Java APIs). RAMCloud is a low-latency key/value store implemented using RDMA. RAMCloud actually provides durable storage by asynchronously replicating data onto backup devices. However, at any point in time all the data is held in DRAM and read requests will be served from DRAM directly. Up to our knowledge, RAMCloud is the fastest key/value store that is (a) available open source and (b) can be deployed in practice as a storage platform for applications. Other similar RDMA-based storage systems we looked at, like FaRM or HERD, are either not open source or they do not provide a clean separation between storage system, API and clients. 
-</p>
-</div>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-memory/latency.svg" width="550" /></div>
-
-<div style="text-align: justify"> 
-<p>
-As can be seen from the figure, Crail's latencies for reading small files range from 10us to 20us for files smaller than 256K. The first observation is that these latency numbers are very close to the RAMCloud get() latencies obtained using the RAMCloud C API. Mainly, the latency difference between the two systems comes from the extra network roundtrip that is required in Crail to open the file, an operation which involves the Crail namenode. Once the file size reaches 64K, the cost for the extra roundtrip is amortized and the Crail latencies start to match the RAMCloud latencies. The second observation from the figure is that Crail offers lower latencies than the RAMCloud Java API for key/value sizes of 16K and bigger. This is because Crail, which is implemented in Java itself, integrates natively with the Java memory system. For instance, Crail's raw stream APIs permits clients to pass Java off-heap ByteBuffers which can be accessed by the network interface directly, avoiding data
  copies along the way. That being said we also understand that the Java API is not RAMCloud's primary API and could probably be optimized further.
-</p>
-<p>
-All in all the main take away here is that -- despite Crail offering a fully hierchical storage namespace and high-performance operations on large data sets -- the latencies for looking up and reading small data sets are in the same ballpark as the get() latencies of some of the fastest key/value stores out there.
-</p>
-<p>
-The latency advantages of Crail are beneficial also at the application level. The figure below illustrates this in a Spark broadcast experiment. Broadcast objects in Spark are typically small read-only variables that are shared across the cluster. The Crail broadcast module for Spark uses Crail as a storage backend to make broadcast variables accessible by the different tasks. As can be seen, using Crail broadcast objects can be accessed in just a few microseconds, while the same operation in default Spark takes milliseconds.
-</p>
-</div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-memory/cdf-broadcast-128-read.svg" width="550" /></div>
-
-<div style="text-align: justify"> 
-<p>
-To summarize, in this blog post we have shown that Crail's DRAM storage tier provides both throughput and latency close to the hardware limits. These performance benefits enable high-level data processing operations like shuffle or broadcast to be implemented faster and/or more efficient.
-</p>
-
-</div>
-
-</div>
-
-<!-- 
-
-<div id="disqus_thread"></div>
-<script>
-
-/**
-*  RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
-*  LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/
-/*
-var disqus_config = function () {
-this.page.url = PAGE_URL;  // Replace PAGE_URL with your page's canonical URL variable
-this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
-};
-*/
-(function() { // DON'T EDIT BELOW THIS LINE
-var d = document, s = d.createElement('script');
-s.src = '//crail-io.disqus.com/embed.js';
-s.setAttribute('data-timestamp', +new Date());
-(d.head || d.body).appendChild(s);
-})();
-</script>
-<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
-
--->
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/08/crail-nvme-fabrics-v1.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/08/crail-nvme-fabrics-v1.html b/content/blog/2017/08/crail-nvme-fabrics-v1.html
deleted file mode 100644
index b29c6a2..0000000
--- a/content/blog/2017/08/crail-nvme-fabrics-v1.html
+++ /dev/null
@@ -1,262 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Crail Storage Performance -- Part II: NVMf</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/crail-nvme-fabrics-v1-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/crail-nvme-fabrics-v1-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Crail Storage Performance -- Part II: NVMf</h2>   
-          
-
-          <p class="meta">22 Aug 2017</p>
-
-<div class="post">
-<div style="text-align: justify">
-<p>
-This is part II of our series of posts discussing Crail's raw storage performance. This part is about Crail's NVMe storage tier, a low-latency flash storage backend for Crail completely based on user-level storage access.
-</p>
-</div>
-
-<h3 id="hardware-configuration">Hardware Configuration</h3>
-
-<p>The specific cluster configuration used for the experiments in this blog:</p>
-
-<ul>
-  <li>Cluster
-    <ul>
-      <li>8 node OpenPower cluster</li>
-    </ul>
-  </li>
-  <li>Node configuration
-    <ul>
-      <li>CPU: 2x OpenPOWER Power8 10-core @2.9Ghz</li>
-      <li>DRAM: 512GB DDR4</li>
-      <li>4x 512 GB Samsung 960Pro NVMe SSDs (512Byte sector size, no metadata)</li>
-      <li>Network: 1x100Gbit/s Mellanox ConnectX-4 IB</li>
-    </ul>
-  </li>
-  <li>Software
-    <ul>
-      <li>RedHat 7.3 with Linux kernel version 3.10</li>
-      <li>Crail 1.0, internal version 2843</li>
-      <li>SPDK git commit 5109f56ea5e85b99207556c4ff1d48aa638e7ceb with patches for POWER support</li>
-      <li>DPDK git commit bb7927fd2179d7482de58d87352ecc50c69da427</li>
-    </ul>
-  </li>
-</ul>
-
-<h3 id="the-crail-nvmf-storage-tier">The Crail NVMf Storage Tier</h3>
-
-<div style="text-align: justify"> 
-<p>
-Crail is a framework that allows arbitrary storage backends to be added by implementing the Crail storage interface. A storage backend manages the point-to-point data transfers on a per block granularity between a Crail client and a set of storage servers. The Crail storage interface essentially consists of three virtual functions, which simplified look like this:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>//Server-side interface: donate storage resources to Crail
-StorageResource allocateResource();
-//Client-side interface: read/write remote/local storage resources
-writeBlock(BlockInfo, ByteBuffer);
-readBlock(BlockInfo, ByteBuffer);
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-A specific implementation of this interface provides an efficient mapping of Crail storage operations to the actual storage and network hardware the backend is exporting. Crail comes with two native storage backends, an RDMA-based DRAM backend and an RDMA-based NVMe backend, but other storage backends are available as well (e.g., Netty) and we plan to provide more custom backends in the future as new storage and network technologies are emerging. 
-</p>
-<p>
-The Crail NVMf storage backend we evaluate in this blog provides user-level access to local and remote flash through the NVMe over Fabrics protocol. Crail NVMf is implemented using <a href="https://github.com/zrlio/disni">DiSNI</a>, a user-level network and storage interface for Java offering both RDMA and NVMf APIs. DiSNI itself is based on <a href="http://www.spdk.io">SPDK</a> for its NVMf APIs. 
-</p>
-<p>
-The server side of the NVMf backend is designed in a way that each server process manages exactly one NVMe drive. On hosts with multiple NVMe drives one may start several Crail NVMf servers. A server is setting up an NVMf target through DiSNI and implements the allocateResource() storage interface by allocating storage regions from the NVMe drive (basically splits up the NVMe namespace into smaller segments). The Crail storage runtime makes information about storage regions available to the Crail namenode, from where regions are further broken down into smaller units called blocks that make up files in Crail.
-</p>
-<p>
-The Crail client runtime invokes the NVMf client interface during file read/write operations for all data transfers on NVMf blocks. Using the block information provided by the namenode, the NVMf storage client implementation is able to connect to the appropriate NVMf target and perform the data operations using DiSNI's NVMf API.
-</p>
-<p>
-One downside of the NVMe interface is that byte level access is prohibited. Instead data operations have to be issued for entire drive sectors which are typically 512Byte or 4KB large (we used 512Byte sector size in all the experiments shown in this blog). As we wanted to use the standard NVMf protocol (and Crail has a client driven philosophy) we needed to implement byte level access at the client side. For reads this can be achieved in a straight forward way by reading the whole sector and copying out the requested part. For writes that modify a certain subrange of a sector that has already been written before we need to do a read modify write operation.
-</p>
-</div>
-
-<h3 id="performance-comparison-to-native-spdk-nvmf">Performance comparison to native SPDK NVMf</h3>
-
-<div style="text-align: justify"> 
-<p>
-We perform latency and throughput measurement of our Crail NVMf storage tier against a native SPDK NVMf benchmark to determine how much overhead our implementation adds. The first plot shows random read latency on a single 512GB Samsung 960Pro accessed remotely through SPDK. For Crail we also show the time it takes to perform a metadata operations. You can run the Crail benchmark from the command line like this:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t readRandom -b false -s &lt;size&gt; -k &lt;iterations&gt; -w 32 -f /tmp.dat
-</code></pre></div></div>
-<p>and SPDK:</p>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./perf -q 1 -s &lt;size&gt; -w randread -r 'trtype:RDMA adrfam:IPv4 traddr:&lt;ip&gt; trsvcid:&lt;port&gt;' -t &lt;time in seconds&gt;
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-The main take away from this plot is that the time it takes to perform a random read operation on a NVMe-backed file in Crail takes only about 7 microseconds more time than fetching the same amount of data over a point-to-point SPDK connection. This is impressive because it shows that using Crail a bunch of NVMe drives can be turned into a fully distributed storage space at almost no extra cost. The 7 microseconds are due to Crail having to look up the specific NVMe storage node that holdes the data -- an operation which requires one extra network roundtrip (client to namenode). The experiment represents an extreme case where no metadata is cached at the client. In practice, file blocks are often accessed multiple times in which case the read latency is further reduced. Also note that unlike SPDK which is a native library, Crail delivers data directly into Java off-heap memory. 
-</p>
-</div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-nvmf/latency.svg" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-The second plot shows sequential read and write throughput with a transfer size of 64KB and 128 outstanding operations. The Crail throughput benchmark can be run like this:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t readAsync -s 65536 -k &lt;iterations&gt; -b 128 -w 32 -f /tmp.dat
-</code></pre></div></div>
-<p>and SPDK:</p>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./perf -q 128 -s 65536 -w read -r 'trtype:RDMA adrfam:IPv4 traddr:&lt;ip&gt; trsvcid:&lt;port&gt;' -t &lt;time in seconds&gt;
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-For sequential operations in Crail, metadata fetching is inlined with data operations as described in the <a href="http://crail.incubator.apache.org/blog/2017/08/crail-memory.html">DRAM</a> blog. This is possible as long as the data transfer has a lower latency than the metadata RPC, which is typically the case. As a consequence, our NVMf storage tier reaches the same throughput as the native SPDK benchmark (device limit).
-</p>
-</div>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-nvmf/throughput.svg" width="550" /></div>
-
-<h3 id="sequential-throughput">Sequential Throughput</h3>
-
-<div style="text-align: justify"> 
-<p>
-Let us look at the sequential read and write throughput for buffered and direct streams and compare them to a buffered Crail stream on DRAM. All benchmarks are single thread/client performed against 8 storage nodes with 4 drives each, cf. configuration above. In this benchmark we use 32 outstanding operations for the NVMf storage tier buffered stream experiments by using a buffer size of 16MB and a slice size of 512KB, cf. <a href="http://crail.incubator.apache.org/blog/2017/07/crail-memory.html">part I</a>. The buffered stream reaches line speed at a transfer size of around 1KB and shows only slightly slower performance when compared to the DRAM tier buffered stream. However we are only using 2 outstanding operations with the DRAM tier to achieve these results. Basically for sizes smaller than 1KB the buffered stream is limited by the copy speed to fill the application buffer. The direct stream reaches line speed at around 128KB with 128 outstanding operations. Here no copy operati
 on is performed for transfer size greater than 512Byte (sector size). The command to run the Crail buffered stream benchmark:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t read -s &lt;size&gt; -k &lt;iterations&gt; -w 32 -f /tmp.dat
-</code></pre></div></div>
-<p>The direct stream benchmark:</p>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t readAsync -s &lt;size&gt; -k &lt;iterations&gt; -b 128 -w 32 -f /tmp.dat
-</code></pre></div></div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-nvmf/throughput2.svg" width="550" /></div>
-
-<h3 id="random-read-latency">Random Read Latency</h3>
-
-<div style="text-align: justify"> 
-<p>
-Random read latency is limited by the flash technology and we currently see around 70us when performing sector size accesses to the device with the Crail NVMf backend. In comparison, remote DRAM latencies with Crail are about 7-8x faster. However, we believe that this will change in the near future with new technologies like PCM. Intel's Optane drives already can deliver random read latencies of around 10us. Considering that there is an overhead of around 10us to access a drive with Crail from anywhere in the cluster, using such a device would put random read latencies somewhere around 20us which is only half the performance of our DRAM tier.
-</p>
-</div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-nvmf/latency2.svg" width="550" /></div>
-
-<h3 id="tiering-dram---nvmf">Tiering DRAM - NVMf</h3>
-
-<div style="text-align: justify"> 
-<p>
-In this paragraph we show how Crail can leverage flash memory when there is not sufficient DRAM available in the cluster to hold all the data. As described in the <a href="http://crail.incubator.apache.org/overview/">overview</a> section, if you have multiple storage tiers deployed in Crail, e.g. the DRAM tier and the NVMf tier, Crail by default first uses up all available resources of the faster tier. Basically a remote resource of a faster tier (e.g. remote DRAM) is preferred over a slower local resource (e.g., local flash), motivated by the fast network. This is what we call horizontal tiering.
-</p>
-</div>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-nvmf/crail_tiering.png" width="500" vspace="10" /></div>
-<p><br /></p>
-<div style="text-align: justify"> 
-<p>
-In the following 200G Terasort experiment we gradually limit the DRAM resources in Crail while adding more flash to the Crail NVMf storage tier. Note that here Crail is used for both input/output as well as shuffle data. The figure shows that by putting all the data in flash we only increase the sorting time by around 48% compared to the configuration where all the data resides in DRAM. Considering the cost of DRAM and the advances in technology described above we believe cheaper NVM storage can replace DRAM for most of the applications with only a minor performance decrease. Also, note that even with 100% of the data in NVMe, Spark/Crail is still faster than vanilla Spark with all the data in memory. The vanilla Spark experiment uses Alluxio for input/output and RamFS for the shuffle data.
-</p>
-</div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-nvmf/tiering.svg" width="550" /></div>
-
-<p>To summarize, in this blog we have shown that the NVMf storage backend for Crail – due to its efficient user-level implementation – offers latencies and throughput very close to the hardware speed. The Crail NVMf storage tier can be used conveniently in combination with the Crail DRAM tier to either save cost or to handle situations where the available DRAM is not sufficient to store the working set of a data processing workload.</p>
-
-
-</div>
-
-<!-- 
-
-<div id="disqus_thread"></div>
-<script>
-
-/**
-*  RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
-*  LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/
-/*
-var disqus_config = function () {
-this.page.url = PAGE_URL;  // Replace PAGE_URL with your page's canonical URL variable
-this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
-};
-*/
-(function() { // DON'T EDIT BELOW THIS LINE
-var d = document, s = d.createElement('script');
-s.src = '//crail-io.disqus.com/embed.js';
-s.setAttribute('data-timestamp', +new Date());
-(d.head || d.body).appendChild(s);
-})();
-</script>
-<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
-
--->
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/08/openpower.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/08/openpower.html b/content/blog/2017/08/openpower.html
deleted file mode 100644
index 8778917..0000000
--- a/content/blog/2017/08/openpower.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Openpower</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/openpower-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/openpower-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Openpower</h2>   
-          
-
-          <p>Crail on OpenPower discussed by Peter Hofstee on <a href="https://www.youtube.com/watch?v=f-pgMaEmqn4&amp;feature=youtu.be&amp;platform=hootsuite">Youtube</a></p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/11/blog.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/11/blog.html b/content/blog/2017/11/blog.html
deleted file mode 100644
index b40af85..0000000
--- a/content/blog/2017/11/blog.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Blog</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/blog-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/blog-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Blog</h2>   
-          
-
-          <p>New blog <a href="http://crail.incubator.apache.org/blog/2017/11/rdmashuffle.html">post</a> about SparkRDMA and Crail shuffle plugins</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/blog/2017/11/crail-metadata.html
----------------------------------------------------------------------
diff --git a/content/blog/2017/11/crail-metadata.html b/content/blog/2017/11/crail-metadata.html
deleted file mode 100644
index beecf61..0000000
--- a/content/blog/2017/11/crail-metadata.html
+++ /dev/null
@@ -1,563 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Crail Storage Performance -- Part III: Metadata</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/crail-metadata-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/crail-metadata-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Crail Storage Performance -- Part III: Metadata</h2>   
-          
-
-          <p class="meta">21 Nov 2017</p>
-
-<div class="post">
-<div style="text-align: justify">
-<p>
-This is part III of our series of posts discussing Crail's raw storage performance. This part is about Crail's metadata performance and scalability.
-</p>
-</div>
-
-<h3 id="hardware-configuration">Hardware Configuration</h3>
-
-<p>The specific cluster configuration used for the experiments in this blog:</p>
-
-<ul>
-  <li>Cluster
-    <ul>
-      <li>8 node x86_64 cluster</li>
-    </ul>
-  </li>
-  <li>Node configuration
-    <ul>
-      <li>CPU: 2 x Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz</li>
-      <li>DRAM: 96GB DDR3</li>
-      <li>Network: 1x100Gbit/s Mellanox ConnectX-5</li>
-    </ul>
-  </li>
-  <li>Software
-    <ul>
-      <li>Ubuntu 16.04.3 LTS (Xenial Xerus) with Linux kernel version 4.10.0-33-generic</li>
-      <li>Crail 1.0, internal version 2993</li>
-    </ul>
-  </li>
-</ul>
-
-<h3 id="crail-metadata-operation-overview">Crail Metadata Operation Overview</h3>
-
-<div style="text-align: justify"> 
-<p>
-As described in <a href="http://crail.incubator.apache.org/blog/2017/08/crail-memory.html">part I</a>, Crail data operations are composed of actual data transfers and metadata operations. Examples of metadata operations are operations for creating or modifying the state of a file, or operations to lookup the storage server that stores a particular range (block) of a file. In Crail, all the metadata is managed by the namenode(s) (as opposed to the data which is managed by the storage nodes). Clients interact with Crail namenodes via Remote Procedure Calls (RPCs). Crail supports multiple RPC protocols for different types of networks and also offers a pluggable RPC interface so that new RPC bindings can be implemented easily. On RDMA networks, the default DaRPC (<a href="https://dl.acm.org/citation.cfm?id=2670994">DaRPC paper</a>, <a href="http://github.com/zrlio/darpc">DaRPC GitHub</a>) based RPC binding provides the best performance. The figure below gives an overview of the Crail me
 tadata processing in a DaRPC configuration. 
-</p>
-</div>
-
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-metadata/rpc.png" width="480" /></div>
-<p><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-Crail supports partitioning of metadata across several namenods. Thereby, metadata operations issued by clients are hashed to a particular namenode depending on the name of object the operation attempts to create or retrieve. With the DaRPC binding, RPC messages are exchanged using RDMA send/recv operations. At the server, RPC processing is parallelized across different cores. To minimize locking and cache contention, each core handles a disjoint set of client connections. Connections assigned to the same core share the same RDMA completion queue which is processed exclusively by that given core. All the network queues, including send-, recv- and completion queues are mapped into user-space and accessed directly from within the JVM process. Since Crail offers a hierarchical storage namespace, metadata operations to create, delete or rename new storage resources effectively result in modifications to a tree-like data structure at the namenode. These structural operations require a so
 mewhat more expensive locking than the more lightweight operations used to lookup the file status or to extend a file with a new storage block. Consequently, Crail namenodes use two separate data structures to manage metadata: (a) a basic tree data structure that requires directory-based locking, and (b) a fast lock-free map to lookup of storage resources that are currently being read or written.
-</p>
-</div>
-
-<h3 id="experimental-setup">Experimental Setup</h3>
-
-<div style="text-align: justify"> 
-<p>
-In two of the previous blogs (<a href="http://crail.incubator.apache.org/blog/2017/08/crail-memory.html">DRAM</a>, <a href="http://crail.incubator.apache.org/blog/2017/08/crail-nvme-fabrics-v1.html">NVMf</a>) we have already shown that Crail metadata operations are very low latency. Essentially a single metadata operation issued by a remote client takes 5-6 microseconds, which is only slightly more than the raw network latency of the RDMA network fabric. In this blog, we want to explore the scalability of Crail's metadata management, that is, the number of clients Crail can support, or how Crail scales as the cluster size increases. The level of scalability of Crail is mainly determined by the number of metadata operations Crail can process concurrently, a metric that is often referred to as IOPS. The higher the number of IOPS the system can handle, the more clients can concurrently use Crail without performance loss. 
-</p>
-<p>
-An important metadata operation is ''getFile()'', which is used by clients to lookup the status of a file (whether the file exists, what size it has, etc.). The ''getFile()'' operation is served by Crail's fast lock-free map and in spirit is very similar to the ''getBlock()'' metadata operation (used by clients to query which storage nodes holds a particular block). In a typical Crail use case, ''getFile()'' and ''getBlock()'' are responsible for the peak metadata load at a namenode. In this experiment, we measure the achievable IOPS on the server side in an artificial configuration with many clients distributed across the cluster issuing ''getFile()'' in a tight loop. Note that the client side RPC interface in Crail is asynchronous, thus, clients can issue multiple metadata operations without blocking while asynchronously waiting for the result. In the experiments below, each client may have a maximum of 128 ''getFile()'' operations outstanding at any point in time. In a practical 
 scenario, Crail clients may also have multiple metadata operations in flight either because clients are shared by different cores, or because Crail interleaves metadata and data operations (see <a href="http://crail.incubator.apache.org/blog/2017/08/crail-memory.html">DRAM</a>). What makes the benchmark artificial is that clients exclusively focus on generating load for the namenode and thereby are neither performing data operations nor are they doing any compute. The basic command of the benchmark as executed by each of the individual clients is given by the following command:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t getMultiFileAsync -f / -k 10000000 -b 128
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-Where ''-t'' specifies the benchmark to run, ''-f'' specifies the path on the
-Crail file system to be used for the benchmark, ''-k'' specifies the number of
-iterations to be performed by the benchmark
-(how many times will the benchmark execute ''getFile()'') and
-''-b'' specifies the maximum number of requests in flight.
-</p>
-</div>
-
-<h3 id="single-namenode-scalability">Single Namenode Scalability</h3>
-
-<div style="text-align: justify"> 
-<p>
-In the first experiment, we measure the aggregated number of metadata operations a single Crail namenode can handle per second. The namenode runs on 8 physical cores with hyper-threading disabled. The result is shown in the first graph below, labeled ''Namenode IOPS''. The namenode only gets saturated with more than 16 clients. The graph shows that the namenode can handle close to 10 million ''getFile()'' operations per second. With significantly more clients, the overall number of IOPS drops slightly, as more resources are being allocated on the single RDMA card, which basically creates a contention on hardware resources.
-</p>
-<p> 
-As comparison, we measure the raw number of IOPS, which can be executed on the RDMA network. We measure the raw number using ib_send_bw. We configured ib_send_bw with the same parameters in terms of RDMA configuration as the namenode. This means, we instructed ib_send_bw not to do CQ moderation, and to use a receive queue and a send queue of length 32, which equals the length of the namenode queues. Note that the default configuration of ib_send_bw uses CQ moderation and does preposting of send operations, which can only be done, if the operation is known in advance. This is not the case in a real system, like crail's namenode. The basic ib_send_bw command is given below:
-</p>
-</div>
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>ib_send_bw -s 1 -Q 1 -r 32 -t 32 -n 10000000
-</code></pre></div></div>
-<div style="text-align: justify"> 
-<p>
-Where ''-s 1'' specifies to send packets with a payload of 1 (we don't want to
-measure the transmission time of data, just the number of I/O operations),
-''-Q 1'' specifies not to do CQ moderation, ''-r 32'' specifies the receive
-queue length to be 32, ''-t 32'' specifies the send queue length to be 32
-and ''-n'' specifies the number of
-iterations to be performed by ib_send_bw.
-</p>
-</div>
-<div style="text-align: justify"> 
-<p>
-The line of the raw number of IOPS, labeled ''ib send'' is shown in the same graph. With this measurement we show that Crail's namenode IOPS are similar to the raw ib_send_bw IOPS with the same configuration.
-</p>
-</div>
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-metadata/namenode_ibsend_iops64.svg" width="550" /></div>
-<p><br /></p>
-<div style="text-align: justify"> 
-<p>
-If one starts ib_send_bw without specifying the queue sizes or whether or not to use CQ moderation, the raw number of IOPS might be higher. This is due to the fact, that the default values of ib_send_bw use a receive queue of 512, a send queue of 128 and CQ moderation of 100, meaning that a new completion is generated only after 100 sends. As comparison, we did this
-measurement too and show the result, labeled 'ib_send CQ mod', in the same graph. Fine tuning of receive and send queue sizes, CQ moderation size, postlists etc might lead to a higher number of IOPS. 
-</p>
-</div>
-
-<h3 id="multiple-namenode-scalability">Multiple Namenode Scalability</h3>
-
-<div style="text-align: justify"> 
-<p>
-To increase the number of IOPS the overall system can handle, we allow starting multiple namenode instances. Hot metadata operations, such as ''getFile()'', are distributed over all running instances of the namenode. ''getFile()'' is implemented such that no synchronization among the namenodes is required. As such, we expect good scalability. The graph below compares the overall IOPS of a system with one namenode to a system with two namenodes and four namenodes.
-</p>
-</div>
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-metadata/namenode_multi64.svg" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-We show in this graph that the system can handle around 17Mio IOPS with two namenodes and 28Mio IOPS with four namenodes (with more than 64 clients we measured the number of IOPS to be slightly higher than 30Mio IOPS). Having multiple namenode instances matters especially with a higher number of clients. In the graph we see that the more clients we have the more we can benefit from a second namenode instance or even more instances.
-</p>
-</div>
-
-<div style="text-align: justify"> 
-<p>
-We only have 7 physical nodes available to run the client processes. This
-means, after 7 client processes, processes start sharing a physical machine.
-With 64 client processes, each machine runs 9 (10 in one case) client
-instances, which share the cores and the resources of the RDMA hardware.
-We believe this is the reason, why the graphs appear not to scale linearly.
-The number of total IOPS is client-bound, not namenode-bound.
-With more physical machines, we believe that scalability could be shown
-much better. Again, there is absolutely no communication among the
-namenodes happening, which should lead to linear scalability.
-</p>
-</div>
-
-<h3 id="cluster-sizes">Cluster sizes</h3>
-
-<div style="text-align: justify"> 
-<p>
-Let us look at a concrete application, which ideally runs on a large cluster:
-TeraSort. In a previous blog, <a href="http://crail.incubator.apache.org/blog/2017/01/sorting.html">sorting</a>,
-we analyze performance characteristics of TeraSort on Crail on a big cluster
-of 128 nodes, where we run 384 executors in total. This already proves that
-Crail can at least handle 384 clients. Now we analyze the theoretical number
-of clients without performance loss at the namenode. Still this theoretical
-number is not a hard limit on the number of clients. Just adding more
-clients would start dropping the number of IOPS per client (not at the
-namenode).
-</p>
-</div>
-
-<div style="text-align: justify"> 
-<p>
-In contrast to the benchmarks above, a real-world application, like TeraSort,
-does not issue RPC requests in a tight loop. It rather does sorting
-(computation), file reading and writing and and of course a certain amount of
-RPCs to manage the files.
-</p>
-</div>
-
-<div style="text-align: justify"> 
-<p>
-We would like to know how many RPCs a run of TeraSort generates and therefore
-how big the load in terms of number of IOPS is at the namenode for a
-real-world application.
-We run TeraSort on a data set of 200GB and measured the
-number of IOPS at the namenode with 4 executors, 8 executors and 12 executors.
-Every executor runs 12 cores. For this experiment, we use a single namenode
-instance. We plot the distribution of the number of IOPS measured at the
-namenode over the elapsed runtime of the TeraSort application.
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-metadata/terasort_iops.svg" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-From the graph we pick the peak number of IOPS measured
-throughout the execution time for all three cases. The following table
-shows the three peak IOPS numbers:
-</p>
-</div>
-
-<p><br /></p>
-<center>
-<table>
-  <thead>
-    <tr>
-      <th>#Executor nodes</th>
-      <th>Measured IOPS</th>
-      <th>% of single namenode</th>
-    </tr>
-  </thead>
-  <tbody>
-    <tr>
-      <td align="right">4</td>
-      <td align="right">32k</td>
-      <td align="right">0.32%</td>
-    </tr>
-    <tr>
-      <td align="right">8</td>
-      <td align="right">67k</td>
-      <td align="right">0.67%</td>
-    </tr>
-    <tr>
-      <td align="right">12</td>
-      <td align="right">107k</td>
-      <td align="right">1.07%</td>
-    </tr>
-  </tbody>
-</table>
-</center>
-<p><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-From this table we see that it scales linearly. Even more important,
-we notice that with 12 nodes we still use only around 1% of the
-number of IOPS a single namenode can handle.
-If we extrapolate this to a
-100%, we can handle a cluster size of almost 1200 nodes (1121 clients being just
-below 10Mio IOPS at the namenode). The
-extrapolated numbers would look like this:
-</p>
-</div>
-
-<p><br /></p>
-<center>
-<table>
-  <thead>
-    <tr>
-      <th>#Namenodes</th>
-      <th>Max IOPS by  namenodes</th>
-      <th>#Executor nodes</th>
-      <th>Extrapolated IOPS</th>
-      <th>% of all namenodes</th>
-    </tr>
-  </thead>
-  <tbody>
-    <tr>
-      <td align="right">1</td>
-      <td align="right">10000k</td>
-      <td align="right">1121</td>
-      <td align="right">9996k</td>
-      <td align="right">99.96%</td>
-    </tr>
-    <tr>
-      <td align="right">1</td>
-      <td align="right">10000k</td>
-      <td align="right">1200</td>
-      <td align="right">10730k</td>
-      <td align="right">107.3%</td>
-    </tr>
-    <tr>
-      <td align="right">2</td>
-      <td align="right">17000k</td>
-      <td align="right">1906</td>
-      <td align="right">16995k</td>
-      <td align="right">99.97%</td>
-    </tr>
-    <tr>
-      <td align="right">4</td>
-      <td align="right">30000k</td>
-      <td align="right">3364</td>
-      <td align="right">29995k</td>
-      <td align="right">99.98%</td>
-    </tr>
-</tbody>
-</table>
-</center>
-<p><br /></p>
-
-<div style="text-align: justify"> 
-<p>
-Of course we know that there is no system with perfect linear scalability.
-But even if we would loose 50% of the number of IOPS (compared to the
-theoretical maximum) on a big cluster, Crail could still handle a cluster size
-of 600 nodes and a single namenode without any performance loss at the
-namenode.
-Should we still want to run an application like TeraSort on a bigger cluster,
-we can add a second namenode or have even more instances of namenodes
-to ensure that clients do not suffer from contention in terms of IOPS at
-the namenode.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-We believe that the combination of benchmarks above, the scalability
-experiments and the real-world
-application of TeraSort shows clearly that Crail and Crail's namenode can handle
-a big cluster of at least several hundreds of nodes, theoretically up to
-1200 nodes with a single namenode and even more with multiple namenodes.
-</p>
-</div>
-
-<h3 id="system-comparison">System comparison</h3>
-<div style="text-align: justify">
-<p>
-In this section we compare the number of IOPS Crail can handle to
-two other systems:
-<a href="http://hadoop.apache.org/">Hadoop's HDFS namenode</a> and
-<a href="https://ramcloud.atlassian.net/wiki/spaces/RAM/overview">RAMCloud</a>.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-HDFS is a well known distributed file system. Like Crail, HDFS runs
-a namenode and several datanodes. The namenode implements similar functionality
-as Crail's namenode, while HDFS's datanodes provide additional functionality,
-like replication, for example. We are interested in the
-number of IOPS the namenode can handle. As such, the datanode's functionality
-is not relevant for this experiment. HDFS is implemented in Java like Crail.
-Due to this high similarity in terms of functionality and language used to
-implement the system, HDFS is a good candidate to compare Crail to.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-HDFS does not use RDMA to send RPCs. Instead, RPCs are sent over a regular
-IP network. In our case, it is the same 100Gbit/s ethernet-based RoCE network.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-To measure the number of IOPS HDFS's namenode can handle, we run the same
-experiment as for Crail. The clients issue a ''getFile()'' RPC to the
-namenode and we vary the number of clients from 1 to 64. The following
-plot shows the number of IOPS relative to the number of clients.
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-metadata/namenode_hdfs_iops.svg" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify">
-<p>
-The graph shows that the namenode can handle around 200000 IOPS. One reason
-for the difference to the number of IOPS of Crail is surely that HDFS does not
-use the capabilities offered by the RDMA network, while Crail does. However
-this cannot be the only reason, why the namenode cannot handle more than
-200000 IOPS. We would need to analyze more deeply where the bottleneck is
-to find an answer. We believe that the amount of code which
-gets executed at probably various layers of the software stack
-is too big to achieve high performance in terms of IOPS.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-RAMCloud is a fast key-value store, which makes use of the RDMA network
-to reach low latency and high throughput. It runs one master coordinator and
-and optionally several slave coordinators, which can take over, if the master
-coordinator fails. Coordinator persistence can be achieved
-by external persistent storage, like Zookeeper or LogCabin.
-RAMCloud runs several storage servers, which
-store key-value pairs in RAM. Optionally, replicas can be stored on secondary
-storage, which provides persistence. RAMCloud is implemented in C++. Therefore
-it is natively compiled code.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-We are interested in the number of IOPS RAMCloud can handle. We decided
-to run the readThroughput benchmark of RAMCloud's ClusterPerf program, which
-measures the number of object reads per second. This is probably the closest
-benchmark to the RPC benchmark of Crail and HDFS.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-For a fair comparison, we run RAMCloud without any persistence, so without
-Zookeeper and without replicas to secondary storage. We run one coordinator
-and one storage server, which is somewhat similar to running one namenode
-in the Crail and HDFS cases. Also, we wanted to vary the number of clients
-from 1 to 64. At the moment we can only get results for up to 16 clients.
-We asked the RAMCloud developers for possible reasons and got to know that the
-reason is a starvation bug in the benchmark (not in the RAMCloud system
-itself). The RAMCloud developers are looking into this issue. We will update
-the blog with the latest numbers as soon as the bug is fixed.
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-metadata/ramcloud_iops.svg" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify">
-<p>
-RAMCloud reaches a peak of 1.12Mio IOPS with 14 clients. The utilization of the
-dispatcher thread is at 100% already with 10 clients. Even with more clients,
-the number of IOPS won't get higher than 1.12Mio, because the
-dispatcher thread is the bottleneck, as can be seen in the graph.
-In addition, we got a confirmation from the developers that more than
-10 clients will not increase the number of IOPS.
-So we think that the measurements are not unfair, even if we do not have
-results for more than 16 clients. Again, we we will update the blog
-with a higher number of clients, as soon as the bug is fixed.
-</p>
-</div>
-
-<div style="text-align: justify">
-<p>
-Let us now summarize the number of IOPS of all three systems in one plot
-below. For a fair comparison, Crail runs only one namenode for this
-experiments and we compare the results to RAMCloud with one coordinator and
-one storage server (without replication as described above) and the one
-namenode instance of HDFS. We see that Crail's single namenode can handle
-a much bigger number of RPCs compared to the other two systems (remember
-that Crail can run multiple namenodes and we measured a number of IOPS
-of 30Mio/s with 4 namenodes).
-</p>
-</div>
-
-<p><br /></p>
-<div style="text-align:center"><img src="http://crail.incubator.apache.org/img/blog/crail-metadata/max_iops_crail_hdfs_ramcloud.svg" width="550" /></div>
-<p><br /></p>
-
-<div style="text-align: justify">
-<p>
-HDFS is deployed on production clusters and handles real workloads
-with roughly 200000 IOPS. We believe that Crail, which can handle a much
-bigger number of IOPS, is able to run real workloads on very large
-clusters. A common assumption is that Java-based implementations suffer from
-performance loss. We show that a Java-based system can handle a high amount
-of operations even compared to a C++-based system like RAMCloud.
-</p>
-</div>
-
-<h3 id="summary">Summary</h3>
-
-<div style="text-align: justify"> 
-<p>
-In this blog we show three key points of Crail: First, Crail's namenode performs the same as ib_send_bw with realistic parameters in terms of IOPS. This shows that the actual processing of the RPC is implemented efficiently. Second, with only one namenode, Crail performs 10x to 50x better than RAMCloud and HDFS, two popular systems, where RAMCloud is RDMA-based and implemented natively. Third, Crail's metadata service can be scaled out to serve large number of clients. We have shown that Crail offers near linear scaling with up to 4 namenodes, offering a performance that is sufficient to serve several 1000s of clients. 
-</p>
-</div>
-
-
-</div>
-
-<!-- 
-
-<div id="disqus_thread"></div>
-<script>
-
-/**
-*  RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
-*  LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/
-/*
-var disqus_config = function () {
-this.page.url = PAGE_URL;  // Replace PAGE_URL with your page's canonical URL variable
-this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable
-};
-*/
-(function() { // DON'T EDIT BELOW THIS LINE
-var d = document, s = d.createElement('script');
-s.src = '//crail-io.disqus.com/embed.js';
-s.setAttribute('data-timestamp', +new Date());
-(d.head || d.body).appendChild(s);
-})();
-</script>
-<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
-
--->
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>



[08/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-memory/latency.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-memory/latency.svg b/content/img/blog/crail-memory/latency.svg
deleted file mode 100644
index d7d7ce7..0000000
--- a/content/img/blog/crail-memory/latency.svg
+++ /dev/null
@@ -1,231 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,242.4 L610.6,242.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,242.4 L72.6,242.4 M610.6,242.4 L601.6,242.4  h0.01'/>	<g transform="translate(55.3,246.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,197.3 L610.6,197.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,197.3 L72.6,197.3 M610.6,197.3 L601.6,197.3  h0.01'/>	<g transform="translate(55.3,201.8)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 10</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,152.1 L610.6,152.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,152.1 L72.6,152.1 M610.6,152.1 L601.6,152.1  h0.01'/>	<g transform="translate(55.3,156.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,107.0 L610.6,107.0  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,107.0 L72.6,107.0 M610.6,107.0 L601.6,107.0  h0.01'/>	<g transform="translate(55.3,111.5)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 30</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,61.8 L71.9,61.8 M305.0,61.8 L610.6,61.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,61.8 L72.6,61.8 M610.6,61.8 L601.6,61.8  h0.01'/>	<g transform="translate(55.3,66.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M63.6,16.7 L610.6,16.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,16.7 L72.6,16.7 M610.6,16.7 L601.6,16.7  h0.01'/>	<g transform="translate(55.3,21.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 50</text>
-	</g>
-	<path stroke='black'  d='M106.3,242.4 L106.3,233.4 M106.3,16.7 L106.3,25.7  h0.01'/>	<g transform="translate(106.3,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>4B</text>
-	</g>
-	<path stroke='black'  d='M191.8,242.4 L191.8,233.4 M191.8,16.7 L191.8,25.7  h0.01'/>	<g transform="translate(191.8,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>1K</text>
-	</g>
-	<path stroke='black'  d='M277.3,242.4 L277.3,233.4 M277.3,16.7 L277.3,25.7  h0.01'/>	<g transform="translate(277.3,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>4K</text>
-	</g>
-	<path stroke='black'  d='M362.7,242.4 L362.7,233.4 M362.7,16.7 L362.7,25.7  h0.01'/>	<g transform="translate(362.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>16K</text>
-	</g>
-	<path stroke='black'  d='M448.2,242.4 L448.2,233.4 M448.2,16.7 L448.2,25.7  h0.01'/>	<g transform="translate(448.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>64K</text>
-	</g>
-	<path stroke='black'  d='M533.7,242.4 L533.7,233.4 M533.7,16.7 L533.7,25.7  h0.01'/>	<g transform="translate(533.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>256K</text>
-	</g>
-	<path stroke='black'  d='M63.6,16.7 L63.6,242.4 L610.6,242.4 L610.6,16.7 L63.6,16.7 Z  h0.01'/>	<g transform="translate(17.6,129.6) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>latency [us]</text>
-	</g>
-	<g transform="translate(337.1,291.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>key size</text>
-	</g>
-	<g transform="translate(482.4,43.8)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:start">
-		<text>124</text>
-	</g>
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:2.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M534.8,41.2 L542.2,39.3 L534.8,37.4 M516.6,39.3 L542.2,39.3  h0.01'/></g>
-<g style="fill:none; color:black; stroke:black; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(246.2,39.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>RAMCloud/read/C</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '254.5,39.2 296.7,39.2 296.7,30.2 254.5,30.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M254.5,39.2 L296.7,39.2 L296.7,30.2 L254.5,30.2 L254.5,39.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '97.8,242.4 115.0,242.4 115.0,205.7 97.8,205.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M97.8,242.4 L97.8,205.8 L114.9,205.8 L114.9,242.4 L97.8,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '183.3,242.4 200.5,242.4 200.5,205.3 183.3,205.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M183.3,242.4 L183.3,205.4 L200.4,205.4 L200.4,242.4 L183.3,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '268.7,242.4 285.9,242.4 285.9,193.5 268.7,193.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M268.7,242.4 L268.7,193.6 L285.8,193.6 L285.8,242.4 L268.7,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '354.2,242.4 371.4,242.4 371.4,195.8 354.2,195.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M354.2,242.4 L354.2,195.9 L371.3,195.9 L371.3,242.4 L354.2,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '439.7,242.4 456.9,242.4 456.9,168.7 439.7,168.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M439.7,242.4 L439.7,168.8 L456.8,168.8 L456.8,242.4 L439.7,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.400000' points = '525.1,242.4 542.3,242.4 542.3,86.1 525.1,86.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M525.1,242.4 L525.1,86.2 L542.2,86.2 L542.2,242.4 L525.1,242.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(246.2,57.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>RAMCloud/read/Java</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '254.5,57.2 296.7,57.2 296.7,48.2 254.5,48.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M254.5,57.2 L296.7,57.2 L296.7,48.2 L254.5,48.2 L254.5,57.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '114.9,242.4 132.1,242.4 132.1,195.3 114.9,195.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M114.9,242.4 L114.9,195.4 L132.0,195.4 L132.0,242.4 L114.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '200.3,242.4 217.5,242.4 217.5,190.7 200.3,190.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M200.3,242.4 L200.3,190.8 L217.4,190.8 L217.4,242.4 L200.3,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '285.8,242.4 303.0,242.4 303.0,186.9 285.8,186.9 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M285.8,242.4 L285.8,187.0 L302.9,187.0 L302.9,242.4 L285.8,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '371.3,242.4 388.5,242.4 388.5,171.8 371.3,171.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M371.3,242.4 L371.3,171.9 L388.4,171.9 L388.4,242.4 L371.3,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '456.8,242.4 474.0,242.4 474.0,72.3 456.8,72.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M456.8,242.4 L456.8,72.4 L473.9,72.4 L473.9,242.4 L456.8,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.400000' points = '542.2,242.4 559.4,242.4 559.4,16.6 542.2,16.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M542.2,242.4 L542.2,16.7 L559.3,16.7 L559.3,242.4 L542.2,242.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(246.2,75.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail (lookup &amp; read)</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '254.5,75.2 296.7,75.2 296.7,66.2 254.5,66.2 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M254.5,75.2 L296.7,75.2 L296.7,66.2 L254.5,66.2 L254.5,75.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '132.0,242.4 149.2,242.4 149.2,191.4 132.0,191.4 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M132.0,242.4 L132.0,191.5 L149.1,191.5 L149.1,242.4 L132.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '217.4,242.4 234.6,242.4 234.6,189.1 217.4,189.1 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M217.4,242.4 L217.4,189.2 L234.5,189.2 L234.5,242.4 L217.4,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '302.9,242.4 320.1,242.4 320.1,183.8 302.9,183.8 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M302.9,242.4 L302.9,183.9 L320.0,183.9 L320.0,242.4 L302.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '388.4,242.4 405.6,242.4 405.6,175.9 388.4,175.9 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M388.4,242.4 L388.4,176.0 L405.5,176.0 L405.5,242.4 L388.4,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '473.9,242.4 491.0,242.4 491.0,155.8 473.9,155.8 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M473.9,242.4 L473.9,155.9 L490.9,155.9 L490.9,242.4 L473.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(228,  26,  28)' fill-opacity = '0.400000' points = '559.3,242.4 576.5,242.4 576.5,80.2 559.3,80.2 '/>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M559.3,242.4 L559.3,80.3 L576.4,80.3 L576.4,242.4 L559.3,242.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_4" ><title>gnuplot_plot_4</title>
-<g style="fill:none; color:cyan; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(246.2,93.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail (lookup only)</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '254.5,93.2 296.7,93.2 296.7,84.2 254.5,84.2 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M254.5,93.2 L296.7,93.2 L296.7,84.2 L254.5,84.2 L254.5,93.2 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '135.0,242.4 146.2,242.4 146.2,211.6 135.0,211.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M135.0,242.4 L135.0,211.7 L146.1,211.7 L146.1,242.4 L135.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '220.4,242.4 231.6,242.4 231.6,211.6 220.4,211.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M220.4,242.4 L220.4,211.7 L231.5,211.7 L231.5,242.4 L220.4,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '305.9,242.4 317.1,242.4 317.1,211.6 305.9,211.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M305.9,242.4 L305.9,211.7 L317.0,211.7 L317.0,242.4 L305.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '391.4,242.4 402.6,242.4 402.6,211.6 391.4,211.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M391.4,242.4 L391.4,211.7 L402.5,211.7 L402.5,242.4 L391.4,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '476.8,242.4 488.1,242.4 488.1,211.6 476.8,211.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M476.8,242.4 L476.8,211.7 L488.0,211.7 L488.0,242.4 L476.8,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 55, 126, 184)' points = '562.3,242.4 573.5,242.4 573.5,211.6 562.3,211.6 '/>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M562.3,242.4 L562.3,211.7 L573.4,211.7 L573.4,242.4 L562.3,242.4 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb( 55, 126, 184); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M63.6,16.7 L63.6,242.4 L610.6,242.4 L610.6,16.7 L63.6,16.7 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-memory/read.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-memory/read.svg b/content/img/blog/crail-memory/read.svg
deleted file mode 100644
index 8f5ff29..0000000
--- a/content/img/blog/crail-memory/read.svg
+++ /dev/null
@@ -1,189 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L631.6,242.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L80.9,242.4 M631.6,242.4 L622.6,242.4  h0.01'/>	<g transform="translate(63.6,246.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,201.1 L631.6,201.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,201.1 L80.9,201.1 M631.6,201.1 L622.6,201.1  h0.01'/>	<g transform="translate(63.6,205.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,159.9 L631.6,159.9  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,159.9 L80.9,159.9 M631.6,159.9 L622.6,159.9  h0.01'/>	<g transform="translate(63.6,164.4)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,118.6 L631.6,118.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,118.6 L80.9,118.6 M631.6,118.6 L622.6,118.6  h0.01'/>	<g transform="translate(63.6,123.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,77.4 L80.2,77.4 M197.1,77.4 L631.6,77.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,77.4 L80.9,77.4 M631.6,77.4 L622.6,77.4  h0.01'/>	<g transform="translate(63.6,81.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,36.1 L631.6,36.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,36.1 L80.9,36.1 M631.6,36.1 L622.6,36.1  h0.01'/>	<g transform="translate(63.6,40.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-	<path stroke='black'  d='M105.9,242.4 L105.9,233.4 M105.9,36.1 L105.9,45.1  h0.01'/>	<g transform="translate(105.9,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>128B</text>
-	</g>
-	<path stroke='black'  d='M173.8,242.4 L173.8,233.4 M173.8,36.1 L173.8,45.1  h0.01'/>	<g transform="translate(173.8,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>256B</text>
-	</g>
-	<path stroke='black'  d='M241.8,242.4 L241.8,233.4 M241.8,36.1 L241.8,45.1  h0.01'/>	<g transform="translate(241.8,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>512B</text>
-	</g>
-	<path stroke='black'  d='M309.8,242.4 L309.8,233.4 M309.8,36.1 L309.8,45.1  h0.01'/>	<g transform="translate(309.8,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>1K</text>
-	</g>
-	<path stroke='black'  d='M377.7,242.4 L377.7,233.4 M377.7,36.1 L377.7,45.1  h0.01'/>	<g transform="translate(377.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>128K</text>
-	</g>
-	<path stroke='black'  d='M445.7,242.4 L445.7,233.4 M445.7,36.1 L445.7,45.1  h0.01'/>	<g transform="translate(445.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>256K</text>
-	</g>
-	<path stroke='black'  d='M513.7,242.4 L513.7,233.4 M513.7,36.1 L513.7,45.1  h0.01'/>	<g transform="translate(513.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>512K</text>
-	</g>
-	<path stroke='black'  d='M581.6,242.4 L581.6,233.4 M581.6,36.1 L581.6,45.1  h0.01'/>	<g transform="translate(581.6,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>1MB</text>
-	</g>
-	<path stroke='black'  d='M71.9,36.1 L71.9,242.4 L631.6,242.4 L631.6,36.1 L71.9,36.1 Z  h0.01'/>	<g transform="translate(17.6,139.3) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput [Gbit/s]</text>
-	</g>
-	<g transform="translate(351.7,291.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Buffer size</text>
-	</g>
-	<g transform="translate(351.7,13.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Single-client (1 core) throughput</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(138.3,58.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '146.6,58.6 188.8,58.6 188.8,49.6 146.6,49.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M146.6,58.6 L188.8,58.6 L188.8,49.6 L146.6,49.6 L146.6,58.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '99.1,242.4 112.8,242.4 112.8,197.3 99.1,197.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M99.1,242.4 L99.1,197.4 L112.7,197.4 L112.7,242.4 L99.1,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '167.1,242.4 180.7,242.4 180.7,157.8 167.1,157.8 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M167.1,242.4 L167.1,157.9 L180.6,157.9 L180.6,242.4 L167.1,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '235.0,242.4 248.7,242.4 248.7,97.6 235.0,97.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M235.0,242.4 L235.0,97.7 L248.6,97.7 L248.6,242.4 L235.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '303.0,242.4 316.7,242.4 316.7,49.5 303.0,49.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M303.0,242.4 L303.0,49.6 L316.6,49.6 L316.6,242.4 L303.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '371.0,242.4 384.6,242.4 384.6,40.0 371.0,40.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M371.0,242.4 L371.0,40.1 L384.5,40.1 L384.5,242.4 L371.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '438.9,242.4 452.6,242.4 452.6,38.4 438.9,38.4 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M438.9,242.4 L438.9,38.5 L452.5,38.5 L452.5,242.4 L438.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '506.9,242.4 520.6,242.4 520.6,38.2 506.9,38.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M506.9,242.4 L506.9,38.3 L520.5,38.3 L520.5,242.4 L506.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '574.8,242.4 588.5,242.4 588.5,38.1 574.8,38.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M574.8,242.4 L574.8,38.2 L588.4,38.2 L588.4,242.4 L574.8,242.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(138.3,76.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Alluxio</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '146.6,76.6 188.8,76.6 188.8,67.6 146.6,67.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M146.6,76.6 L188.8,76.6 L188.8,67.6 L146.6,67.6 L146.6,76.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '115.1,242.4 128.8,242.4 128.8,227.5 115.1,227.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M115.1,242.4 L115.1,227.6 L128.7,227.6 L128.7,242.4 L115.1,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '183.0,242.4 196.7,242.4 196.7,223.7 183.0,223.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M183.0,242.4 L183.0,223.8 L196.6,223.8 L196.6,242.4 L183.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '251.0,242.4 264.7,242.4 264.7,221.4 251.0,221.4 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M251.0,242.4 L251.0,221.5 L264.6,221.5 L264.6,242.4 L251.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '319.0,242.4 332.6,242.4 332.6,219.5 319.0,219.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M319.0,242.4 L319.0,219.6 L332.5,219.6 L332.5,242.4 L319.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '386.9,242.4 400.6,242.4 400.6,217.3 386.9,217.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M386.9,242.4 L386.9,217.4 L400.5,217.4 L400.5,242.4 L386.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '454.9,242.4 468.6,242.4 468.6,217.5 454.9,217.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M454.9,242.4 L454.9,217.6 L468.5,217.6 L468.5,242.4 L454.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '522.9,242.4 536.5,242.4 536.5,217.4 522.9,217.4 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M522.9,242.4 L522.9,217.5 L536.4,217.5 L536.4,242.4 L522.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '590.8,242.4 604.5,242.4 604.5,217.8 590.8,217.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M590.8,242.4 L590.8,217.9 L604.4,217.9 L604.4,242.4 L590.8,242.4 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb(255, 127,   0); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,36.1 L71.9,242.4 L631.6,242.4 L631.6,36.1 L71.9,36.1 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-memory/spark-groupby.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-memory/spark-groupby.svg b/content/img/blog/crail-memory/spark-groupby.svg
deleted file mode 100644
index cf19c91..0000000
--- a/content/img/blog/crail-memory/spark-groupby.svg
+++ /dev/null
@@ -1,224 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L615.0,242.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L80.9,242.4  h0.01'/>	<g transform="translate(63.6,246.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,204.7 L615.0,204.7  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,204.7 L80.9,204.7  h0.01'/>	<g transform="translate(63.6,209.2)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,167.1 L615.0,167.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,167.1 L80.9,167.1  h0.01'/>	<g transform="translate(63.6,171.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,129.4 L615.0,129.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,129.4 L80.9,129.4  h0.01'/>	<g transform="translate(63.6,133.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,91.8 L489.8,91.8 M606.7,91.8 L615.0,91.8  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,91.8 L80.9,91.8  h0.01'/>	<g transform="translate(63.6,96.3)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,54.1 L615.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,54.1 L80.9,54.1  h0.01'/>	<g transform="translate(63.6,58.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L71.9,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L71.9,233.4  h0.01'/>	<g transform="translate(71.9,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M117.2,242.4 L117.2,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M117.2,242.4 L117.2,233.4  h0.01'/>	<g transform="translate(117.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 10</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M162.4,242.4 L162.4,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M162.4,242.4 L162.4,233.4  h0.01'/>	<g transform="translate(162.4,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M207.7,242.4 L207.7,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M207.7,242.4 L207.7,233.4  h0.01'/>	<g transform="translate(207.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 30</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M252.9,242.4 L252.9,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M252.9,242.4 L252.9,233.4  h0.01'/>	<g transform="translate(252.9,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M298.2,242.4 L298.2,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M298.2,242.4 L298.2,233.4  h0.01'/>	<g transform="translate(298.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 50</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M343.5,242.4 L343.5,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M343.5,242.4 L343.5,233.4  h0.01'/>	<g transform="translate(343.5,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M388.7,242.4 L388.7,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M388.7,242.4 L388.7,233.4  h0.01'/>	<g transform="translate(388.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 70</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M434.0,242.4 L434.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M434.0,242.4 L434.0,233.4  h0.01'/>	<g transform="translate(434.0,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M479.2,242.4 L479.2,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M479.2,242.4 L479.2,233.4  h0.01'/>	<g transform="translate(479.2,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 90</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M524.5,242.4 L524.5,117.1 M524.5,63.1 L524.5,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M524.5,242.4 L524.5,233.4  h0.01'/>	<g transform="translate(524.5,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 100</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M569.7,242.4 L569.7,117.1 M569.7,63.1 L569.7,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M569.7,242.4 L569.7,233.4  h0.01'/>	<g transform="translate(569.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 110</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M615.0,242.4 L615.0,54.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M615.0,242.4 L615.0,233.4  h0.01'/>	<g transform="translate(615.0,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text> 120</text>
-	</g>
-	<path stroke='black'  d='M71.9,54.1 L71.9,242.4 L615.0,242.4 L615.0,54.1 L71.9,54.1 Z  h0.01'/>	<g transform="translate(17.6,148.3) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput (Gbit/s)</text>
-	</g>
-	<g transform="translate(343.4,291.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Elapsed time (seconds)</text>
-	</g>
-	<g transform="translate(343.4,31.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Groupby Vanilla Spark</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,76.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>1 core</text>
-	</g>
-	<path stroke='rgb(228,  26,  28)'  d='M556.2,72.1 L598.4,72.1 M71.9,242.4 L76.4,242.4 L81.0,242.4 L85.5,242.4 L90.0,242.4 L94.5,242.4 
-		L99.1,242.4 L103.6,242.4 L108.1,242.4 L112.6,242.4 L117.2,242.4 L121.7,242.4 L126.2,242.4 L130.7,242.4 
-		L135.3,242.4 L139.8,242.4 L144.3,242.4 L148.8,242.4 L153.4,242.4 L157.9,242.4 L162.4,242.4 L166.9,242.4 
-		L171.5,242.4 L176.0,242.4 L180.5,242.4 L185.0,242.4 L189.6,242.4 L194.1,242.4 L198.6,242.4 L203.1,242.4 
-		L207.7,242.4 L212.2,242.4 L216.7,242.4 L221.3,242.4 L225.8,242.4 L230.3,242.4 L234.8,242.4 L239.4,242.4 
-		L243.9,242.4 L248.4,242.4 L252.9,242.4 L257.5,241.6 L262.0,223.3 L266.5,242.4 L271.0,222.4 L275.6,222.4 
-		L280.1,222.4 L284.6,220.2 L289.1,224.7 L293.7,222.4 L298.2,222.4 L302.7,227.4 L307.2,219.2 L311.8,220.7 
-		L316.3,222.4 L320.8,223.2 L325.3,222.5 L329.9,241.6 L334.4,242.4 L338.9,228.5 L343.5,236.3 L348.0,239.8 
-		L352.5,217.2 L357.0,212.4 L361.6,225.7 L366.1,220.4 L370.6,219.7 L375.1,228.7 L379.7,235.4 L384.2,222.4 
-		L388.7,222.4 L393.2,233.0 L397.8,220.2 L402.3,225.4 L406.8,229.3 L411.3,224.3 L415.9,242.4  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,94.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>4 cores</text>
-	</g>
-	<path stroke='rgb( 55, 126, 184)'  d='M556.2,90.1 L598.4,90.1 M71.9,242.4 L76.4,242.4 L81.0,242.4 L85.5,242.4 L90.0,242.4 L94.5,242.4 
-		L99.1,242.4 L103.6,242.4 L108.1,242.4 L112.6,242.4 L117.2,242.4 L121.7,242.4 L126.2,242.4 L130.7,242.4 
-		L135.3,202.4 L139.8,216.2 L144.3,179.4 L148.8,179.3 L153.4,171.0 L157.9,191.5 L162.4,198.5 L166.9,186.9 
-		L171.5,191.6 L176.0,200.5 L180.5,203.2 L185.0,229.1 L189.6,242.4 L194.1,242.4  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_3" ><title>gnuplot_plot_3</title>
-<g style="fill:none; color:blue; stroke:currentColor; stroke-width:6.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(547.9,112.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>8 cores</text>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M556.2,108.1 L598.4,108.1 M71.9,242.4 L76.4,242.4 L81.0,242.4 L85.5,242.4 L90.0,242.4 L94.5,242.4 
-		L99.1,242.4 L103.6,242.4 L108.1,242.4 L112.6,242.4 L117.2,242.4 L121.7,242.4 L126.2,242.4 L130.7,242.4 
-		L135.3,234.5 L139.8,126.0 L144.3,148.5 L148.8,147.2 L153.4,177.4 L157.9,180.1 L162.4,178.9 L166.9,192.3 
-		L171.5,237.4 L176.0,242.4 L180.5,242.4  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb( 77, 175, 164); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,54.1 L71.9,242.4 L615.0,242.4 L615.0,54.1 L71.9,54.1 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-memory/write.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-memory/write.svg b/content/img/blog/crail-memory/write.svg
deleted file mode 100644
index 342ec71..0000000
--- a/content/img/blog/crail-memory/write.svg
+++ /dev/null
@@ -1,189 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300" 
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 4.6 patchlevel 4 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.222' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.222' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.222' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.222' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.222' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.222' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.222' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-</defs>
-<g style="fill:none; color:white; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,242.4 L631.6,242.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,242.4 L80.9,242.4 M631.6,242.4 L622.6,242.4  h0.01'/>	<g transform="translate(63.6,246.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 0</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,201.1 L631.6,201.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,201.1 L80.9,201.1 M631.6,201.1 L622.6,201.1  h0.01'/>	<g transform="translate(63.6,205.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 20</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,159.9 L631.6,159.9  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,159.9 L80.9,159.9 M631.6,159.9 L622.6,159.9  h0.01'/>	<g transform="translate(63.6,164.4)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 40</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,118.6 L631.6,118.6  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,118.6 L80.9,118.6 M631.6,118.6 L622.6,118.6  h0.01'/>	<g transform="translate(63.6,123.1)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 60</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,77.4 L80.2,77.4 M197.1,77.4 L631.6,77.4  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,77.4 L80.9,77.4 M631.6,77.4 L622.6,77.4  h0.01'/>	<g transform="translate(63.6,81.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 80</text>
-	</g>
-</g>
-<g style="fill:none; color:gray; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='gray' stroke-dasharray=' 2,4' class="gridline"  d='M71.9,36.1 L631.6,36.1  h0.01'/></g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,36.1 L80.9,36.1 M631.6,36.1 L622.6,36.1  h0.01'/>	<g transform="translate(63.6,40.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text> 100</text>
-	</g>
-	<path stroke='black'  d='M105.9,242.4 L105.9,233.4 M105.9,36.1 L105.9,45.1  h0.01'/>	<g transform="translate(105.9,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>128B</text>
-	</g>
-	<path stroke='black'  d='M173.8,242.4 L173.8,233.4 M173.8,36.1 L173.8,45.1  h0.01'/>	<g transform="translate(173.8,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>256B</text>
-	</g>
-	<path stroke='black'  d='M241.8,242.4 L241.8,233.4 M241.8,36.1 L241.8,45.1  h0.01'/>	<g transform="translate(241.8,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>512B</text>
-	</g>
-	<path stroke='black'  d='M309.8,242.4 L309.8,233.4 M309.8,36.1 L309.8,45.1  h0.01'/>	<g transform="translate(309.8,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>1K</text>
-	</g>
-	<path stroke='black'  d='M377.7,242.4 L377.7,233.4 M377.7,36.1 L377.7,45.1  h0.01'/>	<g transform="translate(377.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>128K</text>
-	</g>
-	<path stroke='black'  d='M445.7,242.4 L445.7,233.4 M445.7,36.1 L445.7,45.1  h0.01'/>	<g transform="translate(445.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>256K</text>
-	</g>
-	<path stroke='black'  d='M513.7,242.4 L513.7,233.4 M513.7,36.1 L513.7,45.1  h0.01'/>	<g transform="translate(513.7,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>512K</text>
-	</g>
-	<path stroke='black'  d='M581.6,242.4 L581.6,233.4 M581.6,36.1 L581.6,45.1  h0.01'/>	<g transform="translate(581.6,264.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>1MB</text>
-	</g>
-	<path stroke='black'  d='M71.9,36.1 L71.9,242.4 L631.6,242.4 L631.6,36.1 L71.9,36.1 Z  h0.01'/>	<g transform="translate(17.6,139.3) rotate(270)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Throughput [Gbit/s]</text>
-	</g>
-	<g transform="translate(351.7,291.9)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Buffer size</text>
-	</g>
-	<g transform="translate(351.7,13.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:middle">
-		<text>Single-client (1 core) throughput</text>
-	</g>
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g style="fill:none; color:white; stroke:black; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:red; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(138.3,58.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Crail</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '146.6,58.6 188.8,58.6 188.8,49.6 146.6,49.6 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M146.6,58.6 L188.8,58.6 L188.8,49.6 L146.6,49.6 L146.6,58.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '99.1,242.4 112.8,242.4 112.8,197.7 99.1,197.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M99.1,242.4 L99.1,197.8 L112.7,197.8 L112.7,242.4 L99.1,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '167.1,242.4 180.7,242.4 180.7,164.2 167.1,164.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M167.1,242.4 L167.1,164.3 L180.6,164.3 L180.6,242.4 L167.1,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '235.0,242.4 248.7,242.4 248.7,100.7 235.0,100.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M235.0,242.4 L235.0,100.8 L248.6,100.8 L248.6,242.4 L235.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '303.0,242.4 316.7,242.4 316.7,58.5 303.0,58.5 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M303.0,242.4 L303.0,58.6 L316.6,58.6 L316.6,242.4 L303.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '371.0,242.4 384.6,242.4 384.6,45.7 371.0,45.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M371.0,242.4 L371.0,45.8 L384.5,45.8 L384.5,242.4 L371.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '438.9,242.4 452.6,242.4 452.6,45.2 438.9,45.2 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M438.9,242.4 L438.9,45.3 L452.5,45.3 L452.5,242.4 L438.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '506.9,242.4 520.6,242.4 520.6,46.0 506.9,46.0 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M506.9,242.4 L506.9,46.1 L520.5,46.1 L520.5,242.4 L506.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.900000' points = '574.8,242.4 588.5,242.4 588.5,45.1 574.8,45.1 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M574.8,242.4 L574.8,45.2 L588.4,45.2 L588.4,242.4 L574.8,242.4 Z  h0.01'/></g>
-	</g>
-	<g id="gnuplot_plot_2" ><title>gnuplot_plot_2</title>
-<g style="fill:none; color:green; stroke:currentColor; stroke-width:4.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<g transform="translate(138.3,76.6)" style="stroke:none; fill:black; font-family:Times-Roman; font-size:12.00pt; text-anchor:end">
-		<text>Alluxio</text>
-	</g>
-	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '146.6,76.6 188.8,76.6 188.8,67.6 146.6,67.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M146.6,76.6 L188.8,76.6 L188.8,67.6 L146.6,67.6 L146.6,76.6 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '115.1,242.4 128.8,242.4 128.8,235.2 115.1,235.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M115.1,242.4 L115.1,235.3 L128.7,235.3 L128.7,242.4 L115.1,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '183.0,242.4 196.7,242.4 196.7,231.8 183.0,231.8 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M183.0,242.4 L183.0,231.9 L196.6,231.9 L196.6,242.4 L183.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '251.0,242.4 264.7,242.4 264.7,227.7 251.0,227.7 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M251.0,242.4 L251.0,227.8 L264.6,227.8 L264.6,242.4 L251.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '319.0,242.4 332.6,242.4 332.6,224.6 319.0,224.6 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M319.0,242.4 L319.0,224.7 L332.5,224.7 L332.5,242.4 L319.0,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '386.9,242.4 400.6,242.4 400.6,221.3 386.9,221.3 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M386.9,242.4 L386.9,221.4 L400.5,221.4 L400.5,242.4 L386.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '454.9,242.4 468.6,242.4 468.6,220.2 454.9,220.2 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M454.9,242.4 L454.9,220.3 L468.5,220.3 L468.5,242.4 L454.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '522.9,242.4 536.5,242.4 536.5,221.1 522.9,221.1 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M522.9,242.4 L522.9,221.2 L536.4,221.2 L536.4,242.4 L522.9,242.4 Z  h0.01'/>	<g style = 'stroke:none; shape-rendering:crispEdges'>
-		<polygon fill = 'rgb(255, 127,   0)' fill-opacity = '0.900000' points = '590.8,242.4 604.5,242.4 604.5,217.5 590.8,217.5 '/>
-	</g>
-	<path stroke='rgb(255, 127,   0)'  d='M590.8,242.4 L590.8,217.6 L604.4,217.6 L604.4,242.4 L590.8,242.4 Z  h0.01'/></g>
-	</g>
-<g style="fill:none; color:white; stroke:rgb(255, 127,   0); stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-</g>
-<g style="fill:none; color:black; stroke:currentColor; stroke-width:1.00; stroke-linecap:butt; stroke-linejoin:miter">
-	<path stroke='black'  d='M71.9,36.1 L71.9,242.4 L631.6,242.4 L631.6,36.1 L71.9,36.1 Z  h0.01'/></g>
-</g>
-</svg>
-

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/blog/crail-metadata/max_iops_crail_hdfs_ramcloud.svg
----------------------------------------------------------------------
diff --git a/content/img/blog/crail-metadata/max_iops_crail_hdfs_ramcloud.svg b/content/img/blog/crail-metadata/max_iops_crail_hdfs_ramcloud.svg
deleted file mode 100644
index bb27df2..0000000
--- a/content/img/blog/crail-metadata/max_iops_crail_hdfs_ramcloud.svg
+++ /dev/null
@@ -1,222 +0,0 @@
-<?xml version="1.0" encoding="utf-8"  standalone="no"?>
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
- "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg 
- width="640" height="300"
- viewBox="0 0 640 300"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
->
-
-<title>Gnuplot</title>
-<desc>Produced by GNUPLOT 5.0 patchlevel 3 </desc>
-
-<g id="gnuplot_canvas">
-
-<rect x="0" y="0" width="640" height="300" fill="none"/>
-<defs>
-
-	<circle id='gpDot' r='0.5' stroke-width='0.5'/>
-	<path id='gpPt0' stroke-width='0.167' stroke='currentColor' d='M-1,0 h2 M0,-1 v2'/>
-	<path id='gpPt1' stroke-width='0.167' stroke='currentColor' d='M-1,-1 L1,1 M1,-1 L-1,1'/>
-	<path id='gpPt2' stroke-width='0.167' stroke='currentColor' d='M-1,0 L1,0 M0,-1 L0,1 M-1,-1 L1,1 M-1,1 L1,-1'/>
-	<rect id='gpPt3' stroke-width='0.167' stroke='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<rect id='gpPt4' stroke-width='0.167' stroke='currentColor' fill='currentColor' x='-1' y='-1' width='2' height='2'/>
-	<circle id='gpPt5' stroke-width='0.167' stroke='currentColor' cx='0' cy='0' r='1'/>
-	<use xlink:href='#gpPt5' id='gpPt6' fill='currentColor' stroke='none'/>
-	<path id='gpPt7' stroke-width='0.167' stroke='currentColor' d='M0,-1.33 L-1.33,0.67 L1.33,0.67 z'/>
-	<use xlink:href='#gpPt7' id='gpPt8' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt7' id='gpPt9' stroke='currentColor' transform='rotate(180)'/>
-	<use xlink:href='#gpPt9' id='gpPt10' fill='currentColor' stroke='none'/>
-	<use xlink:href='#gpPt3' id='gpPt11' stroke='currentColor' transform='rotate(45)'/>
-	<use xlink:href='#gpPt11' id='gpPt12' fill='currentColor' stroke='none'/>
-	<path id='gpPt13' stroke-width='0.167' stroke='currentColor' d='M0,1.330 L1.265,0.411 L0.782,-1.067 L-0.782,-1.076 L-1.265,0.411 z'/>
-	<use xlink:href='#gpPt13' id='gpPt14' fill='currentColor' stroke='none'/>
-	<filter id='textbox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='white' flood-opacity='1' result='bgnd'/>
-	  <feComposite in='SourceGraphic' in2='bgnd' operator='atop'/>
-	</filter>
-	<filter id='greybox' filterUnits='objectBoundingBox' x='0' y='0' height='1' width='1'>
-	  <feFlood flood-color='lightgrey' flood-opacity='1' result='grey'/>
-	  <feComposite in='SourceGraphic' in2='grey' operator='atop'/>
-	</filter>
-</defs>
-<g fill="none" color="white" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,223.2 L606.3,223.2  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,223.2 L131.2,223.2 M606.3,223.2 L594.3,223.2  '/>	<g transform="translate(108.0,229.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 0</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,203.1 L606.3,203.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,203.1 L125.2,203.1 M606.3,203.1 L600.3,203.1  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,183.1 L606.3,183.1  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,183.1 L131.2,183.1 M606.3,183.1 L594.3,183.1  '/>	<g transform="translate(108.0,189.1)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 2000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,163.0 L606.3,163.0  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,163.0 L125.2,163.0 M606.3,163.0 L600.3,163.0  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,142.9 L606.3,142.9  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,142.9 L131.2,142.9 M606.3,142.9 L594.3,142.9  '/>	<g transform="translate(108.0,148.9)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 4000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,122.8 L606.3,122.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,122.8 L125.2,122.8 M606.3,122.8 L600.3,122.8  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,102.8 L606.3,102.8  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,102.8 L131.2,102.8 M606.3,102.8 L594.3,102.8  '/>	<g transform="translate(108.0,108.8)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 6000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,82.7 L606.3,82.7  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,82.7 L125.2,82.7 M606.3,82.7 L600.3,82.7  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,62.6 L606.3,62.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,62.6 L131.2,62.6 M606.3,62.6 L594.3,62.6  '/>	<g transform="translate(108.0,68.6)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 8000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,42.6 L606.3,42.6  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,42.6 L125.2,42.6 M606.3,42.6 L600.3,42.6  '/></g>
-<g fill="none" color="black" stroke="black" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="gray" stroke="currentColor" stroke-width="0.50" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='gray' stroke-dasharray='2,4' class="gridline"  d='M119.2,22.5 L606.3,22.5  '/></g>
-<g fill="none" color="gray" stroke="gray" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,22.5 L131.2,22.5 M606.3,22.5 L594.3,22.5  '/>	<g transform="translate(108.0,28.5)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="end">
-		<text><tspan font-family="Times-Roman" > 10000</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M241.0,223.2 L241.0,211.2 M241.0,22.5 L241.0,34.5  '/>	<g transform="translate(241.0,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Crail</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M362.8,223.2 L362.8,211.2 M362.8,22.5 L362.8,34.5  '/>	<g transform="translate(362.8,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >HDFS</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M484.5,223.2 L484.5,211.2 M484.5,22.5 L484.5,34.5  '/>	<g transform="translate(484.5,253.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >RAMCloud</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,22.5 L119.2,223.2 L606.3,223.2 L606.3,22.5 L119.2,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(23.6,122.9) rotate(270)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >IOPS [k]</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g transform="translate(362.7,289.2)" stroke="none" fill="black" font-family="Times-Roman" font-size="16.00"  text-anchor="middle">
-		<text><tspan font-family="Times-Roman" >Systems</tspan></text>
-	</g>
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-	<g id="gnuplot_plot_1" ><title>gnuplot_plot_1</title>
-<g fill="none" color="white" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="3.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.100000' points = '210.5,223.2 271.5,223.2 271.5,28.9 210.5,28.9 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M210.5,223.2 L210.5,29.0 L271.4,29.0 L271.4,223.2 L210.5,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.100000' points = '332.3,223.2 393.3,223.2 393.3,219.3 332.3,219.3 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M332.3,223.2 L332.3,219.4 L393.2,219.4 L393.2,223.2 L332.3,223.2 Z  '/>	<g stroke='none' shape-rendering='crispEdges'>
-		<polygon fill = 'rgb( 77, 175, 164)' fill-opacity = '0.100000' points = '454.1,223.2 515.1,223.2 515.1,200.7 454.1,200.7 '/>
-	</g>
-	<path stroke='rgb( 77, 175, 164)'  d='M454.1,223.2 L454.1,200.8 L515.0,200.8 L515.0,223.2 L454.1,223.2 Z  '/></g>
-	</g>
-<g fill="none" color="white" stroke="rgb( 77, 175, 164)" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="2.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="black" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-	<path stroke='black'  d='M119.2,22.5 L119.2,223.2 L606.3,223.2 L606.3,22.5 L119.2,22.5 Z  '/></g>
-<g fill="none" color="black" stroke="currentColor" stroke-width="1.00" stroke-linecap="butt" stroke-linejoin="miter">
-</g>
-</g>
-</svg>
-


[10/14] incubator-crail-website git commit: Publishing from 35e89b59d63a1c2922524287d8f43c83cbf6288d

Posted by pe...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/css/group.css
----------------------------------------------------------------------
diff --git a/content/css/group.css b/content/css/group.css
deleted file mode 100644
index b03d722..0000000
--- a/content/css/group.css
+++ /dev/null
@@ -1,215 +0,0 @@
-/* Space out content a bit */
- html {
-    overflow:scroll;    
-} 
-
-body {
-  padding-top: 20px;
-  padding-bottom: 20px;
-}
-
-/* Everything but the jumbotron gets side spacing for mobile first views */
-.header,
-.footer {
-  padding-left: 15px;
-  padding-right: 15px;
-}
-
-/* Custom page header */
-.header {
-  border-bottom: 1px solid #e5e5e5;
-}
-
-/* Custom page footer */
-.footer {
-  padding-top: 19px;
-  color: #777;
-  border-top: 1px solid #e5e5e5;
-  text-align: center;
-  font-size: 0.8em;
-  clear: both;
-}
-.footer p {
-  margin: 0.1em 0;
-}
-.footer a:link, .footer a:visited {
-  color: #777;
-}
-
-/* Customize container */
-@media (min-width: 768px) {
-  .container {
-    max-width: 767px;
-  }
-}
-.container-narrow > hr {
-  margin: 30px 0;
-}
-
-/* Jumbotron */
-.jumbotron {
-  text-align: center;
-  border-bottom: 1px solid #e5e5e5;
-}
-.jumbotron p {
-    font-size: 15px;
-}
-.jumbotron {
-    padding-top: 18px;
-    padding-bottom: 10px;
-}
-
-/* Group logo */
-#logo {
-    height: 35px;
-    margin: 2px 0 8px 0;
-}
-
-/* Responsive: Portrait tablets and up */
-@media screen and (min-width: 768px) {
-  /* Remove the padding we set earlier */
-  .header,
-  .footer {
-    clear: both;
-    padding-left: 0;
-    padding-right: 0;
-  }
-  /* Space out the masthead */
-  .header {
-    margin-bottom: 30px;
-  }
-  /* Remove the bottom border on the jumbotron for visual effect */
-  .jumbotron {
-    border-bottom: 0;
-  }
-}
-
-/* Slightly better-looking header on mobile. */
-@media screen and (max-width: 767px) {
-    .nav-pills {
-        display: block;
-        margin: 0 auto 1em;
-    }
-    #logo {
-        display: block;
-        clear: both;
-        margin: 1em auto;
-    }
-}
-
-/* Photo */
-.inset-image {
-    width: 60%;
-    margin: 0 auto;
-}
-
-/* People list */
-
-dl.people dl {
-  width: 100%;
-  clear: both;
-  overflow: hidden; 
-  margin: 0;
-}
-
-dl.people dt {
-  clear: both;
-  float: left;
-  content: " ";
-  width: 15%;
-  margin-bottom: 2em;
-  margin: 0;
-}
-
-dl.people dd {
-  width: 85%; 
-  min-height: 6.5em;
-  margin-bottom: 1em;
-}
-
-
-
-/* Front page news. */
-ul.news .date {
-    color: #999;
-    font-weight: bold;
-    display: block;
-}
-ul.news > li {
-    margin-top: 1em;
-}
-ul.news .shortnews .date {
-    float: left;
-    margin-right: 1em;
-}
-ul.news .bloglink a {
-    font-size: 1.4em;
-}
-
-.illustration {
-    float: right;
-    margin: 0 0 1em 1em;
-}
-
-ul.double-col {
-   columns: 2;
-  -webkit-columns: 2;
-  -moz-columns: 2;
-   overflow:hidden;
-   width: 800px;
-}
-
-div.bio {
-    margin: 0 0 1em 1em;
-}
-
-ul.double-col li {
-    clear: both;
-    height: auto;
-    display: inline;
-    vertical-align: middle;
-    width: 100%;
-    margin: .5rem 0rem;
-    float: left;
-}
-
-.col-md-8 {
-}
-
-.col-md-4 {
-}
-
-table tr:nth-child(odd) {
-    background-color: #FFFFFF;
-}
-
-table tr:nth-child(even) {
-    background-color: #F5F5F5;
-}
-
-table tr:first-child th {
-  border-top: 1;
-}
-
-table tr:last-child td {
-  border-bottom: 1;
-}
-
-table tr td:first-child, table tr th:first-child {
-  border-left: 1;
-}
-
-table tr td:last-child, table tr th:last-child {
-  border-right: 1;
-}
-table, th {
-    background-color: #F5F5F5;
-    border-color: lightgrey;
-}
-
-th, td {
-    border: 0.75px solid grey;
-    padding: 7px;
-    line-height: 24px;
-    border-color: lightgrey;
-}

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/css/print.css
----------------------------------------------------------------------
diff --git a/content/css/print.css b/content/css/print.css
deleted file mode 100644
index e95929e..0000000
--- a/content/css/print.css
+++ /dev/null
@@ -1,36 +0,0 @@
-.container {
-    -moz-column-count: 2;
-    -webkit-column-count: 2;
-    column-count: 2;
-
-    font-size: 0.8em;
-}
-
-.header {
-    display: none;
-}
-
-h2 {
-    font-size: 1.3em;
-    margin: 0;
-}
-h3 {
-    font-size: 1.2em;
-    margin-top: 0;
-}
-
-.noprint {
-    display: none;
-}
-
-body {
-    padding: -2em 0 0 0;
-}
-
-/* Disable Bootstrap's link display. */
-@media print {
-    a:link:after,
-    a:visited:after {
-        content: "" !important;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/documentation/index.html
----------------------------------------------------------------------
diff --git a/content/documentation/index.html b/content/documentation/index.html
deleted file mode 100644
index 68ee8c8..0000000
--- a/content/documentation/index.html
+++ /dev/null
@@ -1,358 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <meta charset="utf-8">
-        <title>The Apache Crail (Incubating) Project: Documentation</title>
-        <meta name="viewport" content="width=device-width, initial-scale=1.0">
-        <link href="http://crail.incubator.apache.org/css/bootstrap.min.css" rel="stylesheet">
-        <link href="http://crail.incubator.apache.org/css/group.css" rel="stylesheet">
-        <link rel="alternate" type="application/atom+xml" title="Atom"
-            href="http://crail.incubator.apache.org/blog/blog.xml">
-        
-        <meta property="og:image" content="http://crail.incubator.apache.org/img/blog/preview/documentation-summary.png" />
-        <meta property="og:image:secure_url" content="http://crail.incubator.apache.org/img/blog/preview/documentation-summary.png" />
-    </head>
-
-    <body>
-        <div class="container">
-          <div class="header">
-            <ul class="nav nav-pills pull-right">
-              
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/">
-                    Home
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/overview/">
-                    Overview
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/blog/">
-                    Blog
-                  </a>
-                </li>
-              
-                
-                <li >
-                  <a href="http://crail.incubator.apache.org/community/">
-                    Community
-                  </a>
-                </li>
-              
-                
-                <li class="active">
-                  <a href="http://crail.incubator.apache.org/documentation/">
-                    Documentation
-                  </a>
-                </li>
-              
-            </ul>
-            <a href="http://crail.incubator.apache.org/">
-                <img src="http://crail.incubator.apache.org/img/crail_logo.png"
-                    srcset="http://crail.incubator.apache.org/img/crail_logo.png"
-                    alt="Crail" id="logo">
-            </a>
-          </div>
-
-          
-          
-          <h2>Documentation</h2>   
-          
-
-          <p>Apache Crail (Incubating) is a fast multi-tiered distributed storage system designed from ground up for high-performance network and storage hardware. The unique features of Crail include:</p>
-
-<ul>
-  <li>Zero-copy network access from userspace</li>
-  <li>Integration of multiple storage tiers such DRAM, flash and disaggregated shared storage</li>
-  <li>Ultra-low latencies for both meta data and data operations. For instance: opening, reading and closing a small file residing in the distributed DRAM tier less than 10 microseconds, which is in the same ballpark as some of the fastest RDMA-based key/value stores</li>
-  <li>High-performance sequential read/write operations: For instance: read operations on large files residing in the distributed DRAM tier are typically limited only by the performance of the network</li>
-  <li>Very low CPU consumption: a single core sharing both application and file system client can drive sequential read/write operations at the speed of up to 100Gbps and more</li>
-  <li>Asynchronous API leveraging the asynchronous nature of RDMA-based networking hardware</li>
-  <li>Extensible plugin architecture: new storage tiers tailored to specific hardware can be added easily</li>
-</ul>
-
-<p>Crail is implemented in Java offering a Java API which integrates directly with the Java off-heap memory. Crail is designed for performance critical temporary data within a scope of a rack or two.</p>
-
-<h2 id="requirements">Requirements</h2>
-
-<ul>
-  <li>Java 8 or higher</li>
-  <li>RDMA-based network, e.g., Infiniband, iWARP, RoCE. There are two options to run Crail without RDMA networking hardware: (a) use SoftiWARP, (b) us the TCP/DRAM storage tier</li>
-  <li>Libdisni.so, available as part of <a href="https://github.com/zrlio/disni">DiSNI</a></li>
-</ul>
-
-<h2 id="building">Building</h2>
-
-<p>To build Crail from source using <a href="http://maven.apache.org/">Apache Maven</a> execute the following steps:</p>
-
-<ol>
-  <li>Obtain a copy of <a href="https://github.com/apache/incubator-crail">Crail</a> from Github</li>
-  <li>Run: mvn -DskipTests install</li>
-  <li>Copy tarball to the cluster and unpack it using tar xvfz crail-1.0-bin.tar.gz</li>
-</ol>
-
-<p>Note: later, when deploying Crail, make sure libdisni.so is part of your LD_LIBRARY_PATH. The easiest way to make it work is to copy libdisni.so into crail-1.0/lib</p>
-
-<h2 id="configuration">Configuration</h2>
-
-<p>To configure Crail use crail-site.conf.template as a basis and modify it to match your environment.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cd crail-1.0/conf
-mv crail-site.conf.template crail-site.conf
-</code></pre></div></div>
-
-<p>There are a general file system properties and specific properties for the different storage tiers. A typical configuration for the general file system section may look as follows:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.namenode.address                crail://namenode:9060
-crail.storage.types                   org.apache.crail.storage.rdma.RdmaStorageTier
-crail.cachepath                       /dev/hugepages/cache
-crail.cachelimit                      12884901888
-crail.blocksize                       1048576
-crail.buffersize                      1048576
-</code></pre></div></div>
-
-<p>In this configuration the namenode is configured to run using port 9060 on host ‘namenode’, which must be a valid host in the cluster. We further configure a single storage tier, in this case the RDMA-based DRAM tier. The cachepath property needs to point to a directory that is used by the file system to allocate memory for the client cache. Up to cachelimit size, all the memory that is used by Crail will be allocated via mmap from this location. Ideally, the directory specified in cachepath points to a hugetlbfs mountpoint. Aside from the general properties, each storage tier needs to be configured separately.</p>
-
-<h3 id="rdmadram-storage">RDMA/DRAM Storage</h3>
-
-<p>For the RDMA/DRAM tier we need to specify the interface that should be used by the storage nodes.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.storage.rdma.interface         eth0
-</code></pre></div></div>
-
-<p>The datapath property specifies a path from which the storage nodes will allocate blocks of memory via mmap. Again, that path best points to a hugetlbfs mountpoint.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.storage.rdma.datapath          /memory/data
-</code></pre></div></div>
-
-<p>You want to specify how much DRAM each datanode should donate into the file system pool using the <code class="highlighter-rouge">storagelimit</code> property. DRAM is allocated in chunks of <code class="highlighter-rouge">allocationsize</code>, which needs to be a multiple of <code class="highlighter-rouge">crail.blocksize</code>.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.storage.rdma.allocationsize    1073741824
-crail.storage.rdma.storagelimit      75161927680
-</code></pre></div></div>
-
-<p>Crail supports optimized local operations via memcpy (instead of RDMA) in case a given file operation is backed by a local storage node. The indexpath specifies where Crail will store the necessary metadata that make these optimizations possible. Important: the indexpath must NOT point to a hugetlbfs mountpoint because index files will be updated which not possible in hugetlbfs.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.storage.rdma.localmap          true
-crail.storage.rdma.indexpath         /index
-</code></pre></div></div>
-
-<h3 id="nvmfflash-storage">NVMf/Flash Storage</h3>
-
-<p>Crail is a multi-tiered storage system. Additinoal tiers can be enabled by adding them to the configuration as follows.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.storage.types                  org.apache.crail.storage.rdma.RdmaStorageTier,org.apache.crail.storage.nvmf.NvmfStorageTier
-</code></pre></div></div>
-
-<p>For the NVMf storage tier we need to configure the server IP that is used when listening for new connections. We also need to configure the PCI address of the flash device we want to use, as well as the huge page mount point to be used for allocating memory.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.storage.nvmf.bindip           10.40.0.XX
-crail.storage.nvmf.pcieaddr         0000:11:00.0
-crail.storage.nvmf.hugedir          /dev/hugepages
-crail.storage.nvmf.servermempool    512
-crail.storage.nvmf.clientmempool    512
-</code></pre></div></div>
-
-<h2 id="deploying">Deploying</h2>
-
-<p>For all deployments, make sure you define CRAIL_HOME on each machine to point to the top level Crail directory.</p>
-
-<h3 id="starting-crail-manually">Starting Crail manually</h3>
-
-<p>The simplest way to run Crail is to start it manually on just a handful nodes. You will need to start the Crail namenode, plus at least one datanode. To start the namenode execute the following command on the host that is configured to be the namenode:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cd crail-1.0/
-./bin/crail namenode
-</code></pre></div></div>
-
-<p>To start a datanode run the following command on a host in the cluster (ideally this is a different physical machine than the one running the namenode):</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail datanode
-</code></pre></div></div>
-
-<p>Now you should have a small deployment up with just one datanode. In this case the datanode is of type RDMA/DRAM, which is the default datnode. If you want to start a different storage tier you can do so by passing a specific datanode class as follows:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail datanode -t org.apache.crail.storage.nvmf.NvmfStorageTier
-</code></pre></div></div>
-
-<p>This would start the shared storage datanode. Note that configuration in crail-site.conf needs to have the specific properties set of this type of datanode, in order for this to work.</p>
-
-<h3 id="larger-deployments">Larger deployments</h3>
-
-<p>To run larger deployments start Crail using</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/start-crail.sh
-</code></pre></div></div>
-
-<p>Similarly, Crail can be stopped by using</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/stop-crail.sh
-</code></pre></div></div>
-
-<p>For this to work include the list of machines to start datanodes in conf/slaves. You can start multiple datanode of different types on the same host as follows:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>host02-ib
-host02-ib -t org.apache.crail.storage.nvmf.NvmfStorageTier
-host03-ib
-</code></pre></div></div>
-
-<p>In this example, we are configuring a Crail cluster with 2 physical hosts but 3 datanodes and two different storage tiers.</p>
-
-<h2 id="crail-shell">Crail Shell</h2>
-
-<p>Crail provides an contains an HDFS adaptor, thus, you can interact with Crail using the HDFS shell:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail fs
-</code></pre></div></div>
-
-<p>Crail, however, does not implement the full HDFS shell functionality. The basic commands to copy file to/from Crail, or to move and delete files, will work.</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail fs -mkdir /test
-./bin/crail fs -ls /
-./bin/crail fs -copyFromLocal &lt;path-to-local-file&gt; /test
-./bin/crail fs -cat /test/&lt;file-name&gt;
-</code></pre></div></div>
-
-<p>For the Crail shell to work properly, the HDFS configuration in crail-1.0/conf/core-site.xml needs to be configured accordingly:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>&lt;configuration&gt;
-  &lt;property&gt;
-   &lt;name&gt;fs.crail.impl&lt;/name&gt;
-   &lt;value&gt;org.apache.crail.hdfs.CrailHadoopFileSystem&lt;/value&gt;
-  &lt;/property&gt;
-  &lt;property&gt;
-    &lt;name&gt;fs.defaultFS&lt;/name&gt;
-    &lt;value&gt;crail://namenode:9060&lt;/value&gt;
-  &lt;/property&gt;
-  &lt;property&gt;
-    &lt;name&gt;fs.AbstractFileSystem.crail.impl&lt;/name&gt;
-    &lt;value&gt;org.apache.crail.hdfs.CrailHDFS&lt;/value&gt;
-  &lt;/property&gt;
- &lt;/configuration&gt;
-</code></pre></div></div>
-
-<p>Note that the Crail HDFS interface currently cannot provide the full performance of Crail due to limitations of the HDFS API. In particular, the HDFS <code class="highlighter-rouge">FSDataOutputStream</code> API only support heap-based <code class="highlighter-rouge">byte[]</code> arrays which requires a data copy. Moreover, HDFS operations are synchronous preventing efficient pipelining of operations. Instead, applications that seek the best performance should use the Crail interface directly, as shown next.</p>
-
-<h2 id="programming-against-crail">Programming against Crail</h2>
-
-<p>The best way to program against Crail is to use Maven. Make sure you have the Crail dependency specified in your application pom.xml file:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>&lt;dependency&gt;
-  &lt;groupId&gt;org.apache.crail&lt;/groupId&gt;
-  &lt;artifactId&gt;crail-client&lt;/artifactId&gt;
-  &lt;version&gt;1.0&lt;/version&gt;
-&lt;/dependency&gt;
-</code></pre></div></div>
-
-<p>Then, create a Crail client as follows:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>CrailConfiguration conf = new CrailConfiguration();
-CrailStore store = CrailStore.newInstance(conf);
-</code></pre></div></div>
-
-<p>Make sure the crail-1.0/conf directory is part of the classpath.</p>
-
-<p>Crail supports different file types. The simplest way to create a file in Crail is as follows:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>CrailFile file = store.create(filename, CrailNodeType.DATAFILE, CrailStorageClass.DEFAULT, CrailLocationClass.DEFAULT).get().syncDir();
-</code></pre></div></div>
-
-<p>Aside from the actual filename, the ‘create()’ call takes as input the storage and location classes which are preferences for the storage tier and physical location that this file should be created in. Crail tries to satisfy these preferences later when the file is written. In the example we do not request any particular storage or location affinity.</p>
-
-<p>This ‘create()’ command is non-blocking, calling ‘get()’ on the returning future object awaits the completion of the call. At that time, the file has been created, but its directory entry may not be visible. Therefore, the file may not yet show up in a file enumeration of the given parent directory. Calling ‘syncDir()’ waits to for the directory entry to be completed. Both the ‘get()’ and the ‘syncDir()’ operation can be deffered to a later time at which they may become non-blocking operations.</p>
-
-<p>Once the file is created, a file stream can be obtained for writing:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>CrailBufferedOutputStream outstream = file.getBufferedOutputStream(1024);	
-</code></pre></div></div>
-
-<p>Here, we create a buffered stream so that we can pass heap byte arrays as well. We could also create a non-buffered stream using</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>CrailOutputStream outstream = file.getDirectOutputStream(1024);
-</code></pre></div></div>
-
-<p>In both cases, we pass a write hint (1024 in the example) that indicates to Crail how much data we are intending to write. This allows Crail to optimize metadatanode lookups. Crail never prefetches data, but it may fetch the metadata of the very next operation concurrently with the current data operation if the write hint allows to do so.</p>
-
-<p>Once the stream has been obtained, there exist various ways to write a file. The code snippet below shows the use of the asynchronous interface:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>CrailBuffer dataBuf = fs.allocateBuffer();
-Future&lt;DataResult&gt; future = outputStream.write(dataBuf);
-...
-future.get();
-</code></pre></div></div>
-
-<p>Reading files works very similar to writing. There exist various examples in org.apache.crail.tools.CrailBenchmark.</p>
-
-<h2 id="tcp-storage-tiers-and-rpc-binding">TCP Storage Tiers and RPC binding</h2>
-
-<p>Crail is designed for user-level networking and storage. It does, however, also provide plain TCP-based storage backends for storage and RPC and, thus, can be run easily on any machine without requiring spspecial hardware support. The TCP storage backend can be enabled as follows:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.storage.types		org.apache.crail.storage.tcp.TcpStorageTier
-</code></pre></div></div>
-
-<p>The TCP RPC binding can be enabled as follows:</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>crail.namenode.rpctype	org.apache.crail.namenode.rpc.tcp.TcpNameNode
-</code></pre></div></div>
-
-<h2 id="benchmarks">Benchmarks</h2>
-
-<p>Crail provides a set of benchmark tools to measure the performance. Type</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench
-</code></pre></div></div>
-
-<p>to get an overview of the available benchmarks. For instance, to benchmark the sequential write performance, type</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t write -s 1048576 -k 102400 -f /tmp.dat
-</code></pre></div></div>
-
-<p>This will create a file of size 100G, written sequentially in a sequence of 1MB operations.</p>
-
-<p>To read a file sequentially, type</p>
-
-<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>./bin/crail iobench -t read -s 1048576 -k 102400 -f /tmp.dat
-</code></pre></div></div>
-
-<p>This command issues 102400 read operations of 1MB each.</p>
-
-<p>The tool also contains benchmarks to read files randomly, or to measure the performance of opening files, etc.</p>
-
-<h2 id="applications">Applications</h2>
-
-<p>Crail is used by <a href="https://github.com/zrlio/crail-spark-io">Crail-Spark-IO</a>, a high-performance shuffle engine for Spark. <a href="https://github.com/zrlio/crail-terasort">Crail-Terasort</a> is a fast sorting benchmark for Spark based on Crail.</p>
-
-<h2 id="contributions">Contributions</h2>
-
-<p>PRs are always welcome. Please fork, and make necessary modifications 
-you propose, and let us know.</p>
-
-<h2 id="contact">Contact</h2>
-
-<p>Please join the Crail developer mailing list for discussions and notifications. The list is at:</p>
-
-<p>dev@crail.incubator.apache.org.</p>
-
-
-        <br>
-	<br> 
-          <div class="footer">
-            <p>Apache Crail is an effort undergoing <a href="https://incubator.apache.org/">incubation</a> at <a href="https://www.apache.org/">The Apache Software Foundation (ASF)</a>, sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
-            </p>
-          </div>
-
-        </div> <!-- /container -->
-
-        <!-- Support retina images. -->
-        <script type="text/javascript"
-            src="http://crail.incubator.apache.org/js/srcset-polyfill.js"></script>
-    </body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/feed.xml
----------------------------------------------------------------------
diff --git a/content/feed.xml b/content/feed.xml
index 9ec960d..247c017 100644
--- a/content/feed.xml
+++ b/content/feed.xml
@@ -1,670 +1 @@
-<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.6.2">Jekyll</generator><link href="http://crail.incubator.apache.org//feed.xml" rel="self" type="application/atom+xml" /><link href="http://crail.incubator.apache.org//" rel="alternate" type="text/html" /><updated>2018-06-05T11:03:53+02:00</updated><id>http://crail.incubator.apache.org//</id><title type="html">The Apache Crail (Incubating) Project</title><entry><title type="html">Sparksummit</title><link href="http://crail.incubator.apache.org//blog/2018/06/sparksummit.html" rel="alternate" type="text/html" title="Sparksummit" /><published>2018-06-05T00:00:00+02:00</published><updated>2018-06-05T00:00:00+02:00</updated><id>http://crail.incubator.apache.org//blog/2018/06/sparksummit</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2018/06/sparksummit.html">&lt;p&gt;A Spark serverless architecture powered by Crail will be presente
 d today at the &lt;a href=&quot;https://databricks.com/session/serverless-machine-learning-on-modern-hardware-using-apache-spark&quot;&gt;Spark Summit&lt;/a&gt;&lt;/p&gt;</content><author><name></name></author><category term="news" /><summary type="html">A Spark serverless architecture powered by Crail will be presented today at the Spark Summit</summary></entry><entry><title type="html">Dataworks</title><link href="http://crail.incubator.apache.org//blog/2018/06/dataworks.html" rel="alternate" type="text/html" title="Dataworks" /><published>2018-06-05T00:00:00+02:00</published><updated>2018-06-05T00:00:00+02:00</updated><id>http://crail.incubator.apache.org//blog/2018/06/dataworks</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2018/06/dataworks.html">&lt;p&gt;Apache Crail (incubating) to feature in the &lt;a href=&quot;https://dataworkssummit.com/san-jose-2018/session/data-processing-at-the-speed-of-100-gbpsapache-crail-incubating/&quot;&gt;DataWorks Sum
 mit&lt;/a&gt; on June 21st&lt;/p&gt;</content><author><name></name></author><category term="news" /><summary type="html">Apache Crail (incubating) to feature in the DataWorks Summit on June 21st</summary></entry><entry><title type="html">Apache Release</title><link href="http://crail.incubator.apache.org//blog/2018/06/apache-release.html" rel="alternate" type="text/html" title="Apache Release" /><published>2018-06-04T00:00:00+02:00</published><updated>2018-06-04T00:00:00+02:00</updated><id>http://crail.incubator.apache.org//blog/2018/06/apache-release</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2018/06/apache-release.html">&lt;p&gt;Apache Crail 1.0 incubator &lt;a href=&quot;https://dist.apache.org/repos/dist/release/incubator/crail/1.0-incubating/&quot;&gt;release&lt;/a&gt;&lt;/p&gt;</content><author><name></name></author><category term="news" /><summary type="html">Apache Crail 1.0 incubator release</summary></entry><entry><title type="html">Apache</
 title><link href="http://crail.incubator.apache.org//blog/2018/01/apache.html" rel="alternate" type="text/html" title="Apache" /><published>2018-01-22T00:00:00+01:00</published><updated>2018-01-22T00:00:00+01:00</updated><id>http://crail.incubator.apache.org//blog/2018/01/apache</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2018/01/apache.html">&lt;p&gt;Crail is now an Apache Incubator project!&lt;/p&gt;</content><author><name></name></author><category term="news" /><summary type="html">Crail is now an Apache Incubator project!</summary></entry><entry><title type="html">Iops</title><link href="http://crail.incubator.apache.org//blog/2017/11/iops.html" rel="alternate" type="text/html" title="Iops" /><published>2017-11-23T00:00:00+01:00</published><updated>2017-11-23T00:00:00+01:00</updated><id>http://crail.incubator.apache.org//blog/2017/11/iops</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2017/11/iops.html">&lt;p&gt;New blog
  &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/11/crail-metadata.html&quot;&gt;post&lt;/a&gt; about Crail’s metadata performance and scalability&lt;/p&gt;</content><author><name></name></author><category term="news" /><summary type="html">New blog post about Crail’s metadata performance and scalability</summary></entry><entry><title type="html">Crail Storage Performance – Part III: Metadata</title><link href="http://crail.incubator.apache.org//blog/2017/11/crail-metadata.html" rel="alternate" type="text/html" title="Crail Storage Performance -- Part III: Metadata" /><published>2017-11-21T00:00:00+01:00</published><updated>2017-11-21T00:00:00+01:00</updated><id>http://crail.incubator.apache.org//blog/2017/11/crail-metadata</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2017/11/crail-metadata.html">&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-This is part III of our series of posts discussing Crail's raw storage performance. This part is about Crail's metadata performance and scalability.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;hardware-configuration&quot;&gt;Hardware Configuration&lt;/h3&gt;
-
-&lt;p&gt;The specific cluster configuration used for the experiments in this blog:&lt;/p&gt;
-
-&lt;ul&gt;
-  &lt;li&gt;Cluster
-    &lt;ul&gt;
-      &lt;li&gt;8 node x86_64 cluster&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-  &lt;li&gt;Node configuration
-    &lt;ul&gt;
-      &lt;li&gt;CPU: 2 x Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz&lt;/li&gt;
-      &lt;li&gt;DRAM: 96GB DDR3&lt;/li&gt;
-      &lt;li&gt;Network: 1x100Gbit/s Mellanox ConnectX-5&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-  &lt;li&gt;Software
-    &lt;ul&gt;
-      &lt;li&gt;Ubuntu 16.04.3 LTS (Xenial Xerus) with Linux kernel version 4.10.0-33-generic&lt;/li&gt;
-      &lt;li&gt;Crail 1.0, internal version 2993&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-&lt;/ul&gt;
-
-&lt;h3 id=&quot;crail-metadata-operation-overview&quot;&gt;Crail Metadata Operation Overview&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-As described in &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/08/crail-memory.html&quot;&gt;part I&lt;/a&gt;, Crail data operations are composed of actual data transfers and metadata operations. Examples of metadata operations are operations for creating or modifying the state of a file, or operations to lookup the storage server that stores a particular range (block) of a file. In Crail, all the metadata is managed by the namenode(s) (as opposed to the data which is managed by the storage nodes). Clients interact with Crail namenodes via Remote Procedure Calls (RPCs). Crail supports multiple RPC protocols for different types of networks and also offers a pluggable RPC interface so that new RPC bindings can be implemented easily. On RDMA networks, the default DaRPC (&lt;a href=&quot;https://dl.acm.org/citation.cfm?id=2670994&quot;&gt;DaRPC paper&lt;/a&gt;, &lt;a href=&quot;http://github.com/zrlio/darpc&quot;&gt;DaRPC GitHub&lt;/a&gt;) based RPC binding provides the be
 st performance. The figure below gives an overview of the Crail metadata processing in a DaRPC configuration. 
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-metadata/rpc.png&quot; width=&quot;480&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Crail supports partitioning of metadata across several namenods. Thereby, metadata operations issued by clients are hashed to a particular namenode depending on the name of object the operation attempts to create or retrieve. With the DaRPC binding, RPC messages are exchanged using RDMA send/recv operations. At the server, RPC processing is parallelized across different cores. To minimize locking and cache contention, each core handles a disjoint set of client connections. Connections assigned to the same core share the same RDMA completion queue which is processed exclusively by that given core. All the network queues, including send-, recv- and completion queues are mapped into user-space and accessed directly from within the JVM process. Since Crail offers a hierarchical storage namespace, metadata operations to create, delete or rename new storage resources effectively result in modifications to a tree-like data structure at the namenode. These structural operations require a so
 mewhat more expensive locking than the more lightweight operations used to lookup the file status or to extend a file with a new storage block. Consequently, Crail namenodes use two separate data structures to manage metadata: (a) a basic tree data structure that requires directory-based locking, and (b) a fast lock-free map to lookup of storage resources that are currently being read or written.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;experimental-setup&quot;&gt;Experimental Setup&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-In two of the previous blogs (&lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/08/crail-memory.html&quot;&gt;DRAM&lt;/a&gt;, &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/08/crail-nvme-fabrics-v1.html&quot;&gt;NVMf&lt;/a&gt;) we have already shown that Crail metadata operations are very low latency. Essentially a single metadata operation issued by a remote client takes 5-6 microseconds, which is only slightly more than the raw network latency of the RDMA network fabric. In this blog, we want to explore the scalability of Crail's metadata management, that is, the number of clients Crail can support, or how Crail scales as the cluster size increases. The level of scalability of Crail is mainly determined by the number of metadata operations Crail can process concurrently, a metric that is often referred to as IOPS. The higher the number of IOPS the system can handle, the more clients can concurrently use Crail without performance loss. 
-&lt;/p&gt;
-&lt;p&gt;
-An important metadata operation is ''getFile()'', which is used by clients to lookup the status of a file (whether the file exists, what size it has, etc.). The ''getFile()'' operation is served by Crail's fast lock-free map and in spirit is very similar to the ''getBlock()'' metadata operation (used by clients to query which storage nodes holds a particular block). In a typical Crail use case, ''getFile()'' and ''getBlock()'' are responsible for the peak metadata load at a namenode. In this experiment, we measure the achievable IOPS on the server side in an artificial configuration with many clients distributed across the cluster issuing ''getFile()'' in a tight loop. Note that the client side RPC interface in Crail is asynchronous, thus, clients can issue multiple metadata operations without blocking while asynchronously waiting for the result. In the experiments below, each client may have a maximum of 128 ''getFile()'' operations outstanding at any point in time. In a practical 
 scenario, Crail clients may also have multiple metadata operations in flight either because clients are shared by different cores, or because Crail interleaves metadata and data operations (see &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/08/crail-memory.html&quot;&gt;DRAM&lt;/a&gt;). What makes the benchmark artificial is that clients exclusively focus on generating load for the namenode and thereby are neither performing data operations nor are they doing any compute. The basic command of the benchmark as executed by each of the individual clients is given by the following command:
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./bin/crail iobench -t getMultiFileAsync -f / -k 10000000 -b 128
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Where ''-t'' specifies the benchmark to run, ''-f'' specifies the path on the
-Crail file system to be used for the benchmark, ''-k'' specifies the number of
-iterations to be performed by the benchmark
-(how many times will the benchmark execute ''getFile()'') and
-''-b'' specifies the maximum number of requests in flight.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;single-namenode-scalability&quot;&gt;Single Namenode Scalability&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-In the first experiment, we measure the aggregated number of metadata operations a single Crail namenode can handle per second. The namenode runs on 8 physical cores with hyper-threading disabled. The result is shown in the first graph below, labeled ''Namenode IOPS''. The namenode only gets saturated with more than 16 clients. The graph shows that the namenode can handle close to 10 million ''getFile()'' operations per second. With significantly more clients, the overall number of IOPS drops slightly, as more resources are being allocated on the single RDMA card, which basically creates a contention on hardware resources.
-&lt;/p&gt;
-&lt;p&gt; 
-As comparison, we measure the raw number of IOPS, which can be executed on the RDMA network. We measure the raw number using ib_send_bw. We configured ib_send_bw with the same parameters in terms of RDMA configuration as the namenode. This means, we instructed ib_send_bw not to do CQ moderation, and to use a receive queue and a send queue of length 32, which equals the length of the namenode queues. Note that the default configuration of ib_send_bw uses CQ moderation and does preposting of send operations, which can only be done, if the operation is known in advance. This is not the case in a real system, like crail's namenode. The basic ib_send_bw command is given below:
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;ib_send_bw -s 1 -Q 1 -r 32 -t 32 -n 10000000
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Where ''-s 1'' specifies to send packets with a payload of 1 (we don't want to
-measure the transmission time of data, just the number of I/O operations),
-''-Q 1'' specifies not to do CQ moderation, ''-r 32'' specifies the receive
-queue length to be 32, ''-t 32'' specifies the send queue length to be 32
-and ''-n'' specifies the number of
-iterations to be performed by ib_send_bw.
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-The line of the raw number of IOPS, labeled ''ib send'' is shown in the same graph. With this measurement we show that Crail's namenode IOPS are similar to the raw ib_send_bw IOPS with the same configuration.
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-metadata/namenode_ibsend_iops64.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-If one starts ib_send_bw without specifying the queue sizes or whether or not to use CQ moderation, the raw number of IOPS might be higher. This is due to the fact, that the default values of ib_send_bw use a receive queue of 512, a send queue of 128 and CQ moderation of 100, meaning that a new completion is generated only after 100 sends. As comparison, we did this
-measurement too and show the result, labeled 'ib_send CQ mod', in the same graph. Fine tuning of receive and send queue sizes, CQ moderation size, postlists etc might lead to a higher number of IOPS. 
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;multiple-namenode-scalability&quot;&gt;Multiple Namenode Scalability&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-To increase the number of IOPS the overall system can handle, we allow starting multiple namenode instances. Hot metadata operations, such as ''getFile()'', are distributed over all running instances of the namenode. ''getFile()'' is implemented such that no synchronization among the namenodes is required. As such, we expect good scalability. The graph below compares the overall IOPS of a system with one namenode to a system with two namenodes and four namenodes.
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-metadata/namenode_multi64.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-We show in this graph that the system can handle around 17Mio IOPS with two namenodes and 28Mio IOPS with four namenodes (with more than 64 clients we measured the number of IOPS to be slightly higher than 30Mio IOPS). Having multiple namenode instances matters especially with a higher number of clients. In the graph we see that the more clients we have the more we can benefit from a second namenode instance or even more instances.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-We only have 7 physical nodes available to run the client processes. This
-means, after 7 client processes, processes start sharing a physical machine.
-With 64 client processes, each machine runs 9 (10 in one case) client
-instances, which share the cores and the resources of the RDMA hardware.
-We believe this is the reason, why the graphs appear not to scale linearly.
-The number of total IOPS is client-bound, not namenode-bound.
-With more physical machines, we believe that scalability could be shown
-much better. Again, there is absolutely no communication among the
-namenodes happening, which should lead to linear scalability.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;cluster-sizes&quot;&gt;Cluster sizes&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Let us look at a concrete application, which ideally runs on a large cluster:
-TeraSort. In a previous blog, &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/01/sorting.html&quot;&gt;sorting&lt;/a&gt;,
-we analyze performance characteristics of TeraSort on Crail on a big cluster
-of 128 nodes, where we run 384 executors in total. This already proves that
-Crail can at least handle 384 clients. Now we analyze the theoretical number
-of clients without performance loss at the namenode. Still this theoretical
-number is not a hard limit on the number of clients. Just adding more
-clients would start dropping the number of IOPS per client (not at the
-namenode).
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-In contrast to the benchmarks above, a real-world application, like TeraSort,
-does not issue RPC requests in a tight loop. It rather does sorting
-(computation), file reading and writing and and of course a certain amount of
-RPCs to manage the files.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-We would like to know how many RPCs a run of TeraSort generates and therefore
-how big the load in terms of number of IOPS is at the namenode for a
-real-world application.
-We run TeraSort on a data set of 200GB and measured the
-number of IOPS at the namenode with 4 executors, 8 executors and 12 executors.
-Every executor runs 12 cores. For this experiment, we use a single namenode
-instance. We plot the distribution of the number of IOPS measured at the
-namenode over the elapsed runtime of the TeraSort application.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-metadata/terasort_iops.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-From the graph we pick the peak number of IOPS measured
-throughout the execution time for all three cases. The following table
-shows the three peak IOPS numbers:
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;center&gt;
-&lt;table&gt;
-  &lt;thead&gt;
-    &lt;tr&gt;
-      &lt;th&gt;#Executor nodes&lt;/th&gt;
-      &lt;th&gt;Measured IOPS&lt;/th&gt;
-      &lt;th&gt;% of single namenode&lt;/th&gt;
-    &lt;/tr&gt;
-  &lt;/thead&gt;
-  &lt;tbody&gt;
-    &lt;tr&gt;
-      &lt;td align=&quot;right&quot;&gt;4&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;32k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;0.32%&lt;/td&gt;
-    &lt;/tr&gt;
-    &lt;tr&gt;
-      &lt;td align=&quot;right&quot;&gt;8&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;67k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;0.67%&lt;/td&gt;
-    &lt;/tr&gt;
-    &lt;tr&gt;
-      &lt;td align=&quot;right&quot;&gt;12&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;107k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;1.07%&lt;/td&gt;
-    &lt;/tr&gt;
-  &lt;/tbody&gt;
-&lt;/table&gt;
-&lt;/center&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-From this table we see that it scales linearly. Even more important,
-we notice that with 12 nodes we still use only around 1% of the
-number of IOPS a single namenode can handle.
-If we extrapolate this to a
-100%, we can handle a cluster size of almost 1200 nodes (1121 clients being just
-below 10Mio IOPS at the namenode). The
-extrapolated numbers would look like this:
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;center&gt;
-&lt;table&gt;
-  &lt;thead&gt;
-    &lt;tr&gt;
-      &lt;th&gt;#Namenodes&lt;/th&gt;
-      &lt;th&gt;Max IOPS by  namenodes&lt;/th&gt;
-      &lt;th&gt;#Executor nodes&lt;/th&gt;
-      &lt;th&gt;Extrapolated IOPS&lt;/th&gt;
-      &lt;th&gt;% of all namenodes&lt;/th&gt;
-    &lt;/tr&gt;
-  &lt;/thead&gt;
-  &lt;tbody&gt;
-    &lt;tr&gt;
-      &lt;td align=&quot;right&quot;&gt;1&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;10000k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;1121&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;9996k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;99.96%&lt;/td&gt;
-    &lt;/tr&gt;
-    &lt;tr&gt;
-      &lt;td align=&quot;right&quot;&gt;1&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;10000k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;1200&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;10730k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;107.3%&lt;/td&gt;
-    &lt;/tr&gt;
-    &lt;tr&gt;
-      &lt;td align=&quot;right&quot;&gt;2&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;17000k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;1906&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;16995k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;99.97%&lt;/td&gt;
-    &lt;/tr&gt;
-    &lt;tr&gt;
-      &lt;td align=&quot;right&quot;&gt;4&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;30000k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;3364&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;29995k&lt;/td&gt;
-      &lt;td align=&quot;right&quot;&gt;99.98%&lt;/td&gt;
-    &lt;/tr&gt;
-&lt;/tbody&gt;
-&lt;/table&gt;
-&lt;/center&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Of course we know that there is no system with perfect linear scalability.
-But even if we would loose 50% of the number of IOPS (compared to the
-theoretical maximum) on a big cluster, Crail could still handle a cluster size
-of 600 nodes and a single namenode without any performance loss at the
-namenode.
-Should we still want to run an application like TeraSort on a bigger cluster,
-we can add a second namenode or have even more instances of namenodes
-to ensure that clients do not suffer from contention in terms of IOPS at
-the namenode.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-We believe that the combination of benchmarks above, the scalability
-experiments and the real-world
-application of TeraSort shows clearly that Crail and Crail's namenode can handle
-a big cluster of at least several hundreds of nodes, theoretically up to
-1200 nodes with a single namenode and even more with multiple namenodes.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;system-comparison&quot;&gt;System comparison&lt;/h3&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-In this section we compare the number of IOPS Crail can handle to
-two other systems:
-&lt;a href=&quot;http://hadoop.apache.org/&quot;&gt;Hadoop's HDFS namenode&lt;/a&gt; and
-&lt;a href=&quot;https://ramcloud.atlassian.net/wiki/spaces/RAM/overview&quot;&gt;RAMCloud&lt;/a&gt;.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-HDFS is a well known distributed file system. Like Crail, HDFS runs
-a namenode and several datanodes. The namenode implements similar functionality
-as Crail's namenode, while HDFS's datanodes provide additional functionality,
-like replication, for example. We are interested in the
-number of IOPS the namenode can handle. As such, the datanode's functionality
-is not relevant for this experiment. HDFS is implemented in Java like Crail.
-Due to this high similarity in terms of functionality and language used to
-implement the system, HDFS is a good candidate to compare Crail to.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-HDFS does not use RDMA to send RPCs. Instead, RPCs are sent over a regular
-IP network. In our case, it is the same 100Gbit/s ethernet-based RoCE network.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-To measure the number of IOPS HDFS's namenode can handle, we run the same
-experiment as for Crail. The clients issue a ''getFile()'' RPC to the
-namenode and we vary the number of clients from 1 to 64. The following
-plot shows the number of IOPS relative to the number of clients.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-metadata/namenode_hdfs_iops.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-The graph shows that the namenode can handle around 200000 IOPS. One reason
-for the difference to the number of IOPS of Crail is surely that HDFS does not
-use the capabilities offered by the RDMA network, while Crail does. However
-this cannot be the only reason, why the namenode cannot handle more than
-200000 IOPS. We would need to analyze more deeply where the bottleneck is
-to find an answer. We believe that the amount of code which
-gets executed at probably various layers of the software stack
-is too big to achieve high performance in terms of IOPS.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-RAMCloud is a fast key-value store, which makes use of the RDMA network
-to reach low latency and high throughput. It runs one master coordinator and
-and optionally several slave coordinators, which can take over, if the master
-coordinator fails. Coordinator persistence can be achieved
-by external persistent storage, like Zookeeper or LogCabin.
-RAMCloud runs several storage servers, which
-store key-value pairs in RAM. Optionally, replicas can be stored on secondary
-storage, which provides persistence. RAMCloud is implemented in C++. Therefore
-it is natively compiled code.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-We are interested in the number of IOPS RAMCloud can handle. We decided
-to run the readThroughput benchmark of RAMCloud's ClusterPerf program, which
-measures the number of object reads per second. This is probably the closest
-benchmark to the RPC benchmark of Crail and HDFS.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-For a fair comparison, we run RAMCloud without any persistence, so without
-Zookeeper and without replicas to secondary storage. We run one coordinator
-and one storage server, which is somewhat similar to running one namenode
-in the Crail and HDFS cases. Also, we wanted to vary the number of clients
-from 1 to 64. At the moment we can only get results for up to 16 clients.
-We asked the RAMCloud developers for possible reasons and got to know that the
-reason is a starvation bug in the benchmark (not in the RAMCloud system
-itself). The RAMCloud developers are looking into this issue. We will update
-the blog with the latest numbers as soon as the bug is fixed.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-metadata/ramcloud_iops.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-RAMCloud reaches a peak of 1.12Mio IOPS with 14 clients. The utilization of the
-dispatcher thread is at 100% already with 10 clients. Even with more clients,
-the number of IOPS won't get higher than 1.12Mio, because the
-dispatcher thread is the bottleneck, as can be seen in the graph.
-In addition, we got a confirmation from the developers that more than
-10 clients will not increase the number of IOPS.
-So we think that the measurements are not unfair, even if we do not have
-results for more than 16 clients. Again, we we will update the blog
-with a higher number of clients, as soon as the bug is fixed.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-Let us now summarize the number of IOPS of all three systems in one plot
-below. For a fair comparison, Crail runs only one namenode for this
-experiments and we compare the results to RAMCloud with one coordinator and
-one storage server (without replication as described above) and the one
-namenode instance of HDFS. We see that Crail's single namenode can handle
-a much bigger number of RPCs compared to the other two systems (remember
-that Crail can run multiple namenodes and we measured a number of IOPS
-of 30Mio/s with 4 namenodes).
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-metadata/max_iops_crail_hdfs_ramcloud.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-HDFS is deployed on production clusters and handles real workloads
-with roughly 200000 IOPS. We believe that Crail, which can handle a much
-bigger number of IOPS, is able to run real workloads on very large
-clusters. A common assumption is that Java-based implementations suffer from
-performance loss. We show that a Java-based system can handle a high amount
-of operations even compared to a C++-based system like RAMCloud.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;summary&quot;&gt;Summary&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-In this blog we show three key points of Crail: First, Crail's namenode performs the same as ib_send_bw with realistic parameters in terms of IOPS. This shows that the actual processing of the RPC is implemented efficiently. Second, with only one namenode, Crail performs 10x to 50x better than RAMCloud and HDFS, two popular systems, where RAMCloud is RDMA-based and implemented natively. Third, Crail's metadata service can be scaled out to serve large number of clients. We have shown that Crail offers near linear scaling with up to 4 namenodes, offering a performance that is sufficient to serve several 1000s of clients. 
-&lt;/p&gt;
-&lt;/div&gt;</content><author><name>Adrian Schuepbach and Patrick Stuedi</name></author><category term="blog" /><summary type="html">This is part III of our series of posts discussing Crail's raw storage performance. This part is about Crail's metadata performance and scalability.</summary></entry><entry><title type="html">Floss</title><link href="http://crail.incubator.apache.org//blog/2017/11/floss.html" rel="alternate" type="text/html" title="Floss" /><published>2017-11-17T00:00:00+01:00</published><updated>2017-11-17T00:00:00+01:00</updated><id>http://crail.incubator.apache.org//blog/2017/11/floss</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2017/11/floss.html">&lt;p&gt;Crail features in the &lt;a href=&quot;https://twit.tv/shows/floss-weekly/episodes/458?autostart=false&quot;&gt;FLOSS weekly podcast&lt;/a&gt;&lt;/p&gt;</content><author><name></name></author><category term="news" /><summary type="html">Crail features in the FLOSS weekly podcast</sum
 mary></entry><entry><title type="html">Blog</title><link href="http://crail.incubator.apache.org//blog/2017/11/blog.html" rel="alternate" type="text/html" title="Blog" /><published>2017-11-17T00:00:00+01:00</published><updated>2017-11-17T00:00:00+01:00</updated><id>http://crail.incubator.apache.org//blog/2017/11/blog</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2017/11/blog.html">&lt;p&gt;New blog &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/11/rdmashuffle.html&quot;&gt;post&lt;/a&gt; about SparkRDMA and Crail shuffle plugins&lt;/p&gt;</content><author><name></name></author><category term="news" /><summary type="html">New blog post about SparkRDMA and Crail shuffle plugins</summary></entry><entry><title type="html">Spark Shuffle: SparkRDMA vs Crail</title><link href="http://crail.incubator.apache.org//blog/2017/11/rdmashuffle.html" rel="alternate" type="text/html" title="Spark Shuffle: SparkRDMA vs Crail" /><published>2017-11-17T00:00:00
 +01:00</published><updated>2017-11-17T00:00:00+01:00</updated><id>http://crail.incubator.apache.org//blog/2017/11/rdmashuffle</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2017/11/rdmashuffle.html">&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-This blog is comparing the shuffle performance of Crail with SparkRDMA, an alternative RDMA-based shuffle plugin for Spark.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;hardware-configuration&quot;&gt;Hardware Configuration&lt;/h3&gt;
-
-&lt;p&gt;The specific cluster configuration used for the experiments in this blog:&lt;/p&gt;
-
-&lt;ul&gt;
-  &lt;li&gt;Cluster
-    &lt;ul&gt;
-      &lt;li&gt;8 compute + 1 management node x86_64 cluster&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-  &lt;li&gt;Node configuration
-    &lt;ul&gt;
-      &lt;li&gt;CPU: 2 x Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz&lt;/li&gt;
-      &lt;li&gt;DRAM: 96GB DDR3&lt;/li&gt;
-      &lt;li&gt;Network: 1x100Gbit/s Mellanox ConnectX-5&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-  &lt;li&gt;Software
-    &lt;ul&gt;
-      &lt;li&gt;Ubuntu 16.04.3 LTS (Xenial Xerus) with Linux kernel version 4.10.0-33-generic&lt;/li&gt;
-      &lt;li&gt;&lt;a href=&quot;https://github.com/zrlio/crail&quot;&gt;Crail 1.0&lt;/a&gt;, commit a45c8382050f471e9342e1c6cf25f9f2001af6b5&lt;/li&gt;
-      &lt;li&gt;&lt;a href=&quot;&quot;&gt;Crail Shuffle plugin&lt;/a&gt;, commit 2273b5dd53405cab3389f5c1fc2ee4cd30f02ae6&lt;/li&gt;
-      &lt;li&gt;&lt;a href=&quot;https://github.com/Mellanox/SparkRDMA&quot;&gt;SparkRDMA&lt;/a&gt;, commit d95ce3e370a8e3b5146f4e0ab5e67a19c6f405a5 (latest master on 8th of November 2017)&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-&lt;/ul&gt;
-
-&lt;h3 id=&quot;overview&quot;&gt;Overview&lt;/h3&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-Lately there has been an increasing interest in the community to include RDMA networking into data processing frameworks like Spark and Hadoop. One natural spot to integrate RDMA is in the shuffle operation that involves all-to-all network communication pattern. Naturally, due to its performance requirements the shuffle operation is of interest to us as well, and we have developed a Spark plugin for shuffle. In our previous blog posts, we have already shown that the Crail Shuffler achieves great workload-level speedups compared to vanilla Spark. In this blog post, we take a look at another recently proposed design called &lt;a href=&quot;https://github.com/Mellanox/SparkRDMA&quot;&gt;SparkRDMA&lt;/a&gt; (&lt;a href=&quot;https://issues.apache.org/jira/browse/SPARK-22229&quot;&gt;SPARK-22229 JIRA&lt;/a&gt;). SparkRDMA proposes to improve the shuffle performance of Spark by performing data transfers over RDMA. For this, the code manages its own off-heap memory which needs to be regist
 ered with the NIC for RDMA use. It supports two ways to store shuffle data between the stages: (1) shuffle data is stored in regular files (just like vanilla Spark) but the data transfer is implemented via RDMA, (2) data is stored in memory (allocated and registered for RDMA transfer) and the data transfer is implemented via RDMA. We call it the &quot;last-mile&quot; approach where just the networking operations are replaced by the RDMA operations.
-&lt;/p&gt;
-&lt;p&gt;
-In contrast, the Crail shuffler plugin takes a more holistic approach and leverages the high performance of Crail distributed data store to deliver gains. It uses Crail store to efficiently manage I/O resources, storage and networking devices, memory registrations, client sessions, data distribution, etc. Consequently, the shuffle operation becomes as simple as writing and reading files. And recall that Crail store is designed as a fast data bus for the intermediate data. The shuffle operation is just one of many operations that can be accelerated using Crail store. Beyond these operations, the modular architecture of Crail store enables us to seamlessly leverage different storage types (DRAM, NVMe, and more), perform tiering, support disaggregation, share inter-job data, jointly optimize I/O resources for various workloads, etc. These capabilities and performance gains give us confidence in the design choices we made for the Crail project.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;performance-comparison&quot;&gt;Performance comparison&lt;/h3&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;Lets start by quantitatively assessing performance gains from the Crail shuffle plugin and SparkRDMA. As described above, SparkRDMA can be operated in two different modes. Users decide which mode to use by selecting a particular type of shuffle writer (spark.shuffle.rdma.shuffleWriterMethod). The Wrapper shuffle writer writes shuffle data to files between the stages, the Chunked shuffle writer stores shuffle data in memory. We evaluate both writer methods for terasort and SQL equijoin.
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/rdma-shuffle/terasort.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-First we run &lt;a href=&quot;https://github.com/zrlio/crail-spark-terasort&quot;&gt;terasort&lt;/a&gt; on our 8+1 machine cluster (see above). We sort 200GB, thus, each node gets 25GB of data (equal distribution). We further did a basic search of the parameter space for each of the systems to find the best possible configuration. In all the experiments we use 8 executors with 12 cores each. Note that in a typical Spark run more CPU cores than assigned are engaged because of garbabge collection, etc. In our test runs assigning 12 cores lead to the best performance.
-&lt;/p&gt;
-&lt;p&gt;
-The plot above shows runtimes of the various configuration we run with terasort. SparkRDMA with the Wrapper shuffle writer performance slightly better (3-4%) than vanilla Spark whereas the Chunked shuffle writer shows a 30% overhead. On a quick inspection we found that this overhead stems from memory allocation and registration for the shuffle data that is kept in memory between the stages. Compared to vanilla Spark, Crail's shuffle plugin shows performance improvement of around 235%.
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/rdma-shuffle/sql.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-For our second workload we choose the &lt;a href=&quot;https://github.com/zrlio/sql-benchmarks&quot;&gt;SQL equijoin&lt;/a&gt; with a &lt;a href=&quot;https://github.com/zrlio/spark-nullio-fileformat&quot;&gt;special fileformat&lt;/a&gt; that allows data to be generated on the fly. By generating data on the fly we eliminate any costs for reading data from storage and focus entirely on the shuffle performance. The shuffle data size is around 148GB. Here the Wrapper shuffle writer is slightly slower than vanilla Spark but instead the Chunked shuffle writer is roughly the same amount faster. The Crail shuffle plugin again delivers a great performance increase over vanilla Spark.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;Please let us know if your have recommendations about how these experiments can be improved.&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;summary&quot;&gt;Summary&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-These benchmarks validate our belief that a &quot;last-mile&quot; integration cannot deliver the same performance gains as a holistic approach, i.e. one has to look at the whole picture in how to integrate RDMA into Spark applications (and for that matter any framework or application). Only replacing the data transfer alone does not lead to the anticipated performance increase. We learned this the hard way when we intially started working on Crail.
-&lt;/p&gt;
-
-&lt;/div&gt;</content><author><name>Jonas Pfefferle, Patrick Stuedi, Animesh Trivedi, Bernard Metzler, Adrian Schuepbach</name></author><category term="blog" /><summary type="html">This blog is comparing the shuffle performance of Crail with SparkRDMA, an alternative RDMA-based shuffle plugin for Spark.</summary></entry><entry><title type="html">Crail Storage Performance – Part II: NVMf</title><link href="http://crail.incubator.apache.org//blog/2017/08/crail-nvme-fabrics-v1.html" rel="alternate" type="text/html" title="Crail Storage Performance -- Part II: NVMf" /><published>2017-08-22T00:00:00+02:00</published><updated>2017-08-22T00:00:00+02:00</updated><id>http://crail.incubator.apache.org//blog/2017/08/crail-nvme-fabrics-v1</id><content type="html" xml:base="http://crail.incubator.apache.org//blog/2017/08/crail-nvme-fabrics-v1.html">&lt;div style=&quot;text-align: justify&quot;&gt;
-&lt;p&gt;
-This is part II of our series of posts discussing Crail's raw storage performance. This part is about Crail's NVMe storage tier, a low-latency flash storage backend for Crail completely based on user-level storage access.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;hardware-configuration&quot;&gt;Hardware Configuration&lt;/h3&gt;
-
-&lt;p&gt;The specific cluster configuration used for the experiments in this blog:&lt;/p&gt;
-
-&lt;ul&gt;
-  &lt;li&gt;Cluster
-    &lt;ul&gt;
-      &lt;li&gt;8 node OpenPower cluster&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-  &lt;li&gt;Node configuration
-    &lt;ul&gt;
-      &lt;li&gt;CPU: 2x OpenPOWER Power8 10-core @2.9Ghz&lt;/li&gt;
-      &lt;li&gt;DRAM: 512GB DDR4&lt;/li&gt;
-      &lt;li&gt;4x 512 GB Samsung 960Pro NVMe SSDs (512Byte sector size, no metadata)&lt;/li&gt;
-      &lt;li&gt;Network: 1x100Gbit/s Mellanox ConnectX-4 IB&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-  &lt;li&gt;Software
-    &lt;ul&gt;
-      &lt;li&gt;RedHat 7.3 with Linux kernel version 3.10&lt;/li&gt;
-      &lt;li&gt;Crail 1.0, internal version 2843&lt;/li&gt;
-      &lt;li&gt;SPDK git commit 5109f56ea5e85b99207556c4ff1d48aa638e7ceb with patches for POWER support&lt;/li&gt;
-      &lt;li&gt;DPDK git commit bb7927fd2179d7482de58d87352ecc50c69da427&lt;/li&gt;
-    &lt;/ul&gt;
-  &lt;/li&gt;
-&lt;/ul&gt;
-
-&lt;h3 id=&quot;the-crail-nvmf-storage-tier&quot;&gt;The Crail NVMf Storage Tier&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Crail is a framework that allows arbitrary storage backends to be added by implementing the Crail storage interface. A storage backend manages the point-to-point data transfers on a per block granularity between a Crail client and a set of storage servers. The Crail storage interface essentially consists of three virtual functions, which simplified look like this:
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;//Server-side interface: donate storage resources to Crail
-StorageResource allocateResource();
-//Client-side interface: read/write remote/local storage resources
-writeBlock(BlockInfo, ByteBuffer);
-readBlock(BlockInfo, ByteBuffer);
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-A specific implementation of this interface provides an efficient mapping of Crail storage operations to the actual storage and network hardware the backend is exporting. Crail comes with two native storage backends, an RDMA-based DRAM backend and an RDMA-based NVMe backend, but other storage backends are available as well (e.g., Netty) and we plan to provide more custom backends in the future as new storage and network technologies are emerging. 
-&lt;/p&gt;
-&lt;p&gt;
-The Crail NVMf storage backend we evaluate in this blog provides user-level access to local and remote flash through the NVMe over Fabrics protocol. Crail NVMf is implemented using &lt;a href=&quot;https://github.com/zrlio/disni&quot;&gt;DiSNI&lt;/a&gt;, a user-level network and storage interface for Java offering both RDMA and NVMf APIs. DiSNI itself is based on &lt;a href=&quot;http://www.spdk.io&quot;&gt;SPDK&lt;/a&gt; for its NVMf APIs. 
-&lt;/p&gt;
-&lt;p&gt;
-The server side of the NVMf backend is designed in a way that each server process manages exactly one NVMe drive. On hosts with multiple NVMe drives one may start several Crail NVMf servers. A server is setting up an NVMf target through DiSNI and implements the allocateResource() storage interface by allocating storage regions from the NVMe drive (basically splits up the NVMe namespace into smaller segments). The Crail storage runtime makes information about storage regions available to the Crail namenode, from where regions are further broken down into smaller units called blocks that make up files in Crail.
-&lt;/p&gt;
-&lt;p&gt;
-The Crail client runtime invokes the NVMf client interface during file read/write operations for all data transfers on NVMf blocks. Using the block information provided by the namenode, the NVMf storage client implementation is able to connect to the appropriate NVMf target and perform the data operations using DiSNI's NVMf API.
-&lt;/p&gt;
-&lt;p&gt;
-One downside of the NVMe interface is that byte level access is prohibited. Instead data operations have to be issued for entire drive sectors which are typically 512Byte or 4KB large (we used 512Byte sector size in all the experiments shown in this blog). As we wanted to use the standard NVMf protocol (and Crail has a client driven philosophy) we needed to implement byte level access at the client side. For reads this can be achieved in a straight forward way by reading the whole sector and copying out the requested part. For writes that modify a certain subrange of a sector that has already been written before we need to do a read modify write operation.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;h3 id=&quot;performance-comparison-to-native-spdk-nvmf&quot;&gt;Performance comparison to native SPDK NVMf&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-We perform latency and throughput measurement of our Crail NVMf storage tier against a native SPDK NVMf benchmark to determine how much overhead our implementation adds. The first plot shows random read latency on a single 512GB Samsung 960Pro accessed remotely through SPDK. For Crail we also show the time it takes to perform a metadata operations. You can run the Crail benchmark from the command line like this:
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./bin/crail iobench -t readRandom -b false -s &amp;lt;size&amp;gt; -k &amp;lt;iterations&amp;gt; -w 32 -f /tmp.dat
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;p&gt;and SPDK:&lt;/p&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./perf -q 1 -s &amp;lt;size&amp;gt; -w randread -r 'trtype:RDMA adrfam:IPv4 traddr:&amp;lt;ip&amp;gt; trsvcid:&amp;lt;port&amp;gt;' -t &amp;lt;time in seconds&amp;gt;
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-The main take away from this plot is that the time it takes to perform a random read operation on a NVMe-backed file in Crail takes only about 7 microseconds more time than fetching the same amount of data over a point-to-point SPDK connection. This is impressive because it shows that using Crail a bunch of NVMe drives can be turned into a fully distributed storage space at almost no extra cost. The 7 microseconds are due to Crail having to look up the specific NVMe storage node that holdes the data -- an operation which requires one extra network roundtrip (client to namenode). The experiment represents an extreme case where no metadata is cached at the client. In practice, file blocks are often accessed multiple times in which case the read latency is further reduced. Also note that unlike SPDK which is a native library, Crail delivers data directly into Java off-heap memory. 
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-nvmf/latency.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-The second plot shows sequential read and write throughput with a transfer size of 64KB and 128 outstanding operations. The Crail throughput benchmark can be run like this:
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./bin/crail iobench -t readAsync -s 65536 -k &amp;lt;iterations&amp;gt; -b 128 -w 32 -f /tmp.dat
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;p&gt;and SPDK:&lt;/p&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./perf -q 128 -s 65536 -w read -r 'trtype:RDMA adrfam:IPv4 traddr:&amp;lt;ip&amp;gt; trsvcid:&amp;lt;port&amp;gt;' -t &amp;lt;time in seconds&amp;gt;
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-For sequential operations in Crail, metadata fetching is inlined with data operations as described in the &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/08/crail-memory.html&quot;&gt;DRAM&lt;/a&gt; blog. This is possible as long as the data transfer has a lower latency than the metadata RPC, which is typically the case. As a consequence, our NVMf storage tier reaches the same throughput as the native SPDK benchmark (device limit).
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-nvmf/throughput.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-
-&lt;h3 id=&quot;sequential-throughput&quot;&gt;Sequential Throughput&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Let us look at the sequential read and write throughput for buffered and direct streams and compare them to a buffered Crail stream on DRAM. All benchmarks are single thread/client performed against 8 storage nodes with 4 drives each, cf. configuration above. In this benchmark we use 32 outstanding operations for the NVMf storage tier buffered stream experiments by using a buffer size of 16MB and a slice size of 512KB, cf. &lt;a href=&quot;http://crail.incubator.apache.org/blog/2017/07/crail-memory.html&quot;&gt;part I&lt;/a&gt;. The buffered stream reaches line speed at a transfer size of around 1KB and shows only slightly slower performance when compared to the DRAM tier buffered stream. However we are only using 2 outstanding operations with the DRAM tier to achieve these results. Basically for sizes smaller than 1KB the buffered stream is limited by the copy speed to fill the application buffer. The direct stream reaches line speed at around 128KB with 128 outstanding operations
 . Here no copy operation is performed for transfer size greater than 512Byte (sector size). The command to run the Crail buffered stream benchmark:
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./bin/crail iobench -t read -s &amp;lt;size&amp;gt; -k &amp;lt;iterations&amp;gt; -w 32 -f /tmp.dat
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-&lt;p&gt;The direct stream benchmark:&lt;/p&gt;
-&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./bin/crail iobench -t readAsync -s &amp;lt;size&amp;gt; -k &amp;lt;iterations&amp;gt; -b 128 -w 32 -f /tmp.dat
-&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
-
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-nvmf/throughput2.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-
-&lt;h3 id=&quot;random-read-latency&quot;&gt;Random Read Latency&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-Random read latency is limited by the flash technology and we currently see around 70us when performing sector size accesses to the device with the Crail NVMf backend. In comparison, remote DRAM latencies with Crail are about 7-8x faster. However, we believe that this will change in the near future with new technologies like PCM. Intel's Optane drives already can deliver random read latencies of around 10us. Considering that there is an overhead of around 10us to access a drive with Crail from anywhere in the cluster, using such a device would put random read latencies somewhere around 20us which is only half the performance of our DRAM tier.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-nvmf/latency2.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-
-&lt;h3 id=&quot;tiering-dram---nvmf&quot;&gt;Tiering DRAM - NVMf&lt;/h3&gt;
-
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-In this paragraph we show how Crail can leverage flash memory when there is not sufficient DRAM available in the cluster to hold all the data. As described in the &lt;a href=&quot;http://crail.incubator.apache.org/overview/&quot;&gt;overview&lt;/a&gt; section, if you have multiple storage tiers deployed in Crail, e.g. the DRAM tier and the NVMf tier, Crail by default first uses up all available resources of the faster tier. Basically a remote resource of a faster tier (e.g. remote DRAM) is preferred over a slower local resource (e.g., local flash), motivated by the fast network. This is what we call horizontal tiering.
-&lt;/p&gt;
-&lt;/div&gt;
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-nvmf/crail_tiering.png&quot; width=&quot;500&quot; vspace=&quot;10&quot; /&gt;&lt;/div&gt;
-&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
-&lt;div style=&quot;text-align: justify&quot;&gt; 
-&lt;p&gt;
-In the following 200G Terasort experiment we gradually limit the DRAM resources in Crail while adding more flash to the Crail NVMf storage tier. Note that here Crail is used for both input/output as well as shuffle data. The figure shows that by putting all the data in flash we only increase the sorting time by around 48% compared to the configuration where all the data resides in DRAM. Considering the cost of DRAM and the advances in technology described above we believe cheaper NVM storage can replace DRAM for most of the applications with only a minor performance decrease. Also, note that even with 100% of the data in NVMe, Spark/Crail is still faster than vanilla Spark with all the data in memory. The vanilla Spark experiment uses Alluxio for input/output and RamFS for the shuffle data.
-&lt;/p&gt;
-&lt;/div&gt;
-
-&lt;div style=&quot;text-align:center&quot;&gt;&lt;img src=&quot;http://crail.incubator.apache.org/img/blog/crail-nvmf/tiering.svg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;
-
-&lt;p&gt;To summarize, in this blog we have shown that the NVMf storage backend for Crail – due to its efficient user-level implementation – offers latencies and throughput very close to the hardware speed. The Crail NVMf storage tier can be used conveniently in combination with the Crail DRAM tier to either save cost or to handle situations where the available DRAM is not sufficient to store the working set of a data processing workload.&lt;/p&gt;</content><author><name>Jonas Pfefferle</name></author><category term="blog" /><summary type="html">This is part II of our series of posts discussing Crail's raw storage performance. This part is about Crail's NVMe storage tier, a low-latency flash storage backend for Crail completely based on user-level storage access.</summary></entry></feed>
\ No newline at end of file
+<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.8.3">Jekyll</generator><link href="http://localhost:4000/feed.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/" rel="alternate" type="text/html" /><updated>2018-06-07T13:27:00+02:00</updated><id>http://localhost:4000/</id><title type="html">The Apache Crail (Incubating) Project</title></feed>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-crail-website/blob/c782b73a/content/img/apache_incubator.png
----------------------------------------------------------------------
diff --git a/content/img/apache_incubator.png b/content/img/apache_incubator.png
deleted file mode 100644
index 987c79e..0000000
Binary files a/content/img/apache_incubator.png and /dev/null differ