Representação visual dos números de latência que programadores devem conhecer
- Referência ao cache L1: 1 nanossegundo
- Falha na previsão de desvio: 3 nanossegundos
- Referência ao cache L2: 4 nanossegundos
- Bloqueio/desbloqueio de mutex: 17 nanossegundos
- Transmissão de 1KB de dados por uma rede de 1 Gbps: 44 nanossegundos
- Referência à memória principal: 100 nanossegundos
- Compressão de 1KB de dados com Zippy: 2 microssegundos
- Leitura sequencial de 1MB da memória: 3 microssegundos
- Leitura aleatória de 4K em SSD: 16 microssegundos
- Leitura sequencial de 1MB em SSD: 49 microssegundos
- Tempo de ida e volta dentro do mesmo datacenter: 500 microssegundos
- Leitura sequencial de 1MB em disco: 825 microssegundos
- Busca em disco: 2 milissegundos
- Envio de um pacote da Califórnia até a Holanda e retorno: 150 milissegundos
Opinião do GN⁺
- Esses dados podem servir como uma referência importante para programadores ao projetar sistemas ou otimizar desempenho. Saber quanto tempo cada operação ou tarefa leva ajuda a identificar quais partes causam gargalos e como melhorá-las.
- Por exemplo, ao comparar o tempo de acesso à memória com a latência de rede, fica claro que minimizar chamadas de rede e processar os dados na memória é muito mais rápido. Isso pode ser uma consideração importante no projeto de sistemas distribuídos.
- Como essas latências podem mudar com a evolução do hardware e da tecnologia, é importante manter as informações atualizadas. Por exemplo, com o avanço dos SSDs, o tempo de leitura em disco foi bastante reduzido.
- Ao adotar novas tecnologias ou open source, é preciso considerar essas latências para prever o desempenho do sistema e decidir qual tecnologia será mais eficaz no ambiente real. Por exemplo, usar uma solução de cache em memória pode reduzir a latência de rede, mas exige considerações adicionais sobre consistência de cache e sincronização de dados.
4 comentários
https://colin-scott.github.io/personal_website/research/…
Este aqui está mais bonito de ver.
Nossa, essa UI/UX realmente não me agradou...
É verdade mesmo, nossa..
Comentários do Hacker News
Resumo do primeiro comentário:
latency-container, exibindo a latência de cada um.Resumo do segundo comentário:
Resumo do terceiro comentário:
Resumo do quarto comentário:
Resumo do quinto comentário:
Resumo do sexto comentário:
Resumo do sétimo comentário:
Resumo do oitavo comentário:
Resumo do nono comentário: