Parece que el defrag
comando de Windows 8 tiene algunas opciones nuevas, que incluyen:
/K
Realizar la consolidación de losas en los volúmenes especificados.
¿Alguien sabe lo que esto significa en inglés?
fuente
Parece que el defrag
comando de Windows 8 tiene algunas opciones nuevas, que incluyen:
/K
Realizar la consolidación de losas en los volúmenes especificados.
¿Alguien sabe lo que esto significa en inglés?
Este PDF parece tener una explicación de esto, junto con las nuevas características de NTFS.
Dice:
Consolidación de losas
Desfragmenta eficientemente los archivos para minimizar la cantidad de losas asignadas
Una losa es la unidad de asignación en un volumen de aprovisionamiento delgado
Requiere soporte para
IOCTL_STORAGE_QUERY_PROPERTY
solicitar un ID de propiedad de:StorageDeviceLBProvisioningProperty
- Recupera el tamaño de losa de un volumen
No pude encontrar nada que explique específicamente lo que esto significa en el contexto del desfragmentador de Windows 8. Pero la "consolidación de losas" generalmente se refiere a objetos en movimiento de modo que los objetos que se redondean al mismo tamaño de asignación se colocan juntos.
El beneficio de hacer esto suele ser bastante mínimo. Pero tiende a reducir el tiempo promedio de búsqueda cuando se accede a una gran cantidad de objetos pequeños.
En realidad, no creo que las losas estén hechas para ajustar la asignación de muchos archivos con el mismo tamaño para reducir el tiempo promedio de búsqueda.
Mi opinión es que se usa para reducir la latencia para las asignaciones en grandes volúmenes que de lo contrario causarían demasiados accesos concurrentes por hilos paralelos cuando necesiten asignar espacio en el volumen, porque esto bloquearía la misma parte de la asignación de volumen mapa de bits Para evitar el procesamiento de mapas de bits grandes, se puede subdividir en "losas" cuyo tamaño en bits representa áreas contiguas en el disco utilizando el mismo fragmento de mapa de bits (ocupando al menos 1 o más clúster; si su tamaño de clúster es 4KB, su clúster en el mapa de bits representa 4K * 8 = 32K clústeres asignables, es decir, 128 MB de almacenamiento OS; el tamaño real de la losa en un volumen se ajusta entre 33 y 64, lo que permite que aproximadamente 33 hilos concurrentes asignen espacio en el mapa de bits en dist sin bloquearse entre sí)
Por lo tanto, las losas se usan para acelerar la asignación de espacio en el volumen, suponiendo que un hilo que crea muchos archivos lo hará con mayor frecuencia dentro de su propia losa, antes de desbloquearlo y probar otra losa, o intentar asignar cantidades más pequeñas en la losa actual, antes de intentar otra losa no bloqueada disponible, y luego tratando de obtener simultáneamente un acceso de bloqueo a la losa utilizada actualmente por otro hilo.
Esto explica por qué la asignación en el disco se "extiende" a través del volumen. Además, esto explica por qué la MFT en el NTFS tiene al menos 2 fragmentos, que pertenecen a otras losas, ya que evita bloqueos severos entre muchos hilos que usan el volumen. Puede desfragmentar la MFT pero seguirá siendo al menos un fragmento guardado en su "área reservada" para asignaciones concurrentes que deben evitar realizar E / S de bloqueo en el volumen NTFS).
En el pasado, el volumen NTFS no estaba subdividido en varias losas, y había una gran penalización de rendimiento con muchos bloqueos de hilos y demasiados interruptores de hilos en el kernel esperando la finalización de E / S (incluso si la asignación en el mapa de bits es de hecho extremadamente rápido y toma nanosegundos ya que la mayor parte de la parte interesante del mapa de bits ya está en caché en la memoria). Cuando las escrituras en los volúmenes se vacían y se registran, se produce otro bloqueo debido a la asignación en el diario, por lo que el diario ahora también usa una losa separada en el volumen (si es posible).
Pero no creo que NTFS dedique ninguna losa a archivos para tamaños específicos. NTFS internamente desfragmentará ligeramente las losas cuando se eliminen los datos y su tamaño asignado caiga por debajo de algún umbral y dos de esas losas se puedan fusionar.
Puede obtener información sobre los tamaños de losas con:
fsutil fsinfo ntfsinfo c:
Claramente las losas son parámetros de ajuste destinados al rendimiento. Pero muchas herramientas de desfragmentación de terceros ignoran esta configuración y no utilizan una ubicación óptima. Idealmente, debería tener algo de espacio libre en cada losa del volumen, a menos que las losas estén llenas de archivos e índices que no se reasignen y se mantengan estables. Para muchos archivos y transacciones temporales pequeños que se crean y reciclan constantemente, debe colocarlos en losas suficientes según el número de subprocesos concurrentes y evitar colocarlos demasiado lejos de los otros clústeres que deben leerse si el volumen es un disco duro o matriz RAID (esto no importa en SSD).
Las losas también pueden ser útiles para sistemas de archivos remotos, pero su tamaño óptimo es difícil de predecir. Las losas en el lado opuesto son muy pequeñas para volúmenes diferenciales de volúmenes virtualizados jerárquicos y hay una estrategia de colocación muy diferente, dado que la asignación es virtual y se reasigna a diferentes lugares físicos.
Todavía necesitamos información de Microsoft sobre los siguientes parámetros de ajuste en el registro:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\SlabifyFunction]
MinimumReclaimSlabsMB = REG_DWORD: 10240
MinimumReclaimSlabsPercent = REG_DWORD: 10
SlabEvictUpperBoundKB = REG_DWORD: 204800
SlabEvictUpperBoundPercent = REG_DWORD: 20
Creo que estos se dejan indocumentados a propósito porque Microsoft todavía está pensando en cambiar las estrategias de ubicación y puede cambiarlo con el tiempo. No están expuestos por la API, solo encuentra su evidencia en el registro y en la implementación del código fuente interno del controlador NTFS.
Todo lo que sabemos es que las losas están expuestas brevemente por el parámetro "/ K" de la herramienta de línea de comandos DEFRAG.EXE, que no las detalla mucho. Pero es fácil observar que la optimización / K está dando enormes ganancias de rendimiento después de la instalación inicial de Windows (incluso antes de que se realice la optimización Bootvis después de 6 reinicios y mediciones). También están los parámetros / L relacionados con el recorte en SSD.