Quelle est la vitesse maximale typique possible avec un lecteur USB 2.0?

73

Je n'ai que 30 Mo / s entre mon ordinateur et une clé USB, malgré le fait que l'USB 2.0 prend en charge les transferts à 480 Mo / s (ou 60 Mo / s). (Par conséquent, je n'obtiens que la moitié de la vitesse nominale) Existe-t-il quelque chose dans la norme USB qui devrait entraîner de telles vitesses apparentes?

Billy Oneal
la source
6
Vitesse maximale typique? N'est-ce pas un oxymoron?
Mehrdad
3
@ Mehrdad: Pas vraiment. La vitesse maximale typique pour un transfert de réseau local (LAN) gigabit est de l'ordre de 100 Mo / s, même si la vitesse théorique est supérieure.
Billy ONeal
3
Oh, alors vous voulez dire la vitesse maximale pratique , non?
Mehrdad
3
@ Mehrdad: Même chose. Ouais.
Billy ONeal
Avez-vous un type de compression ou peut-être plusieurs analyseurs de virus en cours d'exécution? Essayez de les désactiver. Assurez-vous que le câble est conçu pour USB 2.0. S'il est vieux, il peut s'agir d'un câble moins rapide. Je suppose que vous auriez dit quelque chose s'il passait par un hub USB. Est-ce lent pour d'autres périphériques, comme un lecteur flash (vous devrez vérifier son taux de transfert nominal).
KCotreau le

Réponses:

43

L'USB 2 utilise des images d'une milliseconde et est divisé en 8 micro-images en mode Haute vitesse (480 Mb / s). La taille maximale des paquets de données en nombre (utilisés par les périphériques de stockage de masse USB) est de 512 octets. Selon ce document très informatif, le maximum théorique est de 13 paquets par microframe. La vitesse maximale théorique d'un lecteur USB 2 est donc:

1000 * 8 * 512 * 13 = 53248000 ~ = 53 Mo / s

Cet autre document de Cypress indique, vers la fin, qu’ils atteignent actuellement 43 Mo / s .

En pratique, la limite sera généralement le flash lui-même.

Edit: cette information est également dans la spécification USB 2 .

table de spécifications usb

Timmmm
la source
1
D'après mon expérience, vous pouvez soustraire 20% de la partie la plus estimée de la bande passante estimée pour les frais généraux. Ensuite, c'est une question de matériel. La norme peut être la même mais la qualité du matériel diffère beaucoup.
Don Curtis
1
Le premier document Cypress indique: "Même cette limite [de 13 paquets] n’est pas réalisable avec les contrôleurs hôtes actuels, qui peuvent recevoir 10 paquets en vrac / microframe ou envoyer 8 paquets en vrac / microframe". 10 paquets nous donnent 42 Mo / s souvent cité 30-40 Mo / s "monde réel" limite
nponeccop
26

Votre lecteur flash est le goulot d'étranglement. Ils ne peuvent pas atteindre le maximum théorique de 60 Mo / s. Voici un extrait de Wikipedia :

Les lecteurs flash modernes ont une connectivité USB 2.0. Cependant, ils n'utilisent pas actuellement la totalité des 480 Mbit / s (60 Mo / s) pris en charge par la spécification USB 2.0 Haute vitesse en raison de limitations techniques inhérentes à la mémoire flash NAND. Les lecteurs les plus rapides actuellement disponibles utilisent un contrôleur à double canal, bien qu'ils soient encore très en deçà du taux de transfert possible à partir d'un disque dur de la génération actuelle ou du débit USB haut débit maximum. (...)

Les lecteurs rapides classiques prétendent lire jusqu'à 30 mégaoctets / s (Mo / s) et écrire à peu près à la moitié de cette vitesse. C'est environ 20 fois plus rapide que les périphériques USB 1.1 «pleine vitesse», qui sont limités à une vitesse maximale de 12 Mbit / s (1,5 Mo / s).

nmat
la source
6
Ce n'est pas un lecteur flash. Je copie à ceci -> amazon.com/Western-Digital-Passport-Essential-Portable/dp/… - Je demande cependant quelle est la limite de l'interface, pas à propos d'un périphérique spécifique. (Je veux savoir si l'appareil atteint la limite pratique; c'est la raison de cette question en premier lieu)
Billy ONeal
1
Désolé, j'ai mal interprété votre question. Vous n'avez pas spécifié et 30 Mo / s est la vitesse habituelle pour les lecteurs flash, alors je pensais que vous en utilisiez un.
nmat
Je vois. D'autre part, je n'ai pas vraiment demandé quel était le goulot d'étranglement, n'est-ce pas? :)
Billy ONeal
4
Honnêtement, je ne pense pas qu'une norme ait des limites. Un standard a un maximum théorique et son implémentation est généralement plafonné. Donc, si vous voulez connaître la cause de la vitesse lente, vous devez regarder la mise en œuvre. Dans le cas de lecteurs flash, le problème provient de la mémoire flash NAND et, dans le cas de lecteurs de disque dur, dans la logique du contrôleur. Même les contrôleurs haute vitesse dépassent à peine 30 Mo / s.
nmat
1
Je ne pense pas que ce soit un lecteur flash, je passe d'un ssd à un ssd et j'obtiens un maximum de 31 Mbps
Hellreaver
20

Environ 30 Mo / s est une vitesse de transfert maximale typique.

Les connexions USB 1.0 et USB 2.0 sont semi-duplex, ce qui signifie que les données ne circulent que dans un sens à la fois. La connexion partagée entre les deux sens est probablement la principale raison du ralentissement par rapport à la vitesse de transfert prévue.

En comparaison, USB 3 et Ethernet sont en duplex intégral et respectent mieux les vitesses de transfert attendues.

Dans ma machine, une vitesse de lecteur flash USB2 ne dépasse jamais 33 Mo / s dans une application de test, même si Windows indiquait une vitesse de 33 à 37 Mo / s. J'ai effectué des tests et activé le cache disque (propriétés du périphérique) et augmenté la taille maximale du transfert usb à 2 Mo (KB2581464), mais sans succès.

Cmazai
la source
7

L’interface USB 2.0 peut constituer une limite en raison de la surcharge de signalisation et de commande ainsi que de l’espacement entre les paquets.

J'ai un SSD rapide connecté par USB 2.0. Le lecteur est beaucoup plus rapide que l'interface (multiplié par 10).

La vitesse de lecture atteint environ 33 Mo / s et la vitesse d'écriture, 17,5 Mo / s. La vitesse d'écriture est presque 50% plus lente en raison d'une vérification après lecture et du fait que le signal USB est semi-duplex, comme le mentionne une autre réponse.

Adisak
la source
Cela ressemble à un problème avec votre contrôleur. Je constate souvent des vitesses d’écriture bien supérieures à 17,5 Mo / s, même avec des disques relativement bon marché, sur USB 2.0.
Billy Oneal
Avez-vous un cache en écriture sur? Je parle de nombres bruts réels exécutant un programme d'évaluation de disque en utilisant write with verify.
Adisak
1
Les programmes d'analyse comparative de disque utilisent souvent des paramètres irréalistes pour ces contrôleurs USB. L'USB a une surcharge très élevée par objet ou par transfert associée au passage en mode de traitement en masse. La copie de fichiers volumineux sur le lecteur USB ne rencontre pas ce problème. La mise en cache en écriture ne pouvait pas avoir trop d'effet étant donné que j'ai été capable de mettre immédiatement le lecteur sur une autre machine et que les données n'étaient pas corrompues.
Billy ONeal
Les clés USB ont souvent une vitesse d'écriture plus lente que la vitesse de lecture, mais la différence de vitesse n'est pas due à la clé USB. Vous pouvez acheter des clés USB plus rapides qui écrivent à des vitesses plus rapides.
Dan Buhler
6

Avec un iMac mi-2007 et un disque Verbatim USB2 transférant des données sur un lecteur FW800, je consomme 36 à 37 Mo / s. C'est déjà très bon pour USB2.

Si j'ajoute un deuxième transfert depuis un autre disque USB2 (Packard Bell) connecté au même concentrateur USB2 vers le même lecteur FW800, le taux de transfert combiné passe à 42 Mo / s. C'est exceptionnel et c'est le taux de transfert le plus élevé que j'ai jamais vu sur USB2.

Plus de 35-40 Mo / s sur USB2.0 est pratiquement impossible et je réservais déjà un contrôleur USB2 uniquement pour ces disques, aucune souris ni aucun autre périphérique n'interférant.

OlafM
la source
4

USB 2.0 prend en charge une vitesse de transmission de 480 Mb / s . Sur la page Wikipedia, il est indiqué que le débit effectif atteint 35 Mo / s. Il existe une disparité, car les bits ne sont généralement pas transmis entre périphériques de la même manière qu'ils sont représentés en interne. Un certain nombre de facteurs doivent être pris en compte lors de la transmission de données entre périphériques, tels que les interférences électromagnétiques.

http://en.wikipedia.org/wiki/8b/10b_encoding

Le lien ci-dessus est un exemple de schéma de codage. Il est utilisé par USB 3.0.

utilisateur178351
la source
1
8b10b est une surcharge de 20%. 20% de réduction sur 480 Mbits est 384 Mbits soit ~ 48 Mo / s. Encore nettement plus rapide que ce que je vois pratiquement partout.
Billy Oneal
3

Je n’ai jamais vraiment pensé au calcul de la vitesse, mais il est évident que ce type de transfert entraîne de réels frais généraux. J'ai cherché sur Google et trouvé message après message avec les vitesses que vous avez décrites, ce qui me permet de faire quelque chose.

Je viens de sortir un disque externe USB 2.0 Seagate de 1 To, de le formater et de décider de copier un échantillon suffisamment volumineux pour le tester: 13 595 211 905 octets (environ 12 Go). J'exécute Symantec Endpoint Protection AV.

Selon cette calculatrice , cela aurait dû prendre seulement 3:46 minutes avec 0% de frais généraux, mais cela a pris 9h17 et ma vitesse est tombée à 23,9 Mo / sec.

J'ai ensuite redémarré (pour effacer la mémoire), et l'ai essayée sans que mon AV ne fonctionne et cela prenait toujours 9h15, soit à peine 2 secondes de moins (je suppose que c'est une bonne nouvelle pour Symantec AV au moins).

Il semblerait que ce soient vraiment des "nombres théoriques".

KCotreau
la source
PS Le débit de 480 Mo s’applique à tous les périphériques d’un hub, mais lors de mes tests, il s’agissait uniquement du lecteur et de la souris, et je doute que la souris ait eu un impact considérable.
KCotreau le
1
Environ 24-26Mo / s est la vitesse que j'ai vue sur de nombreux périphériques USB2.0
Sathyajith Bhat
1

Cet article est un peu ancien, vous ne savez donc pas si cela reste pertinent ou utile, mais la vitesse de connexion USB 2 ne dépasse normalement pas 280 Mbit / s (35 Mbit / s) en raison de l'accès au bus.

Tiré du wiki:

L’USB 2.0 a été lancé en avril 2000, en ajoutant un débit de signalisation maximal supérieur à> 480 Mbit / s, appelé haute vitesse, en plus du débit de transmission USB 1.x pleine vitesse> de 12 Mbit / s. En raison de contraintes d'accès au bus, le débit effectif du débit de signalisation> Haute vitesse est limité à 35 Mo / s ou 280 Mbit / s.

J'espère que ça s'éclaircit ...

SaltyCornelius
la source
0

Toute chaîne est aussi forte que son maillon le plus faible. Les performances de transfert potentiellement faibles lors de l'utilisation de périphériques USB2 incluent tout, du microprogramme du contrôleur hôte au logiciel de pilote, en passant par les câbles physiques utilisés (plus courts et plus épais peut-être un peu mieux?) Et probablement plus important encore, les périphériques réellement connectés et les microprogrammes, puces flash / cache et très certainement les performances du disque en rotation, un goulot d’étranglement de bande passante bien connu.

Contrôlez l'ordre logique de la bande passante d'E / S disponible - Performances processeur / contrôleur / Performances DRAM du cache L1 / L2 / microprogramme / mémoire flash, puis par ordre de grandeur des performances de stockage sur disque à rotation lente.

Les performances maximales théoriques indiquées (480 mégabits par seconde ou 60 mégaoctets par seconde) concernent uniquement le bus et ne lui sont pas connectées et les performances réelles observées sont souvent très inférieures.

Bob
la source
-2

Les disques durs à 5 400 tr / min avec USB2 sont limités par le matériel du lecteur et par le contrôleur SATA. Même des disques à 7 200 tr / min ou 10 000 tr / min dans un bon caddy USB ne suffisent pas vraiment. Vous avez besoin d’un SSD pour atteindre la limite USB2. La plus grande partie de la "bande passante perdue" correspond en fait à la latence du contrôleur, où il faut juste du temps pour passer de l’écriture des données à l’envoi du signal d’achèvement.

Paul
la source
2
Mes disques durs à 5400 tours / minute peuvent faire beaucoup mieux que 30 Mo / s
Billy ONeal
@BillyONeal Peut faire, oui, mais le fera-t-il? Dans les scénarios de mauvaise utilisation (IO aléatoire), il est facile de descendre à 1 Mo / s.
Maarten Bodewes
1
@MaartenBodewes: Il s'agissait d'une question d'E / S séquentielle - vitesse "maximale", pas vitesse pour une charge de travail donnée.
Billy ONeal