<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DavidHunt.ie</title>
	<atom:link href="http://davidhunt.ie/wp/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://davidhunt.ie/wp</link>
	<description>Dave Hunt&#039;s Blog. Photography, Computers, etc.</description>
	<lastBuildDate>Wed, 30 Jan 2013 16:05:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Raspberry Pi</title>
		<link>http://davidhunt.ie/wp/?p=2429</link>
		<comments>http://davidhunt.ie/wp/?p=2429#comments</comments>
		<pubDate>Fri, 01 Jun 2012 15:19:10 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=2429</guid>
		<description><![CDATA[I got my hands on a Raspberry Pi last week. I got to play with it for only a few hours since then, but it&#8217;s pretty sweet. Technically, it&#8217;s a marvel. The geek in me loves it. However, I have the feeling it&#8217;s not yet ready for general use. Don&#8217;t get me wrong, it&#8217;s wonderful [...]]]></description>
			<content:encoded><![CDATA[<p>I got my hands on a Raspberry Pi last week. I got to play with it for only a few hours since then, but it&#8217;s pretty sweet.</p>
<p>Technically, it&#8217;s a marvel. The geek in me loves it.</p>
<p><a rel="attachment wp-att-2431" href="http://davidhunt.ie/wp/?attachment_id=2431"><img class="alignnone size-medium wp-image-2431" title="560046_10150821882917455_720852454_9899696_2107927418_n" src="http://davidhunt.ie/wp/wp-content/uploads/2012/06/560046_10150821882917455_720852454_9899696_2107927418_n-500x373.jpg" alt="" width="500" height="373" /></a></p>
<p>However, I have the feeling it&#8217;s not yet ready for general use. Don&#8217;t get me wrong, it&#8217;s wonderful as it is for education, but I think a lot of people are going to use them as general purpose computers, media centers, etc.</p>
<p>The main reason is software availability. While there is a graphics accelerator build into the board, the drivers for the windowing system don&#8217;t exist yet. That means that for web browsing, and other general tasks, the graphical use interface is very sluggish. A typical user would get very frustrated trying to browse the web. And there&#8217;s not Flash yet, but Adobe is rumoured to be working on it.</p>
<p>Also, to use it as a media centre, XBMC have made good progress on getting hi-definition video working on it, and I&#8217;ve seen a 1080p stream running on it. It&#8217;s impressive, but XBMC is only just out in beta, so it&#8217;s still rough around the edges.</p>
<p>But for the hobbyist, there&#8217;s a world of possibilities. GPIO boards are starting to appear, so it&#8217;s only a matter of time before we see Raspberry Pi&#8217;s controlling a whole world of gadgets&#8230;.</p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2429" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=2429</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SRP vs Samba on 10Gb Infiniband Fabric</title>
		<link>http://davidhunt.ie/wp/?p=2410</link>
		<comments>http://davidhunt.ie/wp/?p=2410#comments</comments>
		<pubDate>Sat, 14 Jan 2012 22:11:03 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[Bandwidth]]></category>
		<category><![CDATA[Infiniband]]></category>
		<category><![CDATA[RAID]]></category>
		<category><![CDATA[srp]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[throughput]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=2410</guid>
		<description><![CDATA[&#160; Here&#8217;s some more ramblings on 10G Networking on the Cheap. Having gone to all the trouble of getting a 900MB/sec SRP target working, I was interested to go back and see how a samba mount would perform now that I&#8217;d sorted out all the cards into their optimum PCI-express slots. So, I did the [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>Here&#8217;s some more ramblings on <a href="http://davidhunt.ie/wp/?p=232">10G Networking on the Cheap</a>.</p>
<p>Having gone to all the trouble of getting a <a href="http://davidhunt.ie/wp/?p=2324">900MB/sec SRP target</a> working, I was interested to go back and see how a samba mount would perform now that I&#8217;d sorted out all the cards into their optimum PCI-express slots.</p>
<p>So, I did the same setup as the 900MB/sec SRP test, Ramdisk to Ramdisk. This time, I set up a 2Gig ramdisk as a samba mount, and copied large files to and from that ramdisk from a 4G Ramdisk on the Windows side. ATTO disk benchmark doesn&#8217;t test network drives, so I had to make do with copying large files and keeping an eye on the throughput with dstat.</p>
<p>I initially measured the IPoIB throughput using netperf, than this gave me about 6Gbits.</p>
<pre>daveh@raid:~$ netperf -H 10.4.12.2
TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0
AF_INET to 10.4.12.2 (10.4.12.2) port 0 AF_INET : demo
Recv   Send    Send
Socket Socket  Message  Elapsed
Size   Size    Size     Time     Throughput
bytes  bytes   bytes    secs.    10^6bits/sec</pre>
<pre> 8192  16384  16384    10.00    6022.50</pre>
<p>Based on that number, I was not expecting anywhere close to the 900MB/sec throughput I was getting with SRP. Anyway, just to compare samba throughput with SRP, I pressed on.</p>
<pre>While copying a 1 GB video file to
the ramdisk on the linux box (write)</pre>
<pre>usr sys idl wai hiq siq| read  writ| recv  send
  3  57  31   0   0   9|   0     0 | 191M  565k
  3  61  28   0   0   8|   0     0 | 188M  556k
  4  56  31   0   0   9|4096B   40k| 192M  568k
  4  59  32   0   0   6|   0     0 | 163M  485k
  5  56  29   0   0   9|   0     0 | 186M 6419k
  3  61  29   0   0   8|   0     0 | 187M 6519k
  2  64  25   0   0   9|   0     0 | 183M  543k</pre>
<pre> 

While copying a 1 GB video file from
the ramdisk on the linux box (read)

usr sys idl wai hiq siq| read  writ| recv  send
  3  40  54   0   0   4|   0  4096B| 863k  251M
  6  42  47   1   0   5|   0    52k| 910k  263M
  5  44  48   0   0   5|   0     0 | 816k  233M
  5  42  46   0   0   6|   0     0 | 812k  231M
  4  45  48   0   0   4|   0     0 | 826k  236M
  3  44  49   0   0   5|   0     0 | 819k  234M
  4  44  48   0   0   5|   0     0 | 832k  236M</pre>
<p>I know it&#8217;s not very scientific, and I didn&#8217;t spend any time tuning samba. But the 900MB/sec throughput is practically out-of-the-box for SRP, so why not test samba at it&#8217;s out-of-the-box settings. <img src='http://davidhunt.ie/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So, even with netperf showing a 6Gbit throughput, I was only seeing around 190-235MB/sec throughput over samba (at 40-60% CPU usage).  So I think I&#8217;ll stick with my SRP target setup rather than going back to samba. With SRP, I know that whatever disk subsystem I put into the linux box, it probably won&#8217;t be able to keep up with the 900MB/sec  that the link is capable of. Unless, that is, I buy a very expensive RAID card and a bunch more disks. And with the way disk prices have gone over the last few months with the floods in Thailand, it&#8217;ll be a while until I even think about doing that. <img src='http://davidhunt.ie/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2410" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=2410</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Infiniband IPoIB &amp; SRP target setup on Ububtu 11.10</title>
		<link>http://davidhunt.ie/wp/?p=2291</link>
		<comments>http://davidhunt.ie/wp/?p=2291#comments</comments>
		<pubDate>Sat, 24 Dec 2011 10:36:42 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[Bandwidth]]></category>
		<category><![CDATA[Infiniband]]></category>
		<category><![CDATA[RAID]]></category>
		<category><![CDATA[throughput]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=2291</guid>
		<description><![CDATA[In a previous blog article, I covered how to get the infiniband fabric up on Ubuntu 10.10 (Maverick Meerkat). This time I’ll cover IPoIB on Ubuntu 11.10 (Oneiric Ocelot), and also add in the information on how to also get the SRP target configured and running. This guide does not require you to rebuild the [...]]]></description>
			<content:encoded><![CDATA[<p>In a previous blog article, I covered how to get the infiniband fabric up on Ubuntu 10.10 (Maverick Meerkat). This time I’ll cover IPoIB on Ubuntu 11.10 (Oneiric Ocelot), and also add in the information on how to also get the SRP target configured and running. <strong>This guide does not require you to rebuild the linux kernel, and works from the stock install of Ubuntu 11.10. </strong>So you should be up-and running with an SRP target in about 15 minutes, all going well.<br />
As before, I’m using an Ubuntu box for the disk subsystem, and a Windows 7 as a client (initiator) machine.</p>
<p>Here’s a few acronyms:</p>
<p>SCSI – we should know what this one is (Small Computer Systems Interface)<br />
iSCSI – SCSI protocol over a network.  (Internet SCSI).<br />
SCST – SCSI Target subsystem for linux with target drivers for iSCSI, Fibre Channel, SRP, SAS, FCoE, etc. We’re most interested in the SRP target.<br />
RDMA – Remote Direct Memory Access – fast way of copying chunks of memory from one machine to another.<br />
SRP – SCSI RDMA Protocol – wraps it all up using RDMA over SCSI protocol.</p>
<p><strong><span style="text-decoration: underline;">Stage 1 &#8211; Setting up IPoIB</span></strong></p>
<p>This section shows how to get the basic fabric up and running with TCP/IP over Infiniband (IPoIB). Once you&#8217;ve done this, you&#8217;ll be able to send pings between the machines, ssh from one to the other across the fabric, etc.</p>
<p>For the windows 7 machine, it’s a simple case of installing the OFED drivers from  openfbrics.org. While installing the windows drivers, make sure you select the SRP options, as later in this guide we’ll be setting up the RAID box as a drive on the Windows box using SRP (iSCSI RDMA Protocol). So,  install the <a href="https://www.openfabrics.org/downloads/Windows/latest/">OFED driver package</a>.</p>
<p><a rel="attachment wp-att-2406" href="http://davidhunt.ie/wp/?attachment_id=2406"><img class="alignnone size-full wp-image-2406" title="SRP" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/SRP.png" alt="" width="539" height="424" /></a></p>
<p>To enable improved throughput, enable connected mode on the link by updating the &#8220;Connected Mode&#8221; and &#8220;Connected Mode Payload Mtu size&#8221; in the properties of the interface. Open up &#8220;Device Manager&#8221; and find your Infiniband adapter:</p>
<p><a rel="attachment wp-att-2367" href="http://davidhunt.ie/wp/?attachment_id=2367"><img class="size-full wp-image-2367 alignnone" title="DeviceManager" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/DeviceManager.png" alt="" width="557" height="405" /></a></p>
<p>Right clock on the adapter and bring up the properties dialog:</p>
<p><a rel="attachment wp-att-2368" href="http://davidhunt.ie/wp/?attachment_id=2368"><img class="alignnone size-full wp-image-2368" title="Connected" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/Connected.png" alt="" width="414" height="461" /></a></p>
<p><a rel="attachment wp-att-2369" href="http://davidhunt.ie/wp/?attachment_id=2369"><img class="alignnone size-full wp-image-2369" title="MTU" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/MTU.png" alt="" width="414" height="461" /></a></p>
<p>&nbsp;</p>
<p>So, on to the linux box. I started with a fresh install of Ubuntu 11.10.</p>
<p>Firstly Install Ubuntu. Update all the packages to the latest using</p>
<pre>sudo apt-get update
sudo apt-get upgrade</pre>
<p>Everything below is done as root, this avoids having to type ‘sudo’ before every command, so I just call “sudo bash”.</p>
<p>Note: No need to edit the udev rules any more as per the Ubuntu 10.10 HOWTO, as they are correctly set by the kernel 3.0.0 and newer.</p>
<p>Edit /etc/modules and add the following modules:</p>
<pre>ib_sa
ib_cm
ib_umad
ib_addr
ib_uverbs
ib_ipoib
ib_ipath
ib_qib</pre>
<p>Next,</p>
<pre>apt-get install opensm</pre>
<p>This will install the subnet manager and all the relevant dependencies, libibverbs, etc.<br />
Then add the relevant entries for the interface into /etc/network/interfaces file:</p>
<pre>auto ib0
iface ib0 inet static
address 192.168.1.1
netmask 255.255.255.0</pre>
<p>Then reboot. This will create the relevant infiniband entries in /sys, load the ipoib modules, and bring up the infiniband port with an ip address. You should now have a functioning infiniband port on your Ubuntu machine, and you should be able to ping the remote machine.</p>
<p>The next thing is to enable connected mode for the infiniband connection. I found that this increased the tcp/ip netperf benchmarks from 3gbps tp 7gbps.</p>
<pre>root@raid:~# echo connected &gt;`find /sys -name mode | grep ib0`
root@raid:~# echo 65520 &gt;`find /sys -name mtu | grep ib0`</pre>
<p>To make this happen when the ib0 interface is brought up, modify the /etc/network/interfaces file as follows:</p>
<pre>auto ib0
iface ib0 inet static
address 10.4.12.1
netmask 255.255.255.0
up echo connected &gt;`find /sys -name mode | grep ib0`
up echo 65520 &gt;`find /sys -name mtu | grep ib0`</pre>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>Stage 2 &#8211; Setting up SRP Target</strong></span></p>
<p>The next step, should you wish to take it, is to set up the SRP targets. This is much better option than using samba shares, as it gives you a massive boost in throughput, and uses much less CPU. For example, on my setup using IPoIB and samba shares, I was able to achieve no more than 125MB/sec. Using a ramdisk set up as an SRP target, I was able to achieve 900MB/sec between my two machines.<br />
So, first get a few packages:</p>
<pre>apt-get install libmthca1
apt-get install iscsitarget
apt-get install open-iscsi
apt-get install lsscsi
apt-get install scsitools</pre>
<pre>change /etc/default/iscsitarget to:</pre>
<pre>ISCSITARGET_ENABLE=true</pre>
<p>We now need to get scstadmin. I typically pull the latest version from subversion, so we first need to get svn. apt-get install subversion<br />
There’s a choice to me made now. According to the guide at http://iscsi-scst.sourceforge.net/iscsi-scst-howto.txt , you get a slight performance increase by patching and re-compiling the kernel. That’s a lot of work, so I skipped that step for this guide. I went for the easier option, which is just to run the few commands below. I’m not sure what the difference in performance is, but I can still pull 900MB/sec across the fabric from a ramdisk set up as a an SRP target. And not having to rebuild the kernel makes this a 15 minute procedure rather than a 3 hour one. <img src='http://davidhunt.ie/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<pre>cd ~
svn co https://scst.svn.sourceforge.net/svnroot/scst/trunk scst
cd scst
make scst scst_install
make iscsi iscsi_install
make scstadm scstadm_install
make srpt srpt_install</pre>
<p>N.B.: You&#8217;ll need to rebuild these each time Ubuntu upgrades the kernel, as the modules get out of sync. Just re-run the make&#8217;s again.</p>
<p>Lets now use scstadmin to create an SRP target:</p>
<p>First we modprobe a couple of kernel modules. That will make the relevant drivers and targets available to scstadmin. We should then be able to see thse drivers/targets with a few scstadmin &#8216;list&#8217; commands:</p>
<pre>
<pre>modprobe scst_vdisk
modprobe ib_srpt</pre>
<pre>root@raid:~# scstadmin -list_handler

Collecting current configuration: done.
 Handler
 -------------
 vdisk_fileio
 vdisk_blockio
 vdisk_nullio
 vcdrom

All done.
root@raid:~# scstadmin -list_driver

Collecting current configuration: done.

 Driver
 -------
 ib_srpt

All done.
root@raid:~# scstadmin -list_device

Collecting current configuration: done.

 Handler           Device
 ------------------------
 vdisk_nullio     -
 vdisk_fileio     -
 vdisk_blockio    DISK01
 vcdrom           -

All done.
root@raid:~#</pre>
<pre>So, if you can see those handlers, targets, and drivers, your good to go with the next step.</pre>
</pre>
<p><strong>Summary:</strong></p>
<p>The following command list is the quick list to use (and modify) if you&#8217;ve done this kind of thing before. The detail section below gives a bit of explanation on each of the lines.</p>
<pre>scstadmin -disable_target ib_srpt_target_0 -driver ib_srpt
scstadmin -clear_config -force
scstadmin -open_dev DISK01 -handler vdisk_blockio -attributes filename=/dev/sda
scstadmin -set_dev_attr DISK01 -attributes t10_dev_id=0x2346,threads_num=4
scstadmin -add_group HOST01 -driver ib_srpt -target ib_srpt_target_0
scstadmin -add_lun 0 -driver ib_srpt -target ib_srpt_target_0 -group HOST01 -device DISK01 -attributes read_only=0
scstadmin -add_init 0x0002c9020021f9fc0002c902002200bc -driver ib_srpt -target ib_srpt_target_0 -group HOST01
scstadmin -enable_target ib_srpt_target_0 -driver ib_srpt
scstadmin -write_config /etc/scst.conf</pre>
<p><strong>Detail:</strong></p>
<p>Clear the current config (only if that’s ok, and you don’t have any other config that you want to keep. I do this because I’m starting with a clean slate).</p>
<pre>scstadmin -clear_config -force</pre>
<p>Create DISK01, assigning it to a partition (/dev/sdg1, /dev/md0p1, etc., etc.). I’m using a disk partition in this example.</p>
<pre>scstadmin -open_dev DISK01 -handler vdisk_blockio -attributes filename=/dev/sdg1</pre>
<p>Now set the drive attributes.</p>
<pre>scstadmin -set_dev_attr DISK01 -attributes t10_dev_id=0x2345</pre>
<p>Now add a group</p>
<pre>scstadmin -add_group HOST01 -driver ib_srpt  -target ib_srpt_target_0</pre>
<p>Add a LUN to the group, assigning it to DISK01</p>
<pre>scstadmin -add_lun 0 -driver ib_srpt -target ib_srpt_target_0 -group HOST01 -device DISK01 -attributes read_only=0</pre>
<p>Add an initiator to the group, allowing the initiator to connect to our new target. I got this from watching /var/log/messages while I was disabling and enabling the Infiniband SRP miniport in device manager on the Win7 box. This caused the SRP miniport to attempt to connect to the Ubuntu target, and that attempt is shown in the /var/log/messages file along with the initiator ID.</p>
<pre>scstadmin -add_init 0x0002c9020021f9fc0002c902002200bc -driver ib_srpt -target ib_srpt_target_0 -group HOST01</pre>
<p>Finally enable the target</p>
<pre>scstadmin -enable_target ib_srpt_target_0 -driver ib_srpt</pre>
<p>And write the config.</p>
<pre>scstadmin -write_config /etc/scst.conf</pre>
<p>At this point you should see a new drive appear on the Win7 box, and asking you to format it. If not, you could try disabling and enabling the SRP miniport driver again, and take a look at /var/log/messages to see what&#8217;s happening.</p>
<p><a rel="attachment wp-att-2376" href="http://davidhunt.ie/wp/?attachment_id=2376"><img class="alignnone size-full wp-image-2376" title="DeviceManagerSRP" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/DeviceManagerSRP.png" alt="" width="557" height="405" /></a></p>
<p>Once the new drive appears on the Windows host, you should be able to format it and start using it. If you don&#8217;t see it immediately, have a look in &#8220;Disk Management&#8221;.</p>
<p>I found that the //etc/init.d/scst script was not getting called at boot, so I added a softlink in /etc/rcS.d</p>
<pre>cd /etc/rcS.d
ln -s ../init.d/scst S26scst</pre>
<p>This is so it will start after scsitools, opensm and open-iscsi. Using the /etc/init.d/scst script also resolved a problem I&#8217;ve had for a long time, in that I used to have some modules in /etc/modules, so the SRP miniport would attempt to connect too early in the linux boot sequence, and fail, so that I had to go into the device manager and disable/enable to get it working. Now it pops up perfectly every boot of the linux box, and I  don&#8217;t have to go into device manager on the Win7 box any more.</p>
<p>I&#8217;d suggest you run a benchmark on it also just to see what kind of speed you&#8217;re getting out if it in real-world usage. There&#8217;s a very handy (free) benchmarking took <a href="http://www.attotech.com/products/product.php?sku=Disk_Benchmark">available from attotech.com</a>. Oh, and please do drop a comment below if you do get decent speeds. I&#8217;m always interested to hear what people are getting. Oh, and also, comment if you find this guide useful!</p>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>References:</strong></span></p>
<p><strong>SCST</strong> &#8211; http://scst.sourceforge.net/</p>
<p><strong>Installing iSCSI-SCST</strong> &#8211; http://iscsi-scst.sourceforge.net/iscsi-scst-howto.txt</p>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>Performance Testing. </strong></span></p>
<p>If you have plenty of memory in your linux machine, you might like to do a test of a ramdisk SRP target over the fabric.</p>
<p>There&#8217;s a ramdisk set up by default in Ubuntu at /dev/ram0, but it&#8217;s quite small, at 64K. I like to bump it up to 1Gig or 2Gig, as I have 4Gig in my linux box and it does need all that for normal operation. Adding an extra parameter to the kernel line in /boot/grub/grub.cfg does the trick nicely.</p>
<p>ramdisk_size=1024000 for a 1Gig ramdisk at /dev/ram0</p>
<p>ramdisk_size=2048000 for a 2Gig ramdisk at /dev/ram0</p>
<p>so the full line would look like:</p>
<pre>linux   /boot/vmlinuz-3.0.0-12-generic root=UUID=39331d95-e9ba-48a5-9dd9-09978e0503c4 ro   quiet splash vt.handoff=7 ramdisk_size=1024000</pre>
<p>Then using scstadmin, we add another disk to the script above, but we use vdisk_fileio rather than vdisk_blockio.</p>
<pre>scstadmin -open_dev DISK02 -handler vdisk_fileio -attributes filename=/dev/ram0</pre>
<p>Then when you open disk manager in windows, you should see a disk requesting a new MBR, which you go ahead and add, then format and run a few benchmarks on it.</p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2291" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=2291</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>900MB/sec Network at Home</title>
		<link>http://davidhunt.ie/wp/?p=2324</link>
		<comments>http://davidhunt.ie/wp/?p=2324#comments</comments>
		<pubDate>Thu, 22 Dec 2011 22:26:21 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[Bandwidth]]></category>
		<category><![CDATA[HPC]]></category>
		<category><![CDATA[Infiniband]]></category>
		<category><![CDATA[RAID]]></category>
		<category><![CDATA[throughput]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=2324</guid>
		<description><![CDATA[I&#8217;ve just made a breakthrough in my research into setting up an infiniband fabric at home. I started out at about 135MB/sec. made slow progress up to 200-220MB/sec, but this evening broke the 900MB/sec barrier. Almost 1 GIGABYTE per second. That&#8217;s well over a CD every second! Here&#8217;s the ATTO benchmark output&#8230; In previous posts, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just made a breakthrough in my research into setting up an infiniband fabric at home. I started out at about 135MB/sec. made slow progress up to 200-220MB/sec, but this evening broke the 900MB/sec barrier. Almost 1 GIGABYTE per second. That&#8217;s well over a CD every second! Here&#8217;s the ATTO benchmark output&#8230;</p>
<p><a rel="attachment wp-att-2325" href="http://davidhunt.ie/wp/?attachment_id=2325"><img class="alignnone size-full wp-image-2325" title="RamDiskb_pcie8x" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/RamDiskb_pcie8x.png" alt="" width="482" height="615" /></a></p>
<p>In previous posts, I&#8217;d identified several bottlenecks, and as I got around each one, I slowly got the speed up. However, everything seemed to max out at 200-220MB/sec. I&#8217;d identified PCI-express slots as one potential problem but when I set up a ramdisk on the linux box and exported that as an SRP target, I was still only getting 200MB/sec. Then I thought &#8211; could it be my i7 Win7 box? Surely not. That&#8217;s sooo much more powerful than the athlon64 x2 3GHz box that I&#8217;d linux installed on. But for a laugh I had a look at the PCI express slot that I&#8217;d inserted the Mellanox Infiniband card into. Even though it&#8217;s a 16x sized slot, my jaw dropped when I saw PCIEx4 written on the motherboard beside it. But the Mellanox card is a PCIEx8 card! So I moved the card into the spare PCIEx16 slot, and re-ran my tests, only to smash all previous records, achieving almost 950MB/sec for some packet sizes.</p>
<p>Just to put this into context:</p>
<p>Machine A:</p>
<ul>
<li>3GHz Athlon 64 dual core, Asus A8N-SLI Premium, 4Gig ram, Mellanox MHEA28-XTC 10Gbps Infiniband card.</li>
<li>Running Ubuntu 11.10, 2Gig Ramdisk set up as an SRP target</li>
</ul>
<p>Machine B:</p>
<ul>
<li>3.20GHz Intel i7 quad core, Gigabyte GA-X58-USB3, 12Gig ram, Mellanox MHEA28-XTC 10Gbps Infiniband card</li>
<li>Running Windows 7 Home Premium, OFED infiniband drivers package, SRP Initiator. ATTO Disk Benchmark utility.</li>
</ul>
<p>Both machines are connected directly together, no switch was needed.</p>
<p>Consumer grade hardware for the most part, with the magical Mellanox ingredient that pushes this beyond what I previously though possible.</p>
<p>Also, it&#8217;s worth noting that this is a stock Ubuntu 11.10 install, a custom kernel was NOT required. I&#8217;m working on a HOWTO to get the Infiniband fabric up and SRP targets configured, I&#8217;ll be posting that soon.  I reckon it&#8217;ll be possible to configure an Ubuntu box up to the 900MB/sec speeds in under 15 minutes.</p>
<p>Here&#8217;s the HDTune benchmark of the same setup. Not quite 900MB/sec, but not far off&#8230;.</p>
<p><a rel="attachment wp-att-2345" href="http://davidhunt.ie/wp/?attachment_id=2345"><img class="alignnone size-full wp-image-2345" title="ramdisk_hdtune" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/ramdisk_hdtune.png" alt="" width="594" height="521" /></a></p>
<p>&#8220;You can learn from my mistakes&#8221; (putting the infiniband card in the wrong slot)  :)</p>
<p>More to come soon&#8230;..</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>Additional Notes:</strong></span></p>
<p>Here&#8217;s a shot of the Linux Box. It&#8217;s changed a bit since this photo was taken, there&#8217;s now a raid card in there where the graphics card is shown, but it give you and idea of the &#8220;consumer grade&#8221; hardware I&#8217;m doing this with&#8230;.</p>
<p><a rel="attachment wp-att-2351" href="http://davidhunt.ie/wp/?attachment_id=2351"><img class="alignleft size-full wp-image-2351" title="5742524775_f9b88f4c11_o" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/5742524775_f9b88f4c11_o.jpg" alt="" width="560" height="513" /></a></p>
<p>&nbsp;<br />
<script type="text/javascript">// <![CDATA[
  google_ad_client = "ca-pub-4525212338600800"; /* CameraPi */ google_ad_slot = "6222699752"; google_ad_width = 728; google_ad_height = 90;
// ]]&gt;</script><br />
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript">
</script></p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2324" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=2324</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>RAID controller installation &amp; benchmarks</title>
		<link>http://davidhunt.ie/wp/?p=2221</link>
		<comments>http://davidhunt.ie/wp/?p=2221#comments</comments>
		<pubDate>Sat, 17 Dec 2011 11:04:54 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[infiniband raid throughput bandwidth backup]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=2221</guid>
		<description><![CDATA[Continuing on my research into a high-bandwidth infiniband fabric at home, mainly with a view to fast backups of the 2000Gigs of photos I now have, I was now on the lookout on eBay for a good-value hardware RAID controller card. After a couple of weeks of looking at cards and prices, I came across [...]]]></description>
			<content:encoded><![CDATA[<p>Continuing on my research into a high-bandwidth infiniband fabric at home, mainly with a view to fast backups of the 2000Gigs of photos I now have, I was now on the lookout on eBay for a good-value hardware RAID controller card. After a couple of weeks of looking at cards and prices, I came across an auction for a Dell PERC 5/i 8-port card. Bidding was pretty low, probably due to the comment on the auction that the seller could not guarantee that the card was in fully working condition. Turned out later to be in great working order. <img src='http://davidhunt.ie/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a rel="attachment wp-att-2230" href="http://davidhunt.ie/wp/?attachment_id=2230"><img title="perc5i" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/perc5i.jpg" alt="" width="448" height="257" /></a></p>
<p>I ended up getting it for €31 including shipping to Ireland from Finland. Most of these cards go for three times that price. I was just lucky that the auction ended at 3am, and I dont think that  many people bothered to stay up to keep an eye on it.</p>
<p>About a week later, the card arrived, along with the seperate order of a couple of SFF8484 to 4-way SATA cables, I was ready to go.</p>
<p><a rel="attachment wp-att-2222" href="http://davidhunt.ie/wp/?attachment_id=2222"><img class="alignnone size-medium wp-image-2222" title="_MG_7075" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/MG_7075-500x500.jpg" alt="" width="500" height="500" /></a></p>
<p>I&#8217;d already freed up one of the PCI-e 16x slots in by Ubuntu box, so the Perc 5/i slotted right in. I hooked up the 5 x 1TB drives that I was configuring in a RAID5 volume, and booted up.</p>
<p>Upon boot, the raid card was detected, and I hit CTRL-R to enter the setup. It was fairly straightforward, I selected the 5 drives that I&#8217;d connected up to it, and initialised a new RAID5 volume.</p>
<p>Anyway, the drive then appeared to Linux as a 4TB volume, which I used parted to partition into one big volume.</p>
<p>There were a couple of problems once I&#8217;d installed the drive,  read speed and write speed. I was getting 200MB/sec reads and 50MB/sec writes. I did a bit of googling and found an excellent thread on the Dell PERC 5/i controller (<a href="http://www.overclock.net/t/359025/perc-5-i-raid-card-tips-and-benchmarks">ref1</a>), so I flashed the firmware up to the very latest from LSI. I initially did not have a battery, but the latest firmware allowed me to force Write-Back and Adaptive Read-Ahead (not safe settings without battery, but it&#8217;d be ok till the battery arrived, another eBay purchase), which should improve the throughput. Also, I found that when you do a quick init of the aray, it says that it completes very quickly, but it&#8217;ll go ahead and do a full background init afterwards thereby confusing my throughput results. I found that the best thing to do was to do a full init in the RAID configuration utility and let it sit there for 2.5 hours to complete the full init of 4TB (5x1TB). That way I&#8217;d know that the initialisation process would not be skewing my measurements later. Before I did the full init, though, I was getting 170MB read/write (across the infiniband fabric) even when the background init was in progress, so the firmware upgrade was definitely a step in the right direction. I was looking forward to full speed measurements in a couple of hours.</p>
<p>Once the init finished, I was disappointed to find that I was only getting just under 200MB/sec read/write.</p>
<p><a rel="attachment wp-att-2242" href="http://davidhunt.ie/wp/?attachment_id=2242"><img class="alignnone size-medium wp-image-2242" title="Raid5_128K_AR_FWB" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/Raid5_128K_AR_FWB-391x500.png" alt="" width="391" height="500" /></a></p>
<p>So, I tore down the array again and went back to a 5 disk RAID0 array, for max speed. This gave me the following:</p>
<p><a rel="attachment wp-att-2243" href="http://davidhunt.ie/wp/?attachment_id=2243"><img class="alignnone size-full wp-image-2243" title="Raid0_64K_AR_FWB" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/Raid0_64K_AR_FWB.png" alt="" width="482" height="615" /></a></p>
<p>This was only marginally better than the RAID5 readings, and worse read speed than using software RAID and motherboard SATA connectors. So to eliminate my Linux box motherboard and CPU, I took the RAID controller out of the Linux box and interted it into my i7  desktop (i7-950@3.07GHz 12G RAM), leaving the drives in the linux box, and running the SATA cables between the two machines. The throughput from the raid card was quite different.</p>
<p><a rel="attachment wp-att-2244" href="http://davidhunt.ie/wp/?attachment_id=2244"><img class="alignnone size-full wp-image-2244" title="Raid0_64K_AR_FWB_i7b" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/Raid0_64K_AR_FWB_i7b.png" alt="" width="482" height="615" /></a></p>
<p>So, now I was getting 300-350MB/sec writes, and up to 600MB/sec reads, with 500MB/sec reads quite common above block size of 64K. That proved that my linux box motherboard is now the bottleneck. Maybe the fact that I&#8217;ve two PCIe-8x cards plugged into the two PCIe-16x slots intended for graphics cards is a problem?</p>
<p>At least now I knew what the Perc 5i RAiD controller was capable of, I just had to get the machine that it was hosted in up to spec to be able to drive it at full speed. Maybe then we&#8217;ll get more out of the infiniband link between the two machines. I&#8217;ll look at re-organising the cards in the machine, maybe look at getting a new motherboard with faster PCI-express lanes.</p>
<p>I&#8217;m rapidly coming to the conclusion that trying to re-cycle 5-year-old components to get uber-speed throughput is a lot more difficult than it seems at first. Might be something to do with the hardware not being up to the task when pushed to the limit. The motherboard I&#8217;m using in the Linux box with the RAID controller is an Asus A8N-LSI-Premium, which was a top-end consumer-grade motherboard in 2005. With two PCI-e 16x slots, each <a href="http://en.wikipedia.org/wiki/List_of_device_bit_rates">theoretically capable</a> of 2GB/sec (PCI-e 1.0 8 lanes) in SLI mode, yet I&#8217;m only able to get 200-300MB/sec through them? What&#8217;s with that? Surely there&#8217;s gotta be a helluva lot more data going through those slots when there&#8217;s two big fat graphics cards in them.</p>
<p>Stay posted for more updates soon&#8230;.</p>
<p>Update: Just to help narrow down the bottleneck, I managed to get a 1Gigabyte ramdisk set up as an SRP target. Here&#8217;s the throughput across the fabic:</p>
<p><a rel="attachment wp-att-2319" href="http://davidhunt.ie/wp/?attachment_id=2319"><img class="alignnone size-full wp-image-2319" title="RamDisk" src="http://davidhunt.ie/wp/wp-content/uploads/2011/12/RamDisk.png" alt="" width="482" height="615" /></a></p>
<p>So, The infiniband card in the PCI-express socket with 8 lanes assigned is only getting 200MB/sec through it from RAM. CPU was about 25% busy through the whole test.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>References:</p>
<p><a href="http://www.overclock.net/t/359025/perc-5-i-raid-card-tips-and-benchmarks">http://www.overclock.net/t/359025/perc-5-i-raid-card-tips-and-benchmarks</a></p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2221" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=2221</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Service Resumes&#8230;.</title>
		<link>http://davidhunt.ie/wp/?p=2216</link>
		<comments>http://davidhunt.ie/wp/?p=2216#comments</comments>
		<pubDate>Thu, 01 Dec 2011 11:19:47 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=2216</guid>
		<description><![CDATA[Apologies to all who where trying to get at the website yesterday. Due to a non-delivery of an email last month, I was not reminded to renew my hosting. So, yesterday, they suspended my account. 30 minutes later, I had paid the fees, yet it took almost 24 hours for my website to be re-activated. [...]]]></description>
			<content:encoded><![CDATA[<p>Apologies to all who where trying to get at the website yesterday. Due to a non-delivery of an email last month, I was not reminded to renew my hosting. So, yesterday, they suspended my account. 30 minutes later, I had paid the fees, yet it took almost 24 hours for my website to be re-activated. I&#8217;m not happy.</p>
<p>Anyway, welcome back all&#8230;.</p>
<p>Regards,</p>
<p>Dave.</p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2216" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=2216</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Infiniband SRP target on Ubuntu from Win7</title>
		<link>http://davidhunt.ie/wp/?p=491</link>
		<comments>http://davidhunt.ie/wp/?p=491#comments</comments>
		<pubDate>Tue, 22 Nov 2011 11:06:00 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[Bandwidth]]></category>
		<category><![CDATA[Infiniband]]></category>
		<category><![CDATA[RAID]]></category>
		<category><![CDATA[throughput]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=491</guid>
		<description><![CDATA[&#160; While building a linux box as a hard drive farm, I wanted to get the fastest transport possible between the machines using my existing Infiniband fabric (10Gbps), and all research lead to methods using RDMA. I had to rule out NFS/RDMA, as there is no NFS client delivered with Windows 7 Home Premium. I [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>While building a linux box as a hard drive farm, I wanted to get the fastest transport possible between the machines using my existing Infiniband fabric (10Gbps), and all research lead to methods using RDMA. I had to rule out NFS/RDMA, as there is no NFS client delivered with Windows 7 Home Premium. I looked at iSCSI, and there is an implementation which uses RDMA called SRP. Having tried and initially failed, I gave up for a few months and was happy enough with a samba link over IPoIB. That was giving me about 130MB/sec reads. I still would have love to get SRP working, as that should theoretically be a lot faster.</p>
<p>Then, someone dropped me a comment on one of my Infiniband blog articles about how they&#8217;d got SRP working between a Windows 7 machine and a SLES target. Since this confirmed that Windows 7 was capable of SRP, I had another go. I had thought that it was a limitation of the OFED drivers on Windows 7, but it turns out that I was incorrect,  it was mis-configuration on the Ubuntu side. This article take you through that setup, after which we&#8217;ll have an SRP target on the Ubuntu box, accessed from an initiator on a Windows 7 box.</p>
<p>Firstly, here&#8217;s some acronyms:</p>
<p>SCSI &#8211; we should know what this one is (Small Computer Systems Interface)<br />
iSCSI &#8211; SCSI protocol over a network.  (Internet SCSI).<br />
SCST &#8211; SCSI Target subsystem for linux with target drivers for iSCSI, Fibre Channel, SRP, SAS, FCoE, etc. We&#8217;re most interested in the SRP target.<br />
RDMA &#8211; Remote Direct Memory Access &#8211; fast way of copying chunks of memory from one machine to another.<br />
SRP &#8211; SCSI RDMA Protocol &#8211; wraps it all up using RDMA over SCSI protocol.</p>
<p>This article assumes that you&#8217;ve already got Infiniband working. See link to &#8220;Enabling Infiniband on Ububtu 10.10&#8243; article below which guides you though that.</p>
<p>I found that the easiest way to get SCST (SCSI Target) with SRP (SCSI RDMA Protocol) was to patch the ubuntu kernel source and run a custom kernel. I haven&#8217;t tried the latest Ubuntu installs, hopefully it&#8217;s included in those and that a kernel rebuild is not necessary. For the moment, I patched my kernel and booted it.</p>
<p>Patch broke kernel. I had to add</p>
<p>#define REQ_WRITE 0&#215;4<br />
to block/blk-map.c</p>
<p>Your kernel might be ok, but that fix allowed my compile to complete.</p>
<p>Once the kernel was up and running, there&#8217;s various packages to be installed. I didn&#8217;t keep track of these, apologies. However, I do intend to do a complete rebuild soon, so I&#8217;ll update the main article with the complete list from start to finish, including the basic infiniband setup all the way to setting up SRP targets so you can have a clean install. Ubuntu 11.10 might even have the scst stuff built into the kernel, eliminating the need to build a custom kernel.</p>
<p>The srp_daemon was complaining on startup about missing /dev/class/infiniband/uverbs* files, so again the udev rules had to be edited to create these. Also, the libmthca1 package needed to be installed to provide user-space drivers for the Mellanox HCAs for use with the ibverbs library.</p>
<p>Now, onto the SCST (SCSI target subsystem) setup. We should have the ib_srp driver installed and available as a target to scstadmin. We can verify this by using &#8220;scstadmin -list_target&#8221; go show the ib_srpt target is available.</p>
<div>First, we&#8217;ll do a few &#8216;lists&#8217;.</div>
<div>scstadmin -list_handler</div>
<div>
<div>scstadmin -list_driver</div>
<div>scstadmin -list_target</div>
<div>So, then the list of commands to set up the target:</div>
<p><em>Summary</em></p>
<pre>scstadmin -clear_config -force
scstadmin -open_dev DISK01 -handler vdisk_blockio -attributes filename=/dev/sdg1
scstadmin -set_dev_attr DISK01 -attributes t10_dev_id=0x2345
scstadmin -add_group HOST01 -driver ib_srpt  -target ib_srpt_target_0
scstadmin -add_lun 0 -driver ib_srpt -target ib_srpt_target_0 -group HOST01 -device DISK01 -attributes read_only=0
scstadmin -add_init 0x2c902002200bc -driver ib_srpt -target ib_srpt_target_0 -group HOST01
scstadmin -add_init 0x0002c9020021f9fc0002c902002200bc -driver ib_srpt -target ib_srpt_target_0 -group HOST01
scstadmin -enable_target ib_srpt_target_0 -driver ib_srpt
scstadmin -write_config /etc/scst.conf</pre>
<blockquote><p>&nbsp;</p></blockquote>
<p><em>Detail</em></p>
<p>Clear the current config (only if that&#8217;s ok, and you don&#8217;t have any other config that you want to keep. I do this because I&#8217;m starting with a clean slate).</p>
<pre>scstadmin -clear_config -force</pre>
<p>Create DISK01, assigning it to a partition (/dev/sdg1, /dev/md0p1, etc., etc.). I&#8217;m using a disk partition in this example.</p>
<pre>scstadmin -open_dev DISK01 -handler vdisk_blockio -attributes filename=/dev/sdg1</pre>
<p>Now set the drive attributes.</p>
<pre>scstadmin -set_dev_attr DISK01 -attributes t10_dev_id=0x2345</pre>
<p>Now add a group</p>
<p>scstadmin -add_group HOST01 -driver ib_srpt  -target ib_srpt_target_0</p>
<p>Add a LUN to the group, assigning it to DISK01</p>
<pre>scstadmin -add_lun 0 -driver ib_srpt -target ib_srpt_target_0 -group HOST01 -device DISK01 -attributes read_only=0</pre>
<p>Add an initiator to the group, allowing the initiator to connect to our new target. I got this from watching /var/log/messages while I was disabling and enabling the Infiniband SRP miniport in device manager on the Win7 box. This caused the SRP miniport to attempt to connect to the Ubuntu target, and that attempt is shown in the messages file along with the initiator ID.</p>
<pre>scstadmin -add_init 0x0002c9020021f9fc0002c902002200bc -driver ib_srpt -target ib_srpt_target_0 -group HOST01</pre>
<p>Finally enable the target</p>
<pre>scstadmin -enable_target ib_srpt_target_0 -driver ib_srpt</pre>
<p>And write the config.</p>
<pre>scstadmin -write_config /etc/scst.conf</pre>
</div>
<p>At this point I saw a new drive appear on the Win7 box, and it was asking me to format it. I formatted it with NTFS, 16K blocks, then did some benchmarks. 250MB/sec reads and 50MB/sec writes. The 50MB/sec writes were down to the speed of the software RAID on linux. Once I split the drives into a couple of RAID0 arrays, the writes went up to 200MB/sec (two drives in RAID0).</p>
<p>So, the SRP issue is resolved, now I need a hardware RAID card with enough horsepower to push the drives at full speed. I&#8217;m looking at an 8-port RAID card with PCI-e 4x or 8x. I&#8217;ll soon have a spare PCI-e 8x slot in my motherboard once I move the graphics card to a 1x slot. I&#8217;ve hacked the 1x slot so I can fit a larger card into it. I don&#8217;t need a fast gfx card, and I&#8217;ve even disabled the graphical desktop on the machine, all I need is a text-based interface. So a PCI-e 1x graphics card should be fine. It&#8217;s also interesting to note that my motherboard has 20 PCI-express lanes in total, 16 for the two PCI-e 16x slots, but the 16 lanes are shared.  It&#8217;s either 16x + 1x or 8x + 8x, depending on the SLI settings in the BIOS. That leaves 3 or 4 lanes for the PCI-e 4x slot (2 lanes)  and 1 or two left for the motherboard RAID controller. Not enough really, so I want to get the new RAID controller into one of the PCIe 16x slots using 4-8 PCIe lanes on the mobo. Who&#8217;d have known that the slot sizes don&#8217;t actually have that amount of lanes assigned. That&#8217;s one of the cheats that manufacturers use to bring down the price of motherboards.</p>
<p>More to come soon&#8230;.</p>
<p>Edit: See what happened when I got the <a href="http://davidhunt.ie/wp/?p=2221">RAID controller&#8230;</a></p>
<p><strong>References:</strong><br />
SCST - <a href="http://scst.sourceforge.net/">http://scst.sourceforge.net/<br />
</a>Rebuild a new linux kernel <a href="https://help.ubuntu.com/community/Kernel/Compile">https://help.ubuntu.com/community/Kernel/Compile<br />
</a>Installing iSCSI-SCST - <span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; font-size: 12px; line-height: 18px; white-space: pre;"><a style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; font-size: 13px; line-height: 19px; white-space: normal;" href="http://iscsi-scst.sourceforge.net/iscsi-scst-howto.txt">http://iscsi-scst.sourceforge.net/iscsi-scst-howto.txt</a></span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=491" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=491</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Blog Moving Home</title>
		<link>http://davidhunt.ie/wp/?p=2195</link>
		<comments>http://davidhunt.ie/wp/?p=2195#comments</comments>
		<pubDate>Sat, 01 Oct 2011 13:29:11 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=2195</guid>
		<description><![CDATA[Hi all, Ive just installed a new theme for the overall domain &#8220;www.davidhunt.ie&#8221;, and in the process I&#8217;ve moved the blog up to the root directory of the server. When exported the content from here and imported into the new blog, the page numbers changes, so I can&#8217;t redirect traffic from here to the new [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>Hi all,</p>
<p>Ive just installed a new theme for the overall domain &#8220;www.davidhunt.ie&#8221;, and in the process I&#8217;ve moved the blog up to the root directory of the server. When exported the content from here and imported into the new blog, the page numbers changes, so I can&#8217;t redirect traffic from here to the new site automatically. So I&#8217;ll leave this WordPress installation here so anyone who&#8217;s put links on their site to here will still work (and I know there&#8217;s a lot of you from the stats).</p>
<p>So, the blog is now at www.davidhunt.ie, and the old one will remain dormant at www.davidhunt.ie/wp .</p>
<p>If you were an RSS subscriber, it might be an idea to re-subscribe to the new blog: <a href="http://davidhunt.ie/?feed=rss2">http://davidhunt.ie/?feed=rss2</a></p>
<p>Rgds,</p>
<p>Dave.</p>
</div>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=2195" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=2195</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tri-Flash Re-design</title>
		<link>http://davidhunt.ie/wp/?p=783</link>
		<comments>http://davidhunt.ie/wp/?p=783#comments</comments>
		<pubDate>Sat, 17 Sep 2011 21:18:18 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=783</guid>
		<description><![CDATA[Since I got myself some new table-saw blades, along with the capability to cut acrylic/perspex, I thought I&#8217;d have a go at manufacturing a new, neater version of the tri-flash I designed last year. This one was going to be much smaller, and require less setup time. The result is as follows: The nice thing [...]]]></description>
			<content:encoded><![CDATA[<p>Since I got myself some new table-saw blades, along with the capability to cut acrylic/perspex, I thought I&#8217;d have a go at manufacturing a new, neater version of the tri-flash I designed last year. This one was going to be much smaller, and require less setup time. The result is as follows:</p>
<p><a rel="attachment wp-att-785" href="http://davidhunt.ie/wp/?attachment_id=785"><img class="size-medium wp-image-785 alignnone" title="_MG_3152" src="http://davidhunt.ie/wp/wp-content/uploads/2011/09/MG_3152-500x380.jpg" alt="" width="500" height="380" /></a></p>
<p>The nice thing about this design, is that it distributes the strobes quite evenly around the centre point, so that when an umbrella is inserted (that&#8217;s what the hole in the middle is for), it illuminates it nicely.</p>
<p>Here&#8217;s a closer look:</p>
<p><a rel="attachment wp-att-786" href="http://davidhunt.ie/wp/?attachment_id=786"><img class="alignnone size-medium wp-image-786" title="_MG_3151" src="http://davidhunt.ie/wp/wp-content/uploads/2011/09/MG_3151-368x500.jpg" alt="" width="368" height="500" /></a></p>
<p>And a front view:</p>
<p><a rel="attachment wp-att-787" href="http://davidhunt.ie/wp/?attachment_id=787"><img class="alignnone size-medium wp-image-787" title="_MG_3150" src="http://davidhunt.ie/wp/wp-content/uploads/2011/09/MG_3150-343x500.jpg" alt="" width="343" height="500" /></a></p>
<p>Also, here&#8217;s the original flash/brolly holder before modification. You can see the piece I removed in order to attach the new acrylic pieces.</p>
<p><a rel="attachment wp-att-784" href="http://davidhunt.ie/wp/?attachment_id=784"><img class="alignnone size-medium wp-image-784" title="_MG_3153" src="http://davidhunt.ie/wp/wp-content/uploads/2011/09/MG_3153-374x500.jpg" alt="" width="374" height="500" /></a></p>
<p>In order to make the acrylic pieces, I cut a length of acrylic, and made a notch in it. Then I used cyano-acrylate (super glue) to glue the notched piece onto another flat piece of acrylic. The bond of the cyano-acrylate seems to be very strong, very good for acrylic. Maybe the hint is in the &#8220;acrylate&#8221; <img src='http://davidhunt.ie/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Anyway, I ended up with an 8-inch lenght of hotshoe-holder, which could then be cut it to length to make several hotshoe holders, and I could bolt them onto the brolly holder at various angles, as can be seen in the second image above.</p>
<p>As for the setup time &#8211; with the previous design, I had to set up 3 brolly adapters on the &#8220;cross&#8221;, then attach three strobes. Now it&#8217;s pop the modifued brolly adapter onto the stand, and then the three strobes. About half the setup time. And it&#8217;s neater, and I think much cooler looking with the transparent acrylic <img src='http://davidhunt.ie/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>The three strobes in the top image are triggered by a single trigger using a 4-way cable. You can see the DIY sync ports in the muddle of the red window, as the IR modules have been removed.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=783" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=783</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Photosmith and iPad Camera Connection Kit</title>
		<link>http://davidhunt.ie/wp/?p=766</link>
		<comments>http://davidhunt.ie/wp/?p=766#comments</comments>
		<pubDate>Sat, 17 Sep 2011 16:16:54 +0000</pubDate>
		<dc:creator>daveh</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://davidhunt.ie/wp/?p=766</guid>
		<description><![CDATA[I came across an interesting looking app in the app store called Photosmith. It&#8217;s described as &#8220;the iPad mobile companion for Adobe Lightroom®&#8221;. At €14.49, it was quite an expensive app, but since I&#8217;m interested in all types of tethering, especially those that go with my camera and software I&#8217;ve already purchased, such as Lightroom [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Photosmith" src="http://www.photosmithapp.com/wp-content/themes/photosmithapp/images/app-header-icon.png" alt="" width="109" height="113" />I came across an interesting looking app in the app store called Photosmith. It&#8217;s described as &#8220;the iPad mobile companion for Adobe Lightroom®&#8221;. At €14.49, it was quite an expensive app, but since I&#8217;m interested in all types of tethering, especially those that go with my camera and software I&#8217;ve already purchased, such as Lightroom 3. The only piece of hardware that I was missing was the iPad Camera Connection kit, so I went into my local Apple store and picked one up for €29.</p>
<p><img class="alignleft" title="cc" src="http://storeimages.apple.com/1966/as-images.apple.com/is/image/AppleInc/MC531_GEO_US?wid=185&amp;hei=185&amp;fmt=jpeg&amp;qlt=95&amp;op_sharpen=0&amp;resMode=bicub&amp;op_usm=0.5,0.5,0,0&amp;iccEmbed=0&amp;layer=comp" alt="" width="185" height="185" />The iPad Camera Connection kit gives you two dongles, one with a slot for an SD card, and the other with a USB connector, for direct connection to your camera via USB cable.</p>
<p>The initial thing I discovered (I have a habit of reading the manual after I&#8217;ve tried things out), was that this is not really a tethering solution. It&#8217;s more of a backup of the images on your camera, which you can then go through, categories, apply ratings, keywords, etc, then later import into lightroom. There is no option to send direct to the iPad as your shooting. I was kinda disappointed at that.<br />
Also, the other similar application I have on the iPad, called Shuttersnitch, only works wirelessly, not over the USB cable, so does not work with the Camera Connection Kit. Now there&#8217;s something for either team of developers to look at, proper tethering via USB cable. There&#8217;s several reasons why this would be a good idea.</p>
<ol>
<li>A WFT-E4 wireless grip for my Canon EOS5DII is phenomenally expensive.</li>
<li>Eye-Fi with any Compact Flash based camera is notoriously difficult to get working, I&#8217;m still trying to find a suitable CF-SD adapter so my Eye-Fi X2 Pro will work in my 5DII.</li>
<li>Large RAW files transfer MUCH more quickly over USB cable, so if your in the habit of shooting your subjects in burst mode, that kinds rules out Wifi tethering.</li>
</ol>
<p>Anyway, the general mode of operation is as follows:</p>
<ol>
<li>Take bunch of pictures.</li>
<li>Connect your camera to the iPad via the USB cable and the Camera Connection Kit.</li>
<li>The iPad photo app will kick off and ask you which images you want to import. Import your selected images.</li>
<li>THEN, you start up Photosmith. You can browse through your imported images, tagging, rating, assigning colour codes, etc. just like Lightroom.</li>
<li>Once you get back to your PC you can then import the images using the Import wizard in lightroom to get the images from your iPad to your PC/Mac.</li>
<li>All the ratings are imported along with the imported images.</li>
</ol>
<p>One thing I found is that the default connection method is wifi. This takes absolutely AGES when working with RAW files that are up to 30Mb each. So slow in fact, that I almost gave up at that stage. But I persisted, and found an &#8220;advanced import&#8221; method where you connect your iPad via USB, import the images into lightroom with the normal method, then use the Photosmith sync to get the ratings metadata. 3 seconds per image as opposed to 30. And the metadata was applied to the correct files even though they were imported via an alternative method to the Photosmith sync.</p>
<p>So while it&#8217;s not a tethering solution, it&#8217;s a great way of having a backup of your images in the field. Even if you were only to sync your camera to your iPad every few dozen images or so, you&#8217;ll have a backup on the iPad in case of flash card disaster. And, if you&#8217;ve got your images on the iPad, you can categorise them and tag them as you shoot in the field, or on the trip home, which will save you some time when you get back to your main post-processing computer.</p>
<p>Now that I have it, and have sorted out the &#8220;advanced import&#8221; option, it&#8217;s certainly a usable and useful addition to my list of iPad photography apps, and makes the iPad more useful in the field. If only there was an option to display images as you shoot them!</p>
<p>References:</p>
<p>Apple iPad Camera Connection Kit:<br />
<a href="http://store.apple.com/us/product/MC531ZM/A">http://store.apple.com/us/product/MC531ZM/A<br />
</a>Photosmith Website: <a href="http://www.photosmithapp.com/">http://www.photosmithapp.com/</a></p>
<p>&nbsp;</p>
 <img src="http://davidhunt.ie/wp/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=766" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://davidhunt.ie/wp/?feed=rss2&#038;p=766</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
