Unsolved

This post is more than 5 years old

1 Rookie

 • 

10 Posts

7627

November 2nd, 2017 07:00

Unity LUN response time

Hello ALL,

I would like to know how Unity array LUN response time is calculated.  I am not looking for link from EMC support website like a document  that tells what and how the calculate but the actual calculation mathematics such as A X B divided by C.


I appreciate your input.


Thank you.


4 Operator

 • 

8.6K Posts

November 2nd, 2017 08:00

Response Time = (QueueLength / Throughput)

If would suggest a forum search

see Performance question - high response time, low service time, queue length

and others

1 Rookie

 • 

10 Posts

November 2nd, 2017 09:00

Thank you very much. Is this calculation specific to Unity array or across the board EMC arrays?

Thank you.

4 Operator

 • 

8.6K Posts

November 6th, 2017 01:00

across the board

1 Rookie

 • 

10 Posts

November 22nd, 2017 02:00

Rainer,

We are trying to understand the previously suggested  formula to calculate the LUN latency (Latency = QueueLength / Throughput ) will result in a time value.

Latency = IOs in queue per second / IOs per second


How this will result in a time value?


Thank you.

4 Operator

 • 

4.5K Posts

November 22nd, 2017 09:00

Please see the following KB article - the way LUN Response times are calcaluated is different in Unity from the other mid-range arrays like CLARiiON an VNX.

https://support.emc.com/kb/499929 Unity: LUN Response Times in Unisphere may exhibit high Response Time Spikes (DELL EMC Correctable)

LUN Response time is calculated using the following formula:

TotalIOTime / (Total Read IO + Total Write IO)

Note that LUN Response Time is a "measured" calculation, it does not use "Little's Law"

You can find more information in KB 491175

https://support.emc.com/kb/491175 Unity: How to gather the necessary information for a Unity performance analysis, (User Correctable)

glen

38 Posts

November 23rd, 2017 03:00

It's relative values, so if your queue was 32 and your IOPS were 1000, then 32/1000 = 3.2ms.

That's not applicable to Unity as Glen points out in the other reply as Unity measures total read and write time between samples in the data and calculates response time from there, dividing that with total read and write IOPS respectively. In O.E code 4.2 and above, we do that for read and write IO separately :-)

1 Rookie

 • 

10 Posts

November 23rd, 2017 07:00

Those great responses and appreciate all of them. We ended up using the first suggested calcualtion "Latency = QueueLength / Throughput" which did not make sense to us because the fact that it was getting a rate value instead of a time value (IOsin queyq / IOs). Also, there was not  QueueLength for write/read to calculate Latency_write / Latency_read

This reply also mentioned Latency = QueueLength / Throughput calculatio was accross the board which was incorrect as appears to be Unity array is the only type that we have been having problems with the LUN Latency calculations.

We will try the following:

TotalIOTime / (Total Read IO + Total Write IO)

Thank you!!!!

1 Rookie

 • 

10 Posts

December 6th, 2017 07:00

glen,

Could you please verify the Unity Code version when this enhencement submitted? Also, is this fixed yet? If so, what's the Unity Code version of it?

https://support.emc.com/kb/499929

Thank you.

4 Operator

 • 

4.5K Posts

December 6th, 2017 09:00

This issue was fixed in 4.2..0.9392909

glen

1 Rookie

 • 

10 Posts

December 7th, 2017 10:00

Thank you

1 Rookie

 • 

3 Posts

September 4th, 2025 11:15

Hello @al K.,

Good question. The time it takes to respond for the response time of a Unity LUN is usually a mixture of three things:

1-Depth of queue (how many I/Os are in queue)

2-Time to service (how many hours it will take to finish processing an I/O)

3-Time to wait (how how long an I/O is waiting within the waiting room)

The most common method to explain it is:

Response Time = Wait Time + Service Time

In the basic theory of queueing you may see it simplified into:

Response Time = Service Time / (1 - Utilization)

Unity arrays also make use of caching and tiering. So the actual numbers are more complicated however this formula provides an excellent foundation for understanding the way math works.

If you're looking for an easy analysis of time-related calculations I have provided an example: hours calculator.

I hope this gives you more clarity.

Top