Hello,
We had some discussions about LUN misalignment these week during a PAD course and I did some research to find out solid facts.
From what I've read in the community and on other forums on the internet these are my findings, based on the stats show lun:*:* command (result is point-in-time picture) in diag mode. If I am wrong, please correct me.
If you find a value other than 0% on the lines histo.1 through histo.7 for read and write, then you have a misallignment !?
So if you have a value between 0% and 100% on histo.0 and nothing on the other histo.x entries means correct allignment !? The bigger the value for histo0 (close to 100%) the better the result.
Listing below is from a test lun, with no activity (that's why no real values are measured).
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.0:0% <- value of 100% would mean good alignment
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.1:0% <-
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.2:0% <-
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.3:0% <-
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.4:0% <- any value on one of these entries would mean bad alignment
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.5:0% <-
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.6:0% <-
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_align_histo.7:0% <-
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.0:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.1:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.2:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.3:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.4:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.5:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.6:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_align_histo.7:0%
Difference between showed value and 100% max, will show up as partial_read or partial_write percentage ?
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:read_partial_blocks:0%
lun:/vol/test/qt_test/test.lun-dgFvGobm8KhE:write_partial_blocks:0%
Question: Partial_reads doesn't necessarily mean that there is a poblem, since it could be that NOT the whole 4kb block is needed on a read action ?
I think above conclusion reflects the LUN Alignment graph in Perfomance Advisor module of NetApp Management Console :

Since in the legends only histo.0 is displayed for alligned WAFL Ops, and probably all other histo's are captured in the unalligned WAFL Ops.
I also found that the command (don't know if it works on every ONTAP version) :
priv set -q advanced; lun show -v
/vol/test/qt_test/test.lun 199g (213674622976) (r/w, online, mapped)
Comment: "ibm p750"
Serial#: dgFvGobm8KhE
Share: none
Space Reservation: enabled (not honored by containing Aggregate)
Multiprotocol Type: aix
Maps: IBM_P750=0
Occupied Size: 98.8g (106063941632)
Creation Time: Wed Mar 23 09:24:08 CET 2011
Alignment: aligned
Cluster Shared Volume Information: 0x0
/vol/rmgsql02_Snapinfo/qt_rmgsql02_Snapinfo/Snapinfo.lun 35.0g (37589529600) (r/w, online, mapped)
Comment: " "
Serial#: dgFvGocLfaL6
Share: none
Space Reservation: enabled (not honored by containing Aggregate)
Multiprotocol Type: windows_gpt
Maps: viaRPC.iqn.1991-05.com.microsoft:rmgsql02.rmg.be=3
Occupied Size: 35.0g (37602512896)
Creation Time: Thu Apr 21 12:06:49 CEST 2011
Alignment: misaligned
Cluster Shared Volume Information: 0x0
Will result if a lun is aligned or misaligned !
I see in our environment that some LUN's connected to Windows servers have bad alignment. This surprises me because we have SnapDrive/SnapManager products installed and LUNs are created with snapdrive !?
Regards,
Geert