Talk:Latency (engineering)

From Wikipedia, the free encyclopedia

This article seems on a first glance to be completely misunderstanding the nature of latency, confusing latency with the general notion of throughput.

Latency is not just "a measure of amount of time between the start of an action and its completion", it is specifically the amount of time that is unavoidably expended before transmission actually begins. To go along with the travel analogy, the jet plane may travel faster than a car once when both are in motion, and the jet plane may carry more. However, loading up luggage and passengers and starting up the vehicle will inevitably take longer for the jet plane than for the car; the amount of time it takes to prepare for the travel is the latency. -- Antaeus Feldspar 21:47, 5 Dec 2004 (UTC)

I agree with the article and disagree with defining Latency as the time for starting an action only. In telecommunication delay and latency are often used as synonyms, but most understood latency as the total sum of the end to end signal delay. Depending on the transmission system this could be defined and measured on a per packet base (equivalent to the airplane with it's passengers) or on a bit level (no boardening of passengers, each passenger would fly immediately in a single plane). -- Matthias, 7 Dec 2004

The definition of latency is more or less correct. It is the total time, including the startup time. The definition of throughput is not. Throughput is the amount of work done (e.g., bits transmitted over a network) in a given amount of time, not just the number of actions. In a computer network, sending data in large packets has a higher throughput than sending the same data in small packets, even though there are less actions (packets). This is both because of the lower number of overhead bits and because of reduced startup and queueing latency. If the data is streamed, propogation latency won't have much effect on throughput, but if the system waits for an acknowledgement after each packet before sending the next, high propagation latency will drastically reduce throughput. Errors that cause packets to be retransmitted also reduce throughput. --Rick Sidwell 05:51, 11 Dec 2004 (UTC)

I'm no expert on this, but the external link given in the article seems to agree with Antaeus. It does eventually mention overall latency, but focuses on minimal latency and refers to this simply as latency. Here's the definition given:

"No matter how small the amount of data, for any particular network device there's always a minimum time that you can never beat. That's called the latency of the device."

Maybe this usage was chosen because the author wanted to compare networking methods in general, rather than their performance on a specific task. Does anyone have authoritative examples of contrasting usage? -- Avenue 23:22, 7 Jan 2005 (UTC)

Maybe the disputing sides will agree to accept this definition? If a zero-length message is considered, both definitions should mean the same.

Latency The time taken to service a request or deliver a message which is independent of the size or nature of the operation. The latency of a message passing system is the minimum time to deliver a message, even one of zero length that does not have to leave the source processor. The latency of a file system is the time required to decode and execute a null operation.

Look at http://www.nhse.org/NHSEreview/CMS/Chapter6.html

--[Grzesiek] 14:36, 31 Jan 2005 (UTC)


This article needs a complete rewrite.

There is also the article Comparison of latency and bandwidth.


[edit] Latency vs. response time in software systems

When measuring the performance of a software system, we refer to latency as the time a request spends "on the wire" before getting to the software system. We use the term "response time" to talk about the entire operation from a user's perspective. Martin Fowler discusses this in his book "Patterns of Enterprise Application Architecture" on page 7 - 8. (Fowler is one of the most respected authors in the software field).

I would have to agree that latency refers to the time that an operation is not actively being processed, but rather just being communicated from one point to another.

Also note that the word latent means "dormant" or "inactive". From this perspective, a request is inactive until it reaches the system that is going to process it.

--Javid Jamae 01:43, 07 Apr 2005 (UTC)



If we consider latency in general all the above definitions are correct. Latency could be defined as the time required for an arbitrary system to change it state from state A to state B. The important thing is what we define to be states A and B. We can say that initial state A is just before we send an instruction to CPU and final state B is when instruction is processed. So the whole time from start to finish is latency. But we can also say that state B is when instruction reaches the CPU and starts executing. Then the latency is only the time spent in communicating the instruction (and data) to CPU. If we would look even more closely we could see that even this latency or "inaction" is not really an inaction. Still some process of communicating the instruction to the CPU is running and it has its own latency. And so on....

TommoZ

TommoZ,
I agree, which makes me wonder about the objective of this article. Some could argue that it should be turned into a disambiguation page, while others would like it to be a (rather large) Wiktionary entry. This is a word with seemingly unending expansion of senses. For example, your above post mentioned yet another use of latency, this time in the field of microelectronics which is where I first learned of it. If we include all of these in one article, such an article would be too large and incohesive, with the only unifying theme having to do with .. the time required for an arbitrary system to change it state from state A to state B. Do you think it is worth all that (virtual) ink? Vonkje 13:37, 28 July 2005 (UTC)


[edit] There appears to be many forms of Latency

Here is how I have had it explained to me previously (with regard to telephony):

Latency is a measure of the time taken to traverse a space between any given points of transmission including elements of measured resistance eg conversions and codecs etc.

eg Where z-a is the transmission (in order a,b,c,d,e,f,....y,z,) and Point1 is place of Origin and Point2 is place of receipt

            Point1                                  Point2
              |                                       |
            z-a.....................>...............z-a   
              -----------------------------------------  The measure of this period = Latency
 

Between Point1 and Point2 there may be a number of resistant systems eg relays, hops, codecs, AD/DA conversions etc


Latency in this example is therfore the period taken for a specific point within the transmission (in this example the letter "a" but alternatively any point of the sequence transmitted eg any letter between a and z)to pass Point 1 and be effectively received (in original type state) at Point2.


Latency is easily percieved during live television interviews with persons on the other side of the globe wher the transmission is relayed by satellite.


Rough and ready but I hope this contributes

Phil Wright

Yes Paul,
This word is severely overloaded. Latency is one of those words used to encapsulate behavior one either does not understand or does not care to explain. Only later when there is a direct collision with another word use of latency does it become either better predicated as in operational latency, or given an entirely different term as in rotational delay. Vonkje 13:21, 28 July 2005 (UTC)

[edit] More formality and less examples

This article attempts to define a word-concept by examples. Another way is by formal definition. The reference to the workflow paper provides a formal definition of operational latency. Formal definitions exist for the other types as well. Communication latency also has a formal definition in terms of Propagation delay and Velocity of propagation.

The example involving turning around an aircraft is too long. Most of its surface area does not deal with latency as much as parallelizing workflows. This article will be more useful to engineers (or their aspirants) if examples can be trimmed and formal definitions (or pointers to these definitions) provided. Vonkje 13:56, 28 July 2005 (UTC)