Tes 2 partitions sont-elles sur le même disque?
As-tu les mêmes temps entre 2 partitions linux?
As-tu les mêmes temps dans l'autre sens?
Combien as-tu de mémoire disponible?
Garde à l'esprit que dans tous les cas, mv se contente de répéter autant de fois qu'il le faut les 4 opérations :
- placement de la tête sur le fichier d'origine (mettons 8ms sur un bon disque)
- lecture d'un bloc (attendre au moins 1 tour de disque, soit 8ms sur un 7200 tr/mn. Pour des petits blocs, on peut négliger le temps de transfert)
- placement de la tête sur le fichier destination (encore 8ms!)
- écriture du bloc (et encore 8ms!)
Si ton système a moyen de choisir une grande taille de blocs, ça va très vite. Mais si tu tombes à une taille de bloc de 10k, fais le calcul, ça fait 30000 fois 32ms, soit 16 minutes.
Si tu veux jouer un peu, fais ta copie avec dd if=<fichier source> of=<fichier destination> bs=<taille des blocs en octets>, et fais des essais en changeant la taille des blocs! :)
# Questions subsidiaires
Posté par jimee . En réponse au message mv sur une partition fat32 super lente. Évalué à 3.
As-tu les mêmes temps entre 2 partitions linux?
As-tu les mêmes temps dans l'autre sens?
Combien as-tu de mémoire disponible?
Garde à l'esprit que dans tous les cas, mv se contente de répéter autant de fois qu'il le faut les 4 opérations :
- placement de la tête sur le fichier d'origine (mettons 8ms sur un bon disque)
- lecture d'un bloc (attendre au moins 1 tour de disque, soit 8ms sur un 7200 tr/mn. Pour des petits blocs, on peut négliger le temps de transfert)
- placement de la tête sur le fichier destination (encore 8ms!)
- écriture du bloc (et encore 8ms!)
Si ton système a moyen de choisir une grande taille de blocs, ça va très vite. Mais si tu tombes à une taille de bloc de 10k, fais le calcul, ça fait 30000 fois 32ms, soit 16 minutes.
Si tu veux jouer un peu, fais ta copie avec dd if=<fichier source> of=<fichier destination> bs=<taille des blocs en octets>, et fais des essais en changeant la taille des blocs! :)