Latenza

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

La latenza, da un punto di vista generale, è il lasso di tempo che intercorre tra la causa e l'effetto di un cambiamento fisico in un sistema in osservazione.

Dal punto di vista fisico, la latenza è una conseguenza della velocità limitata alla quale ogni interazione fisica può propagarsi. Il modulo di questa velocità è sempre minore o uguale alla velocità della luce. Per questo motivo ogni sistema fisico che presenti una qualsiasi separazione fisica (distanza) tra causa e effetto sarà soggetto a qualche forma di latenza, in modo indipendente dalla natura dello stimolo a cui è stato esposto.

La precisa definizione di latenza dipende dal sistema che si sta osservando o dalla natura dello stimolo. Nelle telecomunicazioni il limite inferiore della latenza è determinato dal mezzo usato per trasferire l'informazione. Nei sistemi di comunicazione bidirezionale affidabile la latenza limita la massima velocità di trasmissione, poiché c`è spesso un limite alla quantità di informazione che può trovarsi in trasmissione in ogni istante. La latenza percepibile ha un effetto considerevole sulla soddisfazione degli utenti e l'usabilità nel campo dell'interazione uomo-macchina.[1]

Nei sistemi software, misurare le prestazioni utilizzando la latenza media e mediana può trarre in inganno poiché la presenza di pochi campioni eccezionali può alterarne negativamente il valore. Al loro posto, architetti e sviluppatori del software vengono incoraggiati ad usare il "99° percentile": per esempio se il 99° percentile della latenza è due secondi, questo significa che il 99% delle richieste viene processato entro due secondi. Questo da una visione più realistica della latenza.[2]

Tipologie[modifica | modifica wikitesto]

Telecomunicazioni[modifica | modifica wikitesto]

Lo stesso argomento in dettaglio: Round Trip Time.

La latenza di trasmissione o delay di un collegamento Internet è invece il tempo impiegato da uno o più pacchetti ICMP a raggiungere un altro computer o server in rete (sia essa Internet o LAN). Nell'ambito delle reti i fattori che influenzano maggiormente la propagazione del segnale sono il mezzo che trasporta l'informazione e le apparecchiature (per esempio switch o router) che il segnale attraversa nel suo percorso.

A titolo di esempio con le connessioni xDSL tradizionali si ha una latenza che varia tra i 70 e i 100 ms, mentre con le connessioni xDSL FAST la latenza può raggiungere anche i 15 ms, per collegamenti HiperLan invece varia da 15 ms anche fino a 200 ms. Un utile strumento per misurare il tempo di latenza è il programma ping, disponibile sui principali sistemi operativi.

Elaborazione audio digitale[modifica | modifica wikitesto]

È il tempo che passa tra la conversione analogico-digitale del segnale in ingresso a un sistema (ad esempio nell'ingresso microfonico della scheda audio di un computer), l'elaborazione del segnale stesso e la sua successiva conversione digitale-analogico in fase di riproduzione. In termini pratici è il tempo che intercorre tra l'acquisizione di un segnale audio in ingresso da parte di un sistema digitale e la sua (quanto possibile immediata) riproduzione in uscita. Si parla di latenza anche nel caso dell'intervallo di tempo tra la pressione di una nota su una tastiera MIDI (o analogo controller) collegata a un pc o expander e la riproduzione del suono corrispondente da parte di quest'ultimo.

Di norma per elaborazioni in tempo reale si cerca di avere un valore basso di latenza, il limite massimo può essere considerato di circa 30 ms in quanto al di sopra di esso il suono verrebbe percepito come eco, è tuttavia pratica comune tenersi ben al di sotto di questo valore. Allo stato dell'arte con un calcolatore dedicato ad alte prestazioni (DAW) e una scheda audio professionale o semi-pro si possono raggiungere latenze inferiori ai 5 ms.

Esempi[modifica | modifica wikitesto]

Lo stesso argomento in dettaglio: Lag (informatica).

Di esempi se ne possono fare innumerevoli, possiamo citare:

  • il tempo che un segnale impiega a percorrere il mezzo trasmissivo, se il sistema è un cavo elettrico;
  • il tempo che una CPU impiega a eseguire una particolare istruzione;
  • il tempo di elaborazione di un algoritmo, se il sistema considerato è l'algoritmo stesso;
  • il tempo che intercorre tra la richiesta di leggere dei byte da un supporto di memoria e il momento in cui questi byte sono restituiti al chiamante;
  • il tempo che intercorre tra la richiesta di scrivere dei byte su un supporto di memoria e il momento in cui i byte sono effettivamente scritti.

Note[modifica | modifica wikitesto]

  1. ^ (EN) Steve Souders, Velocity and the Bottom Line, su radar.oreilly.com. URL consultato il 23 February 2023.
  2. ^ (EN) Foundations of Data Intensive Applications Large Scale Data Analytics Under the Hood, 2021, ISBN 9781119713012.

Voci correlate[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]