O ping transatlântico mais rápido do que enviar um pixel para o ecrã?
Posso enviar um pacote IP para a Europa mais rapidamente do que posso enviar um píxel para o ecrã. Como é que isso funciona?
E se isto não fosse John Carmack, eu arquivá-lo-ia sob “as teias entrelaçadas sendo bobo”.
Mas este é John Carmack.
Como pode isto ser verdade?
Para evitar discussões sobre o significado exacto do tweet, isto é o que eu gostaria de obter resposta:
** Quanto tempo demora, no melhor dos casos, a obter um único pacote IP enviado de um servidor nos EUA para algum lugar na Europa, medindo desde o momento em que um software desencadeia o pacote, até ao ponto em que é recebido por um software acima do nível do driver? **
** Quanto tempo demora, no melhor dos casos, para que um pixel seja apresentado no ecrã, medido a partir do ponto em que um software acima do nível do controlador altera o valor desse pixel? **
& Mesmo assumindo que a ligação transatlântica é o melhor cabo de fibra óptica que o dinheiro pode comprar, e que John está sentado mesmo ao lado do seu ISP, os dados ainda têm de ser codificados num pacote IP, passar da memória principal para o seu cartão de rede, dali através de um cabo na parede para outro edifício, irá provavelmente saltar através de alguns servidores (mas vamos supor que apenas necessita de um único relé), será fotonizado através do oceano, convertido de volta num impulso eléctrico por um fotossensor, e finalmente interpretado por outra placa de rede. Vamos parar por aí.
Quanto ao pixel, esta é uma simples palavra de máquina que é enviada através do slot expresso PCI, escrita num tampão, que é depois descarregada para o ecrã. Mesmo tendo em conta o facto de que “um único pixel” provavelmente resulta na transmissão de todo o buffer do ecrã para o ecrã, não vejo como isto pode ser mais lento: não é como se os bits fossem transferidos “um por um” - são antes impulsos eléctricos consecutivos que são transferidos sem latência entre eles (certo?).