Disk Enclosures
Showing results for 
Search instead for 
Did you mean: 

how to run armperf?

Go to solution
William Wan_1
Frequent Advisor

how to run armperf?


We have a VirtualArray VA7400 and a couple of LUN's have a high disk queues. We want to elimitated this disk bottleneck by spliting this big single LUN into 2 smaller LUN's and using LVM striping to strip over 2 PV's via 2 different FC path.

But first we want to understand more about this big black box VA7400. We want to measure to total IO's or IOPC??? per LUN and other information like utilization on read/write cache etc.

So I want to try the command armperf but I get the following error:

#armperf VA7400
No performance service is running on the host.

But I can see that there are "data" collected as I run with -i

armperf -i VA7400

Array ID: HPA6189A00SG213J0100
Alias Name: VA7400
First Data: Tue Oct 12 18:42:04 CEST 2004
End of Data: Wed Nov 10 15:09:26 CET 2004

The question is,, How to use armperf and which information can be usefull when doing trouble shooting to improve the performance of the VA

thanks in advance

William Wan
Zygmunt Krawczyk
Honored Contributor

Re: how to run armperf?

Hi William,

read the doc:
HP StorageWorks Command View SDM
Installation and User Guide
pages 160-197

Bill Costigan
Honored Contributor

Re: how to run armperf?

You may have to request the actual metrics, e.g.,
armperf -c LUN -s 08050700 -e 0805830 -m â Host Reads,
Host Writes,Total I/Oâ va7400

But more important, you have to remember that;
1. IO to a LUN is distributed across all the disks in a group (about 1/2 of the disks in the array)
2. Each controller has primary access to a single group.
3. A LUN can only belong to a single group.

Therefore, If you break the LUN into two but put them in the same redundency group, they will still be hitting the same disks and be managed by the same controller.

Moreover if you try to access the second LUN through a fiber to the "wrong" controller, you will increase (slightly) the access time and overall load on the va.

The best approach is to split it into 2 LUNs, each in a different group and set the primary LVM path so that each LUN is being accessed through its primary controller.

Controller #1 - RG 1 - disks in odd numbered slots (i.e., 1,3,5....15)

Controller #2 - RG 2 - disks in even numbered slots (i.e., 2,4,6..
William Wan_1
Frequent Advisor

Re: how to run armperf?

Thanks Bill,

Now I got it. Indeed. I need to runarmperf with at least 1 matric.

I got 3 new questions now.

question 1. Which is the best option to create a big VG for oracle datafiles (no idea if there are lots of random read/write or sequence read/write)
a. Create 2 LUN of equal size, one in each RG. Create 1 big LV using these 2 PV.
b. Create 4 LUN of equal size, two in each RG. Create 2 equal LV each with 2 PV from each RG, but using a different FC path/switch/control. Using LVM strip on each LV to strips their own PV.

question 2.
Does size matter? The size of a LUN. We have LUN's which are from 5 to 50Gb. When should I choose to create 2 smaller LUN instead of 1 big LUN?

question 3.

Running armperf -c DISK-PORTS -m "Total Corrected Read Errors,Read ECC Usage,Corrected Read Errors Without Delay" I get a high numbers on both value.
But there are no uncorrected Write error at all, no error for Corrected Read Errors With Delay, Corrected Read Errors With Retry

Should I be worried about these corrected read error???


William Wan_1
Frequent Advisor

Re: how to run armperf?

1 more question.

question 4.

How to determinate which VA controler is attached through a SAN switch to a FC control of a server? I can use fcutil to find the WWN address of the local FC control but not the one in VA.
I like the find out the there is no performance bottleneck on a single VA controler
William Wan_1
Frequent Advisor

Re: how to run armperf?

Does anyone have an idea about my 4 questions?
PS: just pulling up my thread