Quanto tempo demora para transferir um arquivo de 1 GB em uma unidade USB 2.0 e USB 3.0?
(image source: pixabay)
Fazendo a validação USB, esta é a minha conclusão técnica: é teórica e existe real. Actual é mais importante do que a produção teórica.
THEORETICAL USB2.0
USB2.0 microframes podem ter um máximo de 13 transferências BULK por microframe. Existem 8 microframes por segundo. Uma transferência BULK tem um máximo de 512 bytes.
Em decimal um megabyte é 1.000.000 bytes = 1 MB. Esta é a unidade mais usada.
Em binário, um megabyte é 1024 x 1024 bytes = 1 MiB (note a i entre M e B).
O limite teórico para USB 2.0 é +/- 53 MBps.
USB2.0 é especificado como 480 Mbps = 60 MBps mas devido à especificação e sobrecarga do protocolo, o máximo é 53 MBps.
Isto significa que por 1 GB leva 18,78 segundos (18,78 x 53,248 MBps = 1 GB).
ACTUAL USB2.0
A especificação real do drive é importante (tempo de acesso, velocidade de transferência), o controlador (ele pode lidar com os 13 pacotes), quantos dispositivos estão conectados ao host (compartilhando o BW), o frontend físico do USB, SW e lado do driver,.... Somente quando um host e um dispositivo estão conectados sem outros dispositivos no mesmo host e ambos os lados têm a capacidade de HW e SW para fazer o máximo teórico, então 53 MBps serão possíveis. Será sempre menos.
Eu fiz testes de metal nu para USB2.0 que atingem exatamente o máximo teórico em uma conexão um a um. Cerca de 10% de perda devido ao protocolo (53 vs 60 MBps).
THEORETICAL USB3.0
USB3.0 é especificado como 5 Gbps = 625 MBps. Mas o mesmo se aplica que o hardware (PHY, controlador, disco) e SW devem suportar o máximo que o padrão especifica. Eu não lembro de cor o máximo teórico, mas seria cerca de 500 MBps, acho eu. Em teoria, leva cerca de 2 segundos para transferir 1 GB sobre USB3.0.
ACTUAL USB3.0
A velocidade do USB3.0 está longe da velocidade teórica para a sua unidade de armazenamento de massa média. Um disco rígido, dependendo da sua velocidade de rotação, pode ter 50 ou 100 MBps (número de ballpark) e não obterá o máximo de 500 MBps. O HDD utiliza buffering e outros truques para um melhor desempenho, mas a velocidade bruta é inferior ao que o USB3.0 pode fazer. O USB3.1 é o dobro do 3.0 e por isso o problema é pior lá. Claro, um SDD tem melhor desempenho de escrita e leitura. Mas o USB 3.2 está sendo preparado (20 Gbps = 1,25 GBps!!!) o que estará além da performance do SDD também.
Em bare metal, eu nunca vi algo funcionando perto do limite teórico do USB3.0. Com um SO real e vários dispositivos conectados ao host USB3.0, os números serão consideravelmente inferiores às velocidades teóricas.
Nota: se um HDD é muito mais lento para acesso de escrita, a escolha para o frontend USB3.0 (PHY e controlador) será usar um mais barato e menos performante porque por que colocar um motor Rolls Royce em um Twingo?
Artigos semelhantes
- Sem baixar um arquivo torrent, como faço para transferir diretamente o arquivo para qualquer serviço na nuvem?
- Qual é o melhor formato de arquivo para uma unidade flash USB 3.0?
- Quanto tempo demora uma luz de controlo do motor para limpar uma tampa de gás?
- Quanto tempo demora para decifrar uma senha de 8 caracteres?