Talk:Latency (engineering)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing (Rated Start-class, Mid-importance)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.
 
WikiProject Systems (Rated Start-class, Mid-importance)
WikiProject icon This article is within the scope of WikiProject Systems, which collaborates on articles related to systems and systems science.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.
Taskforce icon
This article is not associated with a particular field. Fields are listed on the template page.
 

Rewrite?[edit]

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.


Latency vs. response time in software systems[edit]

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)

One of the most common usages of 'latency' now is for the time lag after a user initiates an action on a computer. For example, the delay between pressing a button and confirmation that the expected action has been taken.

To me (at least) this kind of latency has become at least as important as 'speed' (bandwidth, processing speeds, etc.)

Maybe there should be a section on it here?

Sam Dutton (talk) 07:12, 6 September 2008 (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)

There appears to be many forms of Latency[edit]

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)

More formality and less examples[edit]

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)

merge proposed[edit]

I have marked "comparison of latency and throughput" to be merged with this. Gigs 10:22, 6 July 2007 (UTC)

I would add Lag as well in this merger.--itpastorn (talk) 21:00, 11 February 2008 (UTC)
Unless there is a compelling reason, I oppose this merger. Kushal (talk) 02:33, 15 July 2008 (UTC)
proposed underline, Consequences of latency in real time as acceptable or unacceptable. by definition latency is always present.  —Preceding unsigned comment added by Jdbarnett33.1 (talkcontribs) 23:15, 19 August 2008 (UTC) 

error in the maths[edit]

The article says that light takes 4.8 microseconds for every kilometre. This is wrong, it should be 3.3 microseconds. I don't know if the rest of the paragraph is correct or not though. —Preceding unsigned comment added by 152.78.239.138 (talk) 14:24, 8 February 2010 (UTC)

calculation wrong, answer correct[edit]

The source of error is probably due to the wrong refraction index assumed for fibre. The speed of light in fibre is about 200,000 km/s (see for example Optical fiber), so the number is more or less correct. —Preceding unsigned comment added by 79.182.50.46 (talk) 12:23, 23 February 2010 (UTC)

IEEE and Springer provide appropriate references[edit]

I do not question the definition in the Oxford dictionary which says: latent Pronunciation: /ˈleɪt(ə)nt/

Definition of latent adjective

  • (of a quality or state) existing but not yet developed or manifest; hidden or concealed:they have a huge reserve of latent talent
  • Biology lying dormant or hidden until circumstances are suitable for development or manifestation:axillary buds or eyes in the leaf axils are latent growth buds
  • (of a disease) not yet manifesting the usual symptoms:diabetes may be latent for some years before diagnosisthe latent stage of syphilis
  • Physiology (of a microorganism, especially a virus) present in the body without causing disease, but capable of doing so at a later stage, or when transmitted to another body.

In comparison to delay delay Pronunciation: /dɪˈleɪ/ Definition of delay verb [with object]

  • make (someone or something) late or slow:the train was delayed
  • [no object] be late or slow; loiter:time being of the essence, they delayed no longer
  • postpone or defer (an action):he may decide to delay the next cut in interest rates

noun

  • a period of time by which something is late or postponed:a two-hour delaylong delays in obtaining passports
  • [mass noun] the action of delaying or being delayed:I set off without delay
  • Electronics the time interval between the propagation of an electrical signal and its reception.
  • an electronic device which introduces a delay, especially in an audio signal.

Common Usage & References However as latency is used as professional jargon in engineering as delay in event driven systems. Examples hereof are in the recognized works such as:

IEEE Press’ “Real-Time Systems Design and Analysis – Tools for the Practitioner” by Laplante, P.A. and Ovaska, S.J. (2012), 4th Edition published by Wiley, where latency is defined as:
Latency: A measure of time delay experienced in a real-time system.
qoute from p. 517 - glossary, which is supported by examples on pages 35, 61-62 and 73. The glossary also refers to interrupt latency. This book is available on google books, with examples of the definitions on page 8 and 18 (to point out a few), where the latter including dramatic causes for nuclear meltdown.
In the system design principles it is also applied as a measure of deviation from timeliness, and used to quantify how close to “real-time” two different systems are. This implies the usage that zero latency is real-time.
In Springer’s Real-time System Series’ “Real-time Systems – Design Principles for Distributed Embedded Applications” by Hermann Kopetz, 2nd Edition published by Springer, latency is described in chapters 1.3.2. and 1.3.3. as the error caused by delayed response in fast control system. An example of the words usage is to explain Byzantine error terms:
“The difference between the master (clocks) time, contained in the synchronization message, and the recorded slave’s time-stamp of message arrival, corrected by the known latency of the message transport, is a measure of the deviation of the clock of the master from the clock of the slave.” (p. 68).
The book is also available in google books.

Other sources concur to the simple definition of latency as

Latency: A measure of time delay experienced in a real-time system.

Such as:

  • Zhang, Xiaodong, Yong Yan, and K. Q. He. "Latency metric: an experimental method for measuring and evaluating parallel program and architecture scalability." Journal of Parallel and Distributed Computing 22, no. 3 (1994): 392-410., as: "Latency measures the delay caused by communication between processors and memory modules...."
  • Latency is also used by Dooly, Daniel R., Sally A. Goldman, and Stephen D. Scott. "TCP dynamic acknowledgment delay (extended abstract): theory and practice." In Proceedings of the thirtieth annual ACM symposium on Theory of computing, pp. 389-398. ACM, 1998 as "...and the cost for the additional latency introduced by delaying (TCP) acknowledgements..." (abstract).
  • Latency is described in the context of: "The responsiveness of a system is inversely related to the channel latency or the total time it takes to notice a new event, and to begin composing a response for the event.", in the 1989-paper by Dodhiawala, Rajendra, N. S. Sridharan, Peter Raulefs, and Cynthia Pickering. "Real-time AI systems: A definition and an architecture." In Proceedings of the International Joint Conference on Artificial Intelligence, Detroit, Michigan, pp. 256-261.
  • Meehan et.al. in (Meehan, Michael, Sharif Razzaque, Mary C. Whitton, and Frederick P. Brooks Jr. "Effect of latency on presence in stressful virtual environments." In Virtual Reality, 2003. Proceedings. IEEE, pp. 141-148. IEEE, 2003.) actually goes through the efforts to clarify that there are conflicts in the definition of latency and clarifies that the latency may occur at multiple system levels, proposing that latency is both in sub-systems (internal states) and super-systems (externally measurable states).
  • In optometry the usage of the definition is not so blurred: The purpose of this experiment is to measure the latency to onset of the contraction of the pupil, as a function of the size of positive steps in luminance, starting at various luminance levels to which the eye has been adapted prior to the stimulus steps. In the past, latency of the pupil response has been inaccurately measured, owing to the difficulty of separating the end of the latent period from the slow beginning of contraction. To overcome this, a digital curve-fitting technique involving a time delay followed by a modified second-order step response was developed. Latency was defined as the time delay giving the most accurate fit.(by Lee, Robert E., Gerald H. Cohen, and Robert M. Boynton. "Latency variation in human pupil contraction due to stimulus luminance and/or adaptation level." JOSA 59, no. 1 (1969): 97-100.)

For anyone who want to repeat this study feel free to recycle my search string: http://scholar.google.co.uk/scholar?start=50&q=definition+of+latency+and+delay&hl=en&as_sdt=0,5 — Preceding unsigned comment added by 3swv7y6543 (talkcontribs) 14:45, 11 November 2012 (UTC)

First sentence not good.[edit]

I just read the first sentence - it appeared when I googled 'latency'. "Latency is a time interval between the stimulation and response, or, from a more general point of view, as a time delay between the cause and the effect of some physical change in the system being observed.[1]" 1. Did no-one notice that it's not even a coherent sentence? 2. The reference is ridiculous, barely relevant to the sentence. At least, it's nothing like support for the definition given. It has a few very brief and specialized hi-tech uses of the term. So. Judging by this sentence, the rest of the article is.. well, I didn't bother. 110.20.158.134 (talk) 01:21, 6 November 2015 (UTC)

Merge from Low latency[edit]

I'm proposing to merge content from Low latency into this article. All the content in Low latency is about latency and efforts and reasons to minimize it in context already described here. The paragraph on high-speed trading would make a helpful addition to this article. ~Kvng (talk) 15:13, 13 January 2016 (UTC)