
Tengo un disco duro externo. Precisamente hoy intenté copiar unmás grandearchivo (era una película de ~230 MB) y al principio subió hasta ~70%. Ha comenzado a disminuir.
- Al principio empezaba a unos 56 MB/s
- Luego cayó rápidamente a 23 MB/s (la transferencia de archivos se completó en un 70%)
- Luego comenzó a disminuir lentamente hasta que estuvo alrededor de 2 MB/s (el archivo estaba ~90% completo)
- Cuando terminó la transferencia estaba ligeramente por encima de 1,5 MB/s.
Para describirlo gráficamente: Si dibujaras una curva de disminución, probablemente se parecería a la gráfica de una función logarítmica.
Entonces, lo que realmente estoy preguntando es: "¿Por qué pasó esto?" y "¿Hay alguna forma de evitarlo?"
¡Gracias!
Respuesta1
Posibles razones:
- La mayoría de los sistemas operativos no escriben datos inmediatamente en el disco, sino que los almacenan en buffer o en caché en la RAM y esperan a escribirlos. Esto es porque
- Es más eficiente desde el punto de vista de la velocidad enviar una gran cantidad de datos a una unidad a la vez y
- El registro en diario NTFS/ext3/ext4 funciona de manera eficiente si registra un montón de transacciones en lugar de escrituras de sectores individuales. Por lo tanto, una pequeña cantidad de datos de escritura inicial se informará como finalizada y esto ocurrirá rápidamente, y la escritura real en el disco se realizará más tarde. A medida que las escrituras aumentan los archivos del búfer, la velocidad coincide con la velocidad de escritura física real o la velocidad media. Si bien IIRC en Windows está deshabilitado de forma predeterminada para unidades extraíbles, es posible que la configuración no sea así en su sistema.
- La mayoría de los discos duros tienen una cantidad de RAM como búfer. Esta podría ser una segunda capa de "caché" entre usted y el disco duro. No estoy seguro de si los discos duros lo usan para escribir, pero tal vez algunos sí.
- El disco duro puede estar fragmentado en el momento en que la velocidad de transferencia del archivo disminuyó.
- Suponiendo que Windows, creo que las "prioridades de E/S" son una característica introducida en Windows Vista y que continuó hasta 7. Puede ser que la E/S del proceso de control haya perdido prioridad en el kernel después de que se ejecutó un poco a favor de una versión más reciente. proceso utilizado o interactivo. Esto es sólo una suposición y no estoy del todo seguro de cómo funciona realmente esta característica.
- Otra comunicación USB en ese mismo concentrador raíz USB podría causar contención y desaceleración del bus.