Transatlantische ping sneller dan een pixel naar het scherm sturen?
Ik kan sneller een IP pakket naar Europa sturen dan ik een pixel naar het scherm kan sturen. Hoe gestoord is dat?
En als dit John Carmack niet was, zou ik het opslaan onder “de domme interwebs”.
Maar dit is John Carmack.
*Hoe kan dit waar zijn? *
Om discussies over wat er precies bedoeld wordt in de tweet te vermijden, is dit wat ik graag beantwoord zou willen zien:
*Hoe lang duurt het, in het beste geval, om een enkel IP pakket van een server in de VS naar ergens in Europa te krijgen, gemeten vanaf het moment dat een software het pakket triggert, tot het punt dat het ontvangen wordt door een software boven driver niveau? *
*Hoe lang duurt het, in het beste geval, voordat een pixel op het scherm wordt weergegeven, gemeten vanaf het moment dat een software boven het driver-niveau de waarde van die pixel verandert? * Zelfs in de veronderstelling dat de transatlantische verbinding de beste glasvezelkabel is die er te koop is, en dat John vlak naast zijn ISP zit, moeten de gegevens nog steeds worden gecodeerd in een IP-pakket, van het hoofdgeheugen naar zijn netwerkkaart worden getransporteerd, van daaruit via een kabel in de muur naar een ander gebouw, daar waarschijnlijk over een paar servers heen springen (maar laten we aannemen dat er maar één enkel relais nodig is), over de oceaan gefotoniseerd worden, door een fotosensor weer in een elektrische impuls worden omgezet, en tenslotte door een andere netwerkkaart worden geïnterpreteerd. Laten we het daarbij laten.
Wat de pixel betreft, dit is een eenvoudig machinewoord dat over het PCI express slot wordt gestuurd, in een buffer wordt geschreven, die dan naar het scherm wordt gespoeld. Zelfs als we rekening houden met het feit dat “enkele pixels” er waarschijnlijk toe leiden dat de hele schermbuffer naar het scherm wordt gestuurd, zie ik niet hoe dit langzamer kan: het is niet zo dat de bits “één voor één” worden overgebracht - het zijn veeleer opeenvolgende elektrische impulsen die zonder vertraging ertussen worden overgebracht (toch?).