Copie USB, baisse de vitesse

Bonjour,

Pour quelle raison, lorsqu’on copie une fichier volumineux sur un support USB, cela commence à copier très rapidement et ensuite la vitesse descend ?

Je suis en train de copier un fichier d’environ 5Go. La copie commence à 150 Mo/s pour au bout de 10 secondes se retrouver à 25. Le constant est le même sur d’autres OS.

D’où viendrait le problème ?

Je vous remercie.

Bonjour,
Ce n’est pas un problème, c’est tout a fait normal.
Lors de la copie, les infos transite via une mémoire tampon, qui est bien plus rapide que ton périphérique USB, une fois ce tampon remplis la vitesse s’aligne sur la vitesse d’écriture sur l’USB.

mémoire de masse (HDD, SDD, …) ==> tampon (RAM) ==> USB

C’est pour cela qu’il est indispensable de démonter proprement les périphériques USB quand tu veux l’enlever, il faut s’assurer qu’il n’y a plus de données en attentes dans le tampon.

complèment informel:

Bonjour,

Merci pour vos réponses.

N’ayant aucune connaissance poussée dans le domaine, pour quelle raison les données transitent de la mémoire de stockage en passant par la RAM et pour finir sur le support USB ?
Il n’est pas possible techniquement, qu’elle passe directement du stockage à l’USB ?

Pour optimiser le taux de transfert aussi.
Imagine que ta source est un lecteur réseau, un disque ou tout autre support similaire. Le taux de transfert de ta source vers ton PC peux fortement varier (accès disque/réseau concurrent, occupation de la bande passante USB/réseau, …). Il est intéressant que ton PC lise un maximum de données rapidement, quitte a en garder en mémoire (mémoire tampon/RAM), pour le délivrer le plus rapidement et régulièrement possible à la destination.
Donc il est plus intéressant de passer par une mémoire intermédiaire fiable et rapide pour optimiser l’écriture.

Finalement la boite de dialogue t’indique le taux de transfert et le temps restant de la source et non celui de la destination …

Réponse courte : non. Les périphériques ne sont pas assez “intelligents”.

Un transfert de données entre un disque SATA et un disque USB implique en réalité 4 périphériques :

  • le disque SATA
  • le contrôleur hôte SATA
  • le contrôleur hôte USB
  • le disque USB.

Il n’y a pas de liaison directe entre les deux disques. Seuls les contrôleurs hôtes pourraient communiquer directement via les bus système. Mais voilà, chacun de ces périphériques parle son propre “langage” ou protocole, voire plusieurs langages. Par exemple :

  • un disque SATA parle le langage SATA
  • un contrôleur hôte SATA parle le langage SATA avec les périphériques et le langage AHCI avec le système
  • un contrôleur USB 2 parle le langage USB 2 avec les périphériques et le langage EHCI avec le système
  • un disque USB 2 parle le langage USB 2 avec le contrôleur hôte USB et le langage “USB mass storage” avec le système hôte (par dessus le langage USB)

Les deux contrôleurs hôtes ne parlent pas le même langage et sont incapables de communiquer entre eux, et encore moins avec l’autre disque. Pire encore, le contrôleur hôte USB ne connaît même pas le langage “USB mass storage”, il n’en a pas besoin. Il ne serait donc même pas capable seul de lire ou écrire sur le disque USB.

bonjour,
un postulat on s’adapte sur la vitesse la plus lente
contrôle de flux
bon appétit