Improving FreeNAS iSCSI Performance with VMware ESXi

What does the IOPS setting do?

Included in every version of vSphere is Native Multi Pathing (NMP).  NMP offers the Round Robin Path Selection Policy (PSP) which works by utilising all available active paths to the datastores.  Round Robin sends all IOPS down a single active path until the number of IOPS sent down that path reaches the limit defined by the “IOOperation Limit” setting before it moves on to the next available active path.  Once all active paths have been used then it moves back to the first path and the cycle starts again.

Why change the Round Robin IOPS setting?

By default the Round Robin PSP will send 1000 IOPS down each path before moving on to the next one.  Tweaking this setting correctly can achieve a notable increase in disk IO throughput by more effectively utilizing the available paths.

For those of you that would like to know more, I have provided a link to an interesting article that explores the difference in performance between certain “IOOperation Limit” settings on various P2000 G3 devices here.

How do you change the Round Robin IOOperation Limit setting?

The Round Robin “IOOperation Limit” setting can be managed using VMware vSphere CLI.The commands are slightly different on an ESXi 5.x host compared to an ESXi 4.x host.

Note: A problem was identified whereby the Round Robin IOPS setting would be reset to default on ESXi hosts following a reboot.  This was resolved in ESXi 4.0 U2.

The commands for ESXi 4.x are:

Check the “IOOperation Limit” setting for a datastore:

esxcli nmp roundrobin getconfig -d [device UID]
Example output:
Set the “IOOperation Limit” setting for a datastore:
esxcli nmp roundrobin setconfig -d [device UID] -t iops -I [IOPS]
Example output:

The commands for ESXi 5.x are:

Check the “IOOperation Limit” setting for a datastore:

esxcli storage nmp psp roundrobin deviceconfig get -d [device UID]
Example output:
Set the “IOOperation Limit” setting for a datastore:
esxcli storage nmp psp roundrobin deviceconfig set -d [device UID] -t iops -I [IOPS]
Example output:

Ideally, you will need to run some tests on your own ESXi environment to establish the best [IOPS] value to use in your specific scenario.  This topic is, however, discussed in another of our blogs as mentioned in the section above.

The [device UID] can be obtained via the vSphere Client by following these steps:

1. Locate the Datastore that you want to set the “IOOperations Limit” setting for.  That can be via the “Summary” tab of a host / cluster or via the “Datastores” Invetory view etc.

2. Right-Click on the datastore and click on “Properties…” in the pop-up menu that apears

3. Look at the “Extents” section of the datastore properties box that appears and note the naa.600xxxxxx number that is displayed within the brackets.  This is the [device UID] that needs to be input into the esxcli command


Changing the setting from the default 1,000 IOPS to 1 IOPS yielded the following result in ATTO benchmarks. ATTO isn’t good at benchmarking ZFS storage arrays because of the ARC cache, but you can still see the substantial performance difference here. Whereas before, performance was hitting a wall curiously close to the 1Gb/s saturation limit it now manages to saturate 3 GigE links from the 2048MB test onwards.

Performance before set to default 1,000 IOPS
Performance after set to 1 IOPS.


Canada’s Federal Debt Data from Statscan

Canadian Federal DebtSource: Statistics Canada, CANSIM, table 385-0010.

Excel spreadsheet available here: federal-debt.xlsx

This data shows the Canadian Federal Government debt. Note that from 1938 – 1974 we borrowed from the Bank of Canada interest free. Following Basel Committee guidelines enacted in 1974, we stopped borrowing from our own public bank and instead began to borrow from private banks at interest. The effects of those compounding interest payments can clearly be seen as the debt began to balloon shortly after 1974. Data is not tracked in this Cansim table past 2008 as the Harper government cut funding which resulted in a change in how debt is tracked. Data here was normalized to 2002 dollars.

As part of the Bank of Canada Act,

18. The Bank may
(j) make loans to the Government of Canada or the government of any province, but such loans outstanding at any one time shall not, in the case of the Government of Canada, exceed one-third of the estimated revenue of the Government of Canada for its fiscal year, and shall not, in the case of a provincial government, exceed one-fourth of that government’s estimated revenue for its fiscal year, and such loans shall be repaid before the end of the first quarter after the end of the fiscal year of the government that has contracted the loan;

More information on this topic is readily available online. A great place to start is this video:

Additionally, a lawsuit is being brought to the Supreme Court by Rocco Gallati with the intent of reinstating the government’s use of interest-free loans from the BoC as is mandated in the Bank of Canada Act.


pfSense 2.2.1 breaks TekSavvy IPv6 on the LAN

So I decided to update to pfSense 2.2.1 today because I had time. Turned out to be a good decision to wait on this upgrade for a time where I wasn’t in a rush – this release changed the way that pfSense handles IPv6 prefix delegation. Long story short, I lost all IPv6 access on LAN clients but had full IPv6 internet access on the WAN. After some searching, I found out that I wasn’t the only one with this issue:

Apparently in this case, it’s not a bug, it’s a feature. This was apparently done on purpose according to this post in the pfSense redmine. PD is no longer being requested if you do not have tracking interfaces configured.

The “official” way to make IPv6 work now is apparently to set the LAN interface to Track Interface under Interfaces | LAN | IPv6 Configuration Type. The problem is that you can no longer configure DHCPv6 settings anymore. Apparently DHCPv6 is still enabled but the configuration options are not exposed in the GUI a the moment. It also broke some of my internal LAN due to the static IP address assignments no longer being valid. In the end, my connection was very flaky over IPv6. For some reason, clients were taking a very long time to get their IPv6 addresses (up to 5 minutes). Then some clients started randomly losing their IPv6 internet access again. This piled on top of all the ways this breaks the LAN configuration and internal DNS resolution settings already in place, I decided that configuring it this way is probably going to be unreliable and more trouble than it’s worth, at least with Teksavvy IPv6 addressed handed out via prefix delegation.

In the end, I configured Interfaces | WANv6 | DHCP6 client configuration like this and put everything else back how it was before and it works fine again:


Windows 7 USB/DVD Download Tool error: We were unable to copy your files. Please check your USB device and the selected ISO file and try again.

Sometimes if your USB stick has something in its MBR you might get the error

Windows 7 USB/DVD Download Tool error: We were unable to copy your   files. Please check your USB device and the selected ISO file and try again.

You have to start command prompt as an Administrator (On Windows 7 that means right clicking the cmd and selecting Run as Administrator) and use the diskpart utility.

WARNING: Be careful to select the right drive or else your day won’t have a happy end because if you select the wrong drive you will lose all your data on this drive!

Instead of formatting the partition with FAT32, you can also use NTFS, but then you need an extra step to make the drive bootable:

Bootsect.exe /nt60 X:

“X:” is the drive letter of your USB stick. Bootsect.exe can be found on the Windows 7 DVD in the boot folder. However, I can’t really recommend using NTFS. Some USB stick, at least, appeared to be slower with NTFS.

Complete Steps:

  1. Start command prompt as Administrator
  2. type diskpart
  3. type list disk
  4. type select disk  and number of your USB disk ( like select disk 1 )
  5. type clean
  6. type create partition primary
  7. type select partition 1
  8. type active
  9. type format quick fs=fat32
  10. type assign
  11. type exit to exit the diskpart utility
  12. type exit to close command prompt


BMW E39 540i vs E39 M5 Differences and Comparison

I’ve owned an E39 540i/6 and E39 M5 together for almost 3 years now. I often get asked what the differences are between the two and why I have both. Here’s a quick and dirty answer to that question!

E39 BMW M5
E39 BMW M5

I live in Canada and it gets cold in the winter here, VERY cold. Also, they salt the roads like crazy.  I store my M5 in the winter and drive the 540i instead… It’s still -13C outside today and I simply can’t wait to take the M5 out of hibernation. That should tell you all you need to know, compared to the 540i the M5 does not disappoint. The actual driving experience is just that little bit better across the board. Compared to a 540i Sport, the M5 is better in most ways.

M5 Benefits

  • More power (duh!)
  • Limited slip differential
  • Faster steering ratio
  • Interior trim options (two-tone seats, aluminum sport trim, M-Audio package)
  • Better brakes (slightly, US-spec brakes are single piston and are pretty terrible actually)

540i Benefits:

  • Dynamic thermostat (thermostat can be forced open during warm-up and for rest functionality)
  • Less Costs ~20% less to maintain on average
  • Has full size spare compared to M5 with no spare tire due to exhaust routing
  • Doesn’t burn oil like the M5 (later model 02′ – 03′ M5s have better rings though)
  • The 10W60 oil makes the M5 a bad winter car – run thinner oil in the winter if it gets cold where you live
  • The M-sport steering wheel is not heated
BMW E39 540i Interior
BMW E39 540i Interior

More Similarities than differences

Otherwise, almost all other parts are completely shared: same transmission, nearly identical suspension (M5 engine is a bit heavier so they have a slightly different spring rate to compensate), same electronics, etc.

Which to choose?

I don’t know if this is true, but one anecdote sticks with me when comparing these two beasts… At some point, an M5 owner met one of the E39 engineers at a BMW-hosted track event. He asked the engineer if he could run 5W30 oil in the M5 without any negative effects. The engineer thought about it for a few moments and replied “Sure you could if you drive the M5 like a normal car and don’t push it too hard. If you want a powerful, comfortable commuter car, we make one of those too – the 540i.” I’d say the focus between the two cars is clearly different in this way. If you want something a little sportier, the M5 is your answer. If you don’t feel you are able to ever push the handling and power limits of the 540i then I’d say it’s probably the better car for your needs.

I couldn’t choose between them so I ended up with both :-)

Blocking Ads in Internet Explorer 10

internet-explorer-10-logoInternet Explorer 10 has just been launched and even though it looks visually almost identical to its immediate predecessor IE9, there have been more changes “under the hood” than any other IE update in recent memory.

This version is faster, follows standards much better and dare I say actually usable. One major feature that many may miss when using IE as opposed to either Chrome or Firefox may be the ability to easily block ads with browser extensions such as AdBlock Plus.

The good news is that Microsoft has now integrated “Tracking Protection Lists” (TPLs) straight into the browser. In effect, this allows you to add block lists straight into IE. This functionality can be used in effectively the same way as AdBlock Plus in other browsers.

Blocking Ads with a TPL

To block Ads using the TPL feature of IE10 is very simple. Just visit this page: and add the relevant list to your browser. The list you’ll want to select here is “EasyList Standard” which is exactly the same list that AdBlock Plus uses. Once you click on “Add” next to that list, you will be presented with the following dialog:


Here, click on “Add List” and it will immediately become active.

Disabling the TPL

If you ever want to disable or remove the list, use the following procedure:Editing TPL in IE10

  1. Click on the gear icon in the browser
  2. Hover over Safety
  3. Click on “Tracking Protection…
  4. Left click on the list you want to edit
  5. Click on either Remove or Disable


That’s pretty much all there is to it! Hopefully Tracking Protection Lists will help make your experience in IE10 a little bit better. What do you think of IE10 so far? Don’t hesitate to leave comments below and let us know!

Why Tablets will Never Replace Laptops

Tablets PCs are all the rage nowadays. I mean, lets face it – the personal computer is no longer the king of technology. It’s been around for decades and it’s high time that we Tablets on a Shelftalk about something fresh and new. Smartphones are of course still hip, but the release of Apple’s original iPad in April of 2010 has shaken up the market with a completely new viable form factor for the media to go crazy over.

The entire market has also been presented with a device which is genuinely more portable, generally offers better battery life than laptops and is far more intuitive with multi-touch capabilities. The experience is simply far more interactive. Tablets certainly have their place, but still have their pundits. Some are still left asking themselves why they need yet another device for browsing the web, viewing pictures or writing emails.

There is far more to it than that, however. Here are the top 5 reasons why tablets will never be able to completely replace laptops:

  1. Nobody would ever want to write this article on a tablet. I mean, seriously guys, think about this one. By the time somebody typing the 1,000 or so words (hopefully less!) it will take to get my thoughts across in this article, a writer equipped with a laptop could easily write 2 or 3 full articles. Then there is email, programming, Excel, databases… I think you get the idea: the keyboard is simply the ultimate input method for writing… anything. Period.
  2. Just because you can make it smaller, doesn’t mean you should. This point goes hand in hand with the above point. We all like small and portable things. But the smartphone revolution has made this point abundantly clear as well. When we found out how powerful that ultra-portable technology like smartphones could be, we also began to recognize that a bigger screen could also be a huge asset which would allow us to work with more data at once. The keyboard and mouse have a similar relationship with the tablet as the tablet does with the smartphone. After all, we are human and we will always need devices that are large enough to interact with. If our eyes could resolve the hairs on an ant we could certainly live with much smaller screens. If our hands were smaller, we could certainly live with smaller keyboards. There is a finite limit to how small something can possibly depending on how we choose to interact with it.
  3. Higher-end content productivity is simply better served with a full-fledged system. I’m talking photo editing, video editing, CAD drawings and the likes. Not to mention that full-fledged laptops are more powerful (though in 10 years this may not even matter anymore). But the venerable mouse and keyboard with various other input devices attached have certainly proven themselves. In fact these are environments where all the input devices required almost favor having a fixed workstation. Let us also not forget more advanced multi-display setups as well. These are largely fixed and take advantage of features which tablets have no place offering.
  4. Not everybody is always on the go. Really, I promise! Everybody is increasingly mobile nowadays? Tech support representatives are more mobile? Accountants are more mobile? Not everybody is more mobile, and that’s fine. But somebody has to call out this fallacy that absolutely everybody wants to or even can work while driving or flying to some other destination. And besides, wasn’t technology supposed to help people stay put and avoid having to fly out to meet your client in the first place? What happened to green initiatives focusing on reducing how much you travel? When did fuel get cheap again? I must have missed those memos.
  5. Tablets are better suited to content consumption than creation. That really seems to be the recurring theme here. This is not derogatory. This does not mean that tablets can only be used to view YouTube videos of people getting kicked in the groin and pictures of lolcats. The CEO of a company is more likely to be a consumer of content than a creator. The engineers, marketers, accountants and lawyers create the content, among other groups of skilled workers. Managers will then look at all that information and make better decisions based on it. But at the core of everything, there is always a huge need for creation of new information and content. Tablets, mainly due to the different interface, are better suited to organizing and displaying the information once it’s been created.

So given all this, what can we deduce? First, tablets are complementary to laptops in the same way that smartphones are complementary to them. This often seems to get lost in a lot of the media coverage surrounding them.

Further, to those who do not understand what purpose a tablet serves in an office environment, I’d be willing to bet that you don’t spend much time reviewing lots of information while on the run, you don’t work with information often, or you are the one creating it.

So no, I can’t predict the death of the laptop even within the next 10 years anymore than I can predict the death of the full-size keyboard in that time frame, and nor should you. It’s absurd to even think about it when you put it that way and it always will be as long as humans have 10 fingers and two hands.

DIY Wheel Alignment

Have you ever wanted to perform an alignment of your car at home for free? As a general rule, I never let a garage touch any of my cars unless it’s somebody that I know and I’m giving them a very specific task.  With car maintenance I often find that if you want it done right then you have to do it yourself. How many stories have you heard of people going in to get an alignment and driving out with a car that doesn’t travel straight? Far too often.

When I replaced the inner and outer tie-rods on my E36 BMW 325is, it was important to get a proper alignment done to ensure that the tires would last as long as possible and to provide the coveted BMW “ultimate driving experience”. What’s more, I wanted to make sure it was done right for the right price. BMW wanted around $350 to do a 4 wheel alignment. Absolutely insane!

I’d to preface this method by telling any skeptics out there that this is the method we use to align our Formula 1600 open-wheel race car. In fact, it’s the established method. I also watched the Ferrari of San Diego racing team use this technique on a 458 Italia during the Montreal Grand Prix. I guarantee you that if this is good enough for the track, this is good enough for any street car. Finally, with that out of the way, here’s what you’ll need:

Required Tools

  • A thin piece of string longer than the car (dental floss works well)
  • A couple of stands to hold the string taught from front to back at wheel hub level
  • A level
  • A caliper or very accurate ruler (1mm accuracy or better)
  • Whatever renches you’ll need to adjust the tie-rods

Alignment Spreadsheet & Calculator

I’ve created a nifty Excel spreadsheet that will automatically convert your measurements into a toe angle and camber angle.

Download: Alignment Spreadsheet & Calculator

Level the Car

This shouldn’t be too hard to do. Find a flat, level surface where you can work on the car and park it there. Alternatively, I stopped at at the foot of the driveway half on the road such in neutral and rocked it forward and back by hand until it found its level. I then double-checked with the level.

Straighten the Steering Wheel

This part is quite important. If you want your car to drive in a straight line when the wheel is straight then you must keep the wheel straight through this entire process. It is possible to have equally valid alignment settings when the wheel is not set straight, but we definitely don’t want that. It’s annoying. Straighten your wheel and check often to make sure it stays that way. If your wheel gets turned once mid alignment you will absolutely have to start over.

Square your String to the Chassis

Easier than it sounds. All you need to do is run the string from the front of the car to the back at wheel hub level. Make sure to keep the string taught with your stands. These can be as simple as a piece of wood with a nail in it for all intents and purposes.

The goal is to then get the string to be of equal distance from the front wheel hub as it is from the rear wheel hub. The actual distance doesn’t matter so much, just that both distances be the same. This step assumes that the offset of each wheel is the same. For most stock cars this is the case. Once this is done, your string will be perfectly square with the car’s chassis.

Measure Your Toe Angle

This measurement is taken by lining up your caliper or ruler at string level and measuring to the outer edge of the wheel on the left and right. Measure the left side of the wheel first and write down your distance. Then measure the right side and write that down too. Repeat this for the rear wheels. Note that you should never measure to any point on the tires because they are rubber and will always have small deviations. We want the highest possible accuracy.

If your toe angle is 0 degrees then both your measurements will come out the same. Zero toe is what most street cars run on the front end, but you should Google the proper alignment settings for your car to be sure.

Make Adjustments

Now you should pull out your wrenches and adjust the tie-rods either in or out depending on your car and what you found your toe angle to be. For tie-rods connected to the front of the hub, lengthening the tie-rod will toe the car out. For tie-rods connected to the rear of the hub, lengthening the tie-rod will toe the car out. The converse is true in both cases for toeing it in.

Your goal will be make adjustments and re-measure the distance from the left and right of the wheel until it is perfectly straight when the wheel is straight.

Rinse and Repeat

Once you have gotten the alignment of one wheel correct, repeat it for the next on the side of the car you are working on. Once that’s done and you are happy with your measurements, you can switch your string to the other side of the car and repeat the same steps. Bear in mind that you have to make sure your steering wheel is still perfectly straight. If it isn’t or moves from one side to the other, your toe angle will be off.

Using this Method for Camber

A slight variation of this method also works for setting your camber angle if it is even adjustable on your vehicle. The only difference is that we have to hold a string with a weight on the bottom to droop down at the same outward distance as the string until it crosses it and forms a + at the wheel hub level. Usually you’ll want a buddy to help you hold it off the top of the tire for this part. You then measure to the top of the wheel and the bottom of the wheel and make your adjustments based on your measurements.

Typically you’ll want to Google the correct camber settings for your car as they all vary and likely won’t be 0 degrees as is often the case with toe angle.