Any experts out there have anything to contribute? As Ericloewe pointed out, the results I've seen are quite unexpected - you'd think that a device based extent would have a performance edge over writing files into a file on a filesystem, but from what I've seen from my testing, the file extent is ridiculously faster than the device extent. Best I can tell, the file extent is twice as fast as the device extent, and that's nuts. While you might expect SOME difference between the two, that's a LOT (and you'd think that the device extent would have a little bit of an edge).
Another thing that I've noticed is that it seems like there's a bottleneck somewhere. From my testing with four drive 'RAID10' pools (I use 'RAID10' to describe the mirror setup, understanding that it's 'not exactly' RAID10), when cloning the VM, where best I could tell from looking at the read/write stats of all the drives, it was coming 100% from memory, it was peaking the drives at 125-135MB/s or so, which they may be capable of more, they may not be, but that's quite decent IMO. Thinking traditionally, one would expect that if you expand that to a 10 drive 'RAID10', you'd still be able to peak the drives at the same rate, but only for as long as you are sending the data. So for example, a four drive pool might be able to write 20GB of data in about 80 seconds (20GB / 250MB/s, 250MB's being the write sum of two of the four drives), which isn't too far off from my testing. That being said, you'd think a 10 drive pool would be able to write the same data in about 32 seconds (give or take a little). But what I saw was the speed at which it cloned to the larger pool didn't really change overall, and the peak to the drives dropped - a lot. Down to I think 50MB/s or so each. Now, my machine isn't exactly the latest and greatest dual socket 24 core per socket with 256GB RAM and 12GB SAS system, but at the same time, it's not exactly a single dual core Xeon from forever ago, so it doesn't seem the RAM or CPUs would be the bottleneck, and theoretically, the single 4 channel SAS link to the backplane should support more than 2GB/s between the controller and backplane, so honestly, I'm not sure where there could be a bottleneck. Even going from a single SSD to two SSDs didn't push the read rate from the ~300MB/s I was seeing from the one SSD to ~600MB/s with two in a 'RAID0' (for testing, to try and get the best possible throughput and stress the HDD's as much as possible... which was a FAIL..., I had set them up as a stripe, not a mirror) - it was actually more like 150-200MB/s each, for a total not much higher than the single SSD.
I'm getting to where I'd like to migrate over to my FreeNAS machine, but I want to set it up right, and frankly, the guides have been the opposite of helpful, mainly considering that they 'recommend' device extents for iSCSI, yet my testing shows them to be WAY slower. Let's be honest - if for whatever reason, my testing showed the device extents to be 10% slower, but the benefit was the VMWare hardware acceleration support, it would be a non-issue, but the testing I did showed the device extents to be WAY slower than file extents.
If I'm doing something wrong, I'm opened to being schooled, but I don't know what I don't know... sooo...